vtf-logo

fsi/sfc-amroc/ThinPlate/src/init3.f

c
c     =====================================================
      subroutine ic(maxmx,maxmy,maxmz,meqn,mbc,mx,my,mz,
     &              x,y,z,dx,dy,dz,q)
c     =====================================================
c
c     Copyright (C) 2003-2007 California Institute of Technology
c     Ralf Deiterding, ralf@amroc.net
c
      implicit double precision (a-h,o-z)
c
      include  "cuser.i"
c
      dimension q(meqn, 1-mbc:maxmx+mbc, 1-mbc:maxmy+mbc, 
     &            1-mbc:maxmz+mbc)
      dimension x(1-mbc:maxmx+mbc),y(1-mbc:maxmy+mbc),
     &          z(1-mbc:maxmz+mbc)
c
      do 60 k = 1, mz
         do 60 j = 1, my
            do 60 i = 1, mx
               call cellave(z(k)-dz/2.d0,x(i)-dx/2.d0,dz,dx,fl)
               rho =    (1.d0-fl)*rhoamb+ fl*rhoshk
               u =      (1.d0-fl)*uamb  + fl*ushk
               v =      (1.d0-fl)*vamb  + fl*vshk
               w =      (1.d0-fl)*wamb  + fl*wshk
               p =      (1.d0-fl)*pamb  + fl*pshk
               q(1,i,j,k) = rho
               q(2,i,j,k) = rho * u
               q(3,i,j,k) = rho * v
               q(4,i,j,k) = rho * w
               q(5,i,j,k) = p/gamma1 + .5d0*rho*(u*u+v*v+w*w)
 60   continue
c         
      return
      end