Flac3d Pile-AxiallyLoaded 学习过程

mac2022-06-30  21

; Axially loaded pile example application model new model title "Axially Loaded Pile" ; Create the grid zone create brick size 15 15 15 edge=11 zone face skin ; Label model boundaries ; Assign constitutive model and propertie zone cmodel assign elastic zone property bulk=5e9 shear=1e9 density=2000 ; Boundary conditions zone face apply velocity-normal 0 range group 'East' or 'West' zone face apply velocity-normal 0 range group 'North' or 'South' zone face apply velocity-normal 0 range group 'Bottom' ; Initial conditions model gravity 10 zone initialize-stresses model solve ratio-local 1e-4 ; Should be instant ; ======================================================= ; Create a pile in the center of the soil block struct pile create by-line (5.5, 5.5, 12) (5.5, 5.5, 4) segments=32 struct pile property young=8.0e10 poisson=0.30 cross-sectional-area=0.7854 moi-polar=0.0 moi-y=0.0 moi-z=0.0 ...             perimeter=3.14 coupling-stiffness-shear=1.3e11 coupling-cohesion-shear=0.0 coupling-friction-shear=10.0 ...             coupling-stiffness-normal=1.3e11 coupling-cohesion-normal=0.0 coupling-friction-normal=0.0 coupling-gap-normal=off ; ======================================================= ; Specify and apply velocity to pile tip. struct node fix velocity-x                     range position-z 12 struct node initialize velocity-x 0.5e-8 local range position-z 12 ; ======================================================= ; Set up histories for monitoring model behavior struct node history name='disp'  displacement-z position (5.5,5.5,12) struct pile history name='force' force-x position (5.5,5.5,12) ; ======================================================= struct damping combined-local model save 'Initial' ; ======================================================= ; Apply velocity to achieve total displacement of 10e-5 m model cycle 20000 model save 'AxiallyLoaded-1' ; ======================================================= ; Include end-bearing effect model restore 'Initial' struct link delete range position-z 4.0 struct link create target zone group 'End' range position-z 4.0 struct link attach x=normal-yield y=free z=free                           range group 'End' struct link attach rotation-x=free rotation-y=free rotation-z=free        range group 'End' struct link property x area=1.0 stiffness=5.4e11 yield-compression=2.22e5 range group 'End' model cycle 20000 model save 'AxiallyLoaded-2'

 

; Sanity Check for Axially Loaded Pile example ; Compares with FLAC3D version 3.1 results model restore 'AxiallyLoaded-1' -test check real [struct.node.disp.global(struct.node.find(1),1)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),2)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),3)] -1e-4 tol 1e-8 -test check real [struct.node.disp.global(struct.node.find(1),4)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),5)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),6)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),1)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),2)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),3)] -7.509e-5 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),4)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),5)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),6)]         0 tol 1e-7 plot 'Pile' export bitmap filename 'axiallyloaded-pile1.png'

model restore 'AxiallyLoaded-2' -test check real [struct.node.disp.global(struct.node.find(1),1)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),2)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),3)] -1e-4 tol 1e-8 -test check real [struct.node.disp.global(struct.node.find(1),4)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),5)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(1),6)]     0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),1)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),2)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),3)] -4.843e-5 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),4)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),5)]         0 tol 1e-7 -test check real [struct.node.disp.global(struct.node.find(33),6)]         0 tol 1e-7 plot 'Pile' export bitmap filename 'axiallyloaded-pile2.png'

最新回复(0)