Class for integrating the third order differential equation using the implicit Newmark method. More...
#include <ExtendedNewmarkBeta.hpp>


Public Member Functions | |
| ExtendedNewmarkBeta (std::shared_ptr< Mesh > &mesh, double TimeStep, double mtol=1E-12, double ktol=1E-12, double ftol=1E-12) | |
| Creates a NewmarkBeta object. More... | |
| ~ExtendedNewmarkBeta () | |
| Destroys this NewmarkBeta object. More... | |
| void | Initialize (std::shared_ptr< Mesh > &mesh) |
| Initialize model matrices. More... | |
| void | SetLoadCombination (std::shared_ptr< LoadCombo > &combo) |
| Set the load combination. More... | |
| void | SetAlgorithm (std::shared_ptr< Algorithm > &algorithm) |
| Sets the integrator for this algorithm. More... | |
| const Eigen::VectorXd & | GetDisplacements () |
| Gets the displacement vector. More... | |
| const Eigen::VectorXd & | GetVelocities () |
| Gets the velocity vector. More... | |
| const Eigen::VectorXd & | GetAccelerations () |
| Gets the acceleration vector. More... | |
| const Eigen::VectorXd & | GetPMLHistoryVector () |
| Gets the PML history vector. More... | |
| bool | ComputeNewStep (std::shared_ptr< Mesh > &mesh, unsigned int k=0) |
| Computes a new time step. More... | |
| Eigen::VectorXd | ComputeReactionForce (std::shared_ptr< Mesh > &mesh, unsigned int k=0) |
| Gets the reaction force ins this step. More... | |
| Eigen::VectorXd | ComputeProgressiveForce (std::shared_ptr< Mesh > &mesh, unsigned int k=0) |
| Gets the external force vector from previous analysis. More... | |
| void | ComputeSupportMotionVector (std::shared_ptr< Mesh > &mesh, Eigen::VectorXd &Feff, double factor=1.00, unsigned int k=0) |
| Gets the incremental nodal support motion vector. More... | |
| void | ComputeEffectiveForce (std::shared_ptr< Mesh > &mesh, Eigen::VectorXd &Feff, double factor=1.00, unsigned int k=0) |
| Gets the effective force associated to the NewmarkBeta integrator. More... | |
| void | ComputeEffectiveStiffness (std::shared_ptr< Mesh > &mesh, Eigen::SparseMatrix< double > &Keff) |
| Gets the effective stiffness associated to the NewmarkBeta integrator. More... | |
Public Member Functions inherited from Integrator | |
| Integrator (const std::shared_ptr< Mesh > &mesh) | |
| Creates a Integrator object. More... | |
| virtual | ~Integrator ()=0 |
| Destroys this Integrator object. More... | |
Protected Attributes | |
| double | dt |
| Integration time step. More... | |
| Eigen::VectorXd | U |
| Total initial/previous displacements. More... | |
| Eigen::VectorXd | V |
| Total initial/previous velocity. More... | |
| Eigen::VectorXd | A |
| Total previous acceleration. More... | |
| Eigen::VectorXd | Ubar |
| Total previous pml history values. More... | |
| Eigen::VectorXd | Fbar |
| The previous stage Force vector. More... | |
| Eigen::SparseMatrix< double > | M |
| Model mass matrix. More... | |
| Eigen::SparseMatrix< double > | C |
| Model damping matrix. More... | |
| Eigen::SparseMatrix< double > | K |
| Model stiffness matrix. More... | |
| Eigen::SparseMatrix< double > | G |
| Model PML history matrix. More... | |
| std::weak_ptr< Algorithm > | theAlgorithm |
| The static solver algorithm. More... | |
| std::unique_ptr< Assembler > | theAssembler |
| The finite element assembler. More... | |
Protected Attributes inherited from Integrator | |
| Eigen::VectorXd | SupportMotion |
| Nodal support motion vector. More... | |
| Eigen::SparseMatrix< double > | Total2FreeMatrix |
| Operator that enforced restrain/constraint. More... | |
Class for integrating the third order differential equation using the implicit Newmark method.
| ExtendedNewmarkBeta::ExtendedNewmarkBeta | ( | std::shared_ptr< Mesh > & | mesh, |
| double | TimeStep, | ||
| double | mtol = 1E-12, |
||
| double | ktol = 1E-12, |
||
| double | ftol = 1E-12 |
||
| ) |
Creates a NewmarkBeta object.
| mesh | Pointer to the Mesh container to extract Node and Element. |
| mtol | Threshold for which a mass value will be neglected. |
| ktol | Threshold for which a stiffness value will be neglected. |
| ftol | Threshold for which a force value will be neglected. |
| ExtendedNewmarkBeta::~ExtendedNewmarkBeta | ( | ) |
Destroys this NewmarkBeta object.
|
virtual |
Gets the effective force associated to the NewmarkBeta integrator.
| mesh | Pointer to the Mesh object where Node and Element are stored. |
| Feff | Vector that stores the effective force. |
| factor | The incremental load factor. |
| k | The time step number to be solved. |
Implements Integrator.
|
virtual |
Gets the effective stiffness associated to the NewmarkBeta integrator.
| mesh | Pointer to the Mesh object where Node and Element are stored. |
| Keff | Matrix that stores the effective stiffness. |
Implements Integrator.
|
virtual |
Computes a new time step.
| mesh | The finite element Mesh object. |
| k | The time step number to be solved. |
Implements Integrator.
|
virtual |
Gets the external force vector from previous analysis.
| mesh | Pointer to the Mesh object where Node and Element are stored. |
| k | The time step number to be solved. |
Implements Integrator.
|
virtual |
Gets the reaction force ins this step.
| mesh | Pointer to the Mesh object where Node are stored. |
| k | The time step number to be solved. |
Implements Integrator.
|
virtual |
Gets the incremental nodal support motion vector.
| mesh | Pointer to the Mesh object where Node are stored. |
| Feff | The effective force vector to incorporate support motion forces. |
| factor | The incremental load factor. |
| k | The time step number to be solved. |
Implements Integrator.
|
virtual |
Gets the acceleration vector.
Implements Integrator.
|
virtual |
Gets the displacement vector.
Implements Integrator.
|
virtual |
Gets the PML history vector.
Implements Integrator.
|
virtual |
Gets the velocity vector.
Implements Integrator.
|
virtual |
Initialize model matrices.
Implements Integrator.
|
virtual |
Sets the integrator for this algorithm.
| algorithm | Pointer to the Algorithm to obtain the effective stiffness and force. |
Implements Integrator.
|
virtual |
Set the load combination.
| combo | Pointer to the LoadCombo to be simulated. |
Implements Integrator.
|
protected |
Total previous acceleration.
|
protected |
Model damping matrix.
|
protected |
Integration time step.
|
protected |
The previous stage Force vector.
|
protected |
Model PML history matrix.
|
protected |
Model stiffness matrix.
|
protected |
Model mass matrix.
|
protected |
The static solver algorithm.
|
protected |
The finite element assembler.
|
protected |
Total initial/previous displacements.
|
protected |
Total previous pml history values.
|
protected |
Total initial/previous velocity.