GaussVolumetricIntensityProfile< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number > Class Template Reference

#include <laser_intensity_profiles.hpp>

Inheritance diagram for MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >:
[legend]
Collaboration diagram for MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >:
[legend]

Classes

struct  State
 

Public Member Functions

 GaussVolumetricIntensityProfile (const number radius_in, const std::function< const State(void)> &updater_in)
 
number value (const dealii::Point< dim > &p, const unsigned int) const final
 
void set_time (const number time) final
 

Private Attributes

const number radius
 
dealii::Point< dim, number > laser_position
 
number peak_power_density
 
const std::function< const State(void)> updater
 

Detailed Description

template<int dim, typename number>
class MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >

Volumetric spherical Gauss intensity profile

intensity = power / ( radius * sqrt(pi/2) )^3 * exp( -2 * ( distance / radius )^2 )

where the distance is between the point

Parameters
pand the laser beam center defined by the
laser_position

Constructor & Destructor Documentation

◆ GaussVolumetricIntensityProfile()

template<int dim, typename number >
MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::GaussVolumetricIntensityProfile ( const number  radius_in,
const std::function< const State(void)> &  updater_in 
)
inline

Member Function Documentation

◆ set_time()

template<int dim, typename number >
void MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::set_time ( const number  time)
inlinefinal

◆ value()

template<int dim, typename number >
number MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::value ( const dealii::Point< dim > &  p,
const unsigned int   
) const
inlinefinal

Member Data Documentation

◆ laser_position

template<int dim, typename number >
dealii::Point<dim, number> MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::laser_position
private

◆ peak_power_density

template<int dim, typename number >
number MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::peak_power_density
private

◆ radius

template<int dim, typename number >
const number MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::radius
private

◆ updater

template<int dim, typename number >
const std::function<const State(void)> MeltPoolDG::Heat::GaussVolumetricIntensityProfile< dim, number >::updater
private

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