Escript  Revision_4320
Macros | Functions | Variables
ShapeFunctions.c File Reference
#include "ShapeFunctions.h"
#include "esysUtils/mem.h"
#include "esysUtils/index.h"
#include <string.h>

Macros

#define V(_K_, _I_)   v[INDEX2((_K_)-1,(_I_),DIM)]
#define S(_J_, _I_)   s[S_INDEX((_J_)-1,(_I_),NUMSHAPES)]
#define DSDV(_J_, _K_, _I_)   dsdv[DSDV_INDEX((_J_)-1,(_K_)-1,(_I_),NUMSHAPES,DIM)]
#define NUMSHAPES   1
#define DIM   0
#define NUMSHAPES   2
#define DIM   1
#define NUMSHAPES   3
#define DIM   1
#define NUMSHAPES   4
#define DIM   1
#define NUMSHAPES   3
#define DIM   2
#define NUMSHAPES   6
#define DIM   2
#define NUMSHAPES   9
#define DIM   2
#define NUMSHAPES   10
#define DIM   2
#define NUMSHAPES   4
#define DIM   2
#define NUMSHAPES   8
#define DIM   2
#define NUMSHAPES   9
#define DIM   2
#define NUMSHAPES   12
#define DIM   2
#define NUMSHAPES   16
#define DIM   2
#define NUMSHAPES   4
#define DIM   3
#define NUMSHAPES   10
#define DIM   3
#define NUMSHAPES   16
#define DIM   3
#define NUMSHAPES   8
#define DIM   3
#define NUMSHAPES   20
#define DIM   3
#define NUMSHAPES   27
#define DIM   3
#define NUMSHAPES   32
#define DIM   3

Functions

Finley_ShapeFunctionFinley_ShapeFunction_alloc (Finley_ShapeFunctionTypeId id, int numQuadDim, int numQuadNodes, double *QuadNodes, double *QuadWeights)
Finley_ShapeFunctionFinley_ShapeFunction_reference (Finley_ShapeFunction *in)
void Finley_ShapeFunction_dealloc (Finley_ShapeFunction *in)
Finley_ShapeFunctionTypeId Finley_ShapeFunction_getTypeId (char *element_type)
Finley_ShapeFunctionInfoFinley_ShapeFunction_getInfo (Finley_ShapeFunctionTypeId id)
void Finley_Shape_Point1 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Line2 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Line3 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Line4 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tri3 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tri6 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tri9 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tri10 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Rec4 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Rec8 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Rec9 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Rec12 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Rec16 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tet4 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tet10 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Tet16 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Hex8 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Hex20 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Hex27 (int NumV, double *v, double *s, double *dsdv)
void Finley_Shape_Hex32 (int NumV, double *v, double *s, double *dsdv)

Variables

Finley_ShapeFunctionInfo Finley_ShapeFunction_InfoList []

Macro Definition Documentation

#define DIM   0
#define DIM   1
#define DIM   1
#define DIM   1
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   2
#define DIM   3
#define DIM   3
#define DIM   3
#define DIM   3
#define DIM   3
#define DIM   3
#define DIM   3
#define DSDV (   _J_,
  _K_,
  _I_ 
)    dsdv[DSDV_INDEX((_J_)-1,(_K_)-1,(_I_),NUMSHAPES,DIM)]
#define NUMSHAPES   1
#define NUMSHAPES   2
#define NUMSHAPES   3
#define NUMSHAPES   4
#define NUMSHAPES   3
#define NUMSHAPES   6
#define NUMSHAPES   9
#define NUMSHAPES   10
#define NUMSHAPES   4
#define NUMSHAPES   8
#define NUMSHAPES   9
#define NUMSHAPES   12
#define NUMSHAPES   16
#define NUMSHAPES   4
#define NUMSHAPES   10
#define NUMSHAPES   16
#define NUMSHAPES   8
#define NUMSHAPES   20
#define NUMSHAPES   27
#define NUMSHAPES   32
#define S (   _J_,
  _I_ 
)    s[S_INDEX((_J_)-1,(_I_),NUMSHAPES)]
#define V (   _K_,
  _I_ 
)    v[INDEX2((_K_)-1,(_I_),DIM)]

Function Documentation

void Finley_Shape_Hex20 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Hex27 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Hex32 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Hex8 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Line2 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Line3 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Line4 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Point1 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References S.

void Finley_Shape_Rec12 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Rec16 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Rec4 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Rec8 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Rec9 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tet10 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tet16 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tet4 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tri10 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tri3 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tri6 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

void Finley_Shape_Tri9 ( int  NumV,
double *  v,
double *  s,
double *  dsdv 
)

References DSDV, S, and V.

Finley_ShapeFunction* Finley_ShapeFunction_alloc ( Finley_ShapeFunctionTypeId  id,
int  numQuadDim,
int  numQuadNodes,
double *  QuadNodes,
double *  QuadWeights 
)
void Finley_ShapeFunction_dealloc ( Finley_ShapeFunction in)
Finley_ShapeFunctionInfo* Finley_ShapeFunction_getInfo ( Finley_ShapeFunctionTypeId  id)
Finley_ShapeFunctionTypeId Finley_ShapeFunction_getTypeId ( char *  element_type)
Finley_ShapeFunction* Finley_ShapeFunction_reference ( Finley_ShapeFunction in)

Variable Documentation

Finley_ShapeFunctionInfo Finley_ShapeFunction_InfoList[]
Initial value:
{
{Point1Shape, "Point1", 0, 1, 1, 1, Finley_Shape_Point1 } ,
{Line2Shape, "Line2", 1, 2, 1, 2, Finley_Shape_Line2 } ,
{Line3Shape, "Line3", 1, 3, 2, 2, Finley_Shape_Line3 },
{Line4Shape, "Line4", 1, 4, 3, 2, Finley_Shape_Line4 },
{Tri3Shape, "Tri3", 2, 3, 1, 3, Finley_Shape_Tri3 },
{Tri6Shape, "Tri6", 2, 6, 2, 3, Finley_Shape_Tri6 },
{Tri9Shape, "Tri9", 2, 9, 3, 3, Finley_Shape_Tri9 },
{Tri10Shape, "Tri10", 2, 10, 3, 3, Finley_Shape_Tri10, },
{Rec4Shape, "Rec4", 2, 4, 1, 4, Finley_Shape_Rec4, },
{Rec8Shape, "Rec8", 2, 8, 2, 4, Finley_Shape_Rec8, },
{Rec9Shape, "Rec9", 2, 9, 2, 4, Finley_Shape_Rec9, },
{Rec12Shape, "Rec12", 2, 12, 3, 4, Finley_Shape_Rec12, },
{Rec16Shape, "Rec16", 2, 16, 3, 4, Finley_Shape_Rec16, },
{Tet4Shape, "Tet4", 3, 4, 1, 4, Finley_Shape_Tet4, },
{Tet10Shape, "Tet10", 3, 10, 2, 4, Finley_Shape_Tet10, },
{Tet16Shape, "Tet16", 3, 16, 3, 4, Finley_Shape_Tet16, },
{Hex8Shape, "Hex8", 3, 8, 1, 8, Finley_Shape_Hex8, },
{Hex20Shape, "Hex20", 3, 20, 2, 8, Finley_Shape_Hex20, },
{Hex27Shape, "Hex27", 3, 27, 2, 8, Finley_Shape_Hex27, },
{Hex32Shape, "Hex32", 3, 32, 3, 8, Finley_Shape_Hex32, },
{NoShape, "NoType", 0, 1, 1, 1, Finley_Shape_Point1 }
}