lab project civl 3010 clayton, doriann 07/17/12 ...clemept/ceanalysis_fall2011/clayton_lab... ·...
TRANSCRIPT
Lab Project Civl 3010 Clayton, DoriAnn 07/17/12
1
Calculation of Settlement Beneath a Rectangular Foundation
The purpose of this code is to determine the increase in vertical stress, the
ultimate consolidation settlement, and the magnitude of consolidation given the necessary
properties of the sand and clay layers. The code takes inputs of the unit weight of the
sand and its height, the unit weight of the clay and its height, over consolidation rate,
initial void ratio, compression index and recompression index. The depth of the water
table and the length, width, and surface stress of the applied load (foundation) are also
inputted into the code. The code is run, by user instruction, in either SI or English units
of measure. The influence factor caused by the rectangular foundation is calculated for
both the center and corner of the foundation. The code then categorizes the soil as
normally consolidated, lightly over consolidated, or heavily over consolidated. The
ultimate consolidation settlement of the clay layer is then calculated. The output of the
code includes the increase in vertical stress, the ultimate consolidation settlement, and the
magnitude of consolidation to be expected.
The code in visual basic was created using a user form rather than spreadsheet in
order to provide a more user-friendly interface. The input data is sub-categorized into
layer properties and an option button is used to distinguish the proper units of measure.
The output data is also contained in its own sub-category on the user form.
Lab Project Civl 3010 Clayton, DoriAnn 07/17/12
2
Figure 1 – User form
Option Explicit Option Base 1 Private Sub CommandButton1_Click() Dim Us As Single, Uc As Single, Hs As Single, Hc As Single, ocr As Single Dim e As Single, W As Single, le As Single, wd As Single, z As Single, q As Single Dim Cc As Single, Cr As Single Dim Sv As Single, cDsv As Single, eDsv As Single, ESv As Single Dim cn As Single, cm As Single, em As Single, en As Single, cI As Single, eI As Single Dim cmaxSv As Single, emaxSv As Single, cPc As Single, ePc As Single 'input necessary data Us = UWsand.Value Uc = UWclay.Value Hs = Hsand.Value Hc = Hclay.Value ocr = OcrN.Value e = IVR.Value Cc = CCvalue.Value Cr = Crvalue.Value
Lab Project Civl 3010 Clayton, DoriAnn 07/17/12
3
W = Wdepth.Value le = Flength.Value wd = Fwidth.Value q = FSStress.Value 'calcualte depth to center of clay z = Hs + 0.5 * Hc 'run code in either english or SI units If OptionButton2.Value = True Then Label18.Caption = "(psf)" Label19.Caption = "(ft)" 'determine effective vertical stress If W < z Then Sv = Us * Hs + Uc * (Hc / 2) - (z - W) * (62.4) Else Sv = Us * Hs + Uc * (Hc / 2) End If ElseIf OptionButton1.Value = True Then Label18.Caption = "(kPa)" Label19.Caption = "(m)" If W < z Then Sv = Us * Hs + Uc * (Hc / 2) - (z - W) * (9.81) Else Sv = Us * Hs + Uc * (Hc / 2) End If Else MsgBox ("Please select the proper units of measure") Exit Sub End If 'adjust length and widths to determine center and edge of foundation cm = (le / 2) / z cn = (wd / 2) / z em = le / z en = wd / z Call inffact(cm, cn, cI) Call inffact(em, en, eI) 'calculate change in vertical stress due to load cDsv = q * cI * 4 eDsv = q * eI Call settle(cDsv, ocr, Sv, z, e, Cc, Cr, cmaxSv, cPc) Call settle(eDsv, ocr, Sv, z, e, Cc, Cr, emaxSv, ePc)
Lab Project Civl 3010 Clayton, DoriAnn 07/17/12
4
centerIVS.Value = cDsv edgeIVS.Value = eDsv centerUCS.Value = cPc edgeUCS.Value = ePc End Sub Sub inffact(m As Single, n As Single, I As Single) Dim A As Single, B As Single, C As Single 'calculte influence coefficient A = (2 * m * n * Sqr(m ^ 2 + n ^ 2 + 1)) / (m ^ 2 + n ^ 2 + 1 + m ^ 2 * n ^ 2) B = (m ^ 2 + n ^ 2 + 2) / (m ^ 2 + n ^ 2 + 1) C = Atn((2 * m * n * Sqr(m ^ 2 + n ^ 2 + 1)) / (m ^ 2 + n ^ 2 + 1 - m ^ 2 * n ^ 2)) I = (A * B + C) / (4 * 3.14159265) End Sub Sub settle(Dsv As Single, ocr As Single, Sv As Single, z As Single, e As Single, Cc As Single, Cr As Single, maxSv As Single, Pc As Single) Dim pc1 As Single, pc2 As Single 'calculate maximum vertical stress of the clay maxSv = ocr * Sv 'determine if clay is NC, LOC, or HOC and display result If ocr = 1 Or Sv = maxSv Then 'NC Pc = (z / (1 + e)) * Cc * Log((Sv + Dsv) / Sv) / Log(10) Magnitude.Value = "NC" ElseIf (Sv + Dsv) > maxSv Then 'LOC pc1 = (z / (1 + e)) * Cr * (Log(maxSv / Sv) / Log(10)) pc2 = (z / (1 + e)) * Cc * (Log((Sv + Dsv) / maxSv)) / Log(10) Pc = pc1 + pc2 Magnitude.Value = "LOC" ElseIf (Sv + Dsv) < maxSv Then 'HOC Pc = (z / (1 + e)) * Cr * Log((Sv + Dsv) / Sv) / Log(10) Magnitude.Value = "HOC" Else MsgBox ("Error in determination of Magnitude of Consolidation. Check input values.") End If End Sub Private Sub CommandButton2_Click() Unload Me End Sub
+
Consolidation Settlement
DoriAnn Clayton
+ Stress in soil
Physics, and the Effective Stress Equation, Part 2 <http://chuma.cas.usf.edu/~juster/S6/Lslides2.html>
+ Consolidation
Atkinson, John. “GeotechniCAL reference package” <http://environment.uwe.ac.uk/geocal/SoilMech/consol/soilcons.htm>
+ Bousinesq Distribution
Fellenius, Bengt. Basics of Foundation Design. Electronic Ed. March 2009. <www.Fellenius.net>
+ Increase in stress due to applied load
Fellenius, Bengt. Basics of Foundation Design. Electronic Ed. March 2009. <www.Fellenius.net>
+ Preconsolidation Condition
Normally Consolidated Over Consolidated
Das, Braja. "Principles of Geotechnical Engineering" 1994. <nersp.nerdc.ufl.edu>
+ Calculation of Ultimate Primary Consolidation Settlement
heavily over consolidated
normally consolidated clays
lightly over consolidated
+
Input and Output of Data in User form
+ Project Code for Input
+ Code Adaption to Units of Measure
+ Calculate of Influence Factor
+ Consolidation Classification and Ultimate Primary Consolidation Calculation