** CCM/MBFGE Test: One-dimensional flow after sudden break of a diaphragm. ************************************************************** DISPLAY ---------------------------------------------------------- The case concerns the unsteady one-dimensional flow that occurs after the sudden break of a diaphragm. At the start the pipe is divided into two halves by a diaphragm; the gas on the left is at pressure 1.e7 and 800C and that on the right at pressure 1.e5 and 200c. The main purpose of this case is to demonstrate the use of the built-in pressure source term in enthalpy/temperature equation for MBFGE cases. User can switch from the default colocated computational algorithm (CCM) to the staggered one (STAG) by setting LCCM = F. By default the case is set as one domain case. User can switch from that to two domain case by setting LMBLK=T. ---------------------------------------------------------- ENDDIS L(PAUSE ************************************************************** GROUP 1. Run title and other preliminaries TEXT(SHOCK TUBE;Ideal-Gas P-Ro relation. TITLE CHAR(VEL); BOOLEAN(LCCM,LMBLK); REAL(DELT) LCCM= T; LMBLK= F IF(LCCM) THEN + VEL= UC1 ELSE + VEL= U1 ENDIF GROUP 2. Transience; time-step specification DELT= 5.E-6; LSTEP= 20 STEADY= F; GRDPWR(T,LSTEP,LSTEP*DELT,1.0) GROUP 3. X-direction grid specification YVLAST= 0.05; ZWLAST= 0.05 IF(LMBLK) THEN + BFC= T; STORE(VPOR) + GSET(P,P1,0.0,0.0,0.0 ); GSET(P,P2,0.5,0.0,0.0 ) + GSET(P,P3,0.5,0.0,0.05); GSET(P,P4,0.0,0.0,0.05) + GSET(L,L12,P1,P2,50,1.0); GSET(L,L23,P2,P3,1,1.0) + GSET(L,L34,P3,P4,50,1.0); GSET(L,L41,P4,P1,1,1.0) + GSET(D,50,1,1,0.5,0.05,0.05) + GSET(F,F1,P1,-,P2,-,P3,-,P4,-); GSET(M,F1,+I+K,1,1,1) + GSET(C,J2,F,J1,1,50,1,1,+,0.0,0.05,0.0,INC,1.0) + DUMPC(GR1) + GSET(P,P5,0.5,0.0,0.0 ); GSET(P,P6,1.0,0.0,0.0 ) + GSET(P,P7,1.0,0.0,0.05); GSET(P,P8,0.5,0.0,0.05) + GSET(L,L56,P5,P6,50,1.0); GSET(L,L67,P6,P7,1,1.0) + GSET(L,L78,P7,P8,50,1.0); GSET(L,L85,P8,P5,1,1.0) + GSET(D,50,1,1,0.5,0.05,0.05) + GSET(F,F2,P5,-,P6,-,P7,-,P8,-); GSET(M,F2,+I+K,1,1,1) + GSET(C,J2,F,J1,1,50,1,1,+,0.0,0.05,0.0,INC,1.0) + DUMPC(GR2) + NUMBLK= 2; READCO(GR+L); VIEW ** To set up LINKS you can use MBLINK or MPATCH commands instead of READCO(...+L). MBLINK(1,EAST,2,WEST) ELSE + GRDPWR(X,100,1,1) ENDIF GROUP 7. Variables stored, solved & named SOLVE(P1,U1,TEM1); STORE(RHO1,PRPS) IF(LCCM) THEN + SOLVE(UC1); CSG3= LCRU; TERMS(U1,N,N,N,N,N,N) ENDIF GROUP 8. Terms (in differential equations) & devices TERMS(:VEL:,P,P,N,P,P,P); TERMS(TEM1,Y,P,P,P,P,P) GROUP 9. Properties of the medium (or media) RHO1 = FILE; ENUL = FILE; PRNDTL(TEM1)=CONDFILE PRESS0= 1.E5; TEMP0= 273 DRH1DP= FILE GROUP 11. Initialization of variable or porosity fields FIINIT(P1) = 1.0; FIINIT(:VEL:)= 0.0 FIINIT(TEM1)= 20.; FIINIT(PRPS) = 2.0 PATCH(START,INIVAL,1,50,1,1,1,1,1,1) INIT(START,P1,0.0,1.0E7); INIT(START,TEM1,0,800) GROUP 15. Termination of sweeps LSWEEP= 20; TSTSWP = -1 RELAX(:VEL:,FALSDT,DELT/2) RELAX(P1,LINRLX,0.5) SPEDAT(SET,GXMONI,TRANSIENT,L,F) GROUP 22. Spot-value print-out IXMON= NX/2 GROUP 23. Field print-out and plot control NTPRIN= LSTEP/5; NXPRIN= 1 PATCH(ALLX,PROFIL,1,NX,1,1,1,1,1,LSTEP) PLOT(ALLX,P1,0.0,0.0);PLOT(ALLX,:vel:,0.0,0.0) PATCH(TIMEPLOT,PROFIL,3*NX/4,3*NX/4,1,1,1,1,1,LSTEP) PLOT(TIMEPLOT,P1,0.0,0.0);PLOT(TIMEPLOT,:vel:,0.0,0.0)