|
xc
|
PenaltySFreedom_FE is a subclass of SFreedom_FE which handles SFreedom_Constraints using the penalty method. More...
#include <PenaltySFreedom_FE.h>
Public Member Functions | |
| virtual int | setID (void) |
| Method to set the corresponding index of the ID. More... | |
| virtual const Matrix & | getTangent (Integrator *theIntegrator) |
| Returns the tangent Matrix created in the constructor. | |
| virtual const Vector & | getResidual (Integrator *theIntegrator) |
| Sets the FE_Elements contribution to the residual to be \(\alpha * (U_s - U_t)\), where \(U_s\) is the specified value of the constraint and \(U_t\) the current trial displacement at the node corresponding to constrained degree-of-freedom. More... | |
| virtual const Vector & | getTangForce (const Vector &x, double fact=1.0) |
Sets the FE_Elements contribution to the residual to be \(\alpha * (U\_s - disp\_t)\), where \(U\_s\) is the specified value of the constraint and \(disp\_t\) the value in disp corresponding to constrained degree-of-freedom. More... | |
| virtual const Vector & | getK_Force (const Vector &x, double fact=1.0) |
| virtual const Vector & | getC_Force (const Vector &x, double fact=1.0) |
| virtual const Vector & | getM_Force (const Vector &x, double fact=1.0) |
Returns the product of elements current mass matrix and a Vector whose values are obtained by taking the product of {fact} and those elements of the Vector accel associated with the FE_Elements equation numbers. More... | |
Public Member Functions inherited from XC::FE_Element | |
| virtual | ~FE_Element (void) |
| Destructor. | |
| virtual const ID & | getDOFtags (void) const |
| Returns the tags of the associated DOF_Groups. More... | |
| virtual const ID & | getID (void) const |
| Method to return the ID containing equation numbers. More... | |
| void | setAnalysisModel (AnalysisModel &theModel) |
| Sets the link with the analysis model. More... | |
| virtual void | zeroTangent (void) |
| Zeros the tangent matrix. More... | |
| virtual void | addKtToTang (double fact=1.0) |
Adds the product of fact times the element's tangent stiffness matrix to the tangent. More... | |
| virtual void | addKiToTang (double fact=1.0) |
Adds the product of fact times the element's initial stiffness matrix to the tangent. More... | |
| virtual void | addCtoTang (double fact=1.0) |
Adds the product of fact times the element's damping matrix to the tangent. More... | |
| virtual void | addMtoTang (double fact=1.0) |
Adds the product of fact times the element's mass matrix to the tangent. More... | |
| virtual void | zeroResidual (void) |
| Zeros the residual vector. More... | |
| virtual void | addRtoResidual (double fact=1.0) |
Adds to the residual vector the product of the elements residual load vector and fact. More... | |
| virtual void | addRIncInertiaToResidual (double fact=1.0) |
Adds to the residual vector the product of the elements residual load vector with inertia forces included and fact. More... | |
| virtual void | addM_Force (const Vector &accel, double fact=1.0) |
Adds to the residual the product of elements current mass matrix and a Vector whose values are obtained by taking the product of {fact} and those elements of the Vector accel associated with the FE_Elements equation numbers. More... | |
| virtual void | addD_Force (const Vector &vel, double fact=1.0) |
Adds to the residual the product of elements current damping matrix and a Vector whose values are obtained by taking the product of {fact} and those elements of the Vector vel associated with the FE_Elements equation numbers. More... | |
| virtual int | updateElement (void) |
| virtual Integrator * | getLastIntegrator (void) |
| Method which returns the last integrator supplied in a formTangent() or a formResidual() invocation. More... | |
| virtual const Vector & | getLastResponse (void) |
| A method which invokes getLastResponse() on the Integrator object that was last passed as an argument to any of the routines. More... | |
| Element * | getElement (void) |
| Returns a pointer to the associated element. | |
| virtual void | Print (std::ostream &, int=0) |
| Print stuff. | |
| virtual void | addResistingForceSensitivity (int gradNumber, double fact=1.0) |
| virtual void | addM_ForceSensitivity (int gradNumber, const Vector &vect, double fact=1.0) |
| virtual void | addD_ForceSensitivity (int gradNumber, const Vector &vect, double fact=1.0) |
| virtual int | commitSensitivity (int gradNum, int numGrads) |
Public Member Functions inherited from XC::TaggedObject | |
| TaggedObject (int tag, CommandEntity *owr=nullptr) | |
| Constructor. More... | |
| virtual TaggedObject * | getCopy (void) const |
| Virtual constructor. | |
| void | assignTag (int newTag) |
| Set tag (to be called from Python interface). | |
| int | getTag (void) const |
| Returns the tag associated with the object. | |
Friends | |
| class | AnalysisModel |
Additional Inherited Members | |
Protected Member Functions inherited from XC::SFreedom_FE | |
| SFreedom_FE (int tag, int sz, SFreedom_Constraint &theSP, const double &alpha=1.0) | |
Protected Member Functions inherited from XC::MPSPBaseFE | |
| MPSPBaseFE (int tag, int numDOF_Group, int ndof, const double &alpha=1.0) | |
Protected Member Functions inherited from XC::FE_Element | |
| void | addLocalM_Force (const Vector &accel, double fact=1.0) |
| void | addLocalD_Force (const Vector &vel, double fact=1.0) |
| void | addLocalM_ForceSensitivity (int gradNumber, const Vector &accel, double fact=1.0) |
| void | addLocalD_ForceSensitivity (int gradNumber, const Vector &vel, double fact=1.0) |
| FE_Element (int tag, Element *theElement) | |
| Construictor that take the corresponding model element. More... | |
| FE_Element (int tag, int numDOF_Group, int ndof) | |
| Constructor. More... | |
Protected Member Functions inherited from XC::TaggedObject | |
| void | setTag (int newTag) |
| Set tag. More... | |
Protected Attributes inherited from XC::SFreedom_FE | |
| SFreedom_Constraint * | theSP |
| Node * | theNode |
Protected Attributes inherited from XC::MPSPBaseFE | |
| double | alpha |
| Matrix | tang |
| Vector | resid |
Protected Attributes inherited from XC::FE_Element | |
| ID | myDOF_Groups |
| ID | myID |
PenaltySFreedom_FE is a subclass of SFreedom_FE which handles SFreedom_Constraints using the penalty method.
PenaltySFreedom_FE is a subclass of FE_Element used to enforce a single point constraint. It does this by adding \(\alpha\) to the tangent and \(\alpha * (U\_s - U\_t)\) to the residual at the locations corresponding to the constrained degree-of-freedom specified by the SFreedom_Constraint, where \(U_s\) is the specified value of the constraint and \(U_t\) the current trial displacement at the node corresponding to the constraint.
|
virtual |
Returns the product of elements current mass matrix and a Vector whose values are obtained by taking the product of {fact} and those elements of the Vector accel associated with the FE_Elements equation numbers.
If no element is associated with the FE_Element or the associated element is a Subdomain a warning message is printed and an error Vector is returned.
Reimplemented from XC::FE_Element.
|
virtual |
Sets the FE_Elements contribution to the residual to be \(\alpha * (U_s - U_t)\), where \(U_s\) is the specified value of the constraint and \(U_t\) the current trial displacement at the node corresponding to constrained degree-of-freedom.
Prints a warning message and sets this contribution to \(0\) if the specified constrained degree-of-freedom is invalid. Returns this residual Vector set.
Reimplemented from XC::FE_Element.
|
virtual |
Sets the FE_Elements contribution to the residual to be \(\alpha * (U\_s - disp\_t)\), where \(U\_s\) is the specified value of the constraint and \(disp\_t\) the value in disp corresponding to constrained degree-of-freedom.
Prints a warning message and sets this contribution to \(0\) if the mapping, determined in setID(), for the the specified constrained degree-of-freedom lies outside disp.
Reimplemented from XC::FE_Element.
|
virtual |
Method to set the corresponding index of the ID.
Causes the PenaltySFreedom_FE to determine the mapping between it's equation numbers and the degrees-of-freedom. From the Node object link, created! in the constructor, the DOF_group corresponding to the Node associated with the constraint is determined. From this {DOF_Group} object the mapping for the constrained degree of freedom is determined and the ID in the base class is set. Returns \(0\) if successful. Prints a warning message and returns a negative number if an error occurs: \(-2\) if the Node has no associated DOF_Group, \(-3\) if the constrained DOF specified is invalid for this Node and \(-4\) if the ID in the DOF_Group is too small for the Node.
Reimplemented from XC::FE_Element.
1.8.12