6#include <deal.II/base/exceptions.h>
15#include <prismspf/config.h>
19template <
unsigned int dim,
unsigned int degree,
typename number>
25template <
unsigned int dim,
unsigned int degree,
typename number>
29 using SizeType = dealii::VectorizedArray<number>;
50 [[maybe_unused]]
const unsigned int &component,
51 [[maybe_unused]]
const dealii::Point<dim> &point,
52 [[maybe_unused]] number &scalar_value,
53 [[maybe_unused]] number &vector_component_value)
const
62 [[maybe_unused]]
const unsigned int &boundary_id,
63 [[maybe_unused]]
const unsigned int &component,
64 [[maybe_unused]]
const dealii::Point<dim> &point,
65 [[maybe_unused]] number &scalar_value,
66 [[maybe_unused]] number &vector_component_value)
const
72 vector_component_value);
81 [[maybe_unused]]
unsigned int solver_id)
const
90 [[maybe_unused]]
unsigned int solver_id)
const
99 [[maybe_unused]]
unsigned int solver_id)
108 [[maybe_unused]]
unsigned int solver_id)
117 Assert(
user_inputs !=
nullptr, dealii::StandardExceptions::ExcNotInitialized());
127 Assert(
pf_tools !=
nullptr, dealii::StandardExceptions::ExcNotInitialized());
143PRISMS_PF_END_NAMESPACE
This class permits the access of a subset of indexed fields and gives an error if any non-allowed fie...
Definition field_container.h:47
PDEOperatorBase(const UserInputParameters< dim > &_user_inputs, const PhaseFieldTools< dim > &_pf_tools)
Constructor.
Definition pde_operator_base.h:34
dealii::VectorizedArray< number > SizeType
Definition pde_operator_base.h:29
virtual void set_dirichlet(const unsigned int &index, const unsigned int &boundary_id, const unsigned int &component, const dealii::Point< dim > &point, number &scalar_value, number &vector_component_value) const
User-implemented function for setting Dirichlet boundary conditions. Default behavior is to call init...
Definition pde_operator_base.h:61
const UserInputParameters< dim > * user_inputs
The user-inputs.
Definition pde_operator_base.h:135
virtual void compute_rhs(FieldContainer< dim, degree, number > &variable_list, const SimulationTimer &sim_timer, unsigned int solver_id) const
User-implemented class for the RHS of explicit equations.
Definition pde_operator_base.h:79
const PhaseFieldTools< dim > * pf_tools
Phase field tools.
Definition pde_operator_base.h:140
const UserInputParameters< dim > & get_user_inputs() const
Get the user inputs (constant reference).
Definition pde_operator_base.h:115
virtual ~PDEOperatorBase()=default
Destructor.
const PhaseFieldTools< dim > & get_pf_tools() const
Get the phase field tools (constant reference).
Definition pde_operator_base.h:125
virtual void post_solve_block(SolveContext< dim, degree, number > &solve_context, unsigned int solver_id)
Function called right after a solve block.Gives access to all the internal classes,...
Definition pde_operator_base.h:107
virtual void set_initial_condition(const unsigned int &index, const unsigned int &component, const dealii::Point< dim > &point, number &scalar_value, number &vector_component_value) const
User-implemented class for the setting initial conditions.
Definition pde_operator_base.h:49
virtual void compute_lhs(FieldContainer< dim, degree, number > &variable_list, const SimulationTimer &sim_timer, unsigned int solver_id) const
User-implemented class for the RHS of nonexplicit equations.
Definition pde_operator_base.h:88
virtual void pre_solve_block(SolveContext< dim, degree, number > &solve_context, unsigned int solver_id)
Function called right before a solve block. Gives access to all the internal classes,...
Definition pde_operator_base.h:98
Definition simulation_timer.h:13
This class provides context for a solver with ptrs to all the relevant dependencies.
Definition solve_context.h:36
Definition conditional_ostreams.cc:20