IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
|
#include </home/runner/work/IBAMR/IBAMR/include/ibamr/KrylovFreeBodyMobilitySolver.h>
Public Member Functions | |
KrylovFreeBodyMobilitySolver (std::string object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, std::string default_options_prefix, SAMRAI::tbox::Pointer< IBAMR::CIBStrategy > cib_strategy, MPI_Comm petsc_comm=PETSC_COMM_WORLD) | |
Constructor for ![]() | |
virtual | ~KrylovFreeBodyMobilitySolver () |
Destructor. | |
void | setMobilitySolver (SAMRAI::tbox::Pointer< IBAMR::CIBMobilitySolver > mobility_solver) |
Set the mobility solver for this class. | |
void | setInterpScale (const double interp_scale) |
Set scale for interp operator. | |
void | setSpreadScale (const double spread_scale) |
Set scale for spread operator. | |
void | setStokesSpecifications (const IBAMR::StokesSpecifications &stokes_spec) |
Set stokes specifications. | |
void | setKSPType (const std::string &ksp_type) |
Set the KSP type. | |
void | setOptionsPrefix (const std::string &options_prefix) |
Set the options prefix used by this PETSc solver object. | |
Functions to access the underlying PETSc objects. | |
const KSP & | getPETScKSP () const |
Get the PETSc KSP object. | |
bool | solveSystem (Vec x, Vec b) |
Solve the linear system of equations ![]() ![]() | |
void | initializeSolverState (Vec x, Vec b) |
Compute hierarchy dependent data required for solving ![]() | |
void | deallocateSolverState () |
Remove all hierarchy dependent data allocated by initializeSolverState(). | |
void | setSolutionTime (double solution_time) |
Set the time at which the solution is to be evaluated. | |
void | setTimeInterval (double current_time, double new_time) |
Set the current time interval. | |
We are trying to solve the problem
in this class. Here,
void IBAMR::KrylovFreeBodyMobilitySolver::deallocateSolverState | ( | ) |
Remove all hierarchy dependent data allocated by initializeSolverState().
void IBAMR::KrylovFreeBodyMobilitySolver::initializeSolverState | ( | Vec | x, |
Vec | b | ||
) |
Compute hierarchy dependent data required for solving
x | solution vector |
b | right-hand-side vector |
bool IBAMR::KrylovFreeBodyMobilitySolver::solveSystem | ( | Vec | x, |
Vec | b | ||
) |
Solve the linear system of equations
x | solution vector |
b | right-hand-side vector |
true
if the solver converged to the specified tolerances, false
otherwise