Public Member Functions | Public Attributes | List of all members
MarmotElementSpatialWrapper Class Reference

#include <MarmotFiniteElementSpatialWrapper.h>

Inheritance diagram for MarmotElementSpatialWrapper:
[legend]

Public Member Functions

 MarmotElementSpatialWrapper (int nDim, int nChildDim, int nNodes, int sizeRhsChild, const int rhsIndicesToBeWrapped_[], int nRhsIndicesToBeWrapped, std::unique_ptr< MarmotElement > childElement)
 
int getNumberOfRequiredStateVars ()
 
std::vector< std::vector< std::string > > getNodeFields ()
 
std::vector< int > getDofIndicesPermutationPattern ()
 
int getNNodes ()
 
int getNSpatialDimensions ()
 
int getNDofPerElement ()
 
std::string getElementShape ()
 
void assignStateVars (double *stateVars, int nStateVars)
 
void assignProperty (const ElementProperties &property)
 
void assignProperty (const MarmotMaterialSection &property)
 
void assignNodeCoordinates (const double *coordinates)
 
void initializeYourself ()
 
void computeYourself (const double *QTotal, const double *dQ, double *Pe, double *Ke, const double *time, double dT, double &pNewdT)
 
void setInitialConditions (StateTypes state, const double *values)
 
void computeDistributedLoad (DistributedLoadTypes loadType, double *P, double *K, int elementFace, const double *load, const double *QTotal, const double *time, double dT)
 
void computeBodyForce (double *P, double *K, const double *load, const double *QTotal, const double *time, double dT)
 
StateView getStateView (const std::string &stateName, int quadraturePoint)
 
std::vector< double > getCoordinatesAtCenter ()
 
std::vector< std::vector< double > > getCoordinatesAtQuadraturePoints ()
 
int getNumberOfQuadraturePoints ()
 
- Public Member Functions inherited from MarmotElement
virtual ~MarmotElement ()
 

Public Attributes

const int nDim
 
const int nDimChild
 
const int nNodes
 
const int nRhsChild
 
const Eigen::Map< const Eigen::VectorXi > rhsIndicesToBeProjected
 
const int projectedSize
 
const int unprojectedSize
 
std::unique_ptr< MarmotElementchildElement
 
Eigen::MatrixXd T
 
Eigen::MatrixXd P
 
Eigen::MatrixXd projectedCoordinates
 

Additional Inherited Members

- Public Types inherited from MarmotElement
enum  StateTypes {
  Sigma11, Sigma22, Sigma33, HydrostaticStress,
  GeostaticStress, MarmotMaterialStateVars, MarmotMaterialInitialization
}
 
enum  DistributedLoadTypes { Pressure, SurfaceTorsion, SurfaceTraction }
 

Constructor & Destructor Documentation

◆ MarmotElementSpatialWrapper()

MarmotElementSpatialWrapper::MarmotElementSpatialWrapper ( int  nDim,
int  nChildDim,
int  nNodes,
int  sizeRhsChild,
const int  rhsIndicesToBeWrapped_[],
int  nRhsIndicesToBeWrapped,
std::unique_ptr< MarmotElement childElement 
)

Member Function Documentation

◆ getNumberOfRequiredStateVars()

int MarmotElementSpatialWrapper::getNumberOfRequiredStateVars ( )
virtual

Implements MarmotElement.

◆ getNodeFields()

std::vector< std::vector< std::string > > MarmotElementSpatialWrapper::getNodeFields ( )
virtual

Implements MarmotElement.

◆ getDofIndicesPermutationPattern()

std::vector< int > MarmotElementSpatialWrapper::getDofIndicesPermutationPattern ( )
virtual

Implements MarmotElement.

◆ getNNodes()

int MarmotElementSpatialWrapper::getNNodes ( )
virtual

Implements MarmotElement.

◆ getNSpatialDimensions()

int MarmotElementSpatialWrapper::getNSpatialDimensions ( )
virtual

