TALK=f;RUN(1,1) DISPLAY Problem: Vertical prismatic (0.3x03x2.5 m) bar & gravity force -Rho*g. At the upper end - a uniform normal stress equal to total weight of the bar Rho*g*LZ. 1. Comparison - a analytical solution: U = -P*Rho*g*x*z/E, V = -P*Rho*g*z*y/E, W = Rho*g/E/2*[ (z^2 - LZ^2) + P*(x^2+y^2)] 2. Similar to s301, But fluid-layers are used ENDDIS ************************************************************ Group 1. Run Title and Number ************************************************************ TEXT(3D Prismatic bar & gravity force) Declarations and settings REAL(Rho,GF,FZ,LX,LY,LZ,POISSON,YOUNG) Rho = 1.e4 GF=9.8 FZ= Rho*GF LX=0.15 LZ=2.5 LY=0.15 YOUNG = 1/0.5E-11 ! Young's modulus POISSON=0.3 ! Poisson's ratio INTEGER(NXBODY,NYBODY,NZBODY) ************************************************************ Group 2. Time dependence STEADY = T ************************************************************ Group 3. X-Direction Grid Spacing CARTES = T NXBODY = 5 NREGX=3 ! 3 regions IREGX=1;GRDPWR(X,1,0.01*LX,1.0) ! single inner fluid cell IREGX=2;GRDPWR(X,NXBODY,LX,1) IREGX=3;GRDPWR(X,1,0.01*LX,1.0) ! single outer fluid cell ************************************************************ Group 4. Y-Direction Grid Spacing NYBODY = 5 NREGY=3 ! 3 regions IREGY=1;GRDPWR(Y,1,0.01*LY,1.0) ! single inner fluid cell IREGY=2;GRDPWR(Y,NYBODY,LY,1) IREGY=3;GRDPWR(Y,1,0.01*LY,1.0) ! single outer fluid cell ************************************************************ Group 5. Z-Direction Grid Spacing NZBODY = 5 NREGZ=3 ! 3 regions IREGZ=1;GRDPWR(Z,1,0.01*LZ,1.0) ! single inner fluid cell IREGZ=2;GRDPWR(Z,NZBODY,LZ,1) IREGZ=3;GRDPWR(Z,1,0.01*LZ,1.0) ! single outer fluid cell ************************************************************ Group 7. Variables: STOREd,SOLVEd,NAMEd ONEPHS = T SOLVE(P1,V1,U1,W1) SOLUTN(P1 ,Y,Y,Y,N,N,N) SOLUTN(U1 ,Y,Y,Y,N,N,Y) SOLUTN(V1 ,Y,Y,Y,N,N,Y) SOLUTN(W1 ,Y,Y,Y,N,N,Y) STORE(PRPS) STORE(DRH1,VISL) STORE(STRZ) STORE(EPSY,EPSX,EPSZ) STORE(U1T,V1T,W1T,U1/T,V1/T,W1/T) ************************************************************ GROUP 8. ITERATION NUMBERS ETC RESFAC=1.e-7 RESREF(V1)=0.0 RESREF(U1)=0.0 ! to prevent premature exit LITER(V1) = 50 ! from solver LITER(U1) = 50 LITER(P1) = 50 RESREF(W1)=0.0 LITER(W1) = 50 ************************************************************ GROUP 9. PROPERTIES CSG10='Q1' ! materials with various POISSON ratios MATFLG=T;NMAT=1 160 7800.0 0.3 473.0 43.0 1.0e-5 0.5e-11 ************************************************************ GROUP 11. INITIAL VALUES fiinit(p1)=0.0 fiinit(u1)=0.0 fiinit(v1)=0.0 fiinit(w1)=0.0 FIINIT(PRPS)=0 PATCH(BODY,INIVAL,2,NX-1,2,NY-1,2,NZ-1,1,1) INIT(BODY,PRPS,FIXVAL,160) ************************************************************ GROUP 13. BOUNDARY & SPECIAL SOURCES PATCH(FORC01,HIGH,2,NX-1,2,NY-1,NZ-1,NZ-1,1,1) ! Upper - sprain COVAL(FORC01,W1,FIXFLU,FZ*LZ) PATCH(FORCGRA,VOLUME,2,NX-1,2,NY-1,1,NZ-1,1,1) ! Volume - gravity force COVAL(FORCGRA,W1,FIXFLU,-FZ) PATCH(ONEP,CELL,2,NX-1,2,NY-1,NZ-1,NZ-1,1,1) ! Fixed moving real(C00) C00 = FZ/YOUNG*POISSON/2 char(Frm00) Frm00 = :C00:*(XG^2 + YG^2) (source of W1 at ONEP is COVAL(1,:FRM00:)) PATCH(AXESXX,EAST,1,1,2,NY-1,2,NZ-1,1,1) ! X = 0 plate COVAL(AXESXX,U1,FIXVAL,0.0) PATCH(AXESYY,NORTH,2,NX-1,1,1,2,NZ-1,1,1) ! Y = 0 plate COVAL(AXESYY,V1,FIXVAL,0.0) ************************************************************ GROUP 15. TERMINATE SWEEPS LSWEEP = 700 ISG21=LSWEEP ************************************************************ GROUP 17. RELAXATION #CONPROM RELAX(P1 ,LINRLX, 1.000000E+00) spedat(rlxfac,rlxu1d,r,0.5) spedat(rlxfac,rlxv1d,r,0.5) spedat(rlxfac,rlxw1d,r,0.5) ************************************************************ 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 NXPRIN = 1 NZPRIN = 1 IXMON = NX-2 IYMON = NY-2 IZMON = NZ-2 output(prps,n,n,n,n,n,n) output(drh1,n,n,n,n,n,n) output(visl,n,n,n,n,n,n) output(epsZ,n,n,n,n,n,n) #conprom inform7begin real(CX,CZ,CZ05) CX = FZ/YOUNG*POISSON CZ = FZ/YOUNG CZ05 = CZ/2 char(Frm1,Frm2,FRM3) Frm1 = :CZ05:*((ZW-0.01*:LZ:)^2 - :LZ:^2)+ Frm2 = :CX:/2*((XG-0.01*:LX:)^2+(YG-0.01*:LY:)^2) Frm3=*(ZG-0.01*:LZ:) **** CALCULATE analytical solution *** (STORED VAR W1T IS :Frm1::Frm2: with imat>100) (STORED VAR U1T IS -:CX:*(XU-0.01*:LX:):frm3: with imat>100) (STORED VAR V1T IS -:CX:*(YV-0.01*:LY:):frm3: with imat>100) (STORED VAR U1/T IS U1/(U1T+1.e-20) with imat>100) (STORED VAR V1/T IS V1/(V1T+1.e-20) with imat>100) (STORED VAR W1/T IS W1/(W1T+1.e-20) with imat>100) inform7end restrt(all) STOP