```

GROUP 1. Run title
TITLE
This is based on library case B523 for the XZ plane with
solved static enthalpy, SOLH=T, (or stored total enthalpy,
SOLH=F) and corrections to momentum and enthalpy.
REAL(GASCON,GAMMA,PTOTAL,TTOTAL,RHOTOT,MACHI,PEXRAT,AGAM1,RGAM)
REAL(PIN,TIN,POWER,WIN,RHOIN,PEXIT,CHORD)
REAL(ANGLE1,GZLE,GZBACK,GZFCOR,GZSCOR,GZTE)
INTEGER(IZLE,IZTE)
BOOLEAN(SOLH)
SOLH = F - Stored total enthalpy
= T - Solved static enthalpy
SOLH=T
GASCON=1.0;GAMMA=1.4;PTOTAL=1.0;TTOTAL=1.0;RHOTOT=1.0;MACHI=3.0
CHORD=4.0;PEXRAT=0.0377
IZLE=4;IZTE=24;ANGLE1=18.5;GZLE=0.8;GZTE=GZLE+CHORD;GZBACK=0.8
GZFCOR=GZLE+2.0;GZSCOR=GZLE+3.0
** Calculation of inlet velocity
AGAM1=GAMMA-1.;RGAM=1./GAMMA;POWER=GAMMA/AGAM1
PIN=PTOTAL/(1.+AGAM1*MACHI*MACHI/2.)**POWER
RHOIN=RHOTOT/(PTOTAL/PIN)**RGAM
WIN=MACHI*(GAMMA*PIN/RHOIN)**0.5
** Calculation of Inlet Temperature
TIN=PIN/(GASCON*RHOIN)
** Calculation of exit pressure
PEXIT=PEXRAT*PTOTAL
GROUP 6. Body-fitted coordinates or grid distortion
BFC=T;NONORT=T
GSET(D,10,1,28,1.0,1.0,5.6)
INTEGER(K1,K2,K3,K4);K1=5;K2=15;K3=20;K4=25
** Centre portion
NOTE: case B523 copies through -0.3308. This angle is
to high for the enthalpy source correction to function
correctly.
GSET(C,I1,F,I:NX+1:,1,NY,K2,K3-1,+,-0.4308,0.0,0.0,INC,1.0)
** Front Ramp
GSET(T,K:K2:,F,K:K1:,1.0)
** Rear Ramp
GSET(T,K:K4:,F,K:K3:,1.0)
GROUP 7. Variables stored, solved & named
SOLVE(P1,U1,W1);STORE(RHO1,TMP1,MACH,PTOT,VABS)
STORE(UCMP,WCMP)
SOLUTN(P1,Y,Y,Y,N,N,N)
IF(SOLH) THEN
#\$900
SOLUTN(H1,P,P,Y,P,P,P)
ENDIF
GROUP 9. Properties of the medium (or media)
ENUL=0.0;ENUT=0.0
** Use Ideal Gas Density Law
RHO1=IDEALGAS;RHO1B=1/GASCON;RHO1C=1/GAMMA;PRESS0=PEXIT
DRH1DP=IDEALGAS
CP1=(GASCON*GAMMA)/(GAMMA-1)
IF(SOLH) THEN
TMP1=LINH
ELSE
TMP1=CONSTAGH;TMP1A=TTOTAL*CP1
ENDIF
GROUP 11. Initialization of variable or porosity fields
FIINIT(P1)=PIN;FIINIT(W1)=WIN;FIINIT(RHO1)=RHOIN
FIINIT(H1)=TIN*CP1;FIINIT(WCMP)=WIN
GROUP 13. Boundary conditions and special sources
INLET(INLET,LOW,1,NX,1,1,1,1,1,1)
VALUE(INLET,P1,RHOIN*WIN)
VALUE(INLET,W1,WIN)
VALUE(INLET,H1,TIN*CP1)

PATCH(OUTLET,HIGH,1,NX,1,1,NZ,NZ,1,1)
COVAL(OUTLET,P1,5.E4,0)
COVAL(OUTLET,U1,ONLYMS,0.0);COVAL(OUTLET,W1,ONLYMS,0.0)
COVAL(OUTLET,H1,ONLYMS,TIN*CP1)

** Cyclic boundary upstream and downstream of cascade.
XCYIZ(1,K1-1,T)
XCYIZ(K4,NZ,T)
GROUP 15. Termination of sweeps
SELREF=T; RESFAC=0.01
LSWEEP=500
GROUP 17. Under-relaxation devices
RELAX(P1,LINRLX,0.6);RELAX(RHO1,LINRLX,1.0)
RELAX(U1,FALSDT,0.1);RELAX(W1,FALSDT,0.1)
RELAX(H1,FALSDT,0.1)
GROUP 18. Limits on variables or increments to them
VARMIN(U1)=-50.;VARMIN(W1)=-50.;VARMAX(U1)=50.;VARMAX(W1)=50.
VARMIN(RHO1)=0.1*RHOIN;VARMAX(RHO1)=RHOTOT
VARMIN(P1)=-0.999*PRESS0;VARMAX(P1)=PTOTAL
VARMIN(H1)=0.0001*TIN*CP1
GROUP 19. Data communicated by satellite to GROUND
UCONV=T;NAMGRD=CONV
GROUP 21. Print-out of variables
NXPRIN=1;NZPRIN=1
GROUP 22. Spot-value print-out
TSTSWP=-1
IXMON=2;IZMON=9
```