adamantine
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType > Class Template Reference

#include <ThermalPhysics.hh>

Inheritance diagram for adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >:
adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >

Public Member Functions

 ThermalPhysics (MPI_Comm const &communicator, boost::property_tree::ptree const &database, Geometry< dim > &geometry, Boundary const &boundary, MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties)
 
void setup () override
 
void setup_dofs () override
 
void compute_inverse_mass_matrix () override
 
void add_material_start (std::vector< std::vector< typename dealii::DoFHandler< dim >::active_cell_iterator >> const &elements_to_activate, std::vector< double > const &new_deposition_cos, std::vector< double > const &new_deposition_sin, std::vector< bool > &new_has_melted, unsigned int const activation_start, unsigned int const activation_end, dealii::LA::distributed::Vector< double, MemorySpaceType > &solution) override
 
void add_material_end (double const new_material_temperature, dealii::LA::distributed::Vector< double, MemorySpaceType > &solution) override
 
void update_physics_parameters (boost::property_tree::ptree const &heat_source_database) override
 
double evolve_one_time_step (double t, double delta_t, dealii::LA::distributed::Vector< double, MemorySpaceType > &solution, std::vector< Timer > &timers) override
 
void initialize_dof_vector (double const value, dealii::LA::distributed::Vector< double, MemorySpaceType > &vector) const override
 
void get_state_from_material_properties () override
 
void set_state_to_material_properties () override
 
void load_checkpoint (std::string const &filename, dealii::LA::distributed::Vector< double, MemorySpaceType > &temperature) override
 
void save_checkpoint (std::string const &filename, dealii::LA::distributed::Vector< double, MemorySpaceType > &temperature) override
 
void set_material_deposition_orientation (std::vector< double > const &deposition_cos, std::vector< double > const &deposition_sin) override
 
double get_deposition_cos (unsigned int const i) const override
 
double get_deposition_sin (unsigned int const i) const override
 
void mark_has_melted (double const threshold_temperature, dealii::LA::distributed::Vector< double, MemorySpaceType > &temperature) override
 
std::vector< bool > get_has_melted_vector () const override
 
void set_has_melted_vector (std::vector< bool > const &has_melted) override
 
bool get_has_melted (unsigned int const i) const override
 
dealii::DoFHandler< dim > & get_dof_handler () override
 
dealii::AffineConstraints< double > & get_affine_constraints () override
 
std::vector< std::shared_ptr< HeatSource< dim > > > & get_heat_sources () override
 
unsigned int get_fe_degree () const override
 
- Public Member Functions inherited from adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >
 ThermalPhysicsInterface ()=default
 
virtual ~ThermalPhysicsInterface ()=default
 

Private Types

using LA_Vector = typename dealii::LA::distributed::Vector< double, MemorySpaceType >
 

Private Member Functions

void update_material_deposition_orientation ()
 
LA_Vector evaluate_thermal_physics (double const t, LA_Vector const &y, std::vector< Timer > &timers) const
 

Private Attributes

bool _forward_euler = false
 
Geometry< dim > & _geometry
 
Boundary _boundary
 
dealii::hp::FECollection< dim > _fe_collection
 
dealii::DoFHandler< dim > _dof_handler
 
dealii::AffineConstraints< double > _affine_constraints
 
dealii::hp::QCollection< 1 > _q_collection
 
dealii::parallel::CellWeights< dim > _cell_weights
 
std::vector< double > _deposition_cos
 
std::vector< double > _deposition_sin
 
std::vector< bool > _has_melted
 
MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & _material_properties
 
std::vector< std::shared_ptr< HeatSource< dim > > > _heat_sources
 
bool _print_heat_input
 
std::shared_ptr< ThermalOperatorBase< dim, MemorySpaceType > > _thermal_operator
 
std::unique_ptr< dealii::TimeStepping::ExplicitRungeKutta< LA_Vector > > _time_stepping
 
std::unique_ptr< dealii::parallel::distributed::CellDataTransfer< dim, dim, std::vector< std::vector< double > > > > _cell_data_trans
 
dealii::Vector< double > _cell_solution
 
std::vector< std::vector< double > > _data_to_transfer
 

Detailed Description

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates, typename MemorySpaceType, typename QuadratureType>
class adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >

This class takes care of building the linear operator and the right-hand-side. Also used to evolve the system in time.

Definition at line 33 of file ThermalPhysics.hh.

Member Typedef Documentation

◆ LA_Vector

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
using adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::LA_Vector = typename dealii::LA::distributed::Vector<double, MemorySpaceType>
private

Definition at line 123 of file ThermalPhysics.hh.

Constructor & Destructor Documentation

◆ ThermalPhysics()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::ThermalPhysics ( MPI_Comm const &  communicator,
boost::property_tree::ptree const &  database,
Geometry< dim > &  geometry,
Boundary const &  boundary,
MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &  material_properties 
)

Constructor.

Definition at line 350 of file ThermalPhysics.templates.hh.

Member Function Documentation

◆ add_material_end()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::add_material_end ( double const  new_material_temperature,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  solution 
)
overridevirtual

