TALK=f;RUN(1,1) DISPLAY Problem: The quarter of the square channel. Inner pressure = 4.0e8, outer pressure = 0 1. 2D 'PLANE-STRAIN' : EpsZ = 0 2. Comparison - a calculation on code ELCUT (www.tor.ru) 3. CHANGE from case s240.htm: Add Flow Cells for IX=1 and IY=NY PHOTON USE p;;;; set prop off msg msg V1 contours msg cont DELY z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg U1 contours msg cont DELX z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg EpsX contours msg cont EPSX z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg EpsY contours msg cont EPSY z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg EpsZ contours msg cont EPSZ z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg STRX contours msg cont STRX z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg STRY contours msg cont STRY z 1 x 1 20 y 2 21 fil;.0001 pause cl msg msg STXY contours msg cont STXY z 1 x 1 20 y 2 21 fil;.0001 pause cl msg Displacements fields gr ou z 1 cont DELT z 1 x 1 20 y 2 21 fil;.0001 vec z 1 x 1 20 y 2 21 col 0 ENDUSE ************************************************************ Group 1. Run Title and Number ************************************************************ TEXT(square channel;2D[xy]) Declarations and settings REAL(PIN,LX,LY,R0,POISSON,YOUNG) PIN=4.0e8 ! H/m^2 LX=60.e-3 LY=60.e-3 R0=30.e-3 YOUNG = 1/0.5E-11 ! Young's modulus POISSON=0.3 ! Poisson's ratio INTEGER(NXC,NYC) INTEGER(CASENO) ! start of menu mesg(caseno 1 or 2 : default settings mesg(caseno 3 or 4 : Poisson's ratio = 0.0 ; should affect result mesg(caseno 5 or 6 : zwlast = 1.0 m ; unlikely to affect result mesg(caseno 7 or 8 : focus print-out on channel corner mesg(caseno 9 or 10 : outside fluid pressure = inside pressure mesga(caseno odd = StressModel, even = ModModel361 caseno=1 mesgm(caseno = :caseno: Enter another if not OK readvdu(caseno, int, 1) caseno libref=caseno ! useful because this appears in graphical monitor Integer(SolvMod) ! SolvMod = 1 for Stone Solver (caseno = even) ! 2 for simultaneous Solver (caseno = odd ) ! solvmod=1 + (caseno+1)/2-caseno/2 solvmod ************************************************************ Group 2. Time dependence STEADY = T ************************************************************ Group 3. X-Direction Grid Spacing CARTES = T NXC = 10 NREGX=4 IREGX=1;GRDPWR(X,1,0.001*LX,1.0) ! 18.12.05 single outer fluid cell IREGX=2;GRDPWR(X,NXC,R0,1.0) IREGX=3;GRDPWR(X,NXC,LX-R0,1) IREGX=4;GRDPWR(X,1,0.001*LX,1.0) ! single outer fluid cell ************************************************************ Group 4. Y-Direction Grid Spacing NYC = 10 NREGY=4 IREGY=1;GRDPWR(Y,1,0.001*LY,1.0) ! single outer fluid cell IREGY=2;GRDPWR(Y,NYC,LY-R0,1.0) IREGy=3;GRDPWR(Y,NYC,R0,1) IREGY=4;GRDPWR(Y,1,0.001*LY,1.0) ! 18.12.05 single outer fluid cell ************************************************************ Group 5. Z-Direction Grid Spacing NZ=1 ZWLAST = 0.001 ZWLAST = 0.001 if(caseno.eq.5.or.caseno.eq.6) then ZWLAST = 1.0 endif zwlast ************************************************************ Group 7. Variables: STOREd,SOLVEd,NAMEd ONEPHS = T SOLVE(P1,V1,U1) STORE(PRPS) STORE(STRX,STRY,STRZ) STORE(EPSY,EPSX,EPSZ) STORE(STXY) STORE(Delt,DelX,DelY) ************************************************************ GROUP 8. ITERATION NUMBERS ETC RESFAC=1.e-7 RESREF(P1)=-1 RESREF(U1)=-1 RESREF(V1)=-1 ! to prevent premature exit LITER(V1) = 50 ! from solver LITER(U1) = 50 ! 18.12.05 LITER(P1) = 2 ************************************************************ GROUP 9. PROPERTIES CSG10='Q1' ! materials with various POISSON ratios MATFLG=T;NMAT=2 160 7800.0 0.3 473.0 43.0 1.0e-5 0.5e-11 161 7800.0 0.0 473.0 43.0 1.0e-5 0.5e-11 INTEGER(IPRPS) IPRPS=160 ! used in initial-condition setting below IF(CASENO.EQ.3.OR.CASENO.EQ.4) THEN IPRPS=161 POISSON=0.3 ! for use in exact-solution calculation ENDIF ************************************************************ ! FFFFFFFFFFFFF00000000000 ny = 2*nyc+2 ! FFFFFFFFFFFFFuuuuuuuuuu0 ny-1 ! FFFFFFFFFFFFFssssssssss0 ! FFFFFFFFFFFFFssssssssss0 ! FFFFFFFFFFFFFssssssssss0 ! FFFFFFFFFFFFFssssssssss0 nyc+2 ! 0lsssssssssssssssssssss0 nyc+1 ! 0lsssssssssssssssssssss0 ! 0lsssssssssssssssssssss0 ! 0lsssssssssssssssssssss0 2 ! 000000000000000000000000 1 ! 1 nxc+1 ! nxc+2 nx = 2*nxc+2 ! ! F : inner ( P1 = PIN) ! s : solid ! u : solid + UP ! l : solid + Left ! 0 : FU,FD,FL,FR : P1 = 0 ********************************************************** GROUP 11. INITIAL VALUES fiinit(u1)=0.0 fiinit(v1)=0.0 fiinit(Delt)=0.0 ==== Initial Value of PROP & P1 ======= FIINIT(PRPS)=IPRPS FIINIT(P1)=0.0 PATCH(INNER,INIVAL,1,NXC+1,NYC+2,NY,1,1,1,1) INIT(INNER,PRPS,FIXVAL,0) INIT(INNER,P1,FIXVAL,PIN) PATCH(FL,INIVAL,1,1,1,NY,1,1,1,1) INIT(FL,PRPS,FIXVAL,0) PATCH(FU,INIVAL,1,NX,NY,NY,1,1,1,1) INIT(FU,PRPS,FIXVAL,0) PATCH(FD,INIVAL,1,NX,1,1,1,1,1,1) INIT(FD,PRPS,FIXVAL,0) PATCH(FR,INIVAL,NX,NX,1,NY,1,1,1,1) INIT(FR,PRPS,FIXVAL,0) ************************************************************ GROUP 13. BOUNDARY & SPECIAL SOURCES PATCH(UP,north,NXC+2,NX-1,NY-1,NY-1,1,1,1,1) ! UP - fixed V1 COVAL(UP,V1,FIXVAL,0.0) PATCH(LEFT,WEST,1,1,2,NYC+1,1,1,1,1) ! LEFT - fixed U1 COVAL(LEFT,U1,FIXVAL,0.0) Fixed P1 in inner-zone PATCH(PINNER,CELL,1,NXC+1,NYC+2,NY,1,1,1,1) ! pressurizing inner COVAL(PINNER,P1,FIXVAL,PIN) ! fluid Fixed U1 & V1 in inner-zone PATCH(UINNER,CELL,1,NXC,NYC+2,NY,1,1,1,1) COVAL(UINNER,U1,FIXVAL,0.0) PATCH(VINNER,CELL,1,NXC+1,NYC+2,NY,1,1,1,1) COVAL(VINNER,V1,FIXVAL,0.0) if(caseno.eq.9.or.caseno.eq.10) then Fixed P1 in FL/FD/FR/FU-zones PATCH(PFL,CELL,1,1,1,NYC+1,1,1,1,1) INIT(PFL,P1,FIXVAL,pin) PATCH(PFD,CELL,2,NX,1,1,1,1,1,1) INIT(PFD,P1,FIXVAL,pin) PATCH(PFR,CELL,NX,NX,2,NY,1,1,1,1) INIT(PFR,P1,FIXVAL,pin) PATCH(PFU,CELL,NXC+2,NX-1,NY,NY,1,1,1,1) INIT(PFU,P1,FIXVAL,pin) else PATCH(PFL,CELL,1,1,1,NYC+1,1,1,1,1) INIT(PFL,P1,FIXVAL,0) PATCH(PFD,CELL,2,NX,1,1,1,1,1,1) INIT(PFD,P1,FIXVAL,0) PATCH(PFR,CELL,NX,NX,2,NY,1,1,1,1) INIT(PFR,P1,FIXVAL,0) PATCH(PFU,CELL,NXC+2,NX-1,NY,NY,1,1,1,1) INIT(PFU,P1,FIXVAL,0) endif Fixed U1 in FL/FD/FR/FU-zones PATCH(PFD,CELL,1,NX,1,1,1,1,1,1) INIT(PFD,U1,FIXVAL,0) PATCH(PFU,CELL,NXC+1,NX-1,NY,NY,1,1,1,1) INIT(PFU,U1,FIXVAL,0) Fixed V1 in FL/FD/FR/FU-zones PATCH(VFL,CELL,1,1,1,NYC+1,1,1,1,1) INIT(VFL,V1,FIXVAL,0) PATCH(VFR,CELL,NX,NX,2,NY-1,1,1,1,1) INIT(VFR,V1,FIXVAL,0) ! EpsZ = 0 SPEDAT(BOUNDARY,ZCONST,R,1.0e20) ************************************************************ GROUP 15. TERMINATE SWEEPS LSWEEP = 300 ISG21=LSWEEP if(solvmod.eq.2) then LG(40) = T spedat(rlxfac,rlxu1d,r,1) spedat(rlxfac,rlxv1d,r,1) else lsweep=lsweep*2 LG(40) = F spedat(rlxfac,rlxu1d,r,0.5) spedat(rlxfac,rlxv1d,r,0.5) endif ISG21=LSWEEP ************************************************************ GROUP 17. RELAXATION #CONPROM RELAX(P1 ,LINRLX, 1.000000E+00) relax(U1,linrlx,1.0) relax(V1,linrlx,1.0) ************************************************************ GROUP 19. DATA TRANSMITTED TO GROUND STRA = T PARSOL = F ISG52 = 3 ! probe & res ************************************************************ GROUP 23.FIELD PRINT-OUT & PLOT CONTROL TSTSWP = - 1 ! graphic-mode NYPRIN = 1 IXMON = NX-2 IYMON = 2 IZMON = 1 look at bottom right-hand corner of solid nxprin=1;nyprin=1 ixprf=nx-4;ixprl=nx iyprf=1;iyprl=5 if(caseno.eq.7.or.caseno.eq.8) then look at bottom right-hand corner of fluid ixprf=nxc-2;ixprl=nxc+2 iyprf=nyc-3;iyprl=nyc+1 endif inform7begin cell-centre displacements, for comparison with ELCUT real(R4) (STORED VAR DelX IS 0.5*(U1+U1[-1]) with imat>100) (STORED VAR DelY IS 0.5*(V1+V1[&-1]) with imat>100) (STORED VAR Delt IS SQRT(DELX^2+DELY^2) with imat>100) inform7end STOP