MAST
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
MAST::FEBase Class Reference

Detailed Description

Definition at line 39 of file fe_base.h.

#include <fe_base.h>

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

Public Member Functions

 FEBase (const MAST::SystemInitialization &sys)
 
virtual ~FEBase ()
 
virtual const std::vector< std::vector< libMesh::RealTensorValue > > & get_d2phi () 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< std::vector< libMesh::RealVectorValue > > & get_dphi () const
 
virtual const std::vector< std::vector< Real > > & get_dphideta () const
 
virtual const std::vector< std::vector< Real > > & get_dphidxi () const
 
virtual const std::vector< std::vector< Real > > & get_dphidzeta () 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< libMesh::RealVectorValue > & get_dxyzdeta () const
 
virtual const std::vector< libMesh::RealVectorValue > & get_dxyzdxi () const
 
virtual const std::vector< libMesh::RealVectorValue > & get_dxyzdzeta () 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
 
libMesh::FEType get_fe_type () const
 
virtual const std::vector< Real > & get_JxW () const
 
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_normals_for_reference_coordinate () const
 normals defined in the global coordinate system for the reference element More...
 
virtual const std::vector< std::vector< Real > > & get_phi () const
 
virtual const std::vector< libMesh::Point > & get_qpoints () const
 
virtual const libMesh::QBase & get_qrule () 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 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...
 
bool initialized () const
 
virtual unsigned int n_shape_functions () const
 
void set_evaluate_second_order_derivatives (bool f)
 sets the flag for evaluation of second order derivative More...
 
void set_extra_quadrature_order (int n)
 this is used, in addition to libMesh::System::extra_quadrature_order to set the quadrature rule. More...
 

Protected Attributes

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

Constructor & Destructor Documentation

◆ FEBase()

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

Definition at line 27 of file fe_base.cpp.

◆ ~FEBase()

MAST::FEBase::~FEBase ( )
virtual

Definition at line 39 of file fe_base.cpp.

Member Function Documentation

◆ get_d2phi()

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

Definition at line 263 of file fe_base.cpp.

◆ get_detadx()

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

Definition at line 295 of file fe_base.cpp.

◆ get_detady()

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

Definition at line 303 of file fe_base.cpp.

◆ get_detadz()

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

Definition at line 311 of file fe_base.cpp.

◆ get_dphi()

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

Definition at line 255 of file fe_base.cpp.

◆ get_dphideta()

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

Definition at line 375 of file fe_base.cpp.

◆ get_dphidxi()

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

Definition at line 367 of file fe_base.cpp.

◆ get_dphidzeta()

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

Definition at line 383 of file fe_base.cpp.

◆ get_dxidx()

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

Definition at line 271 of file fe_base.cpp.

◆ get_dxidy()

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

Definition at line 279 of file fe_base.cpp.

◆ get_dxidz()

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

Definition at line 287 of file fe_base.cpp.

◆ get_dxyzdeta()

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

Definition at line 351 of file fe_base.cpp.

◆ get_dxyzdxi()

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

Definition at line 343 of file fe_base.cpp.

◆ get_dxyzdzeta()

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

Definition at line 359 of file fe_base.cpp.

◆ get_dzetadx()

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

Definition at line 319 of file fe_base.cpp.

◆ get_dzetady()

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

Definition at line 327 of file fe_base.cpp.

◆ get_dzetadz()

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

Definition at line 335 of file fe_base.cpp.

◆ get_fe_type()

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

Definition at line 212 of file fe_base.cpp.

◆ get_JxW()

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

Reimplemented in MAST::SubCellFE.

Definition at line 220 of file fe_base.cpp.

◆ get_normals_for_local_coordinate()

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.

◆ get_normals_for_reference_coordinate()

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.

◆ get_phi()

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

Definition at line 247 of file fe_base.cpp.

◆ get_qpoints()

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

Reimplemented in MAST::SubCellFE.

Definition at line 407 of file fe_base.cpp.

◆ get_qrule()

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

Definition at line 418 of file fe_base.cpp.

◆ get_xyz()

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.

◆ init()

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.

◆ init_for_side()

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.

◆ initialized()

bool MAST::FEBase::initialized ( ) const
inline

Definition at line 47 of file fe_base.h.

◆ n_shape_functions()

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

Definition at line 239 of file fe_base.cpp.

◆ set_evaluate_second_order_derivatives()

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.

◆ set_extra_quadrature_order()

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

◆ _elem

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

Definition at line 185 of file fe_base.h.

◆ _extra_quadrature_order

unsigned int MAST::FEBase::_extra_quadrature_order
protected

Definition at line 182 of file fe_base.h.

◆ _fe

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

Definition at line 186 of file fe_base.h.

◆ _global_normals

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

Definition at line 191 of file fe_base.h.

◆ _global_xyz

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

Definition at line 189 of file fe_base.h.

◆ _init_second_order_derivatives

bool MAST::FEBase::_init_second_order_derivatives
protected

Definition at line 183 of file fe_base.h.

◆ _initialized

bool MAST::FEBase::_initialized
protected

Definition at line 184 of file fe_base.h.

◆ _local_normals

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

Definition at line 190 of file fe_base.h.

◆ _qpoints

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

Definition at line 188 of file fe_base.h.

◆ _qrule

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

Definition at line 187 of file fe_base.h.

◆ _sys

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

Definition at line 181 of file fe_base.h.


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