1 subroutine r8vecpc3(ict,ivec,xvec,yvec,zvec,ivd,fval,
2 > nx,xpkg,ny,ypkg,nz,zpkg,flin,inf1,inf2,
14 INTEGER,
PARAMETER :: R8=selected_real_kind(12,100)
15 INTEGER iwarn1,iwarn2,iwarn3
60 real*8 flin(inf1,inf2,nz)
70 integer,
dimension(:),
allocatable :: ix,iy,iz
71 REAL*8,
dimension(:),
allocatable :: dxn,dyn,dzn
72 real*8,
dimension(:),
allocatable :: hx,hxi,hy,hyi,hz,hzi
81 write(6,*) .le.
' ?vecpc3: vector dimension 0: ivec = ',
88 >
' ?vecpc3: output vector dimension less than input ',
90 write(6,*)
' ivec=',ivec,
' ivd=',ivd
96 allocate(ix(ivec), iy(ivec), iz(ivec),
97 > dxn(ivec), dyn(ivec), dzn(ivec),
98 > hx(ivec), hy(ivec), hz(ivec),
99 > hxi(ivec), hyi(ivec), hzi(ivec), stat=ier)
103 >
' ?vecpc3: memory allocation failure.'
112 call r8xlookup(ivec,xvec,nx,xpkg,2,ix,dxn,hx,hxi,iwarn1)
113 call r8xlookup(ivec,yvec,ny,ypkg,2,iy,dyn,hy,hyi,iwarn2)
114 call r8xlookup(ivec,zvec,nz,zpkg,2,iz,dzn,hz,hzi,iwarn3)
115 iwarn=max(iwarn1,iwarn2,iwarn3)
119 call r8pc3fcn(ict,ivec,ivd,fval,ix,iy,iz,dxn,dyn,dzn,
120 > hx,hxi,hy,hyi,hz,hzi,flin,inf1,inf2,nz)
122 deallocate(ix,iy,iz,dxn,dyn,dzn,hx,hy,hz,hxi,hyi,hzi)