冯辉荣,窦 博,王国金
(福建农林大学交通与土木工程学院,福建 福州 350108)
公路路基是路面的基础,它承受行车荷载作用,是公路的承重主体。对于边坡较低的路基,按照一般路基设计即可,可不做稳定性分析。但随着我国公路基础设施建设的快速发展,为满足生产、生活需要,山区高等级公路的数量逐渐增多,势必会出现大量高填深挖的路基,为了防止因边坡问题造成边坡失稳,对高边坡进行稳定性分析就显得尤为重要。
边坡的稳定性研究一直以来都是岩土力学的一项重要研究课题,基于土体极限平衡原理的条分法因实用性较强,目前仍被工程界广泛采用。条分法的主要差异是滑动面形状和条间力的假定,根据假设条件的不同,可分为瑞典(Fellenius)圆弧法(1927年)、简化毕肖普(Bishop)法(1955年)、Janbu法、罗厄法、Morgenstern-Price法、Spencer法等[1]。但条分法中边坡稳定系数的计算结果受到分条数的影响[2],且分条数越多,手算的计算量也就越大。借助计算机进行复杂的工程分析,有助于提升计算的效率和准确度,随着计算机技术的发展,基于计算机软件进行边坡稳定性分析也成了大势所趋。例如:高唐朋等[3]、姜健等[4]、蔡征龙等[5]、马健全[6]等学者基于Matlab实现了边坡安全稳定性分析,陈静瑜等[7]、邓东平等[8]、周靖[9]等学者基于Excel进行了边坡稳定性分析。相比于Matlab和Excel,应用Visual Basic程序设计软件可使界面达到人性化、可视化,程序源代码更容易理解[10],但目前基于Visual Basic进行边坡稳定性分析的研究方面还基本处于空白。在此领域进行了一些有益的探索和尝试,以简单均质土坡为研究对象,以积分法代替条分法并结合瑞典圆弧法,基于Visual Basic6.0进行边坡稳定性分析,计算边坡稳定系数的数值解,以期为相关研究人员提供一些参考。
y=0(x≤0)
(1)
坡面OC的方程为:
(2)
坡顶CB的方程为:
y=h(x≥mh)
(3)
(4)
由图1中的几何关系可得:
图1 积分坐标系及土条微元受力分析
(5)
(6)
图1中,dW为土条微元单位长度的重力,dT为土条微元的抗滑力,dN为土条微元滑动面上的支持力,dx为土条微元的宽度,dα为土条微元所对应的圆心角α的增量。对于图1所示的均质土坡,设边坡稳定安全系数为K,根据瑞典人Fellenius提出的条分法中对边坡稳定系数的定义,有:
(7)
式(7)中,c为边坡土的粘聚力,φ为边坡土的内摩擦角。令弧长L=∑li,支持力N=∑Wicosαi,Q=∑Wisinαi,则有[11]:
L=
(8)
(9)
(10)
求出L,N,Q后,K的表达式为:
(11)
在获知了均质土坡的重度γ、内摩擦角φ、粘聚力c、滑动弧的圆心坐标(a,b)、圆弧半径R、边坡坡率m、坡高h的条件下,在Visual Basic中编制程序,根据式(8)求解L,根据式(9)、式(10),利用矩形面积积分法通过数值计算求出定积分N、Q,代入式(11),即可计算出边坡稳定系数K的数值解。其中参数γ,φ,c由土力学实验测得,滑动弧的圆心坐标(a,b)、半径R可由4.5H法确定[1],参数m,h由实地测量得到。
依次添加9个标签(Label)控件和与之对应的文本框(Textbox)控件,前8个文本框用于输入参数γ,φ,c,a,b,R,m,h,各参数的单位见表1,第9个文本框用于输出边坡稳定系数K,最后再添加一个按钮(CommandButton)控件。建成后的界面如图2所示。
图2 路基边坡稳定性分析程序的界面
表1 各输入参数的单位
在CommandButton控件的Click事件下,输入以下代码:
Dim d,o,c,a,b,R,m,h,s,l,N,Q,K As Double’定义变量’
Dim x,StepLen As Double’定义变量x、步长StepLen’
StepLen = 0.001’令循环步长为0.001’
d = Val(Text1.Text):o = Val(Text2.Text):c = Val(Text3.Text):a = Val(Text4.Text):b = Val(Text5.Text):R = Val(Text6.Text):m =Val(Text7.Text):h =Val(Text8.Text)’为参数赋值’
s = Atn((R ^ 2 - b ^ 2) ^ 0.5 / b) + Atn((R ^ 2 - (b - h) ^ 2) ^ 0.5 / (b - h))
l = s * R’求弧长l’
N = 0:Q = 0’初始化’
For x = a - (R ^ 2 - b ^ 2) ^ 0.5 To 0 Step StepLen
N = N + (d * ((R ^ 2 - (x - a) ^ 2) ^ 0.5 - b) * (R ^ 2 - (x - a) ^ 2) ^ 0.5 / R) * StepLen
Next
For x = 0 To m * h Step StepLen
N = N + (d * ((x / m) + (R ^ 2 - (x - a) ^ 2) ^ 0.5 - b) * (R ^ 2 - (x - a) ^ 2) ^ 0.5 / R) * StepLen
Next
For x = m * h To a + (R ^ 2 - (b - h) ^ 2) ^ 0.5 Step StepLen
N = N + (d * (h + (R ^ 2 - (x - a) ^ 2) ^ 0.5 - b) * (R ^ 2 - (x - a) ^ 2) ^ 0.5 / R) * StepLen
Next’以上3个循环过程通过矩形面积法求定积分N’
For x = a - (R ^ 2 - b ^ 2) ^ 0.5 To 0 Step StepLen
Q = Q + (d * ((R ^ 2 - (x - a) ^ 2) ^ 0.5 - b) * (x - a) / R) * StepLen
Next
For x = 0 To m * h Step StepLen
Q = Q + (d * ((x / m) + (R ^ 2 - (x - a) ^ 2) ^ 0.5 - b) * (x - a) / R) * StepLen
Next
For x = m * h To a + (R ^ 2 - (b - h) ^ 2) ^ 0.5 Step StepLen
Q = Q + (d * (h + (R ^ 2 - (x - a) ^ 2) ^ 0.5 - b) * (x - a) / R) * StepLen
Next’以上3个循环过程通过矩形面积法求定积分Q’
K = (c * l + Tan(o * 3.14159 / 180) * N) / Q’求边坡稳定系数K’
Text9.Text = VBA.Format(K,"#0.0000")’输出K并保留4位小数’
引用文献 [11]中湖南长益高速公路的某个均质简单边坡进行验证,该边坡的参数信息见表2[11]。将以上参数输入设计好的路基边坡稳定性分析程序中,点击求解按钮,输出边坡稳定系数K的值为1.0717,见图3。文献[5]和文献[11]基于Matlab求解出的K值分别为1.072和1.0717,与基于Visual Basic求出的K值一致,说明基于Visual Basic建立的路基边坡稳定性分析方法是正确可信的。
图3 工程实例验证结果
表2 某边坡的参数信息
(1)对简单均质路基边坡,以积分法代替传统的条分法,结合瑞典(Fellenius)圆弧法推导出边坡稳定安全系数的表达式,有效提升了计算的精度。
(2)基于Visual Basic编制路基边坡稳定性分析程序,在程序设计中通过矩形面积法求定积分,在获知了所需边坡参数的情况下可以迅速求解出边坡稳定系数K的值,此程序具有可视化、人性化、计算速度快、适用性强等优点,且仅利用VB6.0就可完成求解,不需要花费巨额资金购买商业求解软件,经济实用。
(3)通过工程实例验证,结果表明:基于Visual Basic进行路基边坡稳定性分析的方法正确可信,可以运用到实际的边坡稳定性分析中,有良好的应用前景。