Class representing the element matrices for a dynamic FEM problem based on Newmark time integration.
More...
|
| | NewmarkMats (double a1, double a2, double b=0.0, double c=0.0, bool generalizedAlpha=false) |
| | The constructor initializes the time integration parameters. More...
|
| |
|
virtual | ~NewmarkMats () |
| | Empty destructor.
|
| |
| virtual void | setStepSize (double dt, int it) |
| | Updates the time step size and the isPredictor flag. More...
|
| |
|
virtual const Matrix & | getNewtonMatrix () const |
| | Returns the element-level Newton matrix.
|
| |
|
virtual const Vector & | getRHSVector () const |
| | Returns the element-level right-hand-side vector.
|
| |
|
const Vector & | dis (bool prev=false) const |
| | Returns a const reference to current/previous displacement vector.
|
| |
|
const Vector & | vel (bool prev=false) const |
| | Returns a const reference to current/previous velocity vector.
|
| |
|
const Vector & | acc (bool prev=false) const |
| | Returns a const reference to current/previous velocity vector.
|
| |
|
| ElmMats (bool lhs=true) |
| | Default constructor.
|
| |
|
virtual | ~ElmMats () |
| | Empty destructor.
|
| |
| void | resize (size_t nA, size_t nB, size_t nC=0) |
| | Defines the number of element matrices and vectors. More...
|
| |
| void | redim (size_t ndim) |
| | Sets the dimension of the element matrices and vectors. More...
|
| |
|
virtual bool | empty () const |
| | Checks if the element matrices are empty.
|
| |
|
void | printMat (std::ostream &os, size_t idx=0, const char *prefix=nullptr) const |
| | Prints element matrix idx to output stream os.
|
| |
|
void | printVec (std::ostream &os, size_t idx=0, const char *prefix=nullptr) const |
| | Prints element vector idx to output stream os.
|
| |
|
void | printScl (std::ostream &os, size_t idx=0, const char *prefix=nullptr) const |
| | Prints element scalar idx to output stream os.
|
| |
|
virtual | ~LocalIntegral () |
| | Empty destructor.
|
| |
|
virtual void | destruct () |
| | Virtual destruction method to clean up after numerical integration.
|
| |
|
virtual const LocalIntegral * | ref () const |
| | Returns the LocalIntegral object to assemble into the global one.
|
| |
| void | getSolution (size_t nsd, size_t nen, Matrix *u=nullptr, Matrix *v=nullptr, Matrix *a=nullptr, bool forceCurrent=false) const |
| | Extracts element solution vectors as nsd by nen matrices. More...
|
| |
|
|
std::vector< Matrix > | A |
| | The element coefficient matrices.
|
| |
|
std::vector< Vector > | b |
| | The element right-hand-side vectors.
|
| |
|
std::vector< double > | c |
| | The scalar quantities.
|
| |
|
std::vector< const char * > | Aname |
| | Matrix names (for debug print)
|
| |
|
std::vector< const char * > | Bname |
| | Vector names (for debug print)
|
| |
|
std::vector< const char * > | Cname |
| | Scalar names (for debug print)
|
| |
|
bool | rhsOnly |
| | If true, only the right-hand-sides are assembled.
|
| |
|
bool | withLHS |
| | If true, left-hand-side element matrices are present.
|
| |
|
Vectors | vec |
| | Element-level primary solution vectors.
|
| |
|
| LocalIntegral () |
| | The default constructor is protected to allow sub-classes only.
|
| |
Class representing the element matrices for a dynamic FEM problem based on Newmark time integration.
| NewmarkMats::NewmarkMats |
( |
double |
a1, |
|
|
double |
a2, |
|
|
double |
b = 0.0, |
|
|
double |
c = 0.0, |
|
|
bool |
generalizedAlpha = false |
|
) |
| |
The constructor initializes the time integration parameters.
- Parameters
-
| [in] | a1 | Mass-proportional damping coefficient |
| [in] | a2 | Stiffness-proportional damping coefficient |
| [in] | b | Time integration parameter |
| [in] | c | Time integration parameter |
| [in] | generalizedAlpha | If true, interpret b and c as the generalized-alpha parameters αm and αf, respectively, otherwise as β and γ, respectively |
References alpha1, alpha2, alpha_f, alpha_m, ElmMats::b, beta, ElmMats::c, gamma, and slvDisp.