3.2.4.2. Norm Displacement Increment¶
This command is used to construct a convergence test which uses the norm of the solution, \(x\) vector, of the matrix equation, \(Ax=b\) to determine if convergence has been reached. What the righthandside of the matrix equation is depends on integrator and constraint handler chosen. Usually, though not always, it is equal to the change in nodal displacements in the system due to the current unbalance. The command to create a NormUnbalance test is the following:
 test NormDispIncr $tol $iter <$pFlag> <$nType>
Argument 
Type 
Description 

$tol 
float 
the tolerance criteria used to check for convergence 
$iter 
integer 
the max number of iterations to check before returning failure condition 
$pFlag 
integer 

$nType 
integer 
type of norm (optional: default is 2 (0 = maxnorm 1 = 1norm 2 = 2norm …)) 
Note
When using a penalty constraint handler, large forces (those necessary to enforce the constraint) are included in the \(x\) vector. Even for very small changes in the displacement, if user has selected overly large penalty factor, large forces can appear in the \(x\) vector.
Example:
The following examples demonstrate the command to create a NormDispIncr test which allows 10 iterations till failure with a 2norm in the \(x\) vector, i.e. \(\sqrt(x^T x)\) of 1.0e2.
Tcl Code
test NormDispIncr 1.0e2 10 2
Python Code
test('NormDispIncr', 1.0e2, 10, 2)
Code Developed by: fmk