PRISMS-PF Manual
Loading...
Searching...
No Matches
SolveContext< dim, degree, number > Class Template Reference

This class provides context for a solver with ptrs to all the relevant dependencies. More...

#include <solve_context.h>

Collaboration diagram for SolveContext< dim, degree, number >:
[legend]

Public Member Functions

 SolveContext (std::vector< FieldAttributes > _field_attributes, const UserInputParameters< dim > &_user_inputs, TriangulationManager< dim > &_triangulation_manager, DoFManager< dim, degree > &_dof_manager, ConstraintManager< dim, degree, number > &_constraint_manager, SolutionIndexer< dim, number > &_solution_indexer, const PDEOperatorBase< dim, degree, number > &_pde_operator)
 Constructor.
 
const std::vector< FieldAttributes > & get_field_attributes () const
 Get the field attributes.
 
const UserInputParameters< dim > & get_user_inputs () const
 Get the user-inputs.
 
const TriangulationManager< dim > & get_triangulation_manager () const
 Get the triangulation manager.
 
TriangulationManager< dim > & get_triangulation_manager ()
 Get the triangulation manager.
 
const DoFManager< dim, degree > & get_dof_manager () const
 Get the dof manager.
 
DoFManager< dim, degree > & get_dof_manager ()
 Get the dof manager.
 
const ConstraintManager< dim, degree, number > & get_constraint_manager () const
 Get the constraint manager.
 
ConstraintManager< dim, degree, number > & get_constraint_manager ()
 Get the constraint manager.
 
SolutionIndexer< dim, number > & get_solution_indexer () const
 Get the solution manager.
 
const InvMManager< dim, degree, number > & get_invm_manager () const
 Get the invm manager.
 
InvMManager< dim, degree, number > & get_invm_manager ()
 Get the invm manager.
 
const SimulationTimerget_simulation_timer () const
 Get the simulation timer.
 
SimulationTimerget_simulation_timer ()
 Get the simulation timer.
 
const PDEOperatorBase< dim, degree, number > & get_pde_operator () const
 Get a shared pointer to the pde operator.
 

Private Attributes

std::vector< FieldAttributesfield_attributes
 Field attributes.
 
const UserInputParameters< dim > * user_inputs
 User-inputs.
 
TriangulationManager< dim > * triangulation_manager
 Triangulation manager.
 
DoFManager< dim, degree > * dof_manager
 DoF manager.
 
ConstraintManager< dim, degree, number > * constraint_manager
 Constraint manager.
 
SolutionIndexer< dim, number > * solution_indexer
 Solution manager.
 
InvMManager< dim, degree, numberinvm_manager
 Solution manager.
 
SimulationTimer sim_timer
 Simulation timer.
 
const PDEOperatorBase< dim, degree, number > * pde_operator
 PDE operator.
 

Detailed Description

template<unsigned int dim, unsigned int degree, typename number>
class SolveContext< dim, degree, number >

This class provides context for a solver with ptrs to all the relevant dependencies.

The context in this case refers to all the finite element machinery needed to solve the fields. For example, it contains the triangulation manager and pde operator that evaluates the user-specified PDEs.

Constructor & Destructor Documentation

◆ SolveContext()

template<unsigned int dim, unsigned int degree, typename number >
SolveContext< dim, degree, number >::SolveContext ( std::vector< FieldAttributes _field_attributes,
const UserInputParameters< dim > &  _user_inputs,
TriangulationManager< dim > &  _triangulation_manager,
DoFManager< dim, degree > &  _dof_manager,
ConstraintManager< dim, degree, number > &  _constraint_manager,
SolutionIndexer< dim, number > &  _solution_indexer,
const PDEOperatorBase< dim, degree, number > &  _pde_operator 
)
inline

Constructor.

Member Function Documentation

◆ get_constraint_manager() [1/2]

template<unsigned int dim, unsigned int degree, typename number >
ConstraintManager< dim, degree, number > & SolveContext< dim, degree, number >::get_constraint_manager ( )
inline

Get the constraint manager.

◆ get_constraint_manager() [2/2]

template<unsigned int dim, unsigned int degree, typename number >
const ConstraintManager< dim, degree, number > & SolveContext< dim, degree, number >::get_constraint_manager ( ) const
inline

Get the constraint manager.

◆ get_dof_manager() [1/2]

template<unsigned int dim, unsigned int degree, typename number >
DoFManager< dim, degree > & SolveContext< dim, degree, number >::get_dof_manager ( )
inline

