ViennaLS
Loading...
Searching...
No Matches
viennals::Oxidation< T, D > Class Template Reference

#include <lsOxidation.hpp>

Public Member Functions

const std::unordered_map< std::size_t, T > & getConcentrationCache () const
void setConcentrationCache (std::unordered_map< std::size_t, T > cache)
 Oxidation ()=default
 Oxidation (SmartPointer< Domain< T, D > > passedSiInterface, SmartPointer< Domain< T, D > > passedAmbientInterface, SmartPointer< Domain< T, D > > passedMaskInterface=nullptr)
void setGpuMode (GpuMode mode)
void setSiInterface (SmartPointer< Domain< T, D > > si)
void setAmbientInterface (SmartPointer< Domain< T, D > > ambient)
void setMaskInterface (SmartPointer< Domain< T, D > > mask)
void setOxidationParameters (OxidationParameters params)
void setDeformationParameters (OxidationDeformationParameters params)
void setCouplingParameters (OxidationCouplingParameters params)
void setMaskParameters (OxidationMaskParameters params)
void setSpatialScheme (SpatialSchemeEnum scheme)
 Set the spatial integration scheme for all advections.
void setMaskBarrierOnly (bool enable)
void setTemporalScheme (TemporalSchemeEnum scheme)
 Set the temporal integration scheme for all advections.
void setSolveBounds (const IndexType &minIndex, const IndexType &maxIndex)
 Set the Cartesian index bounding box for the diffusion and deformation solves. If not set, bounds are auto-computed from the level-set narrow band.
SmartPointer< OxidationDiffusion< T, D > > getDiffusionField () const
 Return the diffusion field populated by the most recent apply() call.
SmartPointer< OxidationDeformation< T, D > > getDeformationField () const
 Return the deformation field populated by the most recent apply() call.
T getLastMaxVelocity () const
 Maximum interface velocity (µm/hr) from the most recent CFL-limited step.
void apply (T advectionTime)
 Execute one oxidation time step of duration advectionTime.
T applyCFLLimited (T requestedTime, T cflFactor)
 Execute one CFL-limited oxidation step; returns the actual time advanced.

Static Public Member Functions

template<class... Args>
static auto New (Args &&...args)

Constructor & Destructor Documentation

◆ Oxidation() [1/2]

template<class T, int D>
viennals::Oxidation< T, D >::Oxidation ( )
default

◆ Oxidation() [2/2]

template<class T, int D>
viennals::Oxidation< T, D >::Oxidation ( SmartPointer< Domain< T, D > > passedSiInterface,
SmartPointer< Domain< T, D > > passedAmbientInterface,
SmartPointer< Domain< T, D > > passedMaskInterface = nullptr )
inline

Member Function Documentation

◆ apply()

template<class T, int D>
void viennals::Oxidation< T, D >::apply ( T advectionTime)
inline

Execute one oxidation time step of duration advectionTime.

◆ applyCFLLimited()

template<class T, int D>
T viennals::Oxidation< T, D >::applyCFLLimited ( T requestedTime,
T cflFactor )
inline

Execute one CFL-limited oxidation step; returns the actual time advanced.

◆ getConcentrationCache()

template<class T, int D>
const std::unordered_map< std::size_t, T > & viennals::Oxidation< T, D >::getConcentrationCache ( ) const
inline

◆ getDeformationField()

template<class T, int D>
SmartPointer< OxidationDeformation< T, D > > viennals::Oxidation< T, D >::getDeformationField ( ) const
inline

Return the deformation field populated by the most recent apply() call.

◆ getDiffusionField()

template<class T, int D>
SmartPointer< OxidationDiffusion< T, D > > viennals::Oxidation< T, D >::getDiffusionField ( ) const
inline

Return the diffusion field populated by the most recent apply() call.

◆ getLastMaxVelocity()

template<class T, int D>
T viennals::Oxidation< T, D >::getLastMaxVelocity ( ) const
inline

Maximum interface velocity (µm/hr) from the most recent CFL-limited step.

◆ New()

template<class T, int D>
template<class... Args>
auto viennals::Oxidation< T, D >::New ( Args &&... args)
inlinestatic

◆ setAmbientInterface()

template<class T, int D>
void viennals::Oxidation< T, D >::setAmbientInterface ( SmartPointer< Domain< T, D > > ambient)
inline

◆ setConcentrationCache()

template<class T, int D>
void viennals::Oxidation< T, D >::setConcentrationCache ( std::unordered_map< std::size_t, T > cache)
inline

◆ setCouplingParameters()

template<class T, int D>
void viennals::Oxidation< T, D >::setCouplingParameters ( OxidationCouplingParameters params)
inline

◆ setDeformationParameters()

template<class T, int D>
void viennals::Oxidation< T, D >::setDeformationParameters ( OxidationDeformationParameters params)
inline

◆ setGpuMode()

template<class T, int D>
void viennals::Oxidation< T, D >::setGpuMode ( GpuMode mode)
inline

◆ setMaskBarrierOnly()

template<class T, int D>
void viennals::Oxidation< T, D >::setMaskBarrierOnly ( bool enable)
inline

◆ setMaskInterface()

template<class T, int D>
void viennals::Oxidation< T, D >::setMaskInterface ( SmartPointer< Domain< T, D > > mask)
inline

◆ setMaskParameters()

template<class T, int D>
void viennals::Oxidation< T, D >::setMaskParameters ( OxidationMaskParameters params)
inline

◆ setOxidationParameters()

template<class T, int D>
void viennals::Oxidation< T, D >::setOxidationParameters ( OxidationParameters params)
inline

◆ setSiInterface()

template<class T, int D>
void viennals::Oxidation< T, D >::setSiInterface ( SmartPointer< Domain< T, D > > si)
inline

◆ setSolveBounds()

template<class T, int D>
void viennals::Oxidation< T, D >::setSolveBounds ( const IndexType & minIndex,
const IndexType & maxIndex )
inline

Set the Cartesian index bounding box for the diffusion and deformation solves. If not set, bounds are auto-computed from the level-set narrow band.

◆ setSpatialScheme()

template<class T, int D>
void viennals::Oxidation< T, D >::setSpatialScheme ( SpatialSchemeEnum scheme)
inline

Set the spatial integration scheme for all advections.

◆ setTemporalScheme()

template<class T, int D>
void viennals::Oxidation< T, D >::setTemporalScheme ( TemporalSchemeEnum scheme)
inline

Set the temporal integration scheme for all advections.


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