MAST
MAST::FEBase Class Reference

#include <fe_base.h>

Inheritance diagram for MAST::FEBase:
Collaboration diagram for MAST::FEBase:

Public Member Functions

 FEBase (const MAST::SystemInitialization &sys)
 
virtual ~FEBase ()
 
void set_extra_quadrature_order (int n)
 this is used, in addition to libMesh::System::extra_quadrature_order to set the quadrature rule. More...
 
void set_evaluate_second_order_derivatives (bool f)
 sets the flag for evaluation of second order derivative More...
 
virtual void init (const MAST::GeomElem &elem, bool init_grads, const std::vector< libMesh::Point > *pts=nullptr)
 Initializes the quadrature and finite element for element volume integration. More...
 
virtual void init_for_side (const MAST::GeomElem &elem, unsigned int s, bool if_calculate_dphi)
 Initializes the quadrature and finite element for element side integration. More...
 
libMesh::FEType get_fe_type () const
 
virtual const std::vector< Real > & get_JxW () const
 
virtual const std::vector< libMesh::Point > & get_xyz () const
 physical location of the quadrature point in the global coordinate system for the reference element More...
 
virtual unsigned int n_shape_functions () const
 
virtual const std::vector< std::vector< Real > > & get_phi () const
 
virtual const std::vector< std::vector< libMesh::RealVectorValue > > & get_dphi () const
 
virtual const std::vector< std::vector< libMesh::RealTensorValue > > & get_d2phi () const
 
virtual const std::vector< Real > & get_dxidx () const
 
virtual const std::vector< Real > & get_dxidy () const
 
virtual const std::vector< Real > & get_dxidz () const
 
virtual const std::vector< Real > & get_detadx () const
 
virtual const std::vector< Real > & get_detady () const
 
virtual const std::vector< Real > & get_detadz () const
 
virtual const std::vector< Real > & get_dzetadx () const
 
virtual const std::vector< Real > & get_dzetady () const
 
virtual const std::vector< Real > & get_dzetadz () const
 
virtual const std::vector< libMesh::RealVectorValue > & get_dxyzdxi () const
 
virtual const std::vector< libMesh::RealVectorValue > & get_dxyzdeta () const
 
virtual const std::vector< libMesh::RealVectorValue > & get_dxyzdzeta () const
 
virtual const std::vector< std::vector< Real > > & get_dphidxi () const
 
virtual const std::vector< std::vector< Real > > & get_dphideta () const
 
virtual const std::vector< std::vector< Real > > & get_dphidzeta () const
 
virtual const std::vector< libMesh::Point > & get_normals_for_reference_coordinate () const
 normals defined in the global coordinate system for the reference element More...
 
virtual const std::vector< libMesh::Point > & get_normals_for_local_coordinate () const
 normals defined in the coordinate system for the local reference element. More...
 
virtual const std::vector< libMesh::Point > & get_qpoints () const
 
virtual const libMesh::QBase & get_qrule () const
 

Protected Attributes

const MAST::SystemInitialization_sys
 
unsigned int _extra_quadrature_order
 
bool _init_second_order_derivatives
 
bool _initialized
 
const MAST::GeomElem_elem
 
libMesh::FEBase * _fe
 
libMesh::QBase * _qrule
 
std::vector< libMesh::Point > _qpoints
 
std::vector< libMesh::Point > _global_xyz
 
std::vector< libMesh::Point > _local_normals
 
std::vector< libMesh::Point > _global_normals
 

Detailed Description

Definition at line 39 of file fe_base.h.

Constructor & Destructor Documentation

MAST::FEBase::FEBase ( const MAST::SystemInitialization sys)

Definition at line 27 of file fe_base.cpp.

MAST::FEBase::~FEBase ( )
virtual

Definition at line 39 of file fe_base.cpp.

Member Function Documentation

const std::vector< std::vector< libMesh::RealTensorValue > > & MAST::FEBase::get_d2phi ( ) const
virtual

Definition at line 263 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_detadx ( ) const
virtual

Definition at line 295 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_detady ( ) const
virtual

Definition at line 303 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_detadz ( ) const
virtual

Definition at line 311 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< std::vector< libMesh::RealVectorValue > > & MAST::FEBase::get_dphi ( ) const
virtual

Definition at line 255 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< std::vector< Real > > & MAST::FEBase::get_dphideta ( ) const
virtual

Definition at line 375 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< std::vector< Real > > & MAST::FEBase::get_dphidxi ( ) const
virtual

Definition at line 367 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< std::vector< Real > > & MAST::FEBase::get_dphidzeta ( ) const
virtual

Definition at line 383 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_dxidx ( ) const
virtual

Definition at line 271 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_dxidy ( ) const
virtual

Definition at line 279 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_dxidz ( ) const
virtual

