vtf-logo

clawpack/applications/eulerm/2d/ConvShock/src/combl.f

c     =====================================================
      subroutine combl()
c     =====================================================
c     
c     Create and initialize application specific common-blocks.
c
c     Copyright (C) 2003-2007 California Institute of Technology
c     Ralf Deiterding, ralf@amroc.net
c
      implicit double precision (a-h,o-z)
      include  "cuser.i"
c
      parameter( lin = 5, lmechout = 11 )
      character *16 cwork
      dimension cwork(3), Xkl(2), Xkr(2)
c
      cwork(1)= 'Gas-light'
      cwork(2)= 'Gas-heavy'
      Wk(1) = 1.d0
      Wk(2) = 5.d0
      g(1) = 1.4d0
      g(2) = 1.1d0
      pinf(1) = 0.d0
      pinf(2) = 0.d0
c
      RU = 8317.d0
      PA = 1.d0
c
      cwork(3)= 'Pinf'
      Wkhelp = 1.d0
c
      open(unit=lmechout, status='unknown', form='formatted', 
     &     file='chem.dat')
      write (lmechout,400) RU
      write (lmechout,401) PA
      write (lmechout,402) (k,cwork(k),k=1,3)        
      write (lmechout,403) (k,Wk(k),k=1,2)  
      write (lmechout,403) 3,Wkhelp       
      close (lmechout)
c
 400  format('RU       ',e16.8)
 401  format('PA       ',e16.8)
 402  format('Sp(',i2.2,')     ',a16)
 403  format('W(',i2.2,')    ',e16.8)
c
c     Pre-shock conditions
c
      p0    = 1.d0
      rho0  = 1.d0
      temp0 = 1.d0
      gamma = g(1)
c
      ms = 5.d0
      r0 = 1.5d0
c
      call guderley()
c
      x0 = 0.d0
      y0 = 0.d0
      pi = 4.d0*atan(1.d0)
c
c     Interface
c
      rgas1 = RU/Wk(1)
      rgas2 = RU/Wk(2) 
      p2 = p0
c
      rho1 = p2/(p0/rho0/rgas1)/rgas2
      ri = 1.d0
      ai = 0.05d0
      aw = 24.d0
c
c     Geometry for reclecting boundary conditions
c
      angpl = pi/4.d0
      rdi = 0.01d0
c
c     Outer radius - extrapolation
c
      rd = 8.d0
c
      return
      end