AdvectionDiffusionOperationBase< dim, number > Class Template Reference

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

#include <advection_diffusion_operation_base.hpp>

Inheritance diagram for MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >:
[legend]

Public Member Functions

virtual ~AdvectionDiffusionOperationBase ()=default
 
virtual void init_time_advance ()=0
 
virtual void finish_time_advance ()
 
virtual void solve (const bool do_finish_time_step=true)=0
 
virtual void reinit ()=0
 
virtual void set_initial_condition (const dealii::Function< dim > &)=0
 
virtual void set_advection_velocity (const dealii::LinearAlgebra::distributed::Vector< number > &, const unsigned int)
 
virtual void set_advection_velocity_function (const std::shared_ptr< dealii::Function< dim, number > > &)
 
virtual void setup_constraints (ScratchData< dim, dim, number > &mutable_scratch_data, const PeriodicBoundaryConditions< dim > &pbc, const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &dirichlet_bc_in)=0
 
virtual const dealii::LinearAlgebra::distributed::Vector< number > & get_advected_field () const =0
 
virtual dealii::LinearAlgebra::distributed::Vector< number > & get_advected_field ()=0
 
virtual const dealii::LinearAlgebra::distributed::Vector< number > & get_advected_field_old () const =0
 
virtual dealii::LinearAlgebra::distributed::Vector< number > & get_advected_field_old ()=0
 
virtual dealii::LinearAlgebra::distributed::Vector< number > & get_user_rhs ()=0
 
virtual const dealii::LinearAlgebra::distributed::Vector< number > & get_user_rhs () const =0
 
virtual void attach_vectors (std::vector< dealii::LinearAlgebra::distributed::Vector< number > * > &vectors)=0
 
virtual void attach_output_vectors (GenericDataOut< dim, number > &data_out) const =0
 

Public Attributes

AdvectionDiffusionData< number > advec_diff_data
 

Protected Attributes

bool ready_for_time_advance = false
 determine whether solution vectors are prepared for time advance
 

Constructor & Destructor Documentation

◆ ~AdvectionDiffusionOperationBase()

template<int dim, typename number >
virtual MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::~AdvectionDiffusionOperationBase ( )
virtualdefault

Member Function Documentation

◆ attach_output_vectors()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::attach_output_vectors ( GenericDataOut< dim, number > &  data_out) const
pure virtual

◆ attach_vectors()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::attach_vectors ( std::vector< dealii::LinearAlgebra::distributed::Vector< number > * > &  vectors)
pure virtual

◆ finish_time_advance()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::finish_time_advance ( )
inlinevirtual

◆ get_advected_field() [1/2]

template<int dim, typename number >
virtual const dealii::LinearAlgebra::distributed::Vector< number > & MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::get_advected_field ( ) const
pure virtual

◆ get_advected_field() [2/2]

template<int dim, typename number >
virtual dealii::LinearAlgebra::distributed::Vector< number > & MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::get_advected_field ( )
pure virtual

◆ get_advected_field_old() [1/2]

template<int dim, typename number >
virtual const dealii::LinearAlgebra::distributed::Vector< number > & MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::get_advected_field_old ( ) const
pure virtual

◆ get_advected_field_old() [2/2]

template<int dim, typename number >
virtual dealii::LinearAlgebra::distributed::Vector< number > & MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::get_advected_field_old ( )
pure virtual

◆ get_user_rhs() [1/2]

template<int dim, typename number >
virtual const dealii::LinearAlgebra::distributed::Vector< number > & MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::get_user_rhs ( ) const
pure virtual

◆ get_user_rhs() [2/2]

template<int dim, typename number >
virtual dealii::LinearAlgebra::distributed::Vector< number > & MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::get_user_rhs ( )
pure virtual

◆ init_time_advance()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::init_time_advance ( )
pure virtual

◆ reinit()

◆ set_advection_velocity()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::set_advection_velocity ( const dealii::LinearAlgebra::distributed::Vector< number > &  ,
const unsigned int   
)
inlinevirtual

◆ set_advection_velocity_function()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::set_advection_velocity_function ( const std::shared_ptr< dealii::Function< dim, number > > &  )
inlinevirtual

◆ set_initial_condition()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::set_initial_condition ( const dealii::Function< dim > &  )
pure virtual

◆ setup_constraints()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::setup_constraints ( ScratchData< dim, dim, number > &  mutable_scratch_data,
const PeriodicBoundaryConditions< dim > &  pbc,
const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &  dirichlet_bc_in 
)
pure virtual

◆ solve()

template<int dim, typename number >
virtual void MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::solve ( const bool  do_finish_time_step = true)
pure virtual

Member Data Documentation

◆ advec_diff_data

template<int dim, typename number >
AdvectionDiffusionData<number> MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::advec_diff_data

◆ ready_for_time_advance

template<int dim, typename number >
bool MeltPoolDG::LevelSet::AdvectionDiffusionOperationBase< dim, number >::ready_for_time_advance = false
protected

determine whether solution vectors are prepared for time advance


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