xref: /phasta/phSolver/common/input.f (revision 595995161822a203c8467e0e4a253d7bd7d6df32)
1*59599516SKenneth E. Jansen        subroutine input()
2*59599516SKenneth E. Jansenc
3*59599516SKenneth E. Jansenc----------------------------------------------------------------------
4*59599516SKenneth E. Jansenc This routine inputs all the necessary data, allocates required array
5*59599516SKenneth E. Jansenc storage, and sets up the appropriate parameters for the processing.
6*59599516SKenneth E. Jansenc
7*59599516SKenneth E. Jansenc
8*59599516SKenneth E. Jansenc Farzin Shakib, Winter 1987.
9*59599516SKenneth E. Jansenc Zdenek Johan,  Winter 1991.  (Fortran 90)
10*59599516SKenneth E. Jansenc----------------------------------------------------------------------
11*59599516SKenneth E. Jansenc
12*59599516SKenneth E. Jansen        include "common.h"
13*59599516SKenneth E. Jansen        include "mpif.h"
14*59599516SKenneth E. Jansen
15*59599516SKenneth E. Jansen        external endata
16*59599516SKenneth E. Jansen
17*59599516SKenneth E. Jansen        integer, allocatable :: nsons(:)
18*59599516SKenneth E. Jansenc
19*59599516SKenneth E. Jansen        character*8  date
20*59599516SKenneth E. Jansen        character*80 card
21*59599516SKenneth E. Jansen
22*59599516SKenneth E. Jansenc assigned in phasta.cc
23*59599516SKenneth E. Jansenc        numpe=npe
24*59599516SKenneth E. Jansenc        myrank=mrank
25*59599516SKenneth E. Jansen
26*59599516SKenneth E. Jansen        call MPI_BARRIER(MPI_COMM_WORLD, ierr)
27*59599516SKenneth E. Jansen        rsec=TMRC()
28*59599516SKenneth E. Jansen        ttim(100) = rsec
29*59599516SKenneth E. Jansen
30*59599516SKenneth E. Jansen        epsM = sqrt(epsilon(one))
31*59599516SKenneth E. Jansenc
32*59599516SKenneth E. Jansenc.... read in and block all data
33*59599516SKenneth E. Jansenc
34*59599516SKenneth E. Jansen        call readnblk()
35*59599516SKenneth E. Jansenc
36*59599516SKenneth E. Jansenc.... open the echo file (echo closed at exit)
37*59599516SKenneth E. Jansenc
38*59599516SKenneth E. Jansen        if (myrank == master)
39*59599516SKenneth E. Jansen     &  open (unit=iecho, file=fecho, status='unknown',   err=996)
40*59599516SKenneth E. Jansen
41*59599516SKenneth E. Jansenc
42*59599516SKenneth E. Jansenc.... -------------------->  Control Parameters  <---------------------
43*59599516SKenneth E. Jansenc
44*59599516SKenneth E. Jansenc.... echo the global information
45*59599516SKenneth E. Jansenc
46*59599516SKenneth E. Jansen
47*59599516SKenneth E. Jansen        title = 'Default Ensa Case'
48*59599516SKenneth E. Jansen        call date_and_time (date)
49*59599516SKenneth E. Jansen        title  = title(1:69) // ' ' // date(7:8) // '/' // date(5:6)
50*59599516SKenneth E. Jansen     &                                           // '/' // date(3:4)
51*59599516SKenneth E. Jansen        ititle = char(12) // title(1:78)
52*59599516SKenneth E. Jansen
53*59599516SKenneth E. Jansen        if (myrank == master) then
54*59599516SKenneth E. Jansen          write (iecho,1100) ititle, numpe,  numnp,  numel,  numelb,
55*59599516SKenneth E. Jansen     &                               nen,    nfaces, nsd,    numflx
56*59599516SKenneth E. Jansen          write (iecho,1200)         iALE,   icoord, navier, irs,
57*59599516SKenneth E. Jansen     &                               iexec,  necho
58*59599516SKenneth E. Jansenc
59*59599516SKenneth E. Jansenc.... check the input parameters
60*59599516SKenneth E. Jansenc
61*59599516SKenneth E. Jansen          if (iALE .lt. 0 .or. iALE .gt. 1)
62*59599516SKenneth E. Jansen     &                     call error ('input   ','iALE    ',iALE)
63*59599516SKenneth E. Jansenc
64*59599516SKenneth E. Jansen          if (icoord .lt. 0 .or. icoord .gt. 1)
65*59599516SKenneth E. Jansen     &                     call error ('input   ','icoord  ',icoord)
66*59599516SKenneth E. Jansenc
67*59599516SKenneth E. Jansen          if (navier .lt. 0 .or. navier .gt. 1)
68*59599516SKenneth E. Jansen     &                     call error ('input   ','navier  ',navier)
69*59599516SKenneth E. Jansen
70*59599516SKenneth E. Jansen          if (irs    .lt. 0 .or. irs    .gt. 3)
71*59599516SKenneth E. Jansen     &                     call error ('input   ','irs     ',irs)
72*59599516SKenneth E. Jansenc
73*59599516SKenneth E. Jansen          if (iexec  .lt. 0 .or. iexec  .gt. 1)
74*59599516SKenneth E. Jansen     &                     call error ('input   ','iexec   ',iexec)
75*59599516SKenneth E. Jansenc
76*59599516SKenneth E. Jansen          if (necho  .lt. 0 .or. necho  .gt. 3)
77*59599516SKenneth E. Jansen     &                     call error ('input   ','necho   ',necho)
78*59599516SKenneth E. Jansen        endif
79*59599516SKenneth E. Jansen
80*59599516SKenneth E. Jansen        if (myrank == master) then
81*59599516SKenneth E. Jansen          write (iecho,1300) ititle, ntseq,  imap,   ivart,  iDC,
82*59599516SKenneth E. Jansen     &                             Kspace, nGMRES
83*59599516SKenneth E. Jansenc
84*59599516SKenneth E. Jansenc.... check the input parameters
85*59599516SKenneth E. Jansenc
86*59599516SKenneth E. Jansen          if (ntseq  .gt. 100) call error ('input   ','ntseq   ',ntseq)
87*59599516SKenneth E. Jansenc
88*59599516SKenneth E. Jansen          if (imap   .lt. 0 .or. imap  .gt. 1)
89*59599516SKenneth E. Jansen     &                       call error ('input   ','imap    ',imap)
90*59599516SKenneth E. Jansenc
91*59599516SKenneth E. Jansen          if (ivart  .lt. 1 .or. ivart .gt. 3)
92*59599516SKenneth E. Jansen     &                       call error ('input   ','ivart   ',ivart)
93*59599516SKenneth E. Jansenc
94*59599516SKenneth E. Jansen          if (iDC    .lt. 0 .or. iDC   .gt. 4)
95*59599516SKenneth E. Jansen     &                       call error ('input   ','iDC     ',iDC)
96*59599516SKenneth E. Jansenc
97*59599516SKenneth E. Jansen          if (Kspace .lt. 1)   call error ('input   ','Kspace  ',Kspace)
98*59599516SKenneth E. Jansenc
99*59599516SKenneth E. Jansen          if (nGMRES .lt. 1)   call error ('input   ','nGMRES  ',nGMRES)
100*59599516SKenneth E. Jansen        endif
101*59599516SKenneth E. Jansenc
102*59599516SKenneth E. Jansenc.... allocate memory for the Q-R algorithm of GMRES
103*59599516SKenneth E. Jansenc
104*59599516SKenneth E. Jansen        mHBrg = mpoint ('H-Berg  ', Kspace+1,Kspace,  0)
105*59599516SKenneth E. Jansen        meBrg = mpoint ('e-Berg  ', Kspace+1,0,       0)
106*59599516SKenneth E. Jansen        myBrg = mpoint ('y-Berg  ', Kspace,  0,       0)
107*59599516SKenneth E. Jansen        mRcos = mpoint ('Rcos-QR ', Kspace,  0,       0)
108*59599516SKenneth E. Jansen        mRsin = mpoint ('Rsin-QR ', Kspace,  0,       0)
109*59599516SKenneth E. Jansenc
110*59599516SKenneth E. Jansenc.... ----------------->  Time Sequence Parameters  <-----------------
111*59599516SKenneth E. Jansenc
112*59599516SKenneth E. Jansenc.... echo the solver information
113*59599516SKenneth E. Jansenc
114*59599516SKenneth E. Jansen        iprev = 0
115*59599516SKenneth E. Jansen        do i = 1, ntseq
116*59599516SKenneth E. Jansen          if (mod(i,50).eq.1 .and. myrank .eq. master)
117*59599516SKenneth E. Jansen     &      write(iecho,1400) ititle
118*59599516SKenneth E. Jansen
119*59599516SKenneth E. Jansen          if (myrank .eq. master)
120*59599516SKenneth E. Jansen     &      write (iecho,1500)      i, nstep(i),  niter(i),  impl(i),
121*59599516SKenneth E. Jansen     &                                 LHSupd(i), epstol(i)
122*59599516SKenneth E. Jansenc
123*59599516SKenneth E. Jansen          if ((iALE .eq. 1) .or. (niter(i) .gt. 1)) iprev = 1
124*59599516SKenneth E. Jansen        enddo
125*59599516SKenneth E. Jansenc
126*59599516SKenneth E. Jansenc.... echo the spatial and time integration information
127*59599516SKenneth E. Jansenc
128*59599516SKenneth E. Jansen        do i = 1, ntseq
129*59599516SKenneth E. Jansen          if (mod(i,50).eq.1 .and. myrank .eq. master)
130*59599516SKenneth E. Jansen     &      write(iecho,1600) ititle
131*59599516SKenneth E. Jansen          if (myrank .eq. master)
132*59599516SKenneth E. Jansen     &      write (iecho,1700)      i, intg(1,i), intg(2,i), rhoinf(i),
133*59599516SKenneth E. Jansen     &                                 loctim(i), Delt(i),   CFLfl(i),
134*59599516SKenneth E. Jansen     &                                 CFLsl(i)
135*59599516SKenneth E. Jansenc
136*59599516SKenneth E. Jansen        enddo
137*59599516SKenneth E. Jansenc
138*59599516SKenneth E. Jansen        if (myrank .eq. master)
139*59599516SKenneth E. Jansen     &    write (iecho,1800) ititle, ntout,  ioform, ro,     vel,
140*59599516SKenneth E. Jansen     &                               temper, press,  entrop
141*59599516SKenneth E. Jansen
142*59599516SKenneth E. Jansen        if (myrank .eq. master) then
143*59599516SKenneth E. Jansen           write (*,*) 'Element block size = ',ibksiz
144*59599516SKenneth E. Jansen        endif
145*59599516SKenneth E. Jansen
146*59599516SKenneth E. Jansen        if (iLSet .gt. 0 .and. myrank .eq. master)then
147*59599516SKenneth E. Jansen           write(iecho,1900)iLSet, epsilon_ls, dtlset
148*59599516SKenneth E. Jansen        endif
149*59599516SKenneth E. Jansenc
150*59599516SKenneth E. Jansenc.... generate the spatial integration rules
151*59599516SKenneth E. Jansenc
152*59599516SKenneth E. Jansen        call genint
153*59599516SKenneth E. Jansen
154*59599516SKenneth E. Jansen        ichem = 0
155*59599516SKenneth E. Jansenc
156*59599516SKenneth E. Jansenc.... estimate number of nonzero global entries:
157*59599516SKenneth E. Jansenc....       nnonzero ~ nnz * nshg
158*59599516SKenneth E. Jansenc
159*59599516SKenneth E. Jansen        if (ipord .eq. 1) then
160*59599516SKenneth E. Jansen           nnz = 35
161*59599516SKenneth E. Jansen        else if (ipord .eq. 2) then
162*59599516SKenneth E. Jansen           nnz = 85
163*59599516SKenneth E. Jansen        else  !assumed cubic
164*59599516SKenneth E. Jansen           nnz = 300
165*59599516SKenneth E. Jansen        endif
166*59599516SKenneth E. Jansen
167*59599516SKenneth E. Jansen
168*59599516SKenneth E. Jansenc
169*59599516SKenneth E. Jansenc.... compute fluid thermodynamic properties
170*59599516SKenneth E. Jansenc
171*59599516SKenneth E. Jansen        Boltzm = Rh / Nh
172*59599516SKenneth E. Jansenc
173*59599516SKenneth E. Jansen        do i = 1, 5
174*59599516SKenneth E. Jansen          Rs(i)   = Rh / Msh(i)
175*59599516SKenneth E. Jansen          h0s(i)  = h0sh(i) / Msh(i)
176*59599516SKenneth E. Jansen          cpsh(i) = ( pt5 * dofs(i) + one ) * Rh
177*59599516SKenneth E. Jansen          cps(i)  = ( pt5 * dofs(i) + one ) * Rs(i)
178*59599516SKenneth E. Jansen          cvs(i)  = pt5 * dofs(i) * Rs(i)
179*59599516SKenneth E. Jansen        enddo
180*59599516SKenneth E. Jansenc
181*59599516SKenneth E. Jansen        do i = 1, 5
182*59599516SKenneth E. Jansen          s0sh(i) = Rh * ( pt5*( log( (two*pi*Msh(i)/(Nh*Planck**2))**3
183*59599516SKenneth E. Jansen     &                  * Boltzm**5 ) + five ) + log(g0s(i)) )
184*59599516SKenneth E. Jansen        enddo
185*59599516SKenneth E. Jansenc
186*59599516SKenneth E. Jansen        do i = 1, 3
187*59599516SKenneth E. Jansen          s0sh(i) = s0sh(i) + Rh * ( one - log(sigs(i)*Trot(i)) )
188*59599516SKenneth E. Jansen        enddo
189*59599516SKenneth E. Jansenc
190*59599516SKenneth E. Jansen        Rgas  = one / ( xN2 / Rs(1) + xO2 / Rs(2) )
191*59599516SKenneth E. Jansenc        Rgas  = 0.4*716.5
192*59599516SKenneth E. Jansenc        Rgas = 8314/28.95
193*59599516SKenneth E. Jansen        yN2   = xN2 * Rgas / Rs(1)
194*59599516SKenneth E. Jansen        yO2   = xO2 * Rgas / Rs(2)
195*59599516SKenneth E. Jansenc
196*59599516SKenneth E. Jansen        s0    =     yN2 * s0sh(1) / Msh(1) + yO2 * s0sh(2) / Msh(2)
197*59599516SKenneth E. Jansen        const = - ( yN2 * Rs(1) * log(xN2) + yO2 * Rs(2) * log(xO2) )
198*59599516SKenneth E. Jansenc
199*59599516SKenneth E. Jansenc.... stop CPU-timer
200*59599516SKenneth E. Jansenc
201*59599516SKenneth E. Jansenc        call timer ('Back    ')
202*59599516SKenneth E. Jansencc
203*59599516SKenneth E. Jansenc..dumping common (useful for checking differences with
204*59599516SKenneth E. Jansenc        old format input
205*59599516SKenneth E. Jansenc
206*59599516SKenneth E. Jansen        if(myrank.eq.master) then
207*59599516SKenneth E. Jansen        mxats=1
208*59599516SKenneth E. Jansen        open (unit=23,   file="dumpnew.dat",   status='unknown')
209*59599516SKenneth E. Jansen        write (23,*)" master, numpe, myrank"
210*59599516SKenneth E. Jansen        write (23,*) master, numpe, myrank
211*59599516SKenneth E. Jansen        write (23,*)" maxfront, nlwork"
212*59599516SKenneth E. Jansen        write (23,*) maxfront, nlwork
213*59599516SKenneth E. Jansen        write (23,*)"  numper, nshgt, nshg0"
214*59599516SKenneth E. Jansen        write (23,*)  numper, nshgt, nshg0
215*59599516SKenneth E. Jansen        write (23,*) " birth, death, comtim"
216*59599516SKenneth E. Jansen        write (23,*)  birth, death, comtim
217*59599516SKenneth E. Jansen        write (23,*)"  pzero, wtavei,dtavei, dke, ierrcalc,"
218*59599516SKenneth E. Jansen        write (23,*)  pzero, wtavei,dtavei, dke, ierrcalc,
219*59599516SKenneth E. Jansen     &                   itwmod,taucfct
220*59599516SKenneth E. Jansen        write (23,*)"irscale, intpres,rxinlt, rxrecy,"
221*59599516SKenneth E. Jansen        write (23,*)irscale, intpres,rxinlt, rxrecy,
222*59599516SKenneth E. Jansen     &            rbltin,rvscal,  xlngth, ylngth, zlngth
223*59599516SKenneth E. Jansen
224*59599516SKenneth E. Jansen        write (23,*)"  scdiff(5),nsclr,isclr,nsolt"
225*59599516SKenneth E. Jansen        write (23,*)  scdiff(5),nsclr,isclr,nsolt
226*59599516SKenneth E. Jansen        write (23,*) " flxID(10,20), Force(3),HFlux, nsrflist(0:20)"
227*59599516SKenneth E. Jansen        write (23,*)  flxID(10,20), Force(3),HFlux, nsrflist(0:20)
228*59599516SKenneth E. Jansen        write (23,*) " numnp,  numel,  numelb, numpbc, nen,    nfaces,"
229*59599516SKenneth E. Jansen        write (23,*)  numnp,  numel,  numelb, numpbc, nen,    nfaces,
230*59599516SKenneth E. Jansen     &                  numflx, ndof,   iALE,   icoord, navier,
231*59599516SKenneth E. Jansen     &                  irs,    iexec,  necho,  ichem,  iRK,    nedof,
232*59599516SKenneth E. Jansen     &                  nshg,   nnz,    istop,  nflow,  nnz_tot, idtn,
233*59599516SKenneth E. Jansen     &                  iLSet
234*59599516SKenneth E. Jansen        write (23,*)"  epsilon_ls, epsilon_lsd, dtlset"
235*59599516SKenneth E. Jansen        write (23,*)  epsilon_ls, epsilon_lsd, dtlset
236*59599516SKenneth E. Jansen        write (23,*)" nshape, nshapeb, maxshb,"
237*59599516SKenneth E. Jansen        write (23,*) nshape, nshapeb, maxshb,
238*59599516SKenneth E. Jansen     &                  nshl, nshlb,nfath,  ntopsh,  nsonmax
239*59599516SKenneth E. Jansen        write (23,*) " mshp,   mshgl,  mwght,  mshpb,  mshglb, mwghtb,"
240*59599516SKenneth E. Jansen        write (23,*)  mshp,   mshgl,  mwght,  mshpb,  mshglb, mwghtb,
241*59599516SKenneth E. Jansen     &                  mmut,   mrhot,  mxst
242*59599516SKenneth E. Jansen        write (23,*)" mcsyst, melCat, nenCat(8,3),    nfaCat(8,3)"
243*59599516SKenneth E. Jansen        write (23,*) mcsyst, melCat, nenCat(8,3),    nfaCat(8,3)
244*59599516SKenneth E. Jansen
245*59599516SKenneth E. Jansen        write (23,*)" lelCat, lcsyst, iorder, nenb, "
246*59599516SKenneth E. Jansen        write (23,*) lelCat, lcsyst, iorder, nenb,
247*59599516SKenneth E. Jansen     &                  nelblk, nelblb, ndofl,  nsymdl, nenl,   nfacel,
248*59599516SKenneth E. Jansen     &                  nenbl,  intind, mattyp
249*59599516SKenneth E. Jansen        write (23,*)" E3nsd,  I3nsd,  nsymdf, ndofBC, ndiBCB, ndBCB,"
250*59599516SKenneth E. Jansen        write (23,*) E3nsd,  I3nsd,  nsymdf, ndofBC, ndiBCB, ndBCB,
251*59599516SKenneth E. Jansen     &                  Jactyp, jump,   ires,   iprec,  ibound,
252*59599516SKenneth E. Jansen     &                  idiff,  lhs,    itau,   ipord,  ipred,  lstres,
253*59599516SKenneth E. Jansen     &                  iepstm, dtsfct, ibksiz, iabc
254*59599516SKenneth E. Jansen        write (23,*)"  epstol(mxats),  Delt(mxats),"
255*59599516SKenneth E. Jansen        write (23,*)  epstol(mxats),  Delt(mxats),     nstep(mxats),
256*59599516SKenneth E. Jansen     &                  impl(mxats),    rhoinf(mxats),
257*59599516SKenneth E. Jansen     &                  LHSupd(mxats),  loctim(mxats),  deltol(mxats,2)
258*59599516SKenneth E. Jansen
259*59599516SKenneth E. Jansen        write (23,*)" intg(2,mxats),  intpt(3),       intptb(3)"
260*59599516SKenneth E. Jansen        write (23,*) intg(2,mxats),  intpt(3),       intptb(3)
261*59599516SKenneth E. Jansen        write (23,*) " indQpt(3,3,4),  numQpt(3,3,4),"
262*59599516SKenneth E. Jansen        write (23,*)  indQpt(3,3,4),  numQpt(3,3,4),
263*59599516SKenneth E. Jansen     &                  intmax
264*59599516SKenneth E. Jansen        write (23,*)" iin,    igeom,  ipar,   ibndc,  imat,   iecho,"
265*59599516SKenneth E. Jansen        write (23,*) iin,    igeom,  ipar,   ibndc,  imat,   iecho,
266*59599516SKenneth E. Jansen     &                  iout,   ichmou, irstin, irstou, ihist,  iflux,
267*59599516SKenneth E. Jansen     &                  ierror, itable, iforce, igraph, itime
268*59599516SKenneth E. Jansen        write (23,*)"fwr1,ngaussf,idim,nlist "
269*59599516SKenneth E. Jansen        write (23,*)fwr1,ngaussf,idim,nlist
270*59599516SKenneth E. Jansen        write (23,*) " fin,    fgeom,  fpar,   fbndc,  fmat,   fecho,"
271*59599516SKenneth E. Jansen        write (23,*)  fin,    fgeom,  fpar,   fbndc,  fmat,   fecho,
272*59599516SKenneth E. Jansen     &                  frstin, frstou, fhist,  ferror, ftable, fforce,
273*59599516SKenneth E. Jansen     &                  fgraph, ftime
274*59599516SKenneth E. Jansen        write (23,*)" fin,    fgeom,  fpar,   fbndc,  fmat,   fecho,"
275*59599516SKenneth E. Jansen        write (23,*) fin,    fgeom,  fpar,   fbndc,  fmat,   fecho,
276*59599516SKenneth E. Jansen     &                  frstin, frstou, fhist,  ferror, ftable, fforce,
277*59599516SKenneth E. Jansen     &                  fgraph, ftime
278*59599516SKenneth E. Jansen        write (23,*)" eGMRES, lGMRES, iKs,    ntotGM "
279*59599516SKenneth E. Jansen        write (23,*) eGMRES, lGMRES, iKs,    ntotGM
280*59599516SKenneth E. Jansen        write (23,*) " mHBrg,  meBrg,  myBrg,  mRcos,  mRsin"
281*59599516SKenneth E. Jansen        write (23,*)  mHBrg,  meBrg,  myBrg,  mRcos,  mRsin
282*59599516SKenneth E. Jansenc
283*59599516SKenneth E. Jansen        write (23,*)" pr,     Planck, Stefan, Nh,     Rh,     Rgas,"
284*59599516SKenneth E. Jansen        write (23,*) pr,     Planck, Stefan, Nh,     Rh,     Rgas,
285*59599516SKenneth E. Jansen     &                  gamma,  gamma1, s0,     const,  xN2,    xO2,
286*59599516SKenneth E. Jansen     &                  yN2,    yO2,    Msh(5), cpsh(5),s0sh(5),h0sh(5),
287*59599516SKenneth E. Jansen     &                  Rs(5),  cps(5), cvs(5), h0s(5), Trot(5),sigs(5),
288*59599516SKenneth E. Jansen     &                  Tvib(5),g0s(5), dofs(5),ithm
289*59599516SKenneth E. Jansen        write (23,*) " mexist"
290*59599516SKenneth E. Jansen        write (23,*)  mexist
291*59599516SKenneth E. Jansen        write (23,*) " datmat(3,5,mxats),      matflg(5,mxats),"
292*59599516SKenneth E. Jansen        write (23,*)  datmat(3,5,mxats),      matflg(5,mxats),
293*59599516SKenneth E. Jansen     &                  nummat,                 mexist
294*59599516SKenneth E. Jansen        write (23,*)"ro,     vel,    temper, press,  entrop, ntout,"
295*59599516SKenneth E. Jansen        write (23,*)ro,     vel,    temper, press,  entrop, ntout,
296*59599516SKenneth E. Jansen     &                  ioform
297*59599516SKenneth E. Jansen        write (23,*)"mbeg,   mend,   mprec "
298*59599516SKenneth E. Jansen        write (23,*)mbeg,   mend,   mprec
299*59599516SKenneth E. Jansen        write (23,*)"epsM,   iabres, npro,resfrt"
300*59599516SKenneth E. Jansen        write (23,*)epsM,   iabres, npro,resfrt
301*59599516SKenneth E. Jansen        write (23,*)"  imap,   ivart,  iDC,    iPcond, Kspace, nGMRES"
302*59599516SKenneth E. Jansen        write (23,*)  imap,   ivart,  iDC,    iPcond, Kspace, nGMRES
303*59599516SKenneth E. Jansen
304*59599516SKenneth E. Jansen        write (23,*)" indsym(5,5) "
305*59599516SKenneth E. Jansen        write (23,*) indsym(5,5)
306*59599516SKenneth E. Jansen        write (23,*) " time,   CFLfld, CFLsld, Dtgl,   Dtmax,  alpha,"
307*59599516SKenneth E. Jansen        write (23,*)  time,   CFLfld, CFLsld, Dtgl,   Dtmax,  alpha,
308*59599516SKenneth E. Jansen     &                  etol,   lstep,  ifunc,  itseq,  istep,  iter,
309*59599516SKenneth E. Jansen     &                  nitr,   almi,   alfi,   gami,   flmpl,  flmpr,
310*59599516SKenneth E. Jansen     &                  dtol(2)
311*59599516SKenneth E. Jansen        write (23,*) "LCtime, ntseq"
312*59599516SKenneth E. Jansen        write (23,*) LCtime, ntseq
313*59599516SKenneth E. Jansen        write (23,*) " numeqns(100), minIters, maxIters,"
314*59599516SKenneth E. Jansen        write (23,*)  numeqns(100), minIters, maxIters,
315*59599516SKenneth E. Jansen     &                  iprjFlag,     nPrjs,    ipresPrjFlag, nPresPrjs,
316*59599516SKenneth E. Jansen     &                  prestol,      statsflow(6), statssclr(6),
317*59599516SKenneth E. Jansen     &                  iverbose
318*59599516SKenneth E. Jansen        write (23,*) " ccode"
319*59599516SKenneth E. Jansen        write (23,*)  ccode
320*59599516SKenneth E. Jansen        write (23,*) " flops,  gbytes, sbytes, iclock, icd,    icode,"
321*59599516SKenneth E. Jansen        write (23,*)  flops,  gbytes, sbytes, iclock, icd,    icode,
322*59599516SKenneth E. Jansen     &                  icode2, icode3
323*59599516SKenneth E. Jansen        write (23,*) " cpu(11),        cpu0(11),       nacess(11)"
324*59599516SKenneth E. Jansen        write (23,*)  cpu(11),        cpu0(11),       nacess(11)
325*59599516SKenneth E. Jansen        write (23,*) " title,  ititle"
326*59599516SKenneth E. Jansen        write (23,*)  title,  ititle
327*59599516SKenneth E. Jansen        close (23)
328*59599516SKenneth E. Jansen        endif
329*59599516SKenneth E. Jansenc
330*59599516SKenneth E. Jansenc....return
331*59599516SKenneth E. Jansenc
332*59599516SKenneth E. Jansen        return
333*59599516SKenneth E. Jansenc
334*59599516SKenneth E. Jansenc.... end of file error handling
335*59599516SKenneth E. Jansenc
336*59599516SKenneth E. Jansen992     call error ('input   ','opening ', imat)
337*59599516SKenneth E. Jansen993     call error ('input   ','opening ', iin)
338*59599516SKenneth E. Jansen996     call error ('input   ','opening ', iecho)
339*59599516SKenneth E. Jansen999     call error ('input   ','end file', iin)
340*59599516SKenneth E. Jansenc
341*59599516SKenneth E. Jansen1000    format(a69)
342*59599516SKenneth E. Jansen1100    format(a80,//,
343*59599516SKenneth E. Jansen     &  ' M a i n   C o n t r o l   P a r a m e t e r s        '   //,
344*59599516SKenneth E. Jansen     &  ' number of processing elements . . . . . . . (numpe )=',i10//,
345*59599516SKenneth E. Jansen     &  ' number of mesh nodes  . . . . . . . . . . . (numnp )=',i10//,
346*59599516SKenneth E. Jansen     &  ' number of elements  . . . . . . . . . . . . (numel )=',i10//,
347*59599516SKenneth E. Jansen     &  ' number of boundary elements . . . . . . . . (numelb)=',i10//,
348*59599516SKenneth E. Jansen     &  ' number of element nodes . . . . . . . . . . (nen   )=',i10//,
349*59599516SKenneth E. Jansen     &  ' number of element faces . . . . . . . . . . (nfaces)=',i10//,
350*59599516SKenneth E. Jansen     &  ' number of space dimensions  . . . . . . . . (nsd   )=',i10//,
351*59599516SKenneth E. Jansen     &  ' number of boundary flux nodes . . . . . . . (numflx)=',i10/)
352*59599516SKenneth E. Jansen1200    format(
353*59599516SKenneth E. Jansen     &  ' frame of reference  . . . . . . . . . . . . (iALE  )=',i10//,
354*59599516SKenneth E. Jansen     &  '    eq. 0, Eulerian                                   ',  / ,
355*59599516SKenneth E. Jansen     &  '    eq. 1, arbitrary Lagrangian-Eulerian              ',  //,
356*59599516SKenneth E. Jansen     &  ' coordinate system . . . . . . . . . . . . . (icoord)=',i10//,
357*59599516SKenneth E. Jansen     &  '    eq. 0, cartesian                                  ',  / ,
358*59599516SKenneth E. Jansen     &  '    eq. 1, axisymmetric                               ',  //,
359*59599516SKenneth E. Jansen     &  ' equation type . . . . . . . . . . . . . . . (navier)=',i10//,
360*59599516SKenneth E. Jansen     &  '    eq. 0, Euler (inviscid)                           ',  / ,
361*59599516SKenneth E. Jansen     &  '    eq. 1, Navier-Stokes (viscous)                    ',  //,
362*59599516SKenneth E. Jansen     &  ' restart option  . . . . . . . . . . . . . . (irs   )=',i10//,
363*59599516SKenneth E. Jansen     &  '    eq. 0, no restart nor solution written            ',  / ,
364*59599516SKenneth E. Jansen     &  '    eq. 1, restart written                            ',  / ,
365*59599516SKenneth E. Jansen     &  '    eq. 2, restart and solution written               ',  //,
366*59599516SKenneth E. Jansen     &  ' execution code  . . . . . . . . . . . . . . (iexec )=',i10//,
367*59599516SKenneth E. Jansen     &  '    eq. 0, data check only                            ',  / ,
368*59599516SKenneth E. Jansen     &  '    eq. 1, execution                                  ',  //,
369*59599516SKenneth E. Jansen     &  ' input echo parameter  . . . . . . . . . . . (necho )=',i10)
370*59599516SKenneth E. Jansen1300    format(a80,//,
371*59599516SKenneth E. Jansen     &  ' S o l u t i o n   P a r a m e t e r s                '   //,
372*59599516SKenneth E. Jansen     &  ' number of time sequences  . . . . . . . . . (ntseq )=',i10//,
373*59599516SKenneth E. Jansen     &  ' blocking algorithm  . . . . . . . . . . . . (imap  )=',i10//,
374*59599516SKenneth E. Jansen     &  '    eq. 0, ordered blocking                           ',  / ,
375*59599516SKenneth E. Jansen     &  '    eq. 1, disjoint element blocking                  ',  //,
376*59599516SKenneth E. Jansen     &  ' variational formulation . . . . . . . . . . (ivart )=',i10//,
377*59599516SKenneth E. Jansen     &  '    eq. 1, Galerkin                                   ',  / ,
378*59599516SKenneth E. Jansen     &  '    eq. 2, Galerkin/least-squares                     ',  / ,
379*59599516SKenneth E. Jansen     &  '    eq. 3, plus discontinuity-capturing operator      ',  //,
380*59599516SKenneth E. Jansen     &  ' discontinuity-capturing type  . . . . . . . (iDC   )=',i10//,
381*59599516SKenneth E. Jansen     &  '    eq. 1, DC-mallet                                  ',  / ,
382*59599516SKenneth E. Jansen     &  '    eq. 2, quadratic DC                               ',  / ,
383*59599516SKenneth E. Jansen     &  '    eq. 3, smallest of the previous two DCs           ',  //,
384*59599516SKenneth E. Jansen     &  ' dimension of Krylov space . . . . . . . . . (kspace)=',i10//,
385*59599516SKenneth E. Jansen     &  ' maximum number of GMRES cycles  . . . . . . (ngmres)=',i10)
386*59599516SKenneth E. Jansen1400    format(a80,//,
387*59599516SKenneth E. Jansen     &  ' S o l v e r   I n f o r m a t i o n                    ',//,
388*59599516SKenneth E. Jansen     &  ' Seq num    Nstep    Niter    Impl      Nupdate',
389*59599516SKenneth E. Jansen     &  '     Eps_Tol')
390*59599516SKenneth E. Jansen1500    format(i6,i10,i9,i8,i11,2x,e15.5)
391*59599516SKenneth E. Jansen1600    format(a80,//,
392*59599516SKenneth E. Jansen     &  ' S p a t i a l   a n d   T i m e   I n t e g r a t i o n',//,
393*59599516SKenneth E. Jansen     &  ' Seq num  Elem Int.  Bound Int.  Level  LCtime',
394*59599516SKenneth E. Jansen     &  '    Delt       CFLfld    CFLsld')
395*59599516SKenneth E. Jansen1700    format(i6,i8,i12,e13.4,1p,i8,1p,e13.4,0p,2f10.4)
396*59599516SKenneth E. Jansen1800    format(a80,//,
397*59599516SKenneth E. Jansen     &  ' O u t p u t   I n f o r m a t i o n                  ',1p,//,
398*59599516SKenneth E. Jansen     &  ' number of time steps per output . . . . . . (ntout )=',i10//,
399*59599516SKenneth E. Jansen     &  ' I/O format  . . . . . . . . . . . . . . . . (ioform)=',i10//,
400*59599516SKenneth E. Jansen     &  '    eq. 0, ASCII                                      ',  / ,
401*59599516SKenneth E. Jansen     &  '    eq. 1, binary                                     ',  //,
402*59599516SKenneth E. Jansen     &' scaling factor for density  . . . . . . . . (ro    )=',e15.5//,
403*59599516SKenneth E. Jansen     &' scaling factor for velocity . . . . . . . . (vel   )=',e15.5//,
404*59599516SKenneth E. Jansen     &' scaling factor for temperature. . . . . . . (temper)=',e15.5//,
405*59599516SKenneth E. Jansen     &' scaling factor for pressure . . . . . . . . (press )=',e15.5//,
406*59599516SKenneth E. Jansen     &' scaling factor for entropy  . . . . . . . . (entrop)=',e15.5)
407*59599516SKenneth E. Jansenc
408*59599516SKenneth E. Jansen
409*59599516SKenneth E. Jansen1900    format(//,
410*59599516SKenneth E. Jansen     &  ' L e v e l   S e t   P a r a m e t e r s               '   //,
411*59599516SKenneth E. Jansen     &  ' Level Set Switch        . . . . . . . . . . (iLSet )=',i10//,
412*59599516SKenneth E. Jansen     &  '    eq. 0, No Level Set Solution Calculated            ',  / ,
413*59599516SKenneth E. Jansen     &  '    eq. 1, Level Set Calculated, 2 Fluid Props Read    ',  / ,
414*59599516SKenneth E. Jansen     &  '    eq. 2, Level Set and Redistancing Calcuations      ',  //,
415*59599516SKenneth E. Jansen     &  ' Property Smearing Band Width  . . . . . .(epsilon_ls)=',e15.5)
416*59599516SKenneth E. Jansen
417*59599516SKenneth E. Jansen
418*59599516SKenneth E. Jansen
419*59599516SKenneth E. Jansen        end
420