```

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)
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)
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)