LevelSetApplication< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::LevelSet::LevelSetApplication< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::LevelSet::LevelSetApplication< dim, number > Class Template Reference

#include <level_set_application.hpp>

Public Member Functions

 LevelSetApplication (std::unique_ptr< CaseType > simulation_case)
 
void run ()
 

Private Types

using CaseType = LevelSetCase< dim, number >
 
using VectorType = dealii::LinearAlgebra::distributed::Vector< number >
 
using BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector< number >
 

Private Member Functions

void initialize ()
 
void setup_dof_system (const bool do_reinit=true)
 
void compute_advection_velocity (dealii::Function< dim > &advec_func)
 
void output_results (const unsigned int time_step, const number current_time)
 
void refine_mesh ()
 

Private Attributes

const std::unique_ptr< CaseTypesimulation_case
 
dealii::DoFHandler< dim > dof_handler
 
dealii::DoFHandler< dim > dof_handler_velocity
 
dealii::AffineConstraints< number > constraints_dirichlet
 
dealii::AffineConstraints< number > hanging_node_constraints
 
dealii::AffineConstraints< number > hanging_node_constraints_velocity
 
dealii::AffineConstraints< number > hanging_node_constraints_with_zero_dirichlet
 
dealii::AffineConstraints< number > normal_dirichlet_x_constraints
 
dealii::AffineConstraints< number > normal_dirichlet_y_constraints
 
dealii::AffineConstraints< number > normal_dirichlet_z_constraints
 
unsigned int ls_dof_idx
 
unsigned int ls_quad_idx
 
unsigned int ls_zero_bc_idx
 
unsigned int ls_hanging_nodes_dof_idx
 
unsigned int vel_dof_idx
 
const unsigned int & curv_dof_idx = ls_hanging_nodes_dof_idx
 
unsigned int normal_no_bc_dof_idx = -1
 
unsigned int normal_dirichlet_x_dof_idx = -1
 
unsigned int normal_dirichlet_y_dof_idx = -1
 
unsigned int normal_dirichlet_z_dof_idx = -1
 
const unsigned int & reinit_dof_idx
 
const unsigned int & reinit_hanging_nodes_dof_idx
 
VectorType advection_velocity
 
std::unique_ptr< LevelSetOperationBase< dim, number > > level_set_operation
 
std::unique_ptr< Evaporation::EvaporationOperation< dim, number > > evaporation_operation
 
std::shared_ptr< ScratchData< dim, dim, number > > scratch_data
 
std::unique_ptr< TimeIntegration::TimeIterator< number > > time_iterator
 
std::unique_ptr< Postprocessor< dim, number > > post_processor
 
std::unique_ptr< Profiling::ProfilingMonitor< number > > profiling_monitor
 
std::shared_ptr< dealii::Function< dim, number > > prescribed_velocity_function
 

Member Typedef Documentation

◆ BlockVectorType

template<int dim, typename number >
using MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector<number>
private

◆ CaseType

template<int dim, typename number >
using MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::CaseType = LevelSetCase<dim, number>
private

◆ VectorType

template<int dim, typename number >
using MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::VectorType = dealii::LinearAlgebra::distributed::Vector<number>
private

Constructor & Destructor Documentation

◆ LevelSetApplication()

template<int dim, typename number >
MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::LevelSetApplication ( std::unique_ptr< CaseType simulation_case)
inline

Member Function Documentation

◆ compute_advection_velocity()

template<int dim, typename number >
void MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::compute_advection_velocity ( dealii::Function< dim > &  advec_func)
private

◆ initialize()

template<int dim, typename number >
void MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::initialize ( )
private

◆ output_results()

template<int dim, typename number >
void MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::output_results ( const unsigned int  time_step,
const number  current_time 
)
private

◆ refine_mesh()

template<int dim, typename number >
void MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::refine_mesh ( )
private

◆ run()

template<int dim, typename number >
void MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::run ( )

◆ setup_dof_system()

template<int dim, typename number >
void MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::setup_dof_system ( const bool  do_reinit = true)
private

Member Data Documentation

◆ advection_velocity

template<int dim, typename number >
VectorType MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::advection_velocity
private

◆ constraints_dirichlet

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::constraints_dirichlet
private

◆ curv_dof_idx

template<int dim, typename number >
const unsigned int& MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::curv_dof_idx = ls_hanging_nodes_dof_idx
private

◆ dof_handler

template<int dim, typename number >
dealii::DoFHandler<dim> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::dof_handler
private

◆ dof_handler_velocity

template<int dim, typename number >
dealii::DoFHandler<dim> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::dof_handler_velocity
private

◆ evaporation_operation

template<int dim, typename number >
std::unique_ptr<Evaporation::EvaporationOperation<dim, number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::evaporation_operation
private

◆ hanging_node_constraints

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::hanging_node_constraints
private

◆ hanging_node_constraints_velocity

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::hanging_node_constraints_velocity
private

◆ hanging_node_constraints_with_zero_dirichlet

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::hanging_node_constraints_with_zero_dirichlet
private

◆ level_set_operation

template<int dim, typename number >
std::unique_ptr<LevelSetOperationBase<dim, number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::level_set_operation
private

◆ ls_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::ls_dof_idx
private

◆ ls_hanging_nodes_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::ls_hanging_nodes_dof_idx
private

◆ ls_quad_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::ls_quad_idx
private

◆ ls_zero_bc_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::ls_zero_bc_idx
private

◆ normal_dirichlet_x_constraints

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_dirichlet_x_constraints
private

◆ normal_dirichlet_x_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_dirichlet_x_dof_idx = -1
private

◆ normal_dirichlet_y_constraints

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_dirichlet_y_constraints
private

◆ normal_dirichlet_y_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_dirichlet_y_dof_idx = -1
private

◆ normal_dirichlet_z_constraints

template<int dim, typename number >
dealii::AffineConstraints<number> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_dirichlet_z_constraints
private

◆ normal_dirichlet_z_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_dirichlet_z_dof_idx = -1
private

◆ normal_no_bc_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::normal_no_bc_dof_idx = -1
private

◆ post_processor

template<int dim, typename number >
std::unique_ptr<Postprocessor<dim, number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::post_processor
private

◆ prescribed_velocity_function

template<int dim, typename number >
std::shared_ptr<dealii::Function<dim, number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::prescribed_velocity_function
private

◆ profiling_monitor

template<int dim, typename number >
std::unique_ptr<Profiling::ProfilingMonitor<number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::profiling_monitor
private

◆ reinit_dof_idx

template<int dim, typename number >
const unsigned int& MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::reinit_dof_idx
private
Initial value:
=
unsigned int ls_hanging_nodes_dof_idx
Definition level_set_application.hpp:41

◆ reinit_hanging_nodes_dof_idx

template<int dim, typename number >
const unsigned int& MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::reinit_hanging_nodes_dof_idx
private
Initial value:

◆ scratch_data

template<int dim, typename number >
std::shared_ptr<ScratchData<dim, dim, number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::scratch_data
private

◆ simulation_case

template<int dim, typename number >
const std::unique_ptr<CaseType> MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::simulation_case
private

◆ time_iterator

template<int dim, typename number >
std::unique_ptr<TimeIntegration::TimeIterator<number> > MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::time_iterator
private

◆ vel_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::LevelSet::LevelSetApplication< dim, number >::vel_dof_idx
private

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