Chi-Tech
lbs::MIPWGSContext2< MatType, VecType, SolverType > Struct Template Reference

#include <mip_wgs_context2.h>

Inheritance diagram for lbs::MIPWGSContext2< MatType, VecType, SolverType >:
lbs::WGSContext< MatType, VecType, SolverType > chi_math::LinearSolverContext< MatType, VecType >

Public Member Functions

 MIPWGSContext2 (DiffusionDFEMSolver &lbs_mip_ss_solver, LBSGroupset &groupset, const SetSourceFunction &set_source_function, int lhs_scope, int rhs_scope, bool log_info)
 
void PreSetupCallback () override
 
void SetPreconditioner (SolverType &solver) override
 
std::pair< int64_t, int64_t > SystemSize () override
 
void ApplyInverseTransportOperator (int scope) override
 
void PostSolveCallback () override
 
void PreSetupCallback ()
 
void SetPreconditioner (KSP &solver)
 
std::pair< int64_t, int64_t > SystemSize ()
 
void ApplyInverseTransportOperator (int scope)
 
void PostSolveCallback ()
 
- Public Member Functions inherited from lbs::WGSContext< MatType, VecType, SolverType >
 WGSContext (LBSSolver &lbs_solver, LBSGroupset &groupset, const SetSourceFunction &set_source_function, int lhs_scope, int rhs_scope, bool log_info)
 
virtual void PreSetupCallback ()
 
virtual void SetPreconditioner (SolverType &solver)
 
virtual void PostSetupCallback ()
 
virtual void PreSolveCallback ()
 
int MatrixAction (MatType &matrix, VecType &action_vector, VecType &action) override
 
virtual std::pair< int64_t, int64_t > SystemSize ()=0
 
virtual void ApplyInverseTransportOperator (int scope)=0
 
virtual void PostSolveCallback ()
 
int MatrixAction (Mat &matrix, Vec &action_vector, Vec &action)
 
- Public Member Functions inherited from chi_math::LinearSolverContext< MatType, VecType >
virtual int MatrixAction (MatType &matrix, VecType &vector, VecType &action)
 
virtual ~LinearSolverContext ()=default
 

Data Fields

DiffusionDFEMSolverlbs_mip_ss_solver_
 
- Data Fields inherited from lbs::WGSContext< MatType, VecType, SolverType >
LBSSolverlbs_solver_
 
LBSGroupsetgroupset_
 
const SetSourceFunctionset_source_function_
 
int lhs_src_scope_
 
int rhs_src_scope_
 
bool log_info_ = true
 
size_t counter_applications_of_inv_op_ = 0
 
- Data Fields inherited from chi_math::LinearSolverContext< MatType, VecType >
double rhs_norm = 0.0
 
double rhs_preconditioned_norm = 0.0
 
double custom_residual_scale = 1.0
 
ResidualScaleType residual_scale_type = ResidualScaleType::NONE
 

Detailed Description

template<class MatType, class VecType, class SolverType>
struct lbs::MIPWGSContext2< MatType, VecType, SolverType >

Definition at line 15 of file mip_wgs_context2.h.

Constructor & Destructor Documentation

◆ MIPWGSContext2()

template<class MatType , class VecType , class SolverType >
lbs::MIPWGSContext2< MatType, VecType, SolverType >::MIPWGSContext2 ( DiffusionDFEMSolver lbs_mip_ss_solver,
LBSGroupset groupset,
const SetSourceFunction set_source_function,
int  lhs_scope,
int  rhs_scope,
bool  log_info 
)
inline

Definition at line 19 of file mip_wgs_context2.h.

Member Function Documentation

◆ ApplyInverseTransportOperator() [1/2]

void lbs::MIPWGSContext2< Mat, Vec, KSP >::ApplyInverseTransportOperator ( int  scope)
virtual

This operation applies the inverse of the transform operator in the form Ay = x where the the vector x's underlying implementing is always LBS's q_moments_local vextor.

Implements lbs::WGSContext< MatType, VecType, SolverType >.

Definition at line 78 of file mip_wgs_context2.cc.

◆ ApplyInverseTransportOperator() [2/2]

template<class MatType , class VecType , class SolverType >
void lbs::MIPWGSContext2< MatType, VecType, SolverType >::ApplyInverseTransportOperator ( int  scope)
overridevirtual

This operation applies the inverse of the transform operator in the form Ay = x where the the vector x's underlying implementing is always LBS's q_moments_local vextor.

Implements lbs::WGSContext< MatType, VecType, SolverType >.

◆ PostSolveCallback() [1/2]

void lbs::MIPWGSContext2< Mat, Vec, KSP >::PostSolveCallback ( )
virtual

Reimplemented from lbs::WGSContext< MatType, VecType, SolverType >.

Definition at line 103 of file mip_wgs_context2.cc.

◆ PostSolveCallback() [2/2]

template<class MatType , class VecType , class SolverType >
void lbs::MIPWGSContext2< MatType, VecType, SolverType >::PostSolveCallback ( )
overridevirtual

◆ PreSetupCallback() [1/2]

void lbs::MIPWGSContext2< Mat, Vec, KSP >::PreSetupCallback ( )
virtual

Reimplemented from lbs::WGSContext< MatType, VecType, SolverType >.

Definition at line 22 of file mip_wgs_context2.cc.

◆ PreSetupCallback() [2/2]

template<class MatType , class VecType , class SolverType >
void lbs::MIPWGSContext2< MatType, VecType, SolverType >::PreSetupCallback ( )
overridevirtual

◆ SetPreconditioner() [1/2]

void lbs::MIPWGSContext2< Mat, Vec, KSP >::SetPreconditioner ( KSP &  solver)

Definition at line 45 of file mip_wgs_context2.cc.

◆ SetPreconditioner() [2/2]

template<class MatType , class VecType , class SolverType >
void lbs::MIPWGSContext2< MatType, VecType, SolverType >::SetPreconditioner ( SolverType solver)
overridevirtual

◆ SystemSize() [1/2]

std::pair< int64_t, int64_t > lbs::MIPWGSContext2< Mat, Vec, KSP >::SystemSize ( )
virtual

◆ SystemSize() [2/2]

template<class MatType , class VecType , class SolverType >
std::pair< int64_t, int64_t > lbs::MIPWGSContext2< MatType, VecType, SolverType >::SystemSize ( )
overridevirtual

Field Documentation

◆ lbs_mip_ss_solver_

template<class MatType , class VecType , class SolverType >
DiffusionDFEMSolver& lbs::MIPWGSContext2< MatType, VecType, SolverType >::lbs_mip_ss_solver_

Definition at line 17 of file mip_wgs_context2.h.


The documentation for this struct was generated from the following file: