Ice Sheet System Model  4.18
Code documentation
TriaRef.h
Go to the documentation of this file.
1 
6 #ifndef _TRIAREF_H_
7 #define _TRIAREF_H_
8 
9 class Gauss;
10 
11 class TriaRef{
12 
13  public:
14  TriaRef();
15  ~TriaRef();
16 
17  /*Numerics*/
18  void GetInputDerivativeValue(IssmDouble* pp, IssmDouble* plist,IssmDouble* xyz_list, Gauss* gauss,int finiteelement);
19  void GetInputValue(IssmDouble* pp, IssmDouble* plist, Gauss* gauss,int finiteelement);
20  void GetJacobian(IssmDouble* J, IssmDouble* xyz_list,Gauss* gauss);
21  void GetJacobianDeterminant(IssmDouble* Jdet, IssmDouble* xyz_list,Gauss* gauss);
22  void GetJacobianDeterminant3D(IssmDouble* Jdet, IssmDouble* xyz_list,Gauss* gauss);
23  void GetJacobianInvert(IssmDouble* Jinv, IssmDouble* xyz_list,Gauss* gauss);
24  void GetNodalFunctions(IssmDouble* basis,Gauss* gauss,int finiteelement);
25  void GetNodalFunctionsDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list, Gauss* gauss,int finiteelement);
26  void GetNodalFunctionsDerivativesReference(IssmDouble* dbasis,Gauss* gauss,int finiteelement);
27  void GetSegmentJacobianDeterminant(IssmDouble* Jdet, IssmDouble* xyz_list,Gauss* gauss);
28  void GetSegmentNodalFunctions(IssmDouble* basis,Gauss* gauss, int index1,int index2,int finiteelement);
29  void GetSegmentNodalFunctionsDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list_tria,Gauss* gauss, int index1,int index2,int finiteelement);
30  void Marshall(char** pmarshalled_data,int* pmarshalled_data_size, int marshall_direction){ /*do nothing */};
31  void NodeOnEdgeIndices(int* pnumindices,int** pindices,int index,int finiteelement);
32  int NumberofNodes(int finiteelement);
33  int PressureInterpolation(int fe_stokes);
34  int TensorInterpolation(int fe_stokes);
35  int VelocityInterpolation(int fe_stokes);
36 
37 };
38 #endif
TriaRef::GetJacobianDeterminant
void GetJacobianDeterminant(IssmDouble *Jdet, IssmDouble *xyz_list, Gauss *gauss)
Definition: TriaRef.cpp:107
IssmDouble
double IssmDouble
Definition: types.h:37
TriaRef::GetJacobianInvert
void GetJacobianInvert(IssmDouble *Jinv, IssmDouble *xyz_list, Gauss *gauss)
Definition: TriaRef.cpp:134
TriaRef::GetSegmentJacobianDeterminant
void GetSegmentJacobianDeterminant(IssmDouble *Jdet, IssmDouble *xyz_list, Gauss *gauss)
Definition: TriaRef.cpp:229
TriaRef::GetJacobianDeterminant3D
void GetJacobianDeterminant3D(IssmDouble *Jdet, IssmDouble *xyz_list, Gauss *gauss)
Definition: TriaRef.cpp:121
TriaRef::TriaRef
TriaRef()
Definition: TriaRef.cpp:26
TriaRef::GetSegmentNodalFunctions
void GetSegmentNodalFunctions(IssmDouble *basis, Gauss *gauss, int index1, int index2, int finiteelement)
Definition: TriaRef.cpp:243
TriaRef::~TriaRef
~TriaRef()
Definition: TriaRef.cpp:29
TriaRef::VelocityInterpolation
int VelocityInterpolation(int fe_stokes)
Definition: TriaRef.cpp:518
TriaRef::PressureInterpolation
int PressureInterpolation(int fe_stokes)
Definition: TriaRef.cpp:491
TriaRef::GetNodalFunctions
void GetNodalFunctions(IssmDouble *basis, Gauss *gauss, int finiteelement)
Definition: TriaRef.cpp:147
TriaRef::GetNodalFunctionsDerivativesReference
void GetNodalFunctionsDerivativesReference(IssmDouble *dbasis, Gauss *gauss, int finiteelement)
Definition: TriaRef.cpp:314
TriaRef::Marshall
void Marshall(char **pmarshalled_data, int *pmarshalled_data_size, int marshall_direction)
Definition: TriaRef.h:30
TriaRef::GetInputDerivativeValue
void GetInputDerivativeValue(IssmDouble *pp, IssmDouble *plist, IssmDouble *xyz_list, Gauss *gauss, int finiteelement)
Definition: TriaRef.cpp:34
TriaRef::NodeOnEdgeIndices
void NodeOnEdgeIndices(int *pnumindices, int **pindices, int index, int finiteelement)
Definition: TriaRef.cpp:404
TriaRef::GetNodalFunctionsDerivatives
void GetNodalFunctionsDerivatives(IssmDouble *dbasis, IssmDouble *xyz_list, Gauss *gauss, int finiteelement)
Definition: TriaRef.cpp:202
TriaRef::TensorInterpolation
int TensorInterpolation(int fe_stokes)
Definition: TriaRef.cpp:509
TriaRef::GetSegmentNodalFunctionsDerivatives
void GetSegmentNodalFunctionsDerivatives(IssmDouble *dbasis, IssmDouble *xyz_list_tria, Gauss *gauss, int index1, int index2, int finiteelement)
Definition: TriaRef.cpp:286
TriaRef::GetInputValue
void GetInputValue(IssmDouble *pp, IssmDouble *plist, Gauss *gauss, int finiteelement)
Definition: TriaRef.cpp:68
TriaRef::NumberofNodes
int NumberofNodes(int finiteelement)
Definition: TriaRef.cpp:463
TriaRef
Definition: TriaRef.h:11
TriaRef::GetJacobian
void GetJacobian(IssmDouble *J, IssmDouble *xyz_list, Gauss *gauss)
Definition: TriaRef.cpp:90
Gauss
Definition: Gauss.h:8