template<class T>
class gismo::gsNsTimeIntegrator< T >
Time integation for incompressible Navier-Stokes equations.
|
|
const gsBoundaryInterface & | aleInterface () const |
| | get mapping between the flow domain patches and the ALE mapping patches (if only some patches of the flow domain are deformed)
|
| |
|
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 the solution using the stiffness matrix assembler
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &, gsMultiPatch< T > &, const gsVector< index_t > &) const |
| | construct the solution using the stiffness matrix assembler
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &, gsMultiPatch< T > &, short_t=0) const |
| | construct the solution using the stiffness matrix assembler
|
| |
|
virtual void | constructSolution (const gsMatrix< T > &solVector, const std::vector< gsMatrix< T > > &fixedDDofs, gsMultiPatch< T > &result, const gsVector< index_t > &unknowns) const |
| | construct the solution using the stiffness matrix 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 |
| |
| | gsNsTimeIntegrator (gsNsAssembler< T > &stiffAssembler_, gsMassAssembler< T > &massAssembler_, gsMultiPatch< T > *ALEvelocity=nullptr, gsBoundaryInterface *interfaceALE2Flow=nullptr) |
| |
| 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; always 1 for IMEX
|
| |
|
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 |
| | returns number of 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 the previously 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 | 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 (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 all fixed degrees of freedom
|
| |
| void | setFixedDofVector (gsMatrix< T > vals, short_t unk=0) |
| | the user can manually set the dirichlet Dofs for a given patch and unknown.
|
| |
|
void | setSolutionVector (const gsMatrix< T > &solutionVector) |
| | set intial conditions
|
| |
|
void | setSparseSystem (gsSparseSystem< T > &sys) |
| | Swaps the actual sparse system with the given one.
|
| |
|
const gsMatrix< T > & | solutionVector () const |
| | returns solution vector
|
| |
|
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.
|
| |