【文章內容簡介】
試驗得到的抗剪強度指標。圖中0點為坐標原點,水平向壩坡向為X軸,豎直向上為Y軸建立直角坐標系統(tǒng)。假設滑動面的三點A、D、C(按一定步長確定這三點的坐標),且滑動面不會切到心墻。其中A點在壩腳斜坡面上移動,但不會到達壩頂,D點為折坡點,C點在壩體計算那一面的表面上移動,可以到達壩頂,但不會移動到壩體的另一側。其他字母如圖所示。計算中把滑動土體ADC(構成的滑動面)分成三個滑塊,為相鄰兩土體滑面上的作用力。計算時先假設不同的安全系數,從第一條土塊的平衡條件中求出,然后將其作用在第二塊上,求出,再作用在第三塊上,看求出是否0,如不平衡則重新假定安全系數,重復上述步驟,直到為 0,此時的即為該滑動面的安全系數。其中,在水位以上的土體所受的重力,用面積乘以天然容重,水位以上,由于浮力作用,乘以浮容重得到。Qi為水平地震慣性力,其值為慣性系數aij乘以相應土體的重量,所有力都可以簡化到形心處,只考慮力的平衡,不考慮力矩的平衡。設計中為簡化程序起見,還進行了以下假定:滑面ED、PQ鉛直,條間力Pi,作用方向總是和上一個土體平行。這些假定會對計算結果的精確度產生一定影響,但總體影響不是太大,近似計算中可以忽略。(VB)Option ExplicitPrivate Sub Command1_Click() Dim H As Single, WH As Single, m As Single, R As Single, RF As Single, D As Single, am As Single, ah As Single, Wr As Boolean Dim xa As Single, ya As Single, xb As Single, xc As Single, xc_max As Single, xd As Single, yd As Single, ye As Single, xf As Single, xg As Single, a1 As Single, a2 As Single Dim h1 As Single, h2 As Single, Alf1 As Single, Alf2 As Single, W1 As Single, W2 As Single, F1 As Single, F2 As Single Dim a As Single, b As Single, c As Single, Dlt As Double, k As Single, kc As Single, xd_f As Single, yd_f As Single kc = 5 Wr = False If = True Then If = 7 Then am = 3 ah = ElseIf = 8 Then am = ah = ElseIf = 9 Then am = 2 ah = Else Wr = True End If End If If = Or = Or = Or = Or = Or = Or Wr = True Then MsgBox 請正確輸入計算所需數據!, 48, 錯誤提示 Else H = Val() WH = Val() m = Val() R = Val() RF = Val() D = Val() xb = H * m For xa = 0 To xb ed Step ed ya = xa / m For xd = xa + ed To xb Step ed For yd = ya + ed To xd / m ed Step ed a2 = Atn((yd ya) / (xd xa)) ye = xd / m xc_max = xb + D If xa + (H ya) / Tan(a2) xc_max Then xc_max = xa + (H ya) / Tan(a2) End If For xc = xb To xc_max Step ed If xd xc Then a1 = Atn((H yd) / (xc xd)) If WH ya Or WH = ya Then W1 = ((ye yd) * (xb xd) + (xc xb) * (H yd)) * R / 2 W2 = (ye yd) * (xd xa) * R / 2 ElseIf WH ya And WH yd Or WH = yd Then xf = WH * m xg = xa + (WH ya) / Tan(a2) W1 = ((ye yd) * (xb xd) + (xc xb) * (H yd)) * R / 2 W2 = ((xg xf) * (WH ya) * RF + ((xg xf) * (ye WH) + (ye yd) * (xd xg)) * R) / 2 ElseIf WH yd And WH ye Or WH = ye Then xf = WH * m xg = xd + (WH yd) / Tan(a1) W1 = (((ye WH) * (xb xd) + (xc xb) * (H WH) + (xg xd) * (H WH)) * R + (xg xd) * (WH yd) * RF) / 2 W2 = ((xd xf) * (ye WH) * R + ((xd xf) * (WH ya) + (WH yd) * (xd xa)) * RF) / 2 ElseIf WH ye Then xf = WH * m xg = xd + (WH yd) / Tan(a1) W1 = (((xg xf) + (xc xb)) * (H WH) * R + ((xg xf) * (WH ye) + (ye yd) * (xg xd)) * RF) / 2 W2 = (ye yd) * (xd xa) * RF / 2 End If If = True Then a = W1 * Sin(a1) * Cos(a1 a2) + W2 * Sin(a2) b = W1 * Cos(a1) * Cos(a1 a2) * W1 * Sin(a1) * Sin(a1 a2) * W2 * Cos(a2) * c = W1 * Cos(a1) * Sin(a1 a2) * * ElseIf = True Then h1 = (ya + yd + ye) / 3