Energy Increment Test: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 24: | Line 24: | ||
| || 4 at each step it will print the norms and also the <math>\Delta U</math> and <math>R(U)</math> vectors. | | || 4 at each step it will print the norms and also the <math>\Delta U</math> and <math>R(U)</math> vectors. | ||
|- | |- | ||
| || 5 if it fails to converge at end of $numIter it will print an error message BUT RETURN A | | || 5 if it fails to converge at end of $numIter it will print an error message BUT RETURN A SUCCESSFUL test | ||
|- | |- | ||
| '''$nType''' || optional type of norm, default is 2. (0 = max-norm, 1 = 1-norm, 2 = 2-norm, ...) | | '''$nType''' || optional type of norm, default is 2. (0 = max-norm, 1 = 1-norm, 2 = 2-norm, ...) | ||
Line 35: | Line 35: | ||
* When using the Penalty method additional large forces to enforce the penalty functions exist on the right hand side, making | * When using the Penalty method additional large forces to enforce the penalty functions exist on the right hand side, making | ||
convergence using this test usually impossible (even though solution might have converged). | convergence using this test usually impossible (even though solution might have converged). | ||
* When Lagrange | * When Lagrange multipliers are used, the solution vector contains the Lagrange multipliers. | ||
---- | ---- |
Latest revision as of 17:43, 10 June 2016
- Command_Manual
- Tcl Commands
- Modeling_Commands
- model
- uniaxialMaterial
- ndMaterial
- frictionModel
- section
- geometricTransf
- element
- node
- sp commands
- mp commands
- timeSeries
- pattern
- mass
- block commands
- region
- rayleigh
- Analysis Commands
- Output Commands
- Misc Commands
- DataBase Commands
This command is used to construct a convergence test which uses the dot product of the solution vector and norm of the right hand side of the matrix equation to determine if convergence has been reached. The physical meaning of this quantity depends on the integrator and constraint handler chosen. Usually, though not always, it is equal to the energy unbalance in the system. The command to create a EnergyIncr test is the following:
test EnergyIncr $tol $iter <$pFlag> <$nType> |
$tol | the tolerance criteria used to check for convergence |
$iter | the max number of iterations to check before returning failure condition |
$pFlag | optional print flag, default is 0. valid options: |
0 print nothing | |
1 print information on norms each time test() is invoked | |
2 print information on norms and number of iterations at end of successful test | |
4 at each step it will print the norms and also the <math>\Delta U</math> and <math>R(U)</math> vectors. | |
5 if it fails to converge at end of $numIter it will print an error message BUT RETURN A SUCCESSFUL test | |
$nType | optional type of norm, default is 2. (0 = max-norm, 1 = 1-norm, 2 = 2-norm, ...) |
NOTES:
- When using the Penalty method additional large forces to enforce the penalty functions exist on the right hand side, making
convergence using this test usually impossible (even though solution might have converged).
- When Lagrange multipliers are used, the solution vector contains the Lagrange multipliers.
THEORY:
If the system of equations formed by the integrator is:
- <math>K \Delta U^i = R(U^i)\,\!</math>
This integrator is testing:
- <math> \Delta U^i R(U^i) < \text{tol} \!</math>
Code Developed by: fmk