template<class T>
class gismo::gsElTimeIntegrator< T >
Time integation for equations of dynamic elasticity with implicit schemes.
|
|
const std::vector< gsMatrix< T > > & | allFixedDofs () const |
| | Returns all the Dirichlet values (if applicable)
|
| |
|
virtual void | assemble () |
| | assemble the linear system for the nonlinear solver
|
| |
|
virtual void | assemble (bool) |
| | assemble the linear system for the nonlinear solver
|
| |
|
virtual bool | assemble (const gsMatrix< T > &solutionVector, const std::vector< gsMatrix< T > > &fixedDDoFs)=0 |
| | assemble the linear system for the nonlinear solver
|
| |
| virtual bool | assemble (const gsMatrix< T > &solutionVector, const std::vector< gsMatrix< T > > &fixedDoFs) |
| |
|
virtual void | assemble (const gsMultiPatch< T > &) |
| | assemble the linear system for the nonlinear solver
|
| |
|
bool | check () |
| | checks for consistency and legal values of the stored members.
|
| |
|
virtual gsAssembler * | clone () const |
| | Clone this Assembler, making a deep copy.
|
| |
| void | computeDirichletDofs (short_t unk=0) |
| | Triggers computation of the Dirichlet dofs.
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &, const std::vector< gsMatrix< T > > &, gsMultiPatch< T > &) const |
| | construct displacement and pressure (if applicable) using the stiffness assembler
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &, gsMultiPatch< T > &, const gsVector< index_t > &) const |
| | construct displacement and pressure (if applicable) using the stiffness assembler
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &, gsMultiPatch< T > &, short_t=0) const |
| | construct displacement and pressure (if applicable) using the stiffness assembler
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &solVector, const std::vector< gsMatrix< T > > &fixedDDofs, gsMultiPatch< T > &result, const gsVector< index_t > &unknowns) const |
| | construct displacement and pressure (if applicable) using the stiffness assembler
|
| |
|
void | constructSolution (gsMultiPatch< T > &displacement) const |
| | construct displacement using the stiffness assembler
|
| |
|
virtual gsAssembler * | create () const |
| | Create an empty Assembler of the derived type and return a pointer to it. Call the initialize functions to set the members.
|
| |
|
virtual void | eliminateFixedDofs () |
| | Eliminates new Dirichelt degrees of fredom.
|
| |
|
void | finalize () |
| | finishes the assembling of the system matrix, i.e. calls its .makeCompressed() method.
|
| |
| const gsMatrix< T > & | fixedDofs (short_t unk=0) const |
| | Returns the Dirichlet values for a unknown (if applicable)
|
| |
| virtual void | getFixedDofs (index_t patch, boxSide side, gsMatrix< T > &ddofs) const |
| |
| | gsElTimeIntegrator (gsElasticityAssembler< T > &stiffAssembler_, gsMassAssembler< T > &massAssembler_) |
| |
| void | homogenizeFixedDofs (short_t unk=0) |
| | Sets any Dirichlet values to homogeneous (if applicable)
|
| |
|
void | initialize (const gsPde< T > &pde, const gsBasisRefs< T > &basis, const gsOptionList &opt=defaultOptions()) |
| | Intitialize function for, sets data fields using the pde, a vector of bases and assembler options.
|
| |
|
void | initialize (const gsPde< T > &pde, const gsMultiBasis< T > &bases, const gsOptionList &opt=defaultOptions()) |
| | Intitialize function for, sets data fields using the pde, a multi-basis and assembler options.
|
| |
|
void | initialize (const gsPde< T > &pde, const gsStdVectorRef< gsMultiBasis< T > > &bases, const gsOptionList &opt=defaultOptions()) |
| | Intitialize function for, sets data fields using the pde, a vector of multi-basis and assembler options.
|
| |
|
void | initialize (typename gsPde< T >::Ptr pde, const gsStdVectorRef< gsMultiBasis< T > > &bases, const gsOptionList &opt=defaultOptions()) |
| | Intitialize function for, sets data fields using the pde, a vector of multi-basis and assembler options.
|
| |
|
void | makeTimeStep (T timeStep) |
| | make a time step according to a chosen scheme
|
| |
|
gsBaseAssembler< T > & | mAssembler () |
| | assemblers' accessors
|
| |
|
const gsSparseMatrix< T > & | matrix () const |
| | Returns the left-hand global matrix.
|
| |
|
gsMultiBasis< T > & | multiBasis (index_t k=0) |
| | Return the multi-basis. Note: if the basis is altered, then refresh() should be called.
|
| |
|
const gsMultiBasis< T > & | multiBasis (index_t k=0) const |
| | Return the multi-basis.
|
| |
|
index_t | numberIterations () const |
| | number of iterations Newton's method required at the last time step
|
| |
|
index_t | numColNz () const |
| | Provides an estimation of the number of non-zero matrix entries per column. This value can be used for sparse matrix memory allocation.
|
| |
|
virtual int | numDofs () const |
| | return the number of free degrees of freedom
|
| |
|
virtual index_t | numFixedDofs () const |
| | get the size of the Dirichlet vector for elimination
|
| |
|
size_t | numMultiBasis () const |
| | Returns the number of multi-bases.
|
| |
|
const gsMultiPatch< T > & | patches () const |
| | Return the multipatch.
|
| |
|
const gsPde< T > & | pde () const |
| | Return the Pde.
|
| |
| void | penalizeDirichletDofs (short_t unk=0) |
| |
|
T | penalty (index_t k) const |
| | Penalty constant for patch k, used for Nitsche and / Discontinuous Galerkin methods.
|
| |
|
template<class ElementVisitor > |
| void | push () |
| | Iterates over all elements of the domain and applies the ElementVisitor.
|
| |
|
template<class BElementVisitor > |
| void | push (const bcContainer &BCs) |
| | Iterates over all elements of the boundaries BCs and applies the BElementVisitor.
|
| |
|
template<class BElementVisitor > |
| void | push (const BElementVisitor &visitor, const boundary_condition< T > &BC) |
| | Applies the BElementVisitor to the boundary condition BC.
|
| |
|
template<class ElementVisitor > |
| void | push (const ElementVisitor &visitor) |
| | Iterates over all elements of the domain and applies the ElementVisitor.
|
| |
|
template<class InterfaceVisitor > |
| void | pushInterface () |
| | Iterates over all elements of interfaces and applies the InterfaceVisitor.
|
| |
|
void | recoverState () |
| | recover solver state from saved state
|
| |
|
virtual void | refresh () |
| | Creates the mappers and setups the sparse system. to be implemented in derived classes, see scalarProblemGalerkinRefresh() for a possible implementation.
|
| |
|
const gsMatrix< T > & | rhs () const |
| | Returns the left-hand side vector(s) ( multiple right hand sides possible )
|
| |
|
void | saveState () |
| | save solver state
|
| |
|
void | setDisplacementVector (const gsMatrix< T > &displacementVector) |
| | set intial conditions
|
| |
| void | setFixedDofs (const gsMatrix< T > &coefMatrix, short_t unk=0, size_t patch=0) |
| | the user can manually set the dirichlet Dofs for a given patch and unknown, based on the Basis coefficients
|
| |
|
virtual void | setFixedDofs (const std::vector< gsMatrix< T > > &ddofs) |
| | set all fixed degrees of freedom
|
| |
| virtual void | setFixedDofs (index_t patch, boxSide side, const gsMatrix< T > &ddofs, bool oneUnk=false) |
| | Set Dirichet degrees of freedom on a given side of a given patch from a given matrix.
|
| |
| void | setFixedDofVector (gsMatrix< T > vals, short_t unk=0) |
| | the user can manually set the dirichlet Dofs for a given patch and unknown.
|
| |
|
void | setSparseSystem (gsSparseSystem< T > &sys) |
| | Swaps the actual sparse system with the given one.
|
| |
|
const gsMatrix< T > & | solutionVector () const |
| | returns complete solution vector (displacement + possibly pressure)
|
| |
|
const gsSparseSystem< T > & | system () const |
| | Returns the left-hand global matrix.
|
| |
| virtual void | updateSolution (const gsMatrix< T > &solVector, gsMultiPatch< T > &result, T theta=(T)(1)) const |
| | Update solution by adding the computed solution vector to the current solution specified by.
|
| |
| const gsMatrix< T > & | velocityVector () const |
| | returns vector of displacement DoFs
|
| |