Implements MarmotElement.

◆ getNDofPerElement()

int MarmotElementSpatialWrapper::getNDofPerElement ( )
virtual

Implements MarmotElement.

◆ getElementShape()

std::string MarmotElementSpatialWrapper::getElementShape ( )
virtual

Implements MarmotElement.

◆ assignStateVars()

void MarmotElementSpatialWrapper::assignStateVars ( double *  stateVars,
int  nStateVars 
)
virtual

Implements MarmotElement.

◆ assignProperty() [1/2]

void MarmotElementSpatialWrapper::assignProperty ( const ElementProperties property)
virtual

Reimplemented from MarmotElement.

◆ assignProperty() [2/2]

void MarmotElementSpatialWrapper::assignProperty ( const MarmotMaterialSection property)
virtual

Reimplemented from MarmotElement.

◆ assignNodeCoordinates()

void MarmotElementSpatialWrapper::assignNodeCoordinates ( const double *  coordinates)
virtual

Implements MarmotElement.

◆ initializeYourself()

void MarmotElementSpatialWrapper::initializeYourself ( )
virtual

Implements MarmotElement.

◆ computeYourself()

void MarmotElementSpatialWrapper::computeYourself ( const double *  QTotal,
const double *  dQ,
double *  Pe,
double *  Ke,
const double *  time,
double  dT,
double &  pNewdT 
)
virtual

Implements MarmotElement.

◆ setInitialConditions()

void MarmotElementSpatialWrapper::setInitialConditions ( StateTypes  state,
const double *  values 
)
virtual

Implements MarmotElement.

◆ computeDistributedLoad()

void MarmotElementSpatialWrapper::computeDistributedLoad ( DistributedLoadTypes  loadType,
double *  P,
double *  K,
int  elementFace,
const double *  load,
const double *  QTotal,
const double *  time,
double  dT 
)
virtual

Implements MarmotElement.

◆ computeBodyForce()

void MarmotElementSpatialWrapper::computeBodyForce ( double *  P,
double *  K,
const double *  load,
const double *  QTotal,
const double *  time,
double  dT 
)
virtual

Implements MarmotElement.

◆ getStateView()

StateView MarmotElementSpatialWrapper::getStateView ( const std::string &  stateName,
int  quadraturePoint 
)
virtual

Implements MarmotElement.

◆ getCoordinatesAtCenter()

std::vector< double > MarmotElementSpatialWrapper::getCoordinatesAtCenter ( )
virtual

Implements MarmotElement.

◆ getCoordinatesAtQuadraturePoints()

std::vector< std::vector< double > > MarmotElementSpatialWrapper::getCoordinatesAtQuadraturePoints ( )
virtual

Implements MarmotElement.

◆ getNumberOfQuadraturePoints()

int MarmotElementSpatialWrapper::getNumberOfQuadraturePoints ( )
virtual

Implements MarmotElement.

Member Data Documentation

◆ nDim

const int MarmotElementSpatialWrapper::nDim

◆ nDimChild

const int MarmotElementSpatialWrapper::nDimChild

◆ nNodes

const int MarmotElementSpatialWrapper::nNodes

◆ nRhsChild

const int MarmotElementSpatialWrapper::nRhsChild

◆ rhsIndicesToBeProjected

const Eigen::Map< const Eigen::VectorXi > MarmotElementSpatialWrapper::rhsIndicesToBeProjected

◆ projectedSize

const int MarmotElementSpatialWrapper::projectedSize

◆ unprojectedSize

const int MarmotElementSpatialWrapper::unprojectedSize

◆ childElement

std::unique_ptr< MarmotElement > MarmotElementSpatialWrapper::childElement

◆ T

Eigen::MatrixXd MarmotElementSpatialWrapper::T

◆ P

Eigen::MatrixXd MarmotElementSpatialWrapper::P

◆ projectedCoordinates

Eigen::MatrixXd MarmotElementSpatialWrapper::projectedCoordinates

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