OISEAU
A modern DGTD framework
Loading...
Searching...
No Matches
oiseau::dg::nodal::RefLine Class Reference

Represents a reference line element used in nodal Discontinuous Galerkin methods. More...

#include <ref_line.hpp>

Inheritance diagram for oiseau::dg::nodal::RefLine:
oiseau::dg::nodal::RefElement

Public Member Functions

 RefLine (unsigned order)
 Constructs a RefLine element of the given polynomial order.
Public Member Functions inherited from oiseau::dg::nodal::RefElement
const xt::xarray< double > & v () const
const xt::xarray< double > & gv () const
const xt::xarray< double > & d () const
const xt::xarray< double > & r () const
unsigned order () const
unsigned number_of_nodes () const
unsigned number_of_face_nodes () const

Static Public Member Functions

static xt::xarray< double > basis_function (const xt::xarray< double > &r, int i)
 Evaluates the i-th Lagrange basis function at the given reference points.
static xt::xarray< double > grad_basis_function (const xt::xarray< double > &r, int i)
 Evaluates the gradient of the i-th Lagrange basis function at the given reference points.

Additional Inherited Members

Protected Member Functions inherited from oiseau::dg::nodal::RefElement
 RefElement (unsigned order)
Protected Attributes inherited from oiseau::dg::nodal::RefElement
unsigned m_order
unsigned m_np {}
unsigned m_nfp {}
xt::xarray< double > m_v
xt::xarray< double > m_gv
xt::xarray< double > m_d
xt::xarray< double > m_r

Detailed Description

Represents a reference line element used in nodal Discontinuous Galerkin methods.

This class implements the necessary basis functions, their gradients, and supporting operators for a 1D reference element (line) of arbitrary polynomial order.

ASCII representation of the reference line node numbering (order = 4):

(0) (1) (2) (3) (4) |--—|--—|--—|--—| -1 1

The line spans the reference interval [-1, 1]. Nodes are placed at Gauss, Gauss–Lobatto, or Jacobi–Gauss points depending on the implementation in generate_line_nodes.

Constructor & Destructor Documentation

◆ RefLine()

oiseau::dg::nodal::RefLine::RefLine ( unsigned order)
explicit

Constructs a RefLine element of the given polynomial order.

Parameters
orderThe polynomial order of the reference element.

Member Function Documentation

◆ basis_function()

xt::xarray< double > oiseau::dg::nodal::RefLine::basis_function ( const xt::xarray< double > & r,
int i )
static

Evaluates the i-th Lagrange basis function at the given reference points.

Parameters
rReference coordinates where the basis function is evaluated.
iIndex of the basis function to evaluate.
Returns
The value of the i-th basis function at each point in r.

◆ grad_basis_function()

xt::xarray< double > oiseau::dg::nodal::RefLine::grad_basis_function ( const xt::xarray< double > & r,
int i )
static

Evaluates the gradient of the i-th Lagrange basis function at the given reference points.

Parameters
rReference coordinates where the gradient is evaluated.
iIndex of the basis function.
Returns
The gradient of the i-th basis function at each point in r.

The documentation for this class was generated from the following files:
  • /__w/oiseau/oiseau/src/oiseau/dg/nodal/ref_line.hpp
  • /__w/oiseau/oiseau/src/oiseau/dg/nodal/ref_line.cpp