Finalize adding material by completing the transfer of solutions after the discretization has been adapted to the activated cells.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 730 of file ThermalPhysics.templates.hh.

◆ add_material_start()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::add_material_start ( std::vector< std::vector< typename dealii::DoFHandler< dim >::active_cell_iterator >> const &  elements_to_activate,
std::vector< double > const &  new_deposition_cos,
std::vector< double > const &  new_deposition_sin,
std::vector< bool > &  new_has_melted,
unsigned int const  activation_start,
unsigned int const  activation_end,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  solution 
)
overridevirtual

Activate more elements of the mesh and interpolate the solution to the new domain.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 599 of file ThermalPhysics.templates.hh.

◆ compute_inverse_mass_matrix()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::compute_inverse_mass_matrix ( )
overridevirtual

Compute the inverse of the mass matrix associated to the Physics.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 531 of file ThermalPhysics.templates.hh.

◆ evaluate_thermal_physics()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::LA::distributed::Vector< double, MemorySpaceType > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::evaluate_thermal_physics ( double const  t,
LA_Vector const &  y,
std::vector< Timer > &  timers 
) const
private

Compute the right-hand side and apply the TermalOperator.

Definition at line 929 of file ThermalPhysics.templates.hh.

◆ evolve_one_time_step()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
double adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::evolve_one_time_step ( double  t,
double  delta_t,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  solution,
std::vector< Timer > &  timers 
)
overridevirtual

Evolve the physics from time t to time t+delta_t. solution first contains the field at time t and after execution of the function, the field at time t+delta_t.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 858 of file ThermalPhysics.templates.hh.

◆ get_affine_constraints()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::AffineConstraints< double > & adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_affine_constraints ( )
inlineoverridevirtual

Return the AffineConstraints<double>.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 321 of file ThermalPhysics.hh.

◆ get_deposition_cos()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
double adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_deposition_cos ( unsigned int const  i) const
inlineoverridevirtual

Return the cosine of the material deposition angle for the activated cell i.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 259 of file ThermalPhysics.hh.

◆ get_deposition_sin()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
double adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_deposition_sin ( unsigned int const  i) const
inlineoverridevirtual

Return the sine of the material deposition angle for the activated cell i.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 270 of file ThermalPhysics.hh.

◆ get_dof_handler()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::DoFHandler< dim > & adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_dof_handler ( )
inlineoverridevirtual

Return the DoFHandler.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 311 of file ThermalPhysics.hh.

◆ get_fe_degree()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
unsigned int adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_fe_degree ( ) const
inlineoverridevirtual

Return the degree of the finite element.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 341 of file ThermalPhysics.hh.

◆ get_has_melted()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
bool adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_has_melted ( unsigned int const  ) const
inlineoverridevirtual

Returns one entry of _has_melted

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 301 of file ThermalPhysics.hh.

◆ get_has_melted_vector()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector< bool > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_has_melted_vector ( ) const
inlineoverridevirtual

Returns _has_melted

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 280 of file ThermalPhysics.hh.

◆ get_heat_sources()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector< std::shared_ptr< HeatSource< dim > > > & adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_heat_sources ( )
inlineoverridevirtual

Return the heat sources.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 331 of file ThermalPhysics.hh.

◆ get_state_from_material_properties()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::get_state_from_material_properties ( )
overridevirtual

Populate the state of the materials in the Physics object from the MaterialProperty object.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 909 of file ThermalPhysics.templates.hh.

◆ initialize_dof_vector()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::initialize_dof_vector ( double const  value,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  vector 
) const
overridevirtual

Initialize the given vector with the given value.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 890 of file ThermalPhysics.templates.hh.

◆ load_checkpoint()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::load_checkpoint ( std::string const &  filename,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  temperature 
)
overridevirtual

Load the state of the simulation from files.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 974 of file ThermalPhysics.templates.hh.

◆ mark_has_melted()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::mark_has_melted ( double const  threshold_temperature,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  temperature 
)
overridevirtual

Mark cells above the given temperature to denote that they have melted

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 541 of file ThermalPhysics.templates.hh.

◆ save_checkpoint()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::save_checkpoint ( std::string const &  filename,
dealii::LA::distributed::Vector< double, MemorySpaceType > &  temperature 
)
overridevirtual

Write the current state of the simulation on the filesystem.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 1084 of file ThermalPhysics.templates.hh.

◆ set_has_melted_vector()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::set_has_melted_vector ( std::vector< bool > const &  has_melted)
inlineoverridevirtual

Sets _has_melted

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 290 of file ThermalPhysics.hh.

◆ set_material_deposition_orientation()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::set_material_deposition_orientation ( std::vector< double > const &  deposition_cos,
std::vector< double > const &  deposition_sin 
)
inlineoverridevirtual

Set the deposition cosine and sine and call update_material_deposition_orientation.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 243 of file ThermalPhysics.hh.

◆ set_state_to_material_properties()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::set_state_to_material_properties ( )
overridevirtual

Populate the state of the materials in the MaterialProperty object from the Physics object.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 919 of file ThermalPhysics.templates.hh.

