10 #error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
13 #include "../classes.h"
14 #include "../../shared/shared.h"
22 #define NUMNODESMAX 10
61 for(
int i=0;i<numnodes;i++) dpx += dbasis[0*numnodes+i]*plist[i];
62 for(
int i=0;i<numnodes;i++) dpy += dbasis[1*numnodes+i]*plist[i];
63 for(
int i=0;i<numnodes;i++) dpz += dbasis[2*numnodes+i]*plist[i];
87 for(
int i=0;i<numnodes;i++) value += basis[i]*plist[i];
135 if(*Jdet<0)
_error_(
"negative jacobian determinant!");
154 *Jdet=
SQRT3/6.*pow(pow(((y2-y1)*(z3-z1)-(z2-z1)*(y3-y1)),2)+pow(((z2-z1)*(x3-x1)-(x2-x1)*(z3-z1)),2)+pow(((x2-x1)*(y3-y1)-(y2-y1)*(x3-x1)),2),0.5);
155 if(*Jdet<0)
_error_(
"negative jacobian determinant!");
177 GaussTetra* gauss = xDynamicCast<GaussTetra*>(gauss_in);
179 switch(finiteelement){
240 for(
int i=0;i<numnodes;i++){
241 dbasis[numnodes*0+i]=Jinv[0][0]*dbasis_ref[0*numnodes+i]+Jinv[0][1]*dbasis_ref[1*numnodes+i]+Jinv[0][2]*dbasis_ref[2*numnodes+i];
242 dbasis[numnodes*1+i]=Jinv[1][0]*dbasis_ref[0*numnodes+i]+Jinv[1][1]*dbasis_ref[1*numnodes+i]+Jinv[1][2]*dbasis_ref[2*numnodes+i];
243 dbasis[numnodes*2+i]=Jinv[2][0]*dbasis_ref[0*numnodes+i]+Jinv[2][1]*dbasis_ref[1*numnodes+i]+Jinv[2][2]*dbasis_ref[2*numnodes+i];
253 switch(finiteelement){
347 switch(finiteelement){