1c 2c $Id: hnd_sxyz.F 19696 2010-10-29 16:53:42Z d3y133 $ 3c 4c Taken from the property/prp.F file 5c 6 subroutine dim_sxyz2 7 implicit none 8c 9c ----- gauss-hermite quadrature using minimum point formula ----- 10c 11#include "hnd_whermt.fh" 12c 13 common/hnd_xyzder/xint,yint,zint,t,x0,y0,z0,xi,yi,zi,xj,yj,zj, 14 & ni,nj,cx,cy,cz 15 double precision xint, yint, zint, t, x0, y0, z0, xi, yi, zi 16 double precision xj, yj, zj, zero, dum, px, py, pz 17 double precision cx, cy, cz 18 double precision ptx, pty, ptz, ax, ay, az, bx, by, bz 19 integer ni, nj, npts, imin, imax, i, ii, jj 20 data zero /0.0d+00/ 21c 22 xint=zero 23 yint=zero 24 zint=zero 25 npts=(ni+nj-2)/2+1 26 imin=hermin(npts) 27 imax=hermax(npts) 28 do 16 i=imin,imax 29 dum=w(i) 30 px=dum 31 py=dum 32 pz=dum 33 dum=h(i)*t 34 ptx=dum+x0 35 pty=dum+y0 36 ptz=dum+z0 37 ax=ptx-xi 38 ay=pty-yi 39 az=ptz-zi 40 bx=ptx-xj 41 by=pty-yj 42 bz=ptz-zj 43 do ii = 1, ni-1 44 px=px*ax 45 py=py*ay 46 pz=pz*az 47 enddo 48 do jj = 1, nj-1 49 px=px*bx 50 py=py*by 51 pz=pz*bz 52 enddo 53 xint=xint+px 54 yint=yint+py 55 zint=zint+pz 56 16 continue 57 return 58 end 59