Discontinuous Galerkin Library
#include "dg/algorithm.h"
dg::aRealRefinement1d< real_type > Struct Template Referenceabstract

Abstract base class for 1d grid refinement that increases the number of grid cells of a fixed basis grid. More...

Inheritance diagram for dg::aRealRefinement1d< real_type >:
[legend]

Public Member Functions

void generate (const RealGrid1d< real_type > &g_old, thrust::host_vector< real_type > &weights, thrust::host_vector< real_type > &abscissas) const
 Generate the grid transformation. More...
 
unsigned N_new (unsigned N_old, bc bcx) const
 the new number of cells More...
 
virtual aRealRefinement1dclone () const =0
 
virtual ~aRealRefinement1d ()=default
 

Protected Member Functions

 aRealRefinement1d ()=default
 
 aRealRefinement1d (const aRealRefinement1d &src)=default
 
aRealRefinement1doperator= (const aRealRefinement1d &src)=default
 

Detailed Description

template<class real_type>
struct dg::aRealRefinement1d< real_type >

Abstract base class for 1d grid refinement that increases the number of grid cells of a fixed basis grid.

Constructor & Destructor Documentation

◆ ~aRealRefinement1d()

template<class real_type >
virtual dg::aRealRefinement1d< real_type >::~aRealRefinement1d ( )
virtualdefault

◆ aRealRefinement1d() [1/2]

template<class real_type >
dg::aRealRefinement1d< real_type >::aRealRefinement1d ( )
protecteddefault

◆ aRealRefinement1d() [2/2]

template<class real_type >
dg::aRealRefinement1d< real_type >::aRealRefinement1d ( const aRealRefinement1d< real_type > &  src)
protecteddefault

Member Function Documentation

◆ clone()

◆ generate()

template<class real_type >
void dg::aRealRefinement1d< real_type >::generate ( const RealGrid1d< real_type > &  g_old,
thrust::host_vector< real_type > &  weights,
thrust::host_vector< real_type > &  abscissas 
) const
inline

Generate the grid transformation.

Parameters
g_oldThe 1d grid to refine
weightsA 1d vector of size N_new. These represent the Jacobian of the transformation

\[\frac{\partial \zeta}{\partial x} \]

. The new metric element has thus to be multiplied by weights^2 and the volume by 1/weights
abscissasA 1d vector of size N_new. These are the new abscissas \( x(\zeta) \) of the grid.

◆ N_new()

template<class real_type >
unsigned dg::aRealRefinement1d< real_type >::N_new ( unsigned  N_old,
bc  bcx 
) const
inline

the new number of cells

Parameters
N_oldthe old number of cells
bcxthe boundary condition of the grid

◆ operator=()

template<class real_type >
aRealRefinement1d & dg::aRealRefinement1d< real_type >::operator= ( const aRealRefinement1d< real_type > &  src)
protecteddefault

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