Constraints Namespace Reference

Developer Documentation: MeltPoolDG::Constraints Namespace Reference
Developer Documentation
MeltPoolDG::Constraints Namespace Reference

Functions

template<int dim, int spacedim, typename number >
void check_constraints (const dealii::DoFHandler< dim, spacedim > &dof_handler, const dealii::AffineConstraints< number > &constraints)
 
template<int dim, typename number >
void fill_DBC (ScratchData< dim, dim, number > &scratch_data, const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &bc_data, const unsigned int dof_idx, const bool set_inhomogeneities=true, const bool close=true)
 
template<int dim, typename number >
void make_DBC (ScratchData< dim, dim, number > &scratch_data, const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &bc_data, const unsigned int dof_idx, const bool set_inhomogeneities=true, const bool close=true)
 
template<int dim, typename number >
void make_HNC (ScratchData< dim, dim, number > &scratch_data, const unsigned int dof_hanging_nodes_idx, const bool close=true)
 
template<int dim, typename number >
void merge_HNC_into_DBC (ScratchData< dim, dim, number > &scratch_data, const unsigned int dof_idx, const unsigned int dof_hanging_nodes_idx)
 
template<int dim, typename number >
void make_DBC_and_HNC_and_merge_HNC_into_DBC (ScratchData< dim, dim, number > &scratch_data, const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &bc_data, const unsigned int dof_idx, const unsigned int dof_hanging_nodes_idx, const bool set_inhomogeneities=true)
 
template<int dim, typename number >
void insert_PBC (ScratchData< dim, dim, number > &scratch_data, const PeriodicBoundaryConditions< dim > &pbc, const unsigned int dof_idx)
 
template<int dim, typename number >
void make_HNC_plus_PBC (ScratchData< dim, dim, number > &scratch_data, const PeriodicBoundaryConditions< dim > &pbc, const unsigned int dof_hanging_nodes_idx)
 
template<int dim, typename number >
void make_DBC_and_HNC_plus_PBC_and_merge_HNC_plus_PBC_into_DBC (ScratchData< dim, dim, number > &scratch_data, const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &bc_data, const PeriodicBoundaryConditions< dim > &pbc, const unsigned int dof_idx, const unsigned int dof_hanging_nodes_idx, const bool set_inhomogeneities=true)
 

Function Documentation

◆ check_constraints()

template<int dim, int spacedim, typename number >
void MeltPoolDG::Constraints::check_constraints ( const dealii::DoFHandler< dim, spacedim > &  dof_handler,
const dealii::AffineConstraints< number > &  constraints 
)

Check whether

Parameters
constraintsare consistent in parallel with the
dof_handler.

◆ fill_DBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::fill_DBC ( ScratchData< dim, dim, number > &  scratch_data,
const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &  bc_data,
const unsigned int  dof_idx,
const bool  set_inhomogeneities = true,
const bool  close = true 
)

Fill AffineConstraints according to given Dirichlet boundary conditions

Parameters
bc_dataand assign it to a given
dof_idxinside
scratch_data.

Note that the AffineConstraints object must be reinited with the locally relevant dof index set before calling this function.

If

Parameters
set_inhomogeneitiesis true, inhomogeneities are considered else homogeneous DBC are assumed.

If

Parameters
closeis true, the AffineConstraints object is closed after filling it. In Debug, the constraints are also checked with check_constraints().

◆ insert_PBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::insert_PBC ( ScratchData< dim, dim, number > &  scratch_data,
const PeriodicBoundaryConditions< dim > &  pbc,
const unsigned int  dof_idx 
)

Insert algebraic periodicity constraints according to

Parameters
pbcinto the AffineConstraints corresponding to a given
dof_idxinside
scratch_data.

Note that the AffineConstraints object must not be closed.

◆ make_DBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::make_DBC ( ScratchData< dim, dim, number > &  scratch_data,
const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &  bc_data,
const unsigned int  dof_idx,
const bool  set_inhomogeneities = true,
const bool  close = true 
)

Reinit and fill AffineConstraints according to given Dirichlet boundary conditions

Parameters
bc_dataand assign it to a given
dof_idxinside
scratch_data.

If

Parameters
set_inhomogeneitiesis true, inhomogeneities are considered else homogeneous DBC are assumed.

If

Parameters
closeis true, the AffineConstraints object is closed after filling it. In Debug, the constraints are also checked with check_constraints().

◆ make_DBC_and_HNC_and_merge_HNC_into_DBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::make_DBC_and_HNC_and_merge_HNC_into_DBC ( ScratchData< dim, dim, number > &  scratch_data,
const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &  bc_data,
const unsigned int  dof_idx,
const unsigned int  dof_hanging_nodes_idx,
const bool  set_inhomogeneities = true 
)

Reinit and fill AffineConstraints according to given Dirichlet boundary conditions

Parameters
bc_dataand assign it to a given
dof_idxinside
scratch_data.

If

Parameters
set_inhomogeneitiesis true, inhomogeneities are considered else homogeneous DBC are assumed.

Reinit and fill AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinside
scratch_data,consideringhanging nodes.

Merge the constraints of the AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinto the AffineConstraints corresponding to a given
dof_idx.

The AffineConstraints objects are closed after filling them. In Debug, the constraints are also checked with check_constraints().

◆ make_DBC_and_HNC_plus_PBC_and_merge_HNC_plus_PBC_into_DBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::make_DBC_and_HNC_plus_PBC_and_merge_HNC_plus_PBC_into_DBC ( ScratchData< dim, dim, number > &  scratch_data,
const std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > &  bc_data,
const PeriodicBoundaryConditions< dim > &  pbc,
const unsigned int  dof_idx,
const unsigned int  dof_hanging_nodes_idx,
const bool  set_inhomogeneities = true 
)

Reinit and fill AffineConstraints according to given Dirichlet boundary conditions

Parameters
bc_dataand assign it to a given
dof_idxinside
scratch_data.

If

Parameters
set_inhomogeneitiesis true, inhomogeneities are considered else homogeneous DBC are assumed.

Reinit and fill AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinside
scratch_data,consideringhanging nodes.

Insert algebraic periodicity constraints according to

Parameters
pbcinto the AffineConstraints corresponding to a given
dof_idxand
dof_hanging_nodes_idxinside
scratch_data.

Merge the constraints of the AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinto the AffineConstraints corresponding to a given
dof_idx.

The AffineConstraints objects are closed after filling them. In Debug, the constraints are also checked with check_constraints().

◆ make_HNC()

template<int dim, typename number >
void MeltPoolDG::Constraints::make_HNC ( ScratchData< dim, dim, number > &  scratch_data,
const unsigned int  dof_hanging_nodes_idx,
const bool  close = true 
)

Reinit and fill AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinside
scratch_data,consideringhanging nodes.

If

Parameters
closeis true, the AffineConstraints object is closed after filling it. In Debug, the constraints are also checked with check_constraints().

◆ make_HNC_plus_PBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::make_HNC_plus_PBC ( ScratchData< dim, dim, number > &  scratch_data,
const PeriodicBoundaryConditions< dim > &  pbc,
const unsigned int  dof_hanging_nodes_idx 
)

Reinit and fill AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinside
scratch_data,consideringhanging nodes.

Insert algebraic periodicity constraints according to

Parameters
pbcinto the AffineConstraints corresponding to a given
dof_idxinside
scratch_data.

The AffineConstraints objects are closed after filling them. In Debug, the constraints are also checked with check_constraints().

◆ merge_HNC_into_DBC()

template<int dim, typename number >
void MeltPoolDG::Constraints::merge_HNC_into_DBC ( ScratchData< dim, dim, number > &  scratch_data,
const unsigned int  dof_idx,
const unsigned int  dof_hanging_nodes_idx 
)

Merge the constraints of the AffineConstraints corresponding to a given

Parameters
dof_hanging_nodes_idxinto the AffineConstraints corresponding to a given
dof_idx.