Data files for “Gravity Settlement in a Coupled PFC-FLAC3D model” Verification

wave_propagation.dat

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
model new
model configure dynamic
model largestrain on

[rho    = 2700.0 ]
[emod   = 75.0e9 ]
[nu     = 0.25]
[mmod   = emod*(1-nu)/((1+nu)*(1-2.0*nu))]

[l  = 1.0]
[nb = 5]

[rad  = l/(2.0*nb)]
[rhob = 6.0/math.pi*rho]

[nh   =  10]
[nw   =  1]
[npfc =  2]
[ncpl =  3]
[h    = nh*l]
[nf3d =  nh - (npfc+ncpl)]

[lsub  = nzh*hz]
[hmin  = 0.]
[hpfc = hmin +  nf3d      *l]
[hf3d = hmin + (nf3d+ncpl)*l]
[nf = int(hf3d/l)]

[epsilon = 1.0e-3]


zone create brick size  @nw @nw @nf	point 0  0   0 	 @hmin ...
                                    point 1  @l  0 	 @hmin ...
                                    point 2  0	 @l	 @hmin ...
                                    point 3  0	 0	 @hf3d

zone create brick size  @nw @nw @nh  	point 0  [2.0*l] 0. @hmin ...
										point 1  [3.0*l] 0. @hmin ...
										point 2  [2.0*l] @l	@hmin ...
										point 3  [2.0*l] 0.	@h
                                            
zone cmodel assign elastic
zone property young @emod poisson @nu
zone initialize density @rho
model cycle 0 ; to initialize gp masses

model range create 'bottom' position-z [hmin-0.01*l] [hmin+0.01*l]
zone face group 'bottom' range named-range 'bottom'
zone gridpoint fix velocity range named-range 'bottom'
zone gridpoint fix velocity-x 
zone gridpoint fix velocity-y

;
model domain extent [-4.0*l] [4.0*l] [-2.0*l] [2.0*l] [hmin-5.0*rad] [h+5.0*rad]
ball generate cubic radius [rad] box [rad] [l-rad] [rad] [l-rad]  [hpfc+rad] [h-rad]

ball generate cubic radius [rad] box [-2.0*l+rad] [-l-rad] [rad] [l-rad]  [hmin+rad] [h-rad]
ball fix velocity range position-z [hmin] [hmin+2.0*rad]
ball fix velocity-x velocity-y 

ball attribute density [rhob]
contact cmat default model linearpbond ...
                    method pb_deformability emod [4.0/math.pi*mmod] kratio 1.0 ...
                    property pb_ten 1e20 pb_coh 1e20


model clean
contact method bond gap 0.01

model gravity (0,0,-9.81)
zone dynamic damping local 0.1
zone mechanical damping local 0.1
ball attribute damp 0.1

ball-zone create

fish define setMassFactors(eps)
  loop foreach local cb ball.zone.ball.list
    local b = ball.zone.ball.ball(cb)
    local bzpos = ball.pos.z(b)
    ball.extra(b,1) = (1.0-2.0*eps)*(hpfc - bzpos)/(hpfc-hf3d) + eps
    ball.zone.ball.mass.factor(cb) = ball.extra(b,1) 
  endloop
  loop foreach local cgp ball.zone.gp.list
    local gp     = ball.zone.gp.gp(cgp)
    local gpzpos = gp.pos.z(gp)
    gp.extra(gp,1) = (1.0-2.0*eps)*(hf3d - gpzpos)/(hf3d - hpfc) + eps
    ball.zone.gp.mass.factor(cgp) = gp.extra(gp,1)
  endloop
end
@setMassFactors(@epsilon)


history interval 1
model history name '1' mechanical time-total
model history name '2' mechanical ratio-average
zone history name '11' displacement-z position ([2.0*l],0.0,[h]) 
ball history name '12' displacement-z position (0.0,0.0,[h])      
ball history name '14' displacement-z position ([-2.0*l],0.0,[h])

zone history name '21' displacement-z position ([2.0*l],0.0,[hpfc])  
ball history name '22' displacement-z position (0.0,0.0,[hpfc])
zone history name '23' displacement-z position (0.0,0.0,[hpfc])
ball history name '24' displacement-z position ([-2.0*l],0.0,[hpfc])

zone history name '31' displacement-z position ([2.0*l],0.0,[hf3d])  
ball history name '32' displacement-z position (0.0,0.0,[hf3d])
zone history name '33' displacement-z position (0.0,0.0,[hf3d])
ball history name '34' displacement-z position ([-2.0*l],0.0,[hf3d])

model save 'settle_cpl-ini'
model solve ratio-average 5e-3
model save 'settle_cpl-final'
return