Definition at line 287 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::RealVectorValue > & MAST::FEBase::get_dxyzdeta ( ) const
virtual

Definition at line 351 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::RealVectorValue > & MAST::FEBase::get_dxyzdxi ( ) const
virtual

Definition at line 343 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::RealVectorValue > & MAST::FEBase::get_dxyzdzeta ( ) const
virtual

Definition at line 359 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_dzetadx ( ) const
virtual

Definition at line 319 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_dzetady ( ) const
virtual

Definition at line 327 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_dzetadz ( ) const
virtual

Definition at line 335 of file fe_base.cpp.

Here is the caller graph for this function:

libMesh::FEType MAST::FEBase::get_fe_type ( ) const

Definition at line 212 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< Real > & MAST::FEBase::get_JxW ( ) const
virtual

Reimplemented in MAST::SubCellFE.

Definition at line 220 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::Point > & MAST::FEBase::get_normals_for_local_coordinate ( ) const
virtual

normals defined in the coordinate system for the local reference element.

Definition at line 399 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::Point > & MAST::FEBase::get_normals_for_reference_coordinate ( ) const
virtual

normals defined in the global coordinate system for the reference element

Definition at line 391 of file fe_base.cpp.

const std::vector< std::vector< Real > > & MAST::FEBase::get_phi ( ) const
virtual

Definition at line 247 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::Point > & MAST::FEBase::get_qpoints ( ) const
virtual

Reimplemented in MAST::SubCellFE.

Definition at line 407 of file fe_base.cpp.

Here is the caller graph for this function:

const libMesh::QBase & MAST::FEBase::get_qrule ( ) const
virtual

Definition at line 418 of file fe_base.cpp.

Here is the caller graph for this function:

const std::vector< libMesh::Point > & MAST::FEBase::get_xyz ( ) const
virtual

physical location of the quadrature point in the global coordinate system for the reference element

Definition at line 228 of file fe_base.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void MAST::FEBase::init ( const MAST::GeomElem elem,
bool  init_grads,
const std::vector< libMesh::Point > *  pts = nullptr 
)
virtual

Initializes the quadrature and finite element for element volume integration.

Parameters
elemlibMesh::Elem for which the finite element is initialized.
ptsthe points at which the element should be initialized. If nullptr, the points specified by quadrature used and the extra quadrature order specified in libMesh::System is used. An additional change in quadrature order can be specified using the method set_extra_quadrature_order(). This can be a positive or negative value.

Reimplemented in MAST::SubCellFE.

Definition at line 64 of file fe_base.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void MAST::FEBase::init_for_side ( const MAST::GeomElem elem,
unsigned int  s,
bool  if_calculate_dphi 
)
virtual

Initializes the quadrature and finite element for element side integration.

The last argument if_calculate_dphi tells the function to request the fe object to also initialize the calculation of shape function derivatives

Reimplemented in MAST::SubCellFE.

Definition at line 137 of file fe_base.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

unsigned int MAST::FEBase::n_shape_functions ( ) const
virtual

Definition at line 239 of file fe_base.cpp.

Here is the caller graph for this function:

void MAST::FEBase::set_evaluate_second_order_derivatives ( bool  f)

sets the flag for evaluation of second order derivative

Definition at line 57 of file fe_base.cpp.

void MAST::FEBase::set_extra_quadrature_order ( int  n)

this is used, in addition to libMesh::System::extra_quadrature_order to set the quadrature rule.

Definition at line 50 of file fe_base.cpp.

Member Data Documentation

const MAST::GeomElem* MAST::FEBase::_elem
protected

Definition at line 183 of file fe_base.h.

unsigned int MAST::FEBase::_extra_quadrature_order
protected

Definition at line 180 of file fe_base.h.

libMesh::FEBase* MAST::FEBase::_fe
protected

Definition at line 184 of file fe_base.h.

std::vector<libMesh::Point> MAST::FEBase::_global_normals
protected

Definition at line 189 of file fe_base.h.

std::vector<libMesh::Point> MAST::FEBase::_global_xyz
protected

Definition at line 187 of file fe_base.h.

bool MAST::FEBase::_init_second_order_derivatives
protected

Definition at line 181 of file fe_base.h.

bool MAST::FEBase::_initialized
protected

Definition at line 182 of file fe_base.h.

std::vector<libMesh::Point> MAST::FEBase::_local_normals
protected

Definition at line 188 of file fe_base.h.

std::vector<libMesh::Point> MAST::FEBase::_qpoints
protected

Definition at line 186 of file fe_base.h.

libMesh::QBase* MAST::FEBase::_qrule
protected

Definition at line 185 of file fe_base.h.

const MAST::SystemInitialization& MAST::FEBase::_sys
protected

Definition at line 179 of file fe_base.h.


The documentation for this class was generated from the following files: