利用VBA程序拟合裂纹扩展阻力曲线
裂纹扩展阻力曲线可以用来预测裂纹扩展行为,估算裂纹构件在起裂后的承载能力,因此裂纹扩展阻力曲线的研究在断裂力学中占有非常重要的地位。研究裂纹扩展阻力曲线首要解决的问题是如何把试验中所得的一些分散点拟合成幂乘方程:
δ或J=α+β(Δα)γ (1)
式中:δ—裂纹尖端张开位移;J—J积分;Δα—裂纹扩展量;α、γ—常数。
根据GB/T21143-2007规范性附录C要求,将x=Δαγ代入式即可通过线性拟合法确定α及β。γ值的确定应使式的相关系数达到最高。
γ值的选择是从0到1,步长值为0·001。对于每一个有效的γ,x=Δαγ的相关系数r由下式计算:
当能使r最大化的γ值确定后,由下式计算相应的α及β值:
可见,参照标准要求,利用Excel软件来处理,求得裂纹扩展曲线拟合幂乘方程中的相关参量,需计算上万个数据,步骤烦琐,处理结果易出错。因此,本文介绍了利用VBA(visual basic for application)程序结合Excel软件拟合裂纹扩展阻力曲线的方法,将使裂纹扩展阻力曲线拟合工作变得轻松而准确。
1 VBA程序拟合裂纹扩展阻力曲线的方法
1·1 VBA程序简介
VBA是Visual Basic for Application的缩写,是一种可视化编程程序,由于其在编程中的可视化,学习和应用起来都比较方便,近几年在各个行业都得到广泛应用。将其嵌入到office软件中,可对office进行二次开发,以扩展其功能,使程序控制更加灵活高效。
1·2 VBA拟合裂纹扩展阻力曲线的实现步骤
打开Excel工作软件(在office 2007下),取消工作表宏保护,创建宏并编写VBA代码,为了方便运行程序,可在工作表中插入表单控制,并为它们指定创建好的宏。
VBA的主要程序代码说明如下:
Sub fit()
……′定义变量(此处省略代码)
Filln′调用子程序
Range(″i1005″)·Value =″=COUNT(C[-8])″
……′计算N
For k = 2 To 1000 Step 1′嵌套外循环
For j = 2 To a + 3 Step 1′嵌套内循环
s1 = s1 + (Cells(j, 1) ^ Cells(k, 4)) ^ 2
s2 = s2 + Cells(j, 1) ^ Cells(k, 4)
s3 = s3 + Cells(j, 2) ^ 2
s4 = s4 + Cells(j, 2)
s5 = s5 + (Cells(j, 1) ^ Cells(k, 4)) * Cells(j, 2)
Next j′嵌套内循环
Cells(k, 5) = s1 - (s2 * s2) / a
Cells(k, 6) = s3 - (s4 * s4) / a
Cells(k, 7) = s5 - (s2 * s4) / a
s6 = Cells(k, 5)
s7 = Cells(k, 6)
s8 = Cells(k, 7)
Cells(k, 8) = s8 / Sqr(s6 * s7)
s9 = Cells(k, 7) / Cells(k, 5)
相关文章
- 2024-09-02便携式自调心小型圆度仪控制系统设计
- 2024-09-04二等标准酒精计组的不确定度评定
- 2024-02-02随机共振在水声信号检测中的应用
- 2024-06-17APC技术在石化装置中的应用
- 2024-03-11用于模态和NVH试验的三维数字化坐标仪
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。