InitializePhi< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number > Class Template Reference

Field function for the initial level-set. More...

#include <reinit_circle.hpp>

Inheritance diagram for MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >:
[legend]
Collaboration diagram for MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >:
[legend]

Public Member Functions

 InitializePhi (const dealii::Point< dim, number > center_point, const number radius, const LevelSet::LevelSetType level_set_type_in, const bool apply_initial_jump_at_interface_in, const number distortion_parameter_in, const number eps_in)
 Constructor.
 
number value (const dealii::Point< dim, number > &p, const unsigned int) const override
 Computes the current function value at a specific coordinate point p.
 

Private Attributes

const dealii::Functions::SignedDistance::Sphere< dim > distance_sphere
 Signed distance function for a hyperspherical zero level-set isosurface.
 
const LevelSet::LevelSetType level_set_type
 Level-set type.
 
const bool apply_initial_jump_at_interface
 Boolean indicator if the initial level-set field should have a jump at the interface.
 
const number distortion_parameter
 Level-set distortion parameter.
 
const number eps
 

Detailed Description

template<int dim, typename number>
class MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >

Field function for the initial level-set.

The initial level-set is distorted either by introducing a sharp jump at the interface or by scaling it with a factor distortion_factor. For the level-set types 'tanh' and 'smoothed_heaviside', the interface thickness parameter eps is scaled accordingly.

The level-set is >0 inside the hyperspherical zero level-set isosurface and <0 outside.

Constructor & Destructor Documentation

◆ InitializePhi()

template<int dim, typename number >
MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >::InitializePhi ( const dealii::Point< dim, number >  center_point,
const number  radius,
const LevelSet::LevelSetType  level_set_type_in,
const bool  apply_initial_jump_at_interface_in,
const number  distortion_parameter_in,
const number  eps_in 
)
inline

Constructor.

Parameters
center_pointPoint containing the coordinates of the origin of the hyperspherical level-set field.
radiusRadius of the level-set zero iso-surface.
level_set_type_inGiven level-set type.
apply_initial_jump_at_interface_inBoolean option to indicate when the initial level-set should have a jump.
distortion_parameter_inLevel-set distortion parameter.
eps_inInterface thickness parameter (only relevant for level-set types 'tanh' and 'smoothed_heaviside')

Member Function Documentation

◆ value()

template<int dim, typename number >
number MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >::value ( const dealii::Point< dim, number > &  p,
const unsigned int   
) const
inlineoverride

Computes the current function value at a specific coordinate point p.

Parameters
pCoordinate point at which the function should be evaluated.
Returns
The evaluated function value at the given point p.

Member Data Documentation

◆ apply_initial_jump_at_interface

template<int dim, typename number >
const bool MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >::apply_initial_jump_at_interface
private

Boolean indicator if the initial level-set field should have a jump at the interface.

◆ distance_sphere

template<int dim, typename number >
const dealii::Functions::SignedDistance::Sphere<dim> MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >::distance_sphere
private

Signed distance function for a hyperspherical zero level-set isosurface.

◆ distortion_parameter

template<int dim, typename number >
const number MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >::distortion_parameter
private

Level-set distortion parameter.

◆ eps

template<int dim, typename number >
const number MeltPoolDG::Simulation::ReinitCircle::InitializePhi< dim, number >::eps
private

Interface thickness parameter (only relevant for level-set types 'tanh' and 'smoothed_heaviside').

◆ level_set_type

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

Level-set type.


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