37#ifndef _ABSTRACTTETRAHEDRALELEMENT_HPP_
38#define _ABSTRACTTETRAHEDRALELEMENT_HPP_
45#include "AbstractElement.hpp"
51template <
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
61 void RefreshJacobian(c_matrix<double, SPACE_DIM, ELEMENT_DIM>& rJacobian);
99 double& rJacobianDeterminant);
122 double& rJacobianDeterminant,
123 c_matrix<double, ELEMENT_DIM, SPACE_DIM>& rInverseJacobian);
129 double GetVolume(
double determinant)
const;
150template<
unsigned SPACE_DIM>
virtual ~AbstractTetrahedralElement()
void RefreshJacobian(c_matrix< double, SPACE_DIM, ELEMENT_DIM > &rJacobian)
void CalculateInverseJacobian(c_matrix< double, SPACE_DIM, ELEMENT_DIM > &rJacobian, double &rJacobianDeterminant, c_matrix< double, ELEMENT_DIM, SPACE_DIM > &rInverseJacobian)
double GetVolume(double determinant) const
void CalculateWeightedDirection(c_vector< double, SPACE_DIM > &rWeightedDirection, double &rJacobianDeterminant)
c_vector< double, SPACE_DIM > CalculateCentroid() const
void GetStiffnessMatrixGlobalIndices(unsigned problemDim, unsigned *pIndices) const
virtual ~AbstractTetrahedralElement()
void CalculateJacobian(c_matrix< double, SPACE_DIM, ELEMENT_DIM > &rJacobian, double &rJacobianDeterminant)
c_vector< double, SPACE_DIM > CalculateNormal()