vtf-logo

fsi/sfc-amroc/VibratingPanel/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
c     # incident shock at angle (alf,beta) to axis
c     # shock starts at location x=disp at wall
       do 60 j = 1, my
          do 60 i = 1, mx 
             call cellave(x(i)-dx/2.d0,y(j)-dy/2.d0,dx,dy,wl)
             rho =      (1.d0-wl)*rhoamb+ wl*rhoshk
             u =        (1.d0-wl)*uamb  + wl*ushk
             p =        (1.d0-wl)*pamb  + wl*pshk
             do k = 1, mz
                q(1,i,j,k) = rho
                q(2,i,j,k) = rho * u
                q(3,i,j,k) = 0.d0
                q(4,i,j,k) = 0.d0
                q(5,i,j,k) = p/gamma1 + .5d0*rho*u*u
             enddo
 60   continue
c         
      return
      end
c