1*59599516SKenneth E. Jansen typedef double DARR2[2]; 2*59599516SKenneth E. Jansen 3*59599516SKenneth E. Jansen int lineIntPnt(int, DARR2**,double**); 4*59599516SKenneth E. Jansen 5*59599516SKenneth E. Jansen #ifdef sun4_5 6*59599516SKenneth E. Jansen symline_(int *n1, double pt[][4], double wt[], int *err) 7*59599516SKenneth E. Jansen #endif 8*59599516SKenneth E. Jansen #ifdef LINUX 9*59599516SKenneth E. Jansen symline_(int *n1, double pt[][4], double wt[], int *err) 10*59599516SKenneth E. Jansen #endif 11*59599516SKenneth E. Jansen #ifdef ibm 12*59599516SKenneth E. Jansen symline(int *n1, double pt[][4], double wt[], int *err) 13*59599516SKenneth E. Jansen #endif 14*59599516SKenneth E. Jansen #ifdef sgi 15*59599516SKenneth E. Jansen void symline_(int *n1, double pt[][4], double wt[], int *err) 16*59599516SKenneth E. Jansen #endif 17*59599516SKenneth E. Jansen #ifdef decalp 18*59599516SKenneth E. Jansen void symline_(int *n1, double pt[][4], double wt[], int *err) 19*59599516SKenneth E. Jansen #endif 20*59599516SKenneth E. Jansen #ifdef intel 21*59599516SKenneth E. Jansen void SYMLINE(int *n1, double pt[][4], double wt[], int *err) 22*59599516SKenneth E. Jansen #endif 23*59599516SKenneth E. Jansen { 24*59599516SKenneth E. Jansen double *lwt; 25*59599516SKenneth E. Jansen DARR2 *lpt; 26*59599516SKenneth E. Jansen int i,j; 27*59599516SKenneth E. Jansen *err = lineIntPnt(*n1, &lpt, &lwt); 28*59599516SKenneth E. Jansen for(i=0; i < *n1; i++){ 29*59599516SKenneth E. Jansen wt[i] = lwt[i]; 30*59599516SKenneth E. Jansen for(j=0; j < 2; j++) 31*59599516SKenneth E. Jansen pt[i][j] = lpt[i][j]; 32*59599516SKenneth E. Jansen } 33*59599516SKenneth E. Jansen } 34*59599516SKenneth E. Jansen 35*59599516SKenneth E. Jansen #include <stdio.h> 36*59599516SKenneth E. Jansen 37*59599516SKenneth E. Jansen #define QpNon -1.000000000000000 38*59599516SKenneth E. Jansen #define Qp11 0.000000000000000 39*59599516SKenneth E. Jansen #define Qw1 2.000000000000000 40*59599516SKenneth E. Jansen 41*59599516SKenneth E. Jansen #define Qp21 -0.577350269189626 42*59599516SKenneth E. Jansen #define Qp22 0.577350269189626 43*59599516SKenneth E. Jansen #define Qw2 1.000000000000000 44*59599516SKenneth E. Jansen 45*59599516SKenneth E. Jansen #define Qp31 -0.774596669241483 46*59599516SKenneth E. Jansen #define Qp32 0.000000000000000 47*59599516SKenneth E. Jansen #define Qp33 0.774596669241483 48*59599516SKenneth E. Jansen #define Qw31 0.555555555555556 49*59599516SKenneth E. Jansen #define Qw32 0.888888888888889 50*59599516SKenneth E. Jansen 51*59599516SKenneth E. Jansen /* typedef double DARR2[2] ; */ 52*59599516SKenneth E. Jansen 53*59599516SKenneth E. Jansen static double rst1[][2] = {{Qp11,QpNon}}; 54*59599516SKenneth E. Jansen static double wt1[] = {Qw1}; 55*59599516SKenneth E. Jansen 56*59599516SKenneth E. Jansen static double rst2[][2] = {{Qp21,QpNon},{Qp22,QpNon}}; 57*59599516SKenneth E. Jansen static double wt2[] = {Qw2,Qw2}; 58*59599516SKenneth E. Jansen 59*59599516SKenneth E. Jansen static double rst3[][2] = {{Qp31,QpNon},{Qp32,QpNon},{Qp33,QpNon}}; 60*59599516SKenneth E. Jansen static double wt3[] = {Qw31,Qw32,Qw31}; 61*59599516SKenneth E. Jansen 62*59599516SKenneth E. Jansen 63*59599516SKenneth E. Jansen int lineIntPnt(int nint, DARR2 **bcord, double **wt) 64*59599516SKenneth E. Jansen { 65*59599516SKenneth E. Jansen int retval = 1 ; 66*59599516SKenneth E. Jansen if( nint == 1 ) {*bcord = rst1 ; *wt = wt1; } 67*59599516SKenneth E. Jansen else if( nint == 2 ){*bcord = rst2 ; *wt = wt2; } 68*59599516SKenneth E. Jansen else if( nint == 3 ){*bcord = rst3 ; *wt = wt3; } 69*59599516SKenneth E. Jansen /* else if( nint == 4 ){*bcord = rst4 ; *wt = wt4; } 70*59599516SKenneth E. Jansen else if( nint == 5 ){*bcord = rst5 ; *wt = wt5; }*/ 71*59599516SKenneth E. Jansen else 72*59599516SKenneth E. Jansen { 73*59599516SKenneth E. Jansen fprintf(stderr,"\n%d integration points unsupported in symline.c; give {1,2,3}\n",nint); 74*59599516SKenneth E. Jansen retval = 0; 75*59599516SKenneth E. Jansen } 76*59599516SKenneth E. Jansen return retval ; 77*59599516SKenneth E. Jansen } 78*59599516SKenneth E. Jansen 79*59599516SKenneth E. Jansen 80*59599516SKenneth E. Jansen 81