|
| | PetscSolverFAB () |
| |
| BaseFab< Real > & | getRegFab (LevelData< FArrayBox > &a_fab, const DataIndex &a_datInd) |
| |
| const BaseFab< Real > & | getRegFab (const LevelData< FArrayBox > &a_fab, const DataIndex &a_datInd) const |
| |
| const BaseFab< Real > & | getRegFab (const LevelData< FArrayBox > &a_fab, const DataIndex &a_datInd, Box &a_box) const |
| |
| | PetscSolver () |
| |
| virtual | ~PetscSolver () |
| |
| void | destroy () |
| |
| virtual void | setHomogeneous (bool a_homogeneous) |
| |
| virtual void | setFunctionAndJacobian (PetscErrorCode(*f)(SNES, Vec, Vec, void *), PetscErrorCode(*j)(SNES, Vec, Mat *, Mat *, MatStructure *, void *)) |
| |
| virtual void | define (Real a_dx, bool a_homogeneous=true) |
| |
| virtual void | define (LinearOp< T > *, bool a_homogeneous=true) |
| |
| virtual void | solve (T &a_phi, const T &a_rhs) |
| |
| int | solve_private (T &a_phi, const T &a_rhs) |
| |
| virtual void | solve_mfree (T &a_phi, const T &a_rhs, LinearOp< T > *a_op) |
| |
| int | solve_mfree_private (T &a_phi, const T &a_rhs, LinearOp< T > *a_op) |
| |
| Real | computeResidual () |
| |
| virtual int | applyOp (T &a_phi, const T &a_rhs) |
| |
| void | setInitialGuessNonzero (bool b=true) |
| |
| void | setOptionsPrefix (const char prefix[]) |
| |
| KSP | getKSP () |
| |
| virtual int | getNNZPerRow () const |
| |
| virtual bool | supportNNZExact () const |
| |
| virtual void | rhsOperation (const T &a_rhs) |
| |
| virtual Real | addBCdiagValue (const IntVect &a_iv, const IntVect &a_jv, const T &a_rhs, const DataIndex &a_datInd, const Real coeff=1) |
| |
| int | resetOperator () |
| |
| Real | normInfinity (const T &a_phi) const |
| |
| int | setup_solver (const T &a_phi) |
| |
| int | create_mat_vec (const T &a_phi) |
| |
| PetscErrorCode | putPetscInChombo (T &a_phi, const Vec xx) |
| |
| PetscErrorCode | putChomboInPetsc (Vec out, const T &a_phi) |
| |
| virtual int | formMatrix (Mat, const T *=0, PetscInt my0=0, PetscInt nloc=0, PetscInt *d=0, PetscInt *o=0)=0 |
| |
| virtual BaseFab< Real > & | getRegFab (T &a_fab, const DataIndex &a_datInd)=0 |
| |
| virtual const BaseFab< Real > & | getRegFab (const T &a_fab, const DataIndex &a_datInd) const =0 |
| |
| virtual const BaseFab< Real > & | getRegFab (const T &a_fab, const DataIndex &a_datInd, Box &a_box) const =0 |
| |
| void | setNull (bool n=true) |
| |
| virtual | ~LinearSolver () |
| |
| virtual void | setConvergenceMetrics (Real a_metric, Real a_tolerance) |
| | Set a convergence metric, along with solver tolerance, if desired. More...
|
| |
|
| static PetscErrorCode | ksp_monitor_pout (KSP ksp, PetscInt it, PetscReal rnorm, void *ctx) |
| |
| static PetscErrorCode | apply_mfree (Mat A, Vec x, Vec f) |
| |
| LinearOp< T > * | m_op_mfree |
| |
| T | m_phi_mfree |
| |
| T | m_Lphi_mfree |
| |
| bool | m_mfree_homogeneous |
| |
| bool | m_homogeneous |
| |
| Real | m_dx |
| |
| Mat | m_mat |
| |
| void * | m_ctx |
| |
| Vec | m_xx |
| |
| Vec | m_rr |
| |
| Vec | m_bb |
| |
| SNES | m_snes |
| |
| KSP | m_ksp |
| |
| LevelData< BaseFab< PetscInt > > | m_gids |
| |
| PetscInt | m_gid0 |
| |
| virtual Real | addBCrhsValue (const IntVect &a_iv, const T &a_phi, const DataIndex &a_datInd, const Real &coeff=1) |
| |
| PetscInt | m_defined |
| |
| PetscErrorCode(* | m_function )(SNES, Vec, Vec, void *) |
| |
| PetscErrorCode(* | m_jacobian )(SNES, Vec, Mat *, Mat *, MatStructure *, void *) |
| |
| char | m_prestring [32] |
| |
| bool | m_null |
| |
| bool | m_nz_init_guess |
| |
| LevelData< BaseFab< bool > > | m_bccode |
| |