Get the dof manager.

◆ get_dof_manager() [2/2]

template<unsigned int dim, unsigned int degree, typename number >
const DoFManager< dim, degree > & SolveContext< dim, degree, number >::get_dof_manager ( ) const
inline

Get the dof manager.

◆ get_field_attributes()

template<unsigned int dim, unsigned int degree, typename number >
const std::vector< FieldAttributes > & SolveContext< dim, degree, number >::get_field_attributes ( ) const
inline

Get the field attributes.

◆ get_invm_manager() [1/2]

template<unsigned int dim, unsigned int degree, typename number >
InvMManager< dim, degree, number > & SolveContext< dim, degree, number >::get_invm_manager ( )
inline

Get the invm manager.

◆ get_invm_manager() [2/2]

template<unsigned int dim, unsigned int degree, typename number >
const InvMManager< dim, degree, number > & SolveContext< dim, degree, number >::get_invm_manager ( ) const
inline

Get the invm manager.

◆ get_pde_operator()

template<unsigned int dim, unsigned int degree, typename number >
const PDEOperatorBase< dim, degree, number > & SolveContext< dim, degree, number >::get_pde_operator ( ) const
inline

Get a shared pointer to the pde operator.

◆ get_simulation_timer() [1/2]

template<unsigned int dim, unsigned int degree, typename number >
SimulationTimer & SolveContext< dim, degree, number >::get_simulation_timer ( )
inline

Get the simulation timer.

◆ get_simulation_timer() [2/2]

template<unsigned int dim, unsigned int degree, typename number >
const SimulationTimer & SolveContext< dim, degree, number >::get_simulation_timer ( ) const
inline

Get the simulation timer.

◆ get_solution_indexer()

template<unsigned int dim, unsigned int degree, typename number >
SolutionIndexer< dim, number > & SolveContext< dim, degree, number >::get_solution_indexer ( ) const
inline

Get the solution manager.

◆ get_triangulation_manager() [1/2]

template<unsigned int dim, unsigned int degree, typename number >
TriangulationManager< dim > & SolveContext< dim, degree, number >::get_triangulation_manager ( )
inline

Get the triangulation manager.

◆ get_triangulation_manager() [2/2]

template<unsigned int dim, unsigned int degree, typename number >
const TriangulationManager< dim > & SolveContext< dim, degree, number >::get_triangulation_manager ( ) const
inline

Get the triangulation manager.

◆ get_user_inputs()

template<unsigned int dim, unsigned int degree, typename number >
const UserInputParameters< dim > & SolveContext< dim, degree, number >::get_user_inputs ( ) const
inline

Get the user-inputs.

Member Data Documentation

◆ constraint_manager

template<unsigned int dim, unsigned int degree, typename number >
ConstraintManager<dim, degree, number>* SolveContext< dim, degree, number >::constraint_manager
private

Constraint manager.

◆ dof_manager

template<unsigned int dim, unsigned int degree, typename number >
DoFManager<dim, degree>* SolveContext< dim, degree, number >::dof_manager
private

DoF manager.

◆ field_attributes

template<unsigned int dim, unsigned int degree, typename number >
std::vector<FieldAttributes> SolveContext< dim, degree, number >::field_attributes
private

Field attributes.

◆ invm_manager

template<unsigned int dim, unsigned int degree, typename number >
InvMManager<dim, degree, number> SolveContext< dim, degree, number >::invm_manager
private

Solution manager.

◆ pde_operator

template<unsigned int dim, unsigned int degree, typename number >
const PDEOperatorBase<dim, degree, number>* SolveContext< dim, degree, number >::pde_operator
private

PDE operator.

◆ sim_timer

template<unsigned int dim, unsigned int degree, typename number >
SimulationTimer SolveContext< dim, degree, number >::sim_timer
private

Simulation timer.

◆ solution_indexer

template<unsigned int dim, unsigned int degree, typename number >
SolutionIndexer<dim, number>* SolveContext< dim, degree, number >::solution_indexer
private

Solution manager.

◆ triangulation_manager

template<unsigned int dim, unsigned int degree, typename number >
TriangulationManager<dim>* SolveContext< dim, degree, number >::triangulation_manager
private

Triangulation manager.

◆ user_inputs

template<unsigned int dim, unsigned int degree, typename number >
const UserInputParameters<dim>* SolveContext< dim, degree, number >::user_inputs
private

User-inputs.


The documentation for this class was generated from the following files: