elliptic::dg Namespace Reference

Functionality related to discontinuous Galerkin discretizations of elliptic equations. More...

Namespaces

NumericalFluxes
Numerical fluxes for elliptic systems.

OptionTags
Option tags related to elliptic discontinuous Galerkin schemes.

Tags
DataBox tags related to elliptic discontinuous Galerkin schemes.

Functions

template<typename DirichletTags , typename TagsList >
void homogeneous_dirichlet_boundary_conditions (const gsl::not_null< Variables< TagsList > * > exterior_vars, const Variables< TagsList > &interior_vars) noexcept
Set the exterior_vars so that they represent homogeneous (zero) Dirichlet boundary conditions. More...

DataVector penalty (const DataVector &element_size, size_t num_points, double penalty_parameter) noexcept
The penalty factor in internal penalty fluxes. More...

Detailed Description

Functionality related to discontinuous Galerkin discretizations of elliptic equations.

◆ homogeneous_dirichlet_boundary_conditions()

template<typename DirichletTags , typename TagsList >
 void elliptic::dg::homogeneous_dirichlet_boundary_conditions ( const gsl::not_null< Variables< TagsList > * > exterior_vars, const Variables< TagsList > & interior_vars )
noexcept

Set the exterior_vars so that they represent homogeneous (zero) Dirichlet boundary conditions.

To impose homogeneous Dirichlet boundary conditions we mirror the interior_vars and invert their sign. Variables that are not in the DirichletTags list are mirrored without changing their sign, so no boundary conditions are imposed on them.

◆ penalty()

 DataVector elliptic::dg::penalty ( const DataVector & element_size, size_t num_points, double penalty_parameter )
noexcept

The penalty factor in internal penalty fluxes.

The penalty factor is computed as

$$\sigma = C \frac{N_\text{points}^2}{h}$$

where $$N_\text{points} = 1 + N_p$$ is the number of points (or one plus the polynomial degree) and $$h$$ is a measure of the element size. Both quantities are taken perpendicular to the face of the DG element that the penalty is being computed on. $$C$$ is the "penalty parameter". For details see section 7.2 in [43].