DISPLAY
  New solver for Non-orthogonal grids
 
  This Q1 allows you to test the new non-orthogonal solver. Several
  library cases are available to choose from:
 
  - Potential flow around a cylinder
       case 514: y-z plane, non-orthogonal grid
       case 515: y-z plane, near-orthogonal grid
 
  - Potential flow around an ellipse
       case 521: x-y plane, non-orthogonal grid
       case 516: y-z plane, non-orthogonal grid
       case 517: y-z plane, near-orthogonal grid
 
       case 530 (modified): potential flow around
                      a ship's stern
 
  You can decide which case to run
  and whether to use the new solver.
  ENDDIS
 
  PHOTON USE
  p
 
 
 
 
  gr ou x 1
  msg velocity vectors
  vec x 1
  msg  -
  msg Press  to continue
  pause
  msg contours of velocity potential
  con p1 x 1 fi;0.01
  vec x 1
  msg Press e to END
  enduse
 
text(Use of non-orthogonal solver
title
mesg(Available cases are 514, 515, 516, 517, 521, 530
mesgm(Which case number do you want ?
integer(number)
readvdu(number,int,514)
number
if(number.eq.514) then
 goto L514
endif
if(number.eq.515) then
 goto L515
endif
if(number.eq.516) then
 goto L516
endif
if(number.eq.517) then
 goto L517
endif
if(number.eq.521) then
 goto L521
endif
if(number.eq.530) then
 goto L530
endif
 
label L514
 l(*B514)
 l(*clear)
goto start
label L515
    l(*B514-515)
 l(*B515)
 l(*clear)
goto start
label L516
     l(*B514-516)
 l(*B516)
 l(*clear)
goto start
label L517
     l(*B514-517)
 l(*B517)
 l(*clear)
goto start
label L521
 l(*B521)
 l(*clear)
 view(k,1)
 goto start2
label L530
 #B530)
 l(*clear)
 darcy=t
 patch(resist,volume,1,nx,1,ny,1,nz,1,1)
 coval(inlet,p1,fixp,1.0)
 coval(inlet,w1,onlyms,0.0)
 coval(outlet,p1,fixp,0.0)
 coval(resist,u1,1.e1,0.0)
 coval(resist,v1,1.e1,0.0)
 coval(resist,w1,1.e1,0.0)
 inlety1=skip
 inlety2=skip
 wall=skip
 water=skip
 relax(p1,linrlx,1.0)
 fiinit(p1)=0.5;fiinit(w1)=1.e-6
 liter(u1)=1;liter(v1)=1;liter(w1)=1
 view(k,5)
 goto start2
label start
view(i,1)
label start2
 
dtfals(u1)=1.e20;dtfals(v1)=1.e20;dtfals(w1)=1.e20
itabl=1;lsweep=1000
endit(p1)=-1.0
output(p1,y,y,y,y,y,y)
 
lsweep=200
UWATCH=T
ISOLZ=0;ISOLX=0;ISOLY=0
LITER(P1)=-2000
 
NNORSL=F
mesgm(Use new solver for nonort grids? (y/n)
readvdu(ans,char,n)
if(:ans:.eq.y) then
 NNORSL=T
 nnorsl
 mesgm(Nonort solver will be used
endif
 
SELREF=f
mesgm(resref(p1) = :resref(p1):
mesgm(Use self-selection of reference residuals? (y/n)
readvdu(ans,char,n)
if(:ans:.eq.y) then
 resfac=1.0e-5
 SELREF=t
 selref
 mesgm(Resfac is :resfac:  If not OK insert desired value
 readvdu(resfac,real,:resfac:)
 mesgm(Resfac is :resfac:
endif
q1quit=t