1*59599516SKenneth E. Jansen /* Functions to generate the Legandre Polynomials and their derivatives */ 2*59599516SKenneth E. Jansen 3*59599516SKenneth E. Jansen extern "C" double LP(int j, double x); 4*59599516SKenneth E. Jansen extern "C" double LPdrv(int j, double x); 5*59599516SKenneth E. Jansen extern "C" double phi(int p, double x); 6*59599516SKenneth E. Jansen extern "C" double phiDrv(int p,double x); 7*59599516SKenneth E. Jansen extern "C" int HexShapeAndDrv(int p, double par[3], double N[], double 8*59599516SKenneth E. Jansen dN[][3]); 9*59599516SKenneth E. Jansen extern "C" int WedgeShapeAndDrv(int p, double Inputpar[3], double N[], double 10*59599516SKenneth E. Jansen dN[][3]); 11*59599516SKenneth E. Jansen extern "C" int PyrShapeAndDrv (int p, double Inputpar[3], double N[], double 12*59599516SKenneth E. Jansen dN[][3]); 13*59599516SKenneth E. Jansen 14*59599516SKenneth E. Jansen /* Blending functions */ 15*59599516SKenneth E. Jansen 16*59599516SKenneth E. Jansen extern "C" double Line_eB(double xi1); 17*59599516SKenneth E. Jansen extern "C" double dLEBdxi1(double xi1); 18*59599516SKenneth E. Jansen extern "C" double dLEBdxi2(double xi1); 19*59599516SKenneth E. Jansen extern "C" double dLEBdxi3(double xi1); 20*59599516SKenneth E. Jansen 21*59599516SKenneth E. Jansen extern "C" double Quad_eB(double xi1, double xi2, int sign); 22*59599516SKenneth E. Jansen extern "C" double dQEBdxi1(double xi1, double xi2, int sign); 23*59599516SKenneth E. Jansen extern "C" double dQEBdxi2(double xi1, double xi2, int sign); 24*59599516SKenneth E. Jansen extern "C" double dQEBdxi3(double xi1, double xi2, int sign); 25*59599516SKenneth E. Jansen 26*59599516SKenneth E. Jansen extern "C" double Quad_fB(double xi1, double xi2); 27*59599516SKenneth E. Jansen extern "C" double dQFBdxi1(double xi1, double xi2); 28*59599516SKenneth E. Jansen extern "C" double dQFBdxi2(double xi1, double xi2); 29*59599516SKenneth E. Jansen extern "C" double dQFBdxi3(double xi1, double xi2); 30*59599516SKenneth E. Jansen 31*59599516SKenneth E. Jansen extern "C" double Hex_eB(double xi[3], int sign2, int sign3); 32*59599516SKenneth E. Jansen extern "C" double dHEBdxi1(double xi[3], int sign2, int sign3); 33*59599516SKenneth E. Jansen extern "C" double dHEBdxi2(double xi[3], int sign2, int sign3); 34*59599516SKenneth E. Jansen extern "C" double dHEBdxi3(double xi[3], int sign2, int sign3); 35*59599516SKenneth E. Jansen 36*59599516SKenneth E. Jansen extern "C" double Hex_fB(double xi[3], int sign3); 37*59599516SKenneth E. Jansen extern "C" double dHFBdxi1(double xi[3], int sign3); 38*59599516SKenneth E. Jansen extern "C" double dHFBdxi2(double xi[3], int sign3); 39*59599516SKenneth E. Jansen extern "C" double dHFBdxi3(double xi[3], int sign3); 40*59599516SKenneth E. Jansen 41*59599516SKenneth E. Jansen /* Entity Level functions */ 42*59599516SKenneth E. Jansen 43*59599516SKenneth E. Jansen extern "C" int mesh_edge(double xi1,int gOrd[3], int p, double* entfn, 44*59599516SKenneth E. Jansen double** edrv); 45*59599516SKenneth E. Jansen extern "C" int quad_face(double xi[3], int gOrd[3], int p, double* 46*59599516SKenneth E. Jansen entfn, double** edrv); 47*59599516SKenneth E. Jansen extern "C" int hex_regn(double xi[3], int p, double* 48*59599516SKenneth E. Jansen entfn, double** edrv); 49*59599516SKenneth E. Jansen 50