|
BSpline Finite Element Exterior Calculus
|
Module containing the linear solver for linear systems of equations where the unknown is an m-form. More...
Data Types | |
| type | abstractsolver |
| Abstract type for a generic linear solver for m-form systems of equations. More... | |
| type | genericsolver |
| Generic solver for m-form systems of equations. More... | |
| interface | solverinitoptions |
| type | solverinittraits |
| interface | solversolveoptions |
Functions/Subroutines | |
| type(solversolveoptions) function | make_solver_solve_options (rtol, atol, max_iter, verbosity, verbosity_flag) |
| Create a SolverSolveOptions object from the provided arguments. | |
| subroutine, public | create_ksp (ksp, mat, space, options, constraint) |
| subroutine, public | get_constrained_petsc_matrix (mat_out, mat_in, constraint_sol, coeff, constraint_res) |
| Get the constrained PETSc matrix for the given input matrix and constraint. | |
Module containing the linear solver for linear systems of equations where the unknown is an m-form.
| subroutine, public m_mform_solver::get_constrained_petsc_matrix | ( | intent(out) | mat_out, |
| intent(in) | mat_in, | ||
| type(mformconstraint), intent(in) | constraint_sol, | ||
| real(wp), intent(in), optional | coeff, | ||
| type(mformconstraint), intent(in), optional | constraint_res ) |
Get the constrained PETSc matrix for the given input matrix and constraint.
If projection is used, this yields the matrix L <- P^T * L * P + coeff * (I - P)^T * M * (I - P) and if extraction is used, this yields the matrix L <- E^T * L * E
| [out] | mat_out | The output matrix (the constrained PETSc matrix) |
| [in] | mat_in | The input matrix (PETSc matrix) |
| [in] | constraint_sol | The constraint object acting on the solution space |
| [in] | coeff | _(optional)_ The coefficient for the (I - P)^T * M * (I - P) part (default is 0.0) |
| [in] | constraint_res | _(optional)_ The constraint object acting on the residual space (default is the same as constraint_sol) |
| type(solversolveoptions) function m_mform_solver::make_solver_solve_options | ( | real(wp), intent(in), optional | rtol, |
| real(wp), intent(in), optional | atol, | ||
| integer, intent(in), optional | max_iter, | ||
| character(*), intent(in), optional | verbosity, | ||
| integer, intent(in), optional | verbosity_flag ) |
Create a SolverSolveOptions object from the provided arguments.
| [in] | rtol | _(optional)_ The relative tolerance for the solver (default is 1.e-10, or the value set in the init() method) |
| [in] | atol | _(optional)_ The absolute tolerance for the solver (default is 1.e-20, or the value set in the init() method) |
| [in] | max_iter | _(optional)_ The maximum number of iterations for the solver (default is the value set in the init() method) |
| [in] | verbosity | _(optional)_ The verbosity level for the solver (default is the value set in the init() method) |
| [in] | verbosity_flag | _(optional)_ The verbosity flag for the solver (default is the value set in the init() method) |