template<class T, int MatOrder>
class gismo::gsINSSolver< T, MatOrder >
A base class for incompressible Navier-Stokes solvers.
- Template Parameters
-
| T | real number type |
| MatOrder | sparse matrix storage order (ColMajor/RowMajor) |
|
| virtual void | applySolver (gsMatrix< T > &solution) |
| | Solve the linear system.
|
| |
| int | checkGeoJacobian (int npts=-1, T dist=-1, T tol=-1) |
| | Check values of jacobian near boundaries of all patches.
|
| |
| gsField< T > | constructSolution (int unk) const |
| | Construct solution field for the unknown unk for the current solution vector.
|
| |
|
virtual gsINSAssembler< T, MatOrder > * | getAssembler () const |
| | Returns a pointer to the assembler.
|
| |
|
virtual const T | getAssemblyTime () const |
| | Returns the total time spent on matrix assembly.
|
| |
|
virtual const T | getInitAssemblyTime () const |
| | Returns the time of the initial matrix assembly.
|
| |
|
unsigned | getIterationNumber () const |
| | Returns the current iteration number.
|
| |
|
gsFlowLinSystSolver< T, MatOrder > * | getLinSolver () const |
| | Returns a pointer to the linear system solver.
|
| |
|
virtual std::string | getName () |
| | Retrurns the name of the class as a string.
|
| |
|
virtual gsFlowSolverParams< T > | getParams () |
| | Retrurns the solver parameters.
|
| |
|
const gsMatrix< T > & | getSolution () const |
| | Returns the current solution vector.
|
| |
|
virtual const T | getSolverSetupTime () const |
| | Returns the total time spent on linear solver setup.
|
| |
|
virtual const T | getSolveTime () const |
| | Returns the total time spent on solving of the linear systems.
|
| |
|
| gsINSSolver (gsFlowSolverParams< T > ¶ms) |
| | Constructor.
|
| |
|
virtual void | initialize () |
| | Initialize the solver.
|
| |
|
virtual void | initIteration () |
| | Prepare for the solution process.
|
| |
| virtual void | initIteration (const gsSparseMatrix< T, MatOrder > &mat) |
| | Prepare for the solution process.
|
| |
| virtual void | markDofsAsEliminatedZeros (const std::vector< gsMatrix< index_t > > &boundaryDofs, const int unk) |
| | Eliminate given DOFs as homogeneous Dirichlet boundary.
|
| |
|
virtual void | nextIteration () |
| | Perform next iteration step.
|
| |
| virtual void | nextIteration (const unsigned numberOfIterations) |
| | Perform several iteration steps.
|
| |
|
int | numDofs () const |
| | Returns the total number of DOFs (the matrix size).
|
| |
|
virtual T | residualRelNorm () const |
| | Compute and return the relative residual norm for the current solution.
|
| |
|
virtual T | residualRelNorm (const gsMatrix< T > &solution) const |
| | Compute and return the relative residual norm for the given solution.
|
| |
| virtual void | setSolution (const gsMatrix< T > &solVector) |
| | Set a given solution vector as current solution.
|
| |
|
T | solutionChangeRelNorm () const |
| | Compute and return the relative norm of the solution change.
|
| |
| T | solutionChangeRelNorm (gsMatrix< T > solOld, gsMatrix< T > solNew) const |
| | Compute and return the relative norm of the solution change given the two successive solutions.
|
| |
| void | solve (const int maxIterations, const T epsilon=1e-3, const int minIterations=1) |
| | Solve the incompressible Navier-Stokes problem.
|
| |
|
virtual void | solveStokes () |
| | Compute the Stokes problem and save the solution into m_solution.
|
| |
| virtual void | updateAssembler (bool updateSol=true) |
| | Update the assembler with current solution.
|
| |
| virtual void | updateAssembler (const gsMatrix< T > &sol, bool updateSol=true) |
| | Update the assembler with a given solution.
|
| |
| virtual void | writeSolChangeRelNorm (gsMatrix< T > solOld, gsMatrix< T > solNew) |
| | Compute and display the relative norm of the solution change given the two successive solutions.
|
| |