◆ setup()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::setup ( )
overridevirtual

Set up and initialize the data structure.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 500 of file ThermalPhysics.templates.hh.

◆ setup_dofs()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::setup_dofs ( )
overridevirtual

Associate the AffineConstraints<double> and the MatrixFree objects to the underlying Triangulation.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 512 of file ThermalPhysics.templates.hh.

◆ update_material_deposition_orientation()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::update_material_deposition_orientation
inlineprivate

Update the depostion cosine and sine from the Physics object to the operator object.

Definition at line 233 of file ThermalPhysics.hh.

◆ update_physics_parameters()

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
void adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::update_physics_parameters ( boost::property_tree::ptree const &  heat_source_database)
overridevirtual

For ThermalPhysics, update_physics_parameters is used to modify the heat sources in the middle of a simulation, e.g. for data assimilation with an augmented ensemble involving heat source parameters.

Implements adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >.

Definition at line 832 of file ThermalPhysics.templates.hh.

Member Data Documentation

◆ _affine_constraints

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::AffineConstraints<double> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_affine_constraints
private

Associated AffineConstraints<double>.

Definition at line 161 of file ThermalPhysics.hh.

◆ _boundary

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
Boundary adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_boundary
private

Associated boundary.

Definition at line 149 of file ThermalPhysics.hh.

◆ _cell_data_trans

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::unique_ptr<dealii::parallel::distributed::CellDataTransfer< dim, dim, std::vector<std::vector<double> > > > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_cell_data_trans
private

Cell data transfer object used for updating _solution, _has_melted, _deposition_cos, _deposition_sin, and state of _material_properties when the triangulation is updated when adding material

Definition at line 214 of file ThermalPhysics.hh.

◆ _cell_solution

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::Vector<double> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_cell_solution
private

Temporary data used in _cell_data_trans for _solution

Definition at line 219 of file ThermalPhysics.hh.

◆ _cell_weights

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::parallel::CellWeights<dim> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_cell_weights
private

Object used to attach to each cell, a weight (used for load balancing) equal to the number of degrees of freedom associated with the cell.

Definition at line 170 of file ThermalPhysics.hh.

◆ _data_to_transfer

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector<std::vector<double> > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_data_to_transfer
private

Temporary data used in _cell_data_trans for transfer

Definition at line 224 of file ThermalPhysics.hh.

◆ _deposition_cos

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector<double> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_deposition_cos
private

Cosine of the material deposition angles.

Definition at line 174 of file ThermalPhysics.hh.

◆ _deposition_sin

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector<double> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_deposition_sin
private

Sine of the material deposition angles.

Definition at line 178 of file ThermalPhysics.hh.

◆ _dof_handler

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::DoFHandler<dim> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_dof_handler
private

Associated DoFHandler.

Definition at line 157 of file ThermalPhysics.hh.

◆ _fe_collection

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::hp::FECollection<dim> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_fe_collection
private

Associated Lagrange finite elements.

Definition at line 153 of file ThermalPhysics.hh.

◆ _forward_euler

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
bool adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_forward_euler = false
private

This flag is true if the time stepping method is forward euler.

Definition at line 141 of file ThermalPhysics.hh.

◆ _geometry

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
Geometry<dim>& adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_geometry
private

Associated geometry.

Definition at line 145 of file ThermalPhysics.hh.

◆ _has_melted

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector<bool> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_has_melted
private

Indicator variable for whether a point has ever been above the solidus. The value is false for material that has not yet melted and true for material that has melted.

Definition at line 184 of file ThermalPhysics.hh.

◆ _heat_sources

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::vector<std::shared_ptr<HeatSource<dim> > > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_heat_sources
private

Vector of heat sources.

Definition at line 193 of file ThermalPhysics.hh.

◆ _material_properties

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
MaterialProperty<dim, n_materials, p_order, MaterialStates, MemorySpaceType>& adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_material_properties
private

Associated material properties.

Definition at line 189 of file ThermalPhysics.hh.

◆ _print_heat_input

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
bool adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_print_heat_input
private

This optional flag enables heat source integration to monitor total heat input

Definition at line 197 of file ThermalPhysics.hh.

◆ _q_collection

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
dealii::hp::QCollection<1> adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_q_collection
private

Associated quadature, either Gauss or Gauss-Lobatto.

Definition at line 165 of file ThermalPhysics.hh.

◆ _thermal_operator

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::shared_ptr<ThermalOperatorBase<dim, MemorySpaceType> > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_thermal_operator
private

Shared pointer to the underlying ThermalOperator.

Definition at line 201 of file ThermalPhysics.hh.

◆ _time_stepping

template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType >
std::unique_ptr<dealii::TimeStepping::ExplicitRungeKutta<LA_Vector> > adamantine::ThermalPhysics< dim, n_materials, p_order, fe_degree, MaterialStates, MemorySpaceType, QuadratureType >::_time_stepping
private

Shared pointer to the underlying time stepping scheme.

Definition at line 206 of file ThermalPhysics.hh.