This command is used to construct a PenaltyConstraintHandler which will cause the constraints to be enforced using a penalty method. The penalty method consists of adding large numbers to the stiffness matrix and the restoring-force vectors to impose a prescribed zero or nonzero DOF.
constraints Penalty $alphaSP $alphaMP
$alphaSP |
factor used when adding the single-point constraint into the system of equations |
$alphaMP |
factor used when adding the multi-point constraint into the system of equations |
In this method the potential-energy equation which makes up the system of equations is augmented by a penalty function {t}T[alpha]{t}/2
where [alpha] is a diagonal matrix of "penalty numbers". The resulting system of equations is of the form:
[K + CTalphaC]U = [R+CTalphaQ]
Where CTalphaC can be called the penalty matrix. C and Q are matrices containing constants, K is the stiffness matrix, U represents the DOF and R the restoring forces. If alpha=0 the constraints are ignored. As alpha grows, U changes in such a way that the constraint equations are more nearly satisfied. In this case, however, the analysis becomes error prone, as the system represents a stiff region supported by a flexible region.
NOTE: The Penalty Method affects the maximum eigenvalues of the system and may cause problems in a Transient analysis.
The Penalty Method is discussed in detail in the Cook Book -- Concepts and Applications of Finite Element Analysis.
"Guideline for choice of alpha: If computer words carry approximately p decimal digits, experience has shown that alpha should not exceed 10p/2". (Cook)