Seismo-VLAB  1.3
An Open-Source Finite Element Software for Meso-Scale Simulations
LobattoQuadrature Class Reference

Class for creating a Gauss-Lobatto Quadrature declarations to integrate quantities in the iso-parametric elements. More...

#include <LobattoQuadrature.hpp>

Inheritance diagram for LobattoQuadrature:
Collaboration diagram for LobattoQuadrature:

Public Member Functions

 LobattoQuadrature (std::string name, unsigned int nQp)
 Creates a LobattoQuadrature for Element integration. More...
 
 ~LobattoQuadrature ()
 Destroys this LobattoQuadrature object. More...
 
unsigned int GetNumberOfQuadraturePoints ()
 Gets Number of Gauss Integration Points. More...
 
void GetQuadraturePoints (std::string name, Eigen::VectorXd &wi, Eigen::MatrixXd &xi)
 Gets Gauss Integration Points. More...
 
- Public Member Functions inherited from QuadratureRule
 QuadratureRule (std::string name)
 Creates a QuadratureRule for Element integration. More...
 
virtual ~QuadratureRule ()=0
 Destroys this QuadratureRule object. More...
 
std::string GetQuadratureName ()
 Gets the Element's Quadrature Name. More...
 

Private Member Functions

void SetLineQuadraturePoints (Eigen::VectorXd &wi, Eigen::MatrixXd &xi)
 Sets Gauss Quadrature for Line Elements. More...
 
void SetTriaQuadraturePoints (Eigen::VectorXd &wi, Eigen::MatrixXd &xi)
 Sets Gauss Quadrature for Triangular Elements. More...
 
void SetQuadQuadraturePoints (Eigen::VectorXd &wi, Eigen::MatrixXd &xi)
 Sets Gauss Quadrature for Quadrilateral Elements. More...
 
void SetTetraQuadraturePoints (Eigen::VectorXd &wi, Eigen::MatrixXd &xi)
 Sets Gauss Quadrature for Tetrahedron Elements. More...
 
void SetHexaQuadraturePoints (Eigen::VectorXd &wi, Eigen::MatrixXd &xi)
 Sets Gauss Quadrature for Hexahedron Elements. More...
 

Private Attributes

unsigned int nQuadraturePoints
 Number of Quadrature Points. More...
 
unsigned int nOrderQuadrature
 Number of Surface Quadrature Points. More...
 

Detailed Description

Class for creating a Gauss-Lobatto Quadrature declarations to integrate quantities in the iso-parametric elements.

See also
Element.hpp QuadratureRule.hpp

Constructor & Destructor Documentation

◆ LobattoQuadrature()

LobattoQuadrature::LobattoQuadrature ( std::string  name,
unsigned int  nQp 
)

Creates a LobattoQuadrature for Element integration.

Parameters
nameGeneric name of the Element for this quadrature rule.
nQpNumber of quadrature points.
Note
More details can be found at Lobatto Quadrature.
See also
LobattoQuadrature::nQuadraturePoints, LobattoQuadrature::nOrderQuadrature.

◆ ~LobattoQuadrature()

LobattoQuadrature::~LobattoQuadrature ( )

Destroys this LobattoQuadrature object.

Member Function Documentation

◆ GetNumberOfQuadraturePoints()

unsigned int LobattoQuadrature::GetNumberOfQuadraturePoints ( )
virtual

Gets Number of Gauss Integration Points.

Returns
The number of Gauss Integration Points.

Implements QuadratureRule.

◆ GetQuadraturePoints()

void LobattoQuadrature::GetQuadraturePoints ( std::string  name,
Eigen::VectorXd &  wi,
Eigen::MatrixXd &  xi 
)
virtual

Gets Gauss Integration Points.

Parameters
nameGeneric name of the Element for this quadrature rule.
wiThe Gauss quadrature weights.
xiThe Gauss quadrature coordinates.

Implements QuadratureRule.

◆ SetHexaQuadraturePoints()

void LobattoQuadrature::SetHexaQuadraturePoints ( Eigen::VectorXd &  wi,
Eigen::MatrixXd &  xi 
)
private

Sets Gauss Quadrature for Hexahedron Elements.

Parameters
wiThe Gauss quadrature weights.
xiThe Gauss quadrature coordinates.
Note
This function returns the Hexahedron quadrature information, see linkLobattoQuadrature.

◆ SetLineQuadraturePoints()

void LobattoQuadrature::SetLineQuadraturePoints ( Eigen::VectorXd &  wi,
Eigen::MatrixXd &  xi 
)
private

Sets Gauss Quadrature for Line Elements.

Parameters
wiThe Gauss quadrature weights.
xiThe Gauss quadrature coordinates.
Note
This function returns the Hexahedron quadrature information, see linkLobattoQuadrature.

◆ SetQuadQuadraturePoints()

void LobattoQuadrature::SetQuadQuadraturePoints ( Eigen::VectorXd &  wi,
Eigen::MatrixXd &  xi 
)
private

Sets Gauss Quadrature for Quadrilateral Elements.

Parameters
wiThe Gauss quadrature weights.
xiThe Gauss quadrature coordinates.
Note
This function returns the Hexahedron quadrature information, see linkLobattoQuadrature.

◆ SetTetraQuadraturePoints()

void LobattoQuadrature::SetTetraQuadraturePoints ( Eigen::VectorXd &  wi,
Eigen::MatrixXd &  xi 
)
private

Sets Gauss Quadrature for Tetrahedron Elements.

Parameters
wiThe Gauss quadrature weights.
xiThe Gauss quadrature coordinates.
Note
This function returns the Hexahedron quadrature information, see linkLobattoQuadrature.

◆ SetTriaQuadraturePoints()

void LobattoQuadrature::SetTriaQuadraturePoints ( Eigen::VectorXd &  wi,
Eigen::MatrixXd &  xi 
)
private

Sets Gauss Quadrature for Triangular Elements.

Parameters
wiThe Gauss quadrature weights.
xiThe Gauss quadrature coordinates.
Note
This function returns the Hexahedron quadrature information, see linkLobattoQuadrature.

Member Data Documentation

◆ nOrderQuadrature

unsigned int LobattoQuadrature::nOrderQuadrature
private

Number of Surface Quadrature Points.

◆ nQuadraturePoints

unsigned int LobattoQuadrature::nQuadraturePoints
private

Number of Quadrature Points.