ESYS13  Revision_
Defines | Functions | Variables
ShapeFunctions.c File Reference
#include "ShapeFunctions.h"
#include "esysUtils/mem.h"
#include "esysUtils/index.h"
#include <string.h>

Defines

#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 []

Define 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 
)

Variable Documentation

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  }
}