Beruflich Dokumente
Kultur Dokumente
Norland Square & Holland Road Area Flooding Shaft S3 and Shaft S4 Flac3D Analysis of Existing Sewer
0 REV
DATE
Document No.
Faber Maunsell
Table of Contents
Project Description ......................................................................................................... 4 1.1 Introduction ........................................................................................................... 4 1.2 Geotechnical Data ................................................................................................ 4 1.3 Drawings and References .................................................................................... 4 Modelling Approach........................................................................................................ 5 2.1 Introduction ........................................................................................................... 5 2.2 Soil Modelling........................................................................................................ 5 2.3 Shaft and Tunnel Linings ...................................................................................... 5 2.4 Construction Sequence ........................................................................................ 6 Modelling the construction Shaft S3............................................................................. 7 3.1 Shaft S3 Geometry ............................................................................................... 7 3.2 Shaft S3 Geotechnical Model ............................................................................... 9 3.3 Shaft S3 Results of the analysis ......................................................................... 10 Modelling the construction Shaft S4........................................................................... 12 4.1 Shaft S4 Geometry ............................................................................................. 12 4.2 Shaft S4 Geotechnical Model ............................................................................. 14 4.3 Results of the analysis of Shaft S4 ..................................................................... 15 Conclusions and Recommendations.......................................................................... 17 5.1 Introduction ......................................................................................................... 17 5.2 Reported Movements.......................................................................................... 17 5.3 Conclusions ........................................................................................................ 17 Appendix A : FLAC3D source files.............................................................................. 19
Faber Maunsell
Project Description
1.1
Introduction
As part of the Norland Square & Hollandoad Area Flooding scheme, Thames Water Shafts S3 and S4 are to be constructed close to an existing tunnel asset. Faber Maunsell has been asked to establish if there will be any influence on the existing tunnel asset, due to the construction of these new shafts. Shaft S3 is located outside 168 Addison Avenue near the junction with Holland Park Avenue. Shaft S4 is located on the corner of Norland Square (West) and Queensdale Road.
1.2
Geotechnical Data
Borehole Log BH13 524194 E 180069 N GL 7.55 Fugro Completed 05/12/2006 Borehole Log BH14 524290 E 180240 N GL 8.65 Fugro Completed 08/12/2006 Norland Square, Holland Park FWFAS Geo-Environmental Interpretative Report Faber Maunsell May 2007
1.3
Faber Maunsell
Modelling Approach
2.1
Introduction
The interaction of the shafts and the existing tunnel have been modelled in FLAC3D. FLAC3D is an explicit finite difference program to study, numerically, the mechanical behaviour of a continuous three-dimensional mediums it reaches equilibrium. The progressive of the excavation of the shafts are modelled as discrete stage constructions
2.2
Soil Modelling
The soil elements are three dimensional 8 noded brick zones. Far field boundary conditions are applied to restrain the model in space All soils have been modelled as having a linear elastic to plastic failure surface as defined by the mohr coulomb criteria. No strain hardening or increased stiffness at small strain have been assumed. Both of these enhancements to the failure model would reduce ground movements. To avoid localised failure of the made ground at the surface of the shaft the made ground strata has been given an apparent cohesion of 10kPa. Groundwater level has been taken as being hydrostatic from the top of the Terrace Gravels. BH13 and BH14 both indicate no groundwater was encountered. Dewatering inside the shaft is applied before each excavation step during the excavation of the shafts, this avoids the build up of negative pore water pressures as the total stress reduces at the formation level as the shaft is excavated
2.3
Faber Maunsell
2.4
Construction Sequence
1. 2. 3. Initialise model with soil densities, ground water and assigned ko values to calculate initial insitu stresses. Then reset all displacements to zero Remove tunnel zones install lining and solve for equilibrium. Then reset all displacements x, y and z to zero Install shaft lining and remove soil in a staged construction sequence. Solving for equilibrium at each stage. The ground water within the shaft is reduced manually to avoid the build up of negative pore water pressure associated with overburden unloading. Finally install the base slab
4.
Resetting the ground movements after the installation of the tunnel means the movements reported around the tunnel are due solely to the excavation of the shaft. And are to be considered in addition to any movements the tunnel was originally designed for. The 3-D block model is shown in Figure 1. The variation in strata is identified as zone groups corresponding to the groups defined in soil model tables for each shaft. The model generation files and construction sequence code is detailed in Appendix A
Figure 1
The ground parameters for each shaft have been based on the geo-environmental report carried out by Faber Maunsell. For the gravels the relationship proposed by Stroud of E = 2000N has been adopted. The undrained stiffness of the London Clay has been calculated from the undrained shear strength as Eu = 400Cu, The drained stiffness has been calculated from the undrained stiffness as E=0.75Eu.
Faber Maunsell
3
3.1
4.3m clear
Figure 2
Faber Maunsell
Figure 3
Faber Maunsell
3.2
Properties E = 10MPa; v = 0.25 = 30 c = 10kPa sat= 1800 kg/m3; Ko=0.5 E = 30MPa; v =0.3 =26 c=10kPa sat= 2100 kg/m3; Ko=0.5 E = 60Mpa; v=0.25 =34; c=0 sat= 1900 kg/m3; Ko=0.5 E =21+3.3z MPa; v=0.35 =25 c=0 sat= 2100 kg/m3; Ko = 1.0
soft to firm sandy to very sandy clay (Langley Silt) medium dense very gravelly sand (Terrace Deposits) stiff to very stiff fissured clay (London Clay)
soil2
soil3
soil4
Liner
Geometry
Properties
Tunnel
Shaft
OD = 3.256 thk = 0.180 Invert Level = -5.45 mOD OD = 4.300 thk = 0.150 Ground Level = 7.6 mOD Base Slab = -8.5 mOD Toe Level = -10.5 mOD
s1, 2
Faber Maunsell
3.3
lining tunnel t1
Table 3 Shaft S3 tunnel movement summary The maximum movements occur when the tunnel is closest to the shaft. These movements reduce to zero within two shaft diameters away from the centre line of the shaft
Figure 4
10
Faber Maunsell
Figure 5
Figure 6
11
Faber Maunsell
4.1
Shaft S4 Geometry
Shaft S4 is a 3.660m ID segmental concrete shaft. The segments have been taken as 150mm thick. With an invert level at -6.5 mOD The existing 2.896m ID concrete sewer tunnel is assumed to 180mm thick with an invert level at 5.32 mOD. At its closest point the existing concrete sewer tunnel is 3.758m clear of shaft S4. The location of Shaft S4 and its proximity to the existing sewer tunnel is shown in Figure 7. A section through the shaft is detailed in Figure 8 The geometry and the linear elastic material properties of the shaft and tunnel are detailed in Table 5
3.76m clear
Figure 7
12
Faber Maunsell
Figure 8
13
Faber Maunsell
4.2
Properties E = 10MPa; v = 0.25 = 30 c = 10kPa sat= 1800 kg/m3; Ko=0.5 E = 30MPa; v =0.3 =26 c=10kPa sat= 2100 kg/m3; Ko=0.5 E = 60Mpa; v=0.25 =34; c=0 sat= 1900 kg/m3; Ko=0.5 E =21+3.3z MPa; v=0.35 =25 c=0 sat= 2100 kg/m3; Ko = 1.0
soft to firm sandy to very sandy clay (Langley Silt) medium dense very gravelly sand (Terrace Deposits) stiff to very stiff fissured clay (London Clay)
7.5 to 5.0
soil2
5.0 to -2.0
soil3
-2 to -35
soil4
Liner
Geometry
Properties
Tunnel
Shaft
OD = 3.256 thk = 0.180 Invert Level = -5.3 OD = 3.960 thk = 0.150 Ground Level = 8.5 Base Slab = -4.5 Toe Level = -6.5
s1, 2
14
Faber Maunsell
4.3
lining tunnel t1
Table 6 Shaft S4 tunnel movement summary The maximum movements occur when the tunnel is closest to the shaft. These movements reduce to zero within two shaft diameters away from the centre line of the shaft
Figure 9
15
Faber Maunsell
Figure 10
Figure 11
16
Faber Maunsell
5.1
Introduction
The construction of a new 3.660m ID Shaft S3 on the corner of Addison Avenue and Holland Park Avenue passes an existing 2.896ID sewer tunnel with a minimum clearance of 4.3m. With the invert of the shaft at -10.5mOD and the invert of the tunnel at -5.45 mOD The construction of a new 4.000ID Shaft S4 on the corner of Norland Square (West) and Queensdale Road passes an existing 2.896ID sewer tunnel with a minimum clearance of 3.7m. The invert of the shaft is at -6.5 and the invert of the tunnel is at -5.32 mOD A 3D finite difference model has set up to investigate the impact on an the existing sewer tunnel asset.
5.2
Reported Movements
The down drag of the installation of the shafts appears to have greater influence of the existing sewer than the lateral movements associated with the stiffness of the shaft lining. The factor most directly effecting ground movements are the soil properties describing stiffness prior to ground yield. However, the lateral movement of the surrounding ground above the formation is also influenced by the ring stiffness of the segmental lining being installed. The progression of the cutting toe ahead of the excavated formation level influences the amount of vertical an lateral movement that occurs below the shaft. The analysis assumes that the ground is supported lateral throughout the excavation process and that at no time is the ground unsupported. The movements of the two shafts are of comparable magnitude. Although shaft S3 is a larger diameter and further away than S3 its invert is below the invert of the tunnel and exerts a slightly greater influence over the existing tunnel. The analysis assumes a degree of slippage between the existing tunnel and the surrounding ground, but no reported ground movement adjacent to the tunnel or the lining movement of the existing tunnel is greater than 5mm The influence zone of the two shafts over the tunnel line are shown to be within two diameter of the shafts
5.3
Conclusions
The analysis indicates that very little movements will occur in the existing sewer. And that the existing sewer will not suffer any additional distress due to the installation of the shafts and consequentially no additional remedial work is required in the existing sewer tunnel
17
Faber Maunsell
18
Faber Maunsell
19
ca shell_disp.fis ; ca write_out.fis ca gen_fun.fis ca excavate3.fis ca materials3.fis ca output.fis ca generate.fis ; ca limits.fis ca imperm.fis def execute_works _solvestep = 0 _saveon = 1 _mechratio = 1e-6 _plotout = 0 _writeout = 0 s1_toelevel = -10.5 s1_thk = 0.150 s1_dens = 4800 t1_thk = 0.180 t1_dens = 2400 create_zone_plots ini_wetmodel install_t1 ; reset ground movements command ini xdis 0.0 ydis 0.0 zdis 0.0 end_command ini_table_1 excavate_s1 install_s1_base end def run_main generate_mesh execute_works end ; run_main def ini_wetmodel create_soil_groups create_boundary assign_mech_props assign_fluid_props ini_pwp ini_szz_wet ini_solve end
-1-
def ini_solve wet_mech_solve ini_conf wet_mech_solve ini_pwp wet_mech_solve command ini xdis 0.0 ydis 0.0 zdis 0.0 save ini_wetmodel.sav end_command end
def wet_mech_solve command set fluid off mech on set mech ratio _mechratio ini fmodulus = 0 solve end_command end
def my_solve if _solvestep < 0 then command set mech ratio _mechratio set fluid off mech on solve elastic end_command endif
if _solvestep = 0 then command set mech ratio _mechratio set fluid off mech on solve end_command endif if _solvestep > 0 then command set mech ratio _mechratio set fluid off mech on step _solvestep end_command endif
; ====================================================== ; soil1: ; Mixed Superficial ; ====================================================== _ym = 10e6 _pr = 0.3 calc_moduli dens_soil1 = 1300 k0_soil1 = 0.5 command prop bulk _bm shear _sm density dens_soil1 range z z0 z12 prop fric 30 cohesion 10e3 dil 0 tension 1e10 range z z0 z12 end_command ; ====================================================== ; soil2: ; cohesive Alluvium ; ====================================================== _ym = 30e6 _pr = 0.3 calc_moduli dens_soil2 = 1600 k0_soil2 = 0.5 command prop bulk _bm shear _sm density dens_soil2 range z z12 z13 prop fric 26 cohesion 5e3 dil 0 tension 1e10 range z z12 z13 end_command end def ini_table_1 ; table 1 is cutting toe level table (1, 1) = 7.6 table (1, 2) = 6.648 table (1, 3) = 5.685 table (1, 4) = 4.735 table (1, 5) = 3.763 table (1, 6) = 2.815 table (1, 7) = 1.850 table (1, 8) = 0.894 table (1, 9) = -0.059 table (1, 10) = -1.571 table (1, 11) = -3.069 table (1, 12) = -4.578 table (1, 13) = -6.078 table (1, 14) = -7.585 table (1, 15) = -8.976 table (1, 16) = -10.977 table (1, 17) = -12.227 end
end
-3-4-
def excavate_s1 ; --- fish function to excavate in increments --; input: _zini initial elevation ; _zfin final elevation ; _zinc ; ----------------------------------------------_zini = z0 _ztolerance = 0.1
endif check_out endif if step_perc = 76 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xIII.sav end_command endif check_out endif if step_perc = 100 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xIV.sav end_command endif check_out endif end_loop
loop _istep (3, table_size (1)) _zbot = ytable (1, _istep) - _ztolerance
; remove soil block _zfound = ytable (1, _istep - 1) - _ztolerance command model null range z _zfound _zini group s1 end_command ; install next ring liner install_liner_s1 end ; create impermeability around zone imperm_s1 ; fix inner water table fix_inner_wt ; solve for equilibrium my_solve
def install_liner_s1 ; input variables ; _zbot ; set some default cs soil parameters _cs_delta_z_min = 1 _cs_delta = 0.667 _cs_factor = 100 _cs_scoh = 10e3 _cs_scohres = 10e3
if step_perc = 23 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xI.sav end_command endif check_out endif if step_perc = 47 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xII.sav end_command
-1-
y1b = y1 - 0.1 y1a = y1 + 0.1 y3b = y3 - 0.1 y3a = y3 + 0.1 s1_rada = s1_rad + 0.1 if _zbot < z0 then ; if _zbot >= z12 then _ym = 10e6 _pr = 0.3 _fric = 30 calc_moduli calc_cs command
-2-
; liner and soil interface for soil1 sel liner id=2 elemtype dkt_cst group soil1 range cy end1 x0 y0 z0 end2 x0 y0 _zbot r s1_rada sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z0 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z0 _zbot end_command ; endif end_if if _zbot < z12 then ; if _zbot >= z13 then _ym = 30e6 _pr = 0.3 _fric = 26 calc_moduli calc_cs command ; liner and soil interface for soil2 sel liner id=2 elemtype dkt_cst group soil2 range cy end1 x0 y0 z12 end2 x0 y0 _zbot r s1_rada sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z12 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z12 _zbot end_command ; end_if end_if if _zbot < z13 then ; if _zbot >= z14 then _ym = 60e6 _pr = 0.3 _fric = 34 calc_moduli calc_cs command ; liner and soil interface for soil3 sel liner id=2 elemtype dkt_cst group soil3 range cy end1 x0 y0 z13 end2 x0 y0 _zbot r s1_rada sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z13 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z13 _zbot end_command ; end_if end_if if _zbot < z14 then ; if _zbot >= z4 then _ym = 42e6 _pr = 0.3 _fric = 25 calc_moduli calc_cs command ; liner and soil interface for soil4 sel liner id=2 elemtype dkt_cst group soil4 range cy end1 x0 y0 z14 end2 x0 y0 _zbot r s1_rada
-3-
sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z14 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z14 _zbot end_command ; end_if end_if command sel liner id=2 property isotropic 2.0e10, 0.3 sel liner id=2 property thickness s1_thk density s1_dens ; fix continuity of liner nodes on boundary sel node local xdir -1,0,0 ydir 0,0,1 range x -0.5 0.5 y y1b y1a sel node fix lsys range x -0.5 0.5 y y1b y1a sel node fix x yr zr range x -0.5 0.5 y y1b y1a sel node local xdir 1,0,0 ydir 0,0,1 range x -0.5 0.5 y y3b y3a sel node fix lsys range x -0.5 0.5 y y3b y3a sel node fix x yr zr range x -0.5 0.5 y y3b y3a end_command
end
def install_s1_base ; ====================================================== ; Install Concrete Base Slab ; Concrete C40 ; ====================================================== _ym = 20e9 _pr = 0.3 calc_moduli s1_base_dens = 2400 s1_toelevel = -10.977 s1_toc = -8.970 command group s1_base model elastic prop bulk _bm model fl_null end_command ini_pwp my_solve if _saveon = 1 then command save s1_base.sav end_command endif
z s1_toelevel s1_toc group s1 group s1_base _sm density s1_base_dens range group s1_base group s1_base
check_out
-4-
end def fix_inner_wt _min_plug = 6 _z0drain = _zbot - _zinc _z1drain = _zbot - _min_plug ; check water table if _zbot < _wt then command fix pp 0.0 range z _z0drain _zini group s1 model fl_null range z _zbot _zini group s1 end_command fix_pp_group = 's1' fix_pp0 = 0 fix_pp_z0 = _z0drain fix_pp1 = -_z1drain * 10e3 fix_pp_z1 = _z1drain fix_cen_x = x0 fix_cen_y = y0 fix_rad = s1_rad + 0.01 my_fix_pp endif end def install_t1
t1_rad sel liner id = 1 elemtype dkt_cst group soil4 range cy end1 x0 y6 z2 end2 x3 y6 z2 r t1_rad ; soil interface for soil4 sel liner id=1 prop cs_nk _cs_nk cs_sk _cs_sk range x x0 x3 sel liner id=1 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range x x0b x3b sel liner id=1 property isotropic 2.0e10, 0.3 sel liner id=1 property thickness t1_thk density t1_dens ; sel node local xdir -1,0,0 ydir 0,0,1 range x x0b x0a ; sel node fix lsys range x x0b x0a sel node fix x yr zr range x x0b x0a ; sel node local xdir 1,0,0 ydir 0,0,1 range x x3b x3a ; sel node fix lsys range x x3b x3a sel node fix x yr zr range x x3b x3a end_command my_solve if _saveon = 1 then command save t1_xI.sav end_command endif check_out end
x0b = x0 - 0.1 x0a = x0 + 0.1 x3b = x3 - 0.1 x3a = x3 + 0.1 z1a = z1 - 0.015 ; set some default cs soil parameters _ym = 42e6 _pr = 0.35 _fric = 35 _cs_delta_z_min = 1 _cs_delta = 0.1 _cs_factor = 100 _cs_scoh = 1e3 _cs_scohres = 1e3 calc_moduli calc_cs command ; remove ground sel delete liner range id=1 model null range x x0 x3 group t1 ; install lining sel liner id = 1 elemtype dkt_cst group soil3 range cy end1 x0 y6 z2 end2 x3 y6 z2 r
-5-6-
def create_soil_groups ; Soil Stratifiaction from Borehole BH14 depth_soil2 = 1 depth_soil3 = 4.4 depth_soil4 = 9.1 z12 = z0 - depth_soil2 z13 = z0 - depth_soil3 z14 = z0 - depth_soil4 command ; tarmac andf hardcore : Made Ground group soil1 range & group s1 not & group t1 not & z z0 z12 ; firm slightly sandy clay : Allivium group soil2 range & group s1 not & group t1 not & z z12 z13 ; loose to medium dense becoming gravelly sand: Terrace Deposits group soil3 range & group s1 not & group t1 not & z z13 z14 ; stiff becoming very stiff clay : London Clay group soil4 range & group s1 not & group t1 not & z z14 z4 end_command end
; cohesive Alluvium ; ====================================================== _ym = 30e6 _pr = 0.3 calc_moduli dens_soil2 = 1600 k0_soil2 = 0.5 command prop bulk _bm shear _sm density dens_soil2 range z z12 z13 prop fric 26 cohesion 5e3 dil 13 tension 1e10 range z z12 z13 end_command ; ====================================================== ; soil3 ; sandy Terrace Deposits ; ====================================================== _ym = 60e6 _pr = 0.25 calc_moduli dens_soil3 = 1400 k0_soil3 = 0.5 command prop bulk _bm shear _sm density dens_soil3 range z z13 z14 prop fric 34 cohesion 0 dil 17 tension 1e10 range z z13 z14 end_command
; ====================================================== ; soil4 ; London Clay ; ====================================================== dens_soil4 = 1600 k0_soil4 = 1.0 el_start_ym = 21e6 el_grad_ym = 3.3e6 el_poiss = 0.35 el_start_level = z14 el_end_level = z4 el_steps = 4 set_el_ym_by_depth command prop density dens_soil4 range z z14 z4 prop fric 25 cohesion 0 dil 12.5 tension 1e10 range z z14 z4 end_command end
def assign_mech_props command model mohr end_command ; ====================================================== ; soil1: ; Mixed Superficial ; ====================================================== _ym = 10e6 _pr = 0.25 calc_moduli dens_soil1 = 1300 k0_soil1 = 0.5 command prop bulk _bm shear _sm density dens_soil1 range z z0 z12 prop fric 30 cohesion 1e3 dil 15 tension 1e10 range z z0 z12 end_command ; ====================================================== ; soil2:
-1-
; Mixed Superficial ; ====================================================== perm_soil1 = 1e-10 poro_soil1 = 0.5 command prop perm perm_soil1 poro poro_soil1 range z z0 z12 end_command ; ====================================================== ; soil2: ; cohesive Alluvium ; ====================================================== perm_soil2 = 1e-10 poro_soil2 = 0.5 command prop perm perm_soil2 poro poro_soil2 range z z12 z13 end_command ; ====================================================== ; soil3 ; sandy Terrace Deposits ; ====================================================== perm_soil3 = 1e-10 poro_soil3 = 0.5 command prop perm perm_soil3 poro poro_soil3 range z z13 z14 end_command ; ====================================================== ; soil4 ; London Clay ; ====================================================== perm_soil4 = 1e-10 poro_soil4 = 0.5 command prop perm perm_soil4 poro poro_soil4 range z z14 z4 end_command end def ini_pwp ; ; ; ; ====================================================== Pore Water Pressure Initialise ======================================================
command ini fmodulus 2e8 ini fdensity _fdens ini ftens -1e20 ini saturation 1.0 range z _wt z4 ; ini pp 0 grad 0 0 _gradpp range water density _fdens water table & normal 0 0 -1 & origin x0 y0 _wt
_wt z4
; fluid boundaries ; fix pp 0 range z z0 z0_bound ; fix pp _ppbot range z z4 z4_bound end_command end def get_k0 if k0_zpos > z14 if k0_zpos > z13 if k0_zpos > z12 _k0 = k0_soil1 else _k0 = k0_soil2 endif else _k0 = k0_soil3 endif else _k0 = k0_soil4 endif end
def ini_szz_wet _grav = -9.81 ; gravity _wt = z13 ; water table _fdens = 1e3 ; density water command set gravity 0 0 _grav ini szz 0 end_command ; --- layer Soil1 is saturated --_grad = -(dens_soil1 + poro_soil1 * _fdens)*_grav _szz1 = -_grad * (z0 - z12) command ini szz add 0 grad 0 0 _grad range z z0 z12 ini szz add _szz1 range z z12 z4 end_command ; --- layer Soil2 is saturated --_grad = -(dens_soil2 + poro_soil2 * _fdens)*_grav _szz1 = -_grad * (z12- z13) command
-4-
; (a positive value)
_grav = -9.81 ; gravity _wt = z13 ; water table _fdens = 1e3 ; density water _gradpp = _fdens * abs (_grav) _ppbot = _fdens * abs(_grav) * abs((_wt - z4)) ; ; oo = out ('_ppbot=' + string(_ppbot) + ' _gradpp=' + string(_gradpp)) ;
; (a positive value)
-3-
ini szz add 0 grad 0 0 _grad ini szz add _szz1 end_command
; --- layer Soil3 is saturated --_grad = -(dens_soil3 + poro_soil3 * _fdens)*_grav _szz1 = -_grad * (z13 - z14) command ini szz add 0 grad 0 0 _grad range z z13 z14 ini szz add _szz1 range z z14 z4 end_command ; --- layer Soil4 is saturated --_grad = -(dens_soil4 + poro_soil4 * _fdens)*_grav command ini szz add 0 grad 0 0 _grad range z z14 z4 end_command end def create_boundary command fix x range x x0 x0_bound fix x range x x3 x3_bound fix y range y y2 y2_bound fix y range y y8 y8_bound fix z range z z4 z4_bound end_command end
; (a positive value)
; (a positive value)
def ini_conf oo = out ('Fixing ko pressures') pnt = zone_head loop while pnt # null k0_zpos = z_zcen ( pnt ) get_k0 val = _k0 * ( z_szz ( pnt ) + z_pp ( pnt ) ) - z_pp( pnt) oo = out ( 'k0_zpos:' + string(k0_zpos) + 'kO val:' + string(_k0) ) z_sxx ( pnt) = val z_syy ( pnt) = val pnt = z_next ( pnt ) end_loop end
-5-
ca shell_disp.fis ; ca write_out.fis ca gen_fun.fis ca excavate3.fis ca materials3.fis ca output.fis ca generate.fis ; ca limits.fis ca imperm.fis def execute_works _solvestep = 0 _saveon = 1 _mechratio = 1e-6 _plotout = 0 _writeout = 0 s1_toelevel = -6.5 s1_thk = 0.150 s1_dens = 4800 t1_thk = 0.180 t1_dens = 2400 create_zone_plots ini_wetmodel install_t1 ; reset ground movements command ini xdis 0.0 ydis 0.0 zdis 0.0 end_command ini_table_1 excavate_s1 install_s1_base end def run_main generate_mesh execute_works end ; run_main def ini_wetmodel create_soil_groups create_boundary assign_mech_props assign_fluid_props ini_pwp ini_szz_wet ini_solve end
-1-
def ini_solve wet_mech_solve ini_conf wet_mech_solve ini_pwp wet_mech_solve command ini xdis 0.0 ydis 0.0 zdis 0.0 save ini_wetmodel.sav end_command end
def wet_mech_solve command set fluid off mech on set mech ratio _mechratio ini fmodulus = 0 solve end_command end
def my_solve if _solvestep < 0 then command set mech ratio _mechratio set fluid off mech on solve elastic end_command endif
if _solvestep = 0 then command set mech ratio _mechratio set fluid off mech on solve end_command endif if _solvestep > 0 then command set mech ratio _mechratio set fluid off mech on step _solvestep end_command endif
; ====================================================== ; soil1: ; Mixed Superficial ; ====================================================== _ym = 10e6 _pr = 0.3 calc_moduli dens_soil1 = 1300 k0_soil1 = 0.5 command prop bulk _bm shear _sm density dens_soil1 range z z0 z12 prop fric 30 cohesion 10e3 dil 0 tension 1e10 range z z0 z12 end_command ; ====================================================== ; soil2: ; cohesive Alluvium ; ====================================================== _ym = 30e6 _pr = 0.3 calc_moduli dens_soil2 = 1600 k0_soil2 = 0.5 command prop bulk _bm shear _sm density dens_soil2 range z z12 z13 prop fric 26 cohesion 5e3 dil 0 tension 1e10 range z z12 z13 end_command end def ini_table_1 ; table 1 is cutting toe level table (1, 1) = 8.5 table (1, 2) = 7.412 table (1, 3) = 6.314 table (1, 4) = 5.218 table (1, 5) = 4.128 table (1, 6) = 3.036 table (1, 7) = 1.945 table (1, 8) = 0.8437 table (1, 9) = -0.300 table (1, 10) = -1.604 table (1, 11) = -3.000 table (1, 12) = -4.324 table (1, 13) = -5.692 table (1, 14) = -6.337 end
end
-3-
-4-
def create_soil_groups ; Soil Stratifiaction from Borehole BH14 depth_soil2 = 1 depth_soil3 = 3.5 depth_soil4 = 10.5 z12 = z0 - depth_soil2 z13 = z0 - depth_soil3 z14 = z0 - depth_soil4 command ; tarmac andf hardcore : Made Ground group soil1 range & group s1 not & group t1 not & z z0 z12 ; firm slightly sandy clay : Allivium group soil2 range & group s1 not & group t1 not & z z12 z13 ; loose to medium dense becoming gravelly sand: Terrace Deposits group soil3 range & group s1 not & group t1 not & z z13 z14 ; stiff becoming very stiff clay : London Clay group soil4 range & group s1 not & group t1 not & z z14 z4 end_command end
; cohesive Alluvium ; ====================================================== _ym = 30e6 _pr = 0.3 calc_moduli dens_soil2 = 1600 k0_soil2 = 0.5 command prop bulk _bm shear _sm density dens_soil2 range z z12 z13 prop fric 26 cohesion 5e3 dil 13 tension 1e10 range z z12 z13 end_command ; ====================================================== ; soil3 ; sandy Terrace Deposits ; ====================================================== _ym = 60e6 _pr = 0.25 calc_moduli dens_soil3 = 1400 k0_soil3 = 0.5 command prop bulk _bm shear _sm density dens_soil3 range z z13 z14 prop fric 34 cohesion 0 dil 17 tension 1e10 range z z13 z14 end_command
; ====================================================== ; soil4 ; London Clay ; ====================================================== dens_soil4 = 1600 k0_soil4 = 1.0 el_start_ym = 21e6 el_grad_ym = 3.3e6 el_poiss = 0.35 el_start_level = z14 el_end_level = z4 el_steps = 4 set_el_ym_by_depth command prop density dens_soil4 range z z14 z4 prop fric 25 cohesion 0 dil 12.5 tension 1e10 range z z14 z4 end_command end
def assign_mech_props command model mohr end_command ; ====================================================== ; soil1: ; Mixed Superficial ; ====================================================== _ym = 10e6 _pr = 0.25 calc_moduli dens_soil1 = 1300 k0_soil1 = 0.5 command prop bulk _bm shear _sm density dens_soil1 range z z0 z12 prop fric 30 cohesion 1e3 dil 15 tension 1e10 range z z0 z12 end_command ; ====================================================== ; soil2:
-1-
; Mixed Superficial ; ====================================================== perm_soil1 = 1e-10 poro_soil1 = 0.5 command prop perm perm_soil1 poro poro_soil1 range z z0 z12 end_command ; ====================================================== ; soil2: ; cohesive Alluvium ; ====================================================== perm_soil2 = 1e-10 poro_soil2 = 0.5 command prop perm perm_soil2 poro poro_soil2 range z z12 z13 end_command ; ====================================================== ; soil3 ; sandy Terrace Deposits ; ====================================================== perm_soil3 = 1e-10 poro_soil3 = 0.5 command prop perm perm_soil3 poro poro_soil3 range z z13 z14 end_command ; ====================================================== ; soil4 ; London Clay ; ====================================================== perm_soil4 = 1e-10 poro_soil4 = 0.5 command prop perm perm_soil4 poro poro_soil4 range z z14 z4 end_command end def ini_pwp ; ; ; ; ====================================================== Pore Water Pressure Initialise ======================================================
command ini fmodulus 2e8 ini fdensity _fdens ini ftens -1e20 ini saturation 1.0 range z _wt z4 ; ini pp 0 grad 0 0 _gradpp range water density _fdens water table & normal 0 0 -1 & origin x0 y0 _wt
_wt z4
; fluid boundaries ; fix pp 0 range z z0 z0_bound ; fix pp _ppbot range z z4 z4_bound end_command end def get_k0 if k0_zpos > z14 if k0_zpos > z13 if k0_zpos > z12 _k0 = k0_soil1 else _k0 = k0_soil2 endif else _k0 = k0_soil3 endif else _k0 = k0_soil4 endif end
def ini_szz_wet _grav = -9.81 ; gravity _wt = z13 ; water table _fdens = 1e3 ; density water command set gravity 0 0 _grav ini szz 0 end_command ; --- layer Soil1 is saturated --_grad = -(dens_soil1 + poro_soil1 * _fdens)*_grav _szz1 = -_grad * (z0 - z12) command ini szz add 0 grad 0 0 _grad range z z0 z12 ini szz add _szz1 range z z12 z4 end_command ; --- layer Soil2 is saturated --_grad = -(dens_soil2 + poro_soil2 * _fdens)*_grav _szz1 = -_grad * (z12- z13) command
-4-
; (a positive value)
_grav = -9.81 ; gravity _wt = z13 ; water table _fdens = 1e3 ; density water _gradpp = _fdens * abs (_grav) _ppbot = _fdens * abs(_grav) * abs((_wt - z4)) ; ; oo = out ('_ppbot=' + string(_ppbot) + ' _gradpp=' + string(_gradpp)) ;
; (a positive value)
-3-
ini szz add 0 grad 0 0 _grad ini szz add _szz1 end_command
; --- layer Soil3 is saturated --_grad = -(dens_soil3 + poro_soil3 * _fdens)*_grav _szz1 = -_grad * (z13 - z14) command ini szz add 0 grad 0 0 _grad range z z13 z14 ini szz add _szz1 range z z14 z4 end_command ; --- layer Soil4 is saturated --_grad = -(dens_soil4 + poro_soil4 * _fdens)*_grav command ini szz add 0 grad 0 0 _grad range z z14 z4 end_command end def create_boundary command fix x range x x0 x0_bound fix x range x x3 x3_bound fix y range y y2 y2_bound fix y range y y8 y8_bound fix z range z z4 z4_bound end_command end
; (a positive value)
; (a positive value)
def ini_conf oo = out ('Fixing ko pressures') pnt = zone_head loop while pnt # null k0_zpos = z_zcen ( pnt ) get_k0 val = _k0 * ( z_szz ( pnt ) + z_pp ( pnt ) ) - z_pp( pnt) oo = out ( 'k0_zpos:' + string(k0_zpos) + 'kO val:' + string(_k0) ) z_sxx ( pnt) = val z_syy ( pnt) = val pnt = z_next ( pnt ) end_loop end
-5-
def excavate_s1 ; --- fish function to excavate in increments --; input: _zini initial elevation ; _zfin final elevation ; _zinc ; ----------------------------------------------_zini = z0 _ztolerance = 0.1
endif check_out endif if step_perc = 78 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xIII.sav end_command endif check_out endif if step_perc = 100 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xIV.sav end_command endif check_out endif end_loop
loop _istep (3, table_size (1)) _zbot = ytable (1, _istep) - _ztolerance
; remove soil block _zfound = ytable (1, _istep - 1) - _ztolerance command model null range z _zfound _zini group s1 end_command ; install next ring liner install_liner_s1 end ; create impermeability around zone imperm_s1 ; fix inner water table fix_inner_wt ; solve for equilibrium my_solve
def install_liner_s1 ; input variables ; _zbot ; set some default cs soil parameters _cs_delta_z_min = 1 _cs_delta = 0.667 _cs_factor = 100 _cs_scoh = 10e3 _cs_scohres = 10e3
if step_perc = 28 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xI.sav end_command endif check_out endif if step_perc = 50 then oo = out ('saving step = ' + string(step_perc)) if _saveon = 1 then command save s1_xII.sav end_command
-1-
y1b = y1 - 0.1 y1a = y1 + 0.1 y3b = y3 - 0.1 y3a = y3 + 0.1 s1_rada = s1_rad + 0.1 if _zbot < z0 then ; if _zbot >= z12 then _ym = 10e6 _pr = 0.3 _fric = 30 calc_moduli calc_cs command
-2-
; liner and soil interface for soil1 sel liner id=2 elemtype dkt_cst group soil1 range cy end1 x0 y0 z0 end2 x0 y0 _zbot r s1_rada sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z0 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z0 _zbot end_command ; endif end_if if _zbot < z12 then ; if _zbot >= z13 then _ym = 30e6 _pr = 0.3 _fric = 26 calc_moduli calc_cs command ; liner and soil interface for soil2 sel liner id=2 elemtype dkt_cst group soil2 range cy end1 x0 y0 z12 end2 x0 y0 _zbot r s1_rada sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z12 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z12 _zbot end_command ; end_if end_if if _zbot < z13 then ; if _zbot >= z14 then _ym = 60e6 _pr = 0.3 _fric = 34 calc_moduli calc_cs command ; liner and soil interface for soil3 sel liner id=2 elemtype dkt_cst group soil3 range cy end1 x0 y0 z13 end2 x0 y0 _zbot r s1_rada sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z13 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z13 _zbot end_command ; end_if end_if if _zbot < z14 then ; if _zbot >= z4 then _ym = 42e6 _pr = 0.3 _fric = 25 calc_moduli calc_cs command ; liner and soil interface for soil4 sel liner id=2 elemtype dkt_cst group soil4 range cy end1 x0 y0 z14 end2 x0 y0 _zbot r s1_rada
-3-
sel liner id=2 prop cs_nk _cs_nk cs_sk _cs_sk range z z14 _zbot sel liner id=2 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range z z14 _zbot end_command ; end_if end_if command sel liner id=2 property isotropic 2.0e10, 0.3 sel liner id=2 property thickness s1_thk density s1_dens ; fix continuity of liner nodes on boundary sel node local xdir -1,0,0 ydir 0,0,1 range x -0.5 0.5 y y1b y1a sel node fix lsys range x -0.5 0.5 y y1b y1a sel node fix x yr zr range x -0.5 0.5 y y1b y1a sel node local xdir 1,0,0 ydir 0,0,1 range x -0.5 0.5 y y3b y3a sel node fix lsys range x -0.5 0.5 y y3b y3a sel node fix x yr zr range x -0.5 0.5 y y3b y3a end_command
end
def install_s1_base ; ====================================================== ; Install Concrete Base Slab ; Concrete C40 ; ====================================================== _ym = 20e9 _pr = 0.3 calc_moduli s1_base_dens = 2400 s1_toelevel = -6.337 s1_toc = -4.324 command group s1_base model elastic prop bulk _bm model fl_null end_command
z s1_toelevel s1_toc group s1 group s1_base _sm density s1_base_dens range group s1_base group s1_base
check_out
-4-
end def fix_inner_wt _min_plug = 6 _z0drain = _zbot - _zinc _z1drain = _zbot - _min_plug ; check water table if _zbot < _wt then command fix pp 0.0 range z _z0drain _zini group s1 model fl_null range z _zbot _zini group s1 end_command fix_pp_group = 's1' fix_pp0 = 0 fix_pp_z0 = _z0drain fix_pp1 = -_z1drain * 10e3 fix_pp_z1 = _z1drain fix_cen_x = x0 fix_cen_y = y0 fix_rad = s1_rad + 0.01 my_fix_pp endif end
t1_rad ; soil interface for soil4 sel liner id=1 prop cs_nk _cs_nk cs_sk _cs_sk range x x0 x3 sel liner id=1 prop cs_sfric _cs_fric cs_scoh _cs_scoh cs_scohres _cs_scohres range x x0b x3b sel liner id=1 property isotropic 2.0e10, 0.3 sel liner id=1 property thickness t1_thk density t1_dens ; sel node local xdir -1,0,0 ydir 0,0,1 range x x0b x0a ; sel node fix lsys range x x0b x0a sel node fix x yr zr range x x0b x0a ; sel node local xdir 1,0,0 ydir 0,0,1 range x x3b x3a ; sel node fix lsys range x x3b x3a sel node fix x yr zr range x x3b x3a end_command my_solve if _saveon = 1 then command save t1_xI.sav end_command endif check_out
def install_t1 x0b = x0 - 0.1 x0a = x0 + 0.1 x3b = x3 - 0.1 x3a = x3 + 0.1 z1a = z1 - 0.015 ; set some default cs soil parameters _ym = 42e6 _pr = 0.35 _fric = 35 _cs_delta_z_min = 1 _cs_delta = 0.667 _cs_factor = 100 _cs_scoh = 5e3 _cs_scohres = 5e3 calc_moduli calc_cs command ; remove ground model null range x x0 x3 group t1 ; install lining sel liner id = 1 elemtype dkt_cst group soil3 range cy end1 x0 y6 z2 end2 x3 y6 z2 r t1_rad sel liner id = 1 elemtype dkt_cst group soil4 range cy end1 x0 y6 z2 end2 x3 y6 z2 r
-5-
end
-6-