PHOTON USE x;x1;; rot z ang 90;gr y m;gr z 1;gr z m msg( 3D corrugated circular pipe pause x;x2;; up x;gr y m;gr ou z 1;gr ou z m msg( 3D helically coiled pipe pause x;x3;; msg( 3D snail-like chamber gr z 1;gr z m;gr y m;pause x;x4;; up z;gr z m;gr ou z 1;gr y m msg( 3D igloo ENDUSE >>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>> DISPLAY This input file is the one of the series of three "sample-kits". It concerns the generation of four 3D BFC grids to be fitted with: corrugated circular pipe, helically coiled pipe, snail-like chamber and "igloo" object. The problem is wholly focused on calculation of grid corner coordinates. Therefore, no other functions are supported by input data. It is arranged as unsteady problem: at each time moment the new BFC grid is PLANTed and dumped into specified file to be viewed by PHOTON. ENDDIS PLANT information : * Data input groups used: 6 * Ground groups planted : 19-2 * Headings used : MXYZ?? * Functions used : None * Commands used : IF <<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<< TEXT( Analytical BFC grids : 3D sample-kit. GROUP 2. Transience; time-step specification STEADY=F GRDPWR(T,4,4.,1.0) GROUP 6. Body-fitted coordinates or grid distortion NX=25;NY=16;NZ=60 BFC=T NAMSAT=MOSG PLANTBEGIN 1. 3D corrugated circular pipe --------------------------- REAL(LENGTH,TWOPI,LITTLER) LENGTH=10.0 LITTLER=1.0;TWOPI=2.0*3.14157XC=ABS(COS(:LENGTH:*FLOAT(K-1)/FLOAT(NZ)))+$ :LITTLER:*FLOAT(J-1)/FLOAT(NY)*$ COS(:TWOPI:*FLOAT(I-1)/FLOAT(NX)) YC=ABS(COS(:LENGTH:*FLOAT(K-1)/FLOAT(NZ)))+$ :LITTLER:*FLOAT(J-1)/FLOAT(NY)*$ SIN(:TWOPI:*FLOAT(I-1)/FLOAT(NX)) ZC=:LENGTH:*FLOAT(K-1)/FLOAT(NZ) IF(ISTEP.EQ.1.AND.ISWEEP.EQ.1) >>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>> The above three statements contain rather lengthy algebraic formulae. All together they provide the calculation of cartesian coordinates for cell corners of the grid fitted the corrugated circular pipe of 1m diameter and 10m length, as can be seen by PHOTON. The grid is uniform in both direction. The generation is made at the first sweep of the first time step. <<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<< 2. 3D helically coiled pipe ------------------------- REAL(LITLER) LITLER=0.25 XC=:LITLER:*FLOAT(J-1)/FLOAT(NY)*$ COS(:TWOPI:*FLOAT(I-1)/FLOAT(NX))+$ COS(4.75*6.28314*FLOAT(K-1)/FLOAT(NZ)) YC=:LITLER:*FLOAT(J-1)/FLOAT(NY)*$ SIN(:TWOPI:*FLOAT(I-1)/FLOAT(NX))+$ SIN(4.75*6.2831*FLOAT(K-1)/FLOAT(NZ)) ZC= 5.5*FLOAT(K-1)/FLOAT(NZ) IF(ISTEP.EQ.2.AND.ISWEEP.EQ.1) >>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>> The above three statements perform the corresponding functions for the generation of the uniform grid fitted the helically coiled pipe of 0.25 m diameter. It is made at the first sweep of the second time step. <<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<< 3. 3D snail-like chamber --------------------- REAL(LITR) LITR=1.0 RG(1)=TWOPI XC=:LITR:*FLOAT(J-1)/FLOAT(NY)*$ (COS(RG(1)*FLOAT(I-1)/FLOAT(NX))+$ RG(1)*FLOAT(I-1)/FLOAT(NX)*$ SIN(RG(1)*FLOAT(I-1)/FLOAT(NX))) YC=:LITR:*FLOAT(J-1)/FLOAT(NY)*$ (SIN(RG(1)*FLOAT(I-1)/FLOAT(NX))-$ RG(1)*FLOAT(I-1)/FLOAT(NX)*$ COS(RG(1)*FLOAT(I-1)/FLOAT(NX))) ZC=10.*FLOAT(K-1)/FLOAT(NZ) IF(ISTEP.EQ.3.AND.ISWEEP.EQ.1) >>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>> At the first sweep of the third time step the generation of the snail-like chamber is made governed by above formulae. <<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<< 4. 3D igloo -------- XC=:LITR:*FLOAT(J-1)/FLOAT(NY)*$ COS(:TWOPI:*FLOAT(I-1)/FLOAT(NX)) YC=:LITR:*FLOAT(J-1)/FLOAT(NY)*$ SIN(:TWOPI:*FLOAT(I-1)/FLOAT(NX)) ZC=:LITR:*FLOAT(K-1)/FLOAT(NZ)*$ 0.5*(SIN(:TWOPI:*$ FLOAT(J-1)/FLOAT(NY))+1) IF(ISTEP.EQ.4.AND.ISWEEP.EQ.1) >>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>> At the first sweep of the fourth time step the generation of the last grid of the series is made governed by above formulae. <<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<< PLANTEND SPEDAT(SET,GXMONI,TRANSIENT,L,F) CSG1=PHI;CSG2=XYZ;LSWEEP=1;IDISPA=1 SOLVE(MARK) dmpstk=t DISTIL=T; EX(MARK)=1.000E-10 LIBREF=608 STOP