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