MB-FGE Test: Potential flow around a 2D airfoil.
**************************************************************
DISPLAY
This case concerns potential flow around a 2D aerofoil.

A single domain grid is used, and it is joined to  itself
in the sense  that it is  SOUTH-SOUTH rather than  SOUTH-
NORTH. These links are supported only for  the
solution of  scalar variables.  The link  is set manually
using PATCH commands rather than MBLINK PIL-command.

Q1-file contains Photon Use information.
---------------------------------------------------------
ENDDIS
L(PAUSE
**************************************************************
PHOTON USE
p ; ; ; ; ;

set vec av off
g k 1
pause
con pot k 1 fi;0.001
pause
vec k 1 sh
msg This is the velocity field.
ENDUSE
GROUP 1. Run title and other preliminaries
TEXT(MB-FGE: 2D Potential flow over airfoil.
TITLE
REAL(DEL); INTEGER(NX1,NX2,NX3,IC)
** Problem definition:
DEL= 0.2;    NX1= 5;   NX2= 15;  NX3= 3
NX = 2*(NX1+NX2+NX3);  NY = 10;  NZ = 1
GROUP 6. Body-fitted coordinates or grid distortion
BFC= T; GSET(D,NX,NY,NZ,DEL,DEL,DEL)
GSET(P,P1,1.0+DEL,0.0,0.0); GSET(P,P2,1.0+DEL,DEL,0.0)
GSET(P,P3,   -DEL,DEL,0.0); GSET(P,P4,   -DEL,0.0,0.0)
GSET(P,P5,    0.0,0.0,0.0); GSET(P,P6,    1.0,0.0,0.0)
GSET(L,L12,P1,P2,NY,  1.0); GSET(L,L23,P2,P3,NX2+NX3,-1.2)
GSET(L,L34,P3,P4,NX1, 1.0); GSET(L,L45,P4,P5,NY,      1.0)
GSET(L,L16,P1,P6,NX3, 1.0)
** Set the profile shape.
GSET(V,CV1,S,P5)
GSET(V,0.025, 0.02453,0.0);  GSET(V,0.05,0.03267,0.0)
GSET(V,0.1,   0.0424, 0.0);  GSET(V,0.2, 0.05293,0.0)
GSET(V,0.3,   0.05827,0.0);  GSET(V,0.4, 0.06,   0.0)
GSET(V,0.5,   0.05827,0.0);  GSET(V,0.6, 0.0532, 0.0)
GSET(V,0.7,   0.0448, 0.0);  GSET(V,0.8, 0.0332, 0.0)
GSET(V,0.9,   0.01867,0.0);  GSET(V,0.95,0.01027,0.0)
GSET(V,CV1,E,P6)
GSET(L,L56,P5,P6,NX1+NX2,1.8CRVCV1)
GSET(F,F1,P1,-,P2,P3,P4,-,P5,P6)
GSET(M,F1,+J+I,1,1,1,LAP5.TFFFFF)
DO II=NX1+NX2+NX3+2,NX+1
DO JJ=1,NY+1
+ IC = NX1+NX2+NX3+1-(II-NX1-NX2-NX3-1)
+ XC(II,JJ,1) =  XC(IC,JJ,1)
+ YC(II,JJ,1) = -YC(IC,JJ,1)
+ ZC(II,JJ,1) = 0.0
ENDDO
ENDDO
GSET(C,K:NZ+1:,F,K1,1,NX,1,NY,+,0.0,0.0,0.1,INC,1.0)
DUMPC(MBGR1)
** Assemble blocks:
GVIEW(Z); VIEW
** Set links manually, as they are not natural
MPATCH(1,MBL1.1,SOUTH,       1,NX3,1,1,1,NZ,1,LSTEP)
MPATCH(1,MBL1-1,SOUTH,NX-NX3+1, NX,1,1,1,NZ,1,LSTEP)
GROUP 7. Variables stored, solved & named
STORE(U1,V1,POT,VPOR); SOLUTN(POT,Y,Y,Y,N,N,N)
GROUP 8. Terms in differential equations & devices
TERMS(POT,N,N,Y,N,Y,N)
GROUP 13. Boundary conditions and special sources
**Upstream boundary
MPATCH(1,UPSTRM,SOUTH,NX2+NX3+1,2*NX1+NX2+NX3,NY,NY,1,NZ,1,LSTEP)
COVAL(UPSTRM,POT,FIXVAL,-10.0)
**Downstream boundary
MPATCH(1,DWNSTR1,WEST,1, 1, 1,NY,1,NZ,1,LSTEP)
COVAL(DWNSTR1,POT,FIXVAL,0.0)
MPATCH(1,DWNSTR2,EAST,NX,NX,1,NY,1,NZ,1,LSTEP)
COVAL(DWNSTR2,POT,FIXVAL,0.0)
GROUP 15. Termination of sweeps
LSWEEP= 50; TSTSWP= -1
GROUP 16. Termination of iterations
RESREF(POT)= 1.E-8; LITER(POT) = 40
GROUP 17. Under-relaxation devices
RELAX(POT,LINRLX,0.25)
GROUP 19. Data communicated by satellite to GROUND
* LSG3 = T, activates curvilinearity treatment;
* LSG4 = T, activates nonorthogonality treatment.
CSG3= LCRU;  LSG3= T;  LSG4= T
GROUP 21. Print-out of variables
OUTPUT(POT,Y,N,N,Y,Y,Y)
GROUP 22. Spot-value print-out
IXMON= NX1/2+1; IYMON= NY/2+1; IZMON= 1