FixedMeltPoolGeometry< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number > Class Template Reference

#include <fixed_melt_pool.hpp>

Inheritance diagram for MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >:
[legend]
Collaboration diagram for MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >:
[legend]

Public Member Functions

 FixedMeltPoolGeometry (const LevelSet::LevelSetType level_set_type, const number eps=0.0)
 
number value (const dealii::Point< dim > &p, const unsigned int) const override
 

Private Member Functions

number signed_distance_level (const dealii::Point< dim > &p) const
 
number signed_distance_pool (const dealii::Point< dim > &p) const
 
number signed_distance_beads (const dealii::Point< dim > &p) const
 
bool is_inside_melt_pool (const dealii::Point< dim > &p) const
 

Private Attributes

const number y_level = 10e-6
 top level of interface
 
const dealii::Point< dim > centre {0.0, 0.0}
 
const number centre_radius = 50e-6
 
const number bead_radius = 10e-6
 
const number melt_pool_radius = centre_radius + bead_radius
 
const number bead_center_x = centre[0] + melt_pool_radius
 
const LevelSet::LevelSetType level_set_type
 
const number eps
 

Detailed Description

template<int dim, typename number>
class MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >

This dealii::Frunction implements the fixed melt pool geometry as any of the LevelSetType representations. LevelSetType::signed_distance corresponds to eq. (37) in [1].

Constructor & Destructor Documentation

◆ FixedMeltPoolGeometry()

template<int dim, typename number >
MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::FixedMeltPoolGeometry ( const LevelSet::LevelSetType  level_set_type,
const number  eps = 0.0 
)
Parameters
level_set_typelevel set type, options: level_set, heaviside, signed_distance
epsinterface thickness parameter epsilon: interface_thickness = 6*eps only required for level set type level_set or heaviside

Member Function Documentation

◆ is_inside_melt_pool()

template<int dim, typename number >
bool MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::is_inside_melt_pool ( const dealii::Point< dim > &  p) const
private

◆ signed_distance_beads()

template<int dim, typename number >
number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::signed_distance_beads ( const dealii::Point< dim > &  p) const
private

compute signed distance to beads

◆ signed_distance_level()

template<int dim, typename number >
number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::signed_distance_level ( const dealii::Point< dim > &  p) const
private

compute signed distance to top level of interface, i.e.

Parameters
y_level

◆ signed_distance_pool()

template<int dim, typename number >
number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::signed_distance_pool ( const dealii::Point< dim > &  p) const
private

compute signed distance to centre semicircle

◆ value()

template<int dim, typename number >
number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::value ( const dealii::Point< dim > &  p,
const unsigned int   
) const
override

returns value corresponding to Point

Parameters
p

Member Data Documentation

◆ bead_center_x

template<int dim, typename number >
const number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::bead_center_x = centre[0] + melt_pool_radius
private

◆ bead_radius

template<int dim, typename number >
const number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::bead_radius = 10e-6
private

◆ centre

template<int dim, typename number >
const dealii::Point<dim> MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::centre {0.0, 0.0}
private

◆ centre_radius

template<int dim, typename number >
const number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::centre_radius = 50e-6
private

◆ eps

template<int dim, typename number >
const number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::eps
private

◆ level_set_type

template<int dim, typename number >
const LevelSet::LevelSetType MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::level_set_type
private

◆ melt_pool_radius

template<int dim, typename number >
const number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::melt_pool_radius = centre_radius + bead_radius
private

◆ y_level

template<int dim, typename number >
const number MeltPoolDG::Simulation::FixedMeltPool::FixedMeltPoolGeometry< dim, number >::y_level = 10e-6
private

top level of interface


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