《浅基础工程及程序设计》-丁继辉-程序代码 第二章_第1页
《浅基础工程及程序设计》-丁继辉-程序代码 第二章_第2页
《浅基础工程及程序设计》-丁继辉-程序代码 第二章_第3页
《浅基础工程及程序设计》-丁继辉-程序代码 第二章_第4页
《浅基础工程及程序设计》-丁继辉-程序代码 第二章_第5页
已阅读5页,还剩6页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2.8 源程序代码本章扩展基础结构设计计算工程主要包括3个窗体,2个模块。主界面及两个模块的程序代码与第一章基本一致,这里主要给出墙下条形基础配筋及柱下独立基础配筋计算的主要程序代码。2.8.1墙下条形基础配筋计算源程序代码Dim Bwide 基础宽度Dim Fload 荷载N(kN/m)Dim Mshot 短边方向弯矩值Dim FcYshj 混凝土轴心抗压强度设计值Dim FkTshj 混凝抗拉强度设计值Dim FkyGshj 钢筋抗拉强度设计值Dim QiangHou 墙厚度Dim Hbaohc 混凝土保护层厚度(m)Dim Dgangjin 钢筋直径(mm) Private Sub Ti

2、anJiaPeij() 将文本框的输入参数赋于变量 Bwide = Val(Text(0).Text) 基础宽度 Fload = Val(Text(1).Text) 荷载N(kN/m) Mshot = Val(Text(2).Text) 短边方向弯矩值 FcYshj = Val(Text(3).Text) 混凝土轴心抗压强度设计值 FkTshj = Val(Text(4).Text) 混凝抗拉强度设计值 FkyGshj = Val(Text(5).Text) 钢筋抗拉强度设计值 QiangHou = Val(Text(6).Text) 墙厚度 Hbaohc = Val(Text(7).Text

3、) 混凝土保护层厚度(m) Dgangjin = Val(Text(8).Text) 钢筋直径(mm) End SubPrivate Sub CmdClear_Click() List1.ClearEnd SubPrivate Sub Command1_Click() Me.HideEnd SubPrivate Sub Command2_Click() Call TianJiaPeij H0xiao = Val(Text4.Text) Hjichu = Val(Text5.Text) List1.AddItem (考虑基础构造要求后实际基础高度h(m) & h= & Format(Hjichu

4、, 0.00) List1.AddItem (考虑基础构造要求后实际基础有效高度h0(m) & h0= & Format(H0xiao, 0.00) 条形基础底面的地基净反力计算 Pjmax = Fload / Bwide + 6 * Mshot / Bwide 2 Pjmin = Fload / Bwide - 6 * Mshot / Bwide 2 截面1至基础边缘距离 b1 = (Bwide - QiangHou) / 2 截面的剪力设计值 If Bwide = 0 Then V1 = b1 / Bwide * Fload Else V1 = b1 / (2 * Bwide) * (2

5、* Bwide - b1) * Pjmax + b1 * Pjmin) End If基础底板的配筋基础验算截面的弯矩设计值(mm2) M1shj = V1 * b1 / 2 List1.AddItem (悬臂根部的最大弯矩M(kNm) & M= & Format(M1shj, 0.00)每米墙长的受力钢筋截面面积: Asi = M1shj / (0.9 * FkyGshj * H0xiao) * 10 6 List1.AddItem (每米墙长的受力钢筋截面面积mm2 & As= & Format(Asi, 0.00)受力钢筋根数 Ngangjin = Int(Asi / (3.14 * (D

6、gangjin / 2) 2) + 1 List1.AddItem (每米墙长的受力钢筋数 & N= & Format(Ngangjin, 0.00) 实际受力钢筋面积 Asishiji = 3.14 * (Dgangjin / 2) 2 * Ngangjin List1.AddItem (实际受力钢筋截面面积mm2 & As= & Format(Asishiji, 0.00) 受力钢筋间距 GJjianju = (Bwide - 2 * Hbaohc) * 1000 / Ngangjin - Dgangjin List1.AddItem (实际受力钢筋间距 & GJjianu= & Form

7、at(GJjianju, 0.00) Exit SubCUOWUCHULI: MsgBox 数据输入有误,不能得出结果, vbExclamationEnd SubPrivate Sub Command4_Click() Call TianJiaPeij条形基础底面的地基净反力计算 Pjmax = Fload / Bwide + 6 * Mshot / Bwide 2 Pjmin = Fload / Bwide - 6 * Mshot / Bwide 2 List1.AddItem (条形基础底面地基净反力最大值Pjmax(kPa) & Pjmax= & Format(Pjmax, 0.00)

8、List1.AddItem (条形基础底面地基净反力最小值Pjmin(kPa) & Pjmin= & Format(Pjmin, 0.00)截面1至基础边缘距离 b1 = (Bwide - QiangHou) / 2 List1.AddItem (截面1至基础边缘距离b1(m) & b1= & Format(b1, 0.00)截面的剪力设计值 If Bwide = 0 Then V1 = b1 / Bwide * Fload Else V1 = b1 / (2 * Bwide) * (2 * Bwide - b1) * Pjmax + b1 * Pjmin) End If List1.AddI

9、tem (截面处的剪力值V1(kN/m) & V1= & Format(V1, 0.00)计算基础有效高度h0由混凝土抗剪切条件确定 H0xiao = V1 / (0.07 * FcYshj) List1.AddItem (由混凝土抗剪切条件计算基础有效高度h0(m) & h0= & Format(H0xiao, 0.00) Text4.Text = Format(H0xiao, 0.00)计算基础高度 Hjichu = H0xiao + Hbaohc Text5.Text = Format(Hjichu, 0.00) List1.AddItem (计算高度h(m) & h= & Format

10、(Hjichu, 0.00) MsgBox 根据构造要求确定基础尺寸。边缘高度大大于等于200mm! , vbQuestionEnd SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) Me.Hide 在一般的情况下,关闭窗体并没有真正的关闭 只是将窗体隐藏起来,因为窗体上的数据还需要用 只有当在代码中关闭窗体时,才会真正的关闭一个 窗体 If Not UnloadMode = vbFormOwner And Not UnloadMode = vbFormCode Then Cancel = Tru

11、e Else Cancel = False End IfEnd Sub2.8.2 柱下独立基础配筋计算源程序代码Dim Fload, Bwide, Llong, Mshot, MlongDim Bczhu, Lczhu, H0xiao, FcYshj, FkTshj, FkyGshjL, DgangjinLDim FkyGshjB, DgangjinB, BeiA1, BeiT, BeiH1, BeiH2, BhcH, Pjmax, PjminDim Bt, Bb, Bm, Fl, Fqiangdu, M11, M22, NgangjinL, NgangjinBDim As11, As22,

12、JichuH0, AsShejiL, AsShejiBDim Bbian1, Abian1, H0bian1, Bbian2, Abian2, H0bian2Dim Bbian3, Abian3, H0bian3, M11Bian1, M22Bian1Dim M11Bian2, M22Bian2, M11Bian3, M22Bian3, FqiangduBian3Dim FlBian1, FlBian2, FlBian3, FqiangduBian1, FqiangduBian2Private Sub Command1_Click() Me.HideEnd SubPrivate Sub Tia

13、nJiaBianL( ) 将文本框的输入参数赋于变量Bwide = Val(Text(0).Text) 荷载N(kN/m) Llong = Val(Text(1).Text) 基础宽度 Fload = Val(Text(2).Text) 基础长度 Mshot = Val(Text(3).Text) 短边方向弯矩值 Mlong = Val(Text(4).Text) 长边方向弯矩值 Bczhu = Val(Text(5).Text) 柱截面短边长度 Lczhu = Val(Text(6).Text) 柱截面长边长度 H0xiao = Val(Text(7).Text) 冲切破坏锥体的有效高度 (

14、m) FcYshj = Val(Text(8).Text) 混凝土轴心抗压强度设计值 FkTshj = Val(Text(9).Text) 混凝抗拉强度设计值 FkyGshjL = Val(Text(10).Text) 钢筋抗拉强度设计值 DgangjinL = Val(Text(11).Text) 长边L方向受力钢筋直径 (mm) FkyGshjB = Val(Text(12).Text) 短边B方向钢筋抗拉强度设计值fy(kPa) DgangjinB = Val(Text(13).Text) 短边B方向受力钢筋直径 (mm)If Option5.Value = True Or Option

15、5.Value = True Then BeiA1 = Val(Text4.Text) 杯底厚度 a1(mm) BeiT = Val(Text5.Text) 杯底厚度 t(mm) BeiH1 = Val(Text7.Text) 按构造确定杯口基础尺寸h1(mm) BeiH2 = Val(Text8.Text) 按构造确定杯口基础尺寸h2(mm) End IfIf Option7.Value = True Then 一阶 Bbian1 = Val(Text9.Text) Abian1 = Val(Text10.Text) H0bian1 = Val(Text11.Text)End IfIf Op

16、tion8.Value = True Then 二阶 Bbian1 = Val(Text9.Text) Abian1 = Val(Text10.Text) H0bian1 = Val(Text11.Text) Bbian2 = Val(Text12.Text) Abian2 = Val(Text13.Text) H0bian2 = Val(Text14.Text)End IfIf Option9.Value = True Then 三阶 Bbian1 = Val(Text9.Text) Abian1 = Val(Text10.Text) H0bian1 = Val(Text11.Text) B

17、bian2 = Val(Text12.Text) Abian2 = Val(Text13.Text) H0bian2 = Val(Text14.Text) Bbian3 = Val(Text15.Text) Abian3 = Val(Text16.Text) H0bian3 = Val(Text17.Text)End IfEnd SubPrivate Sub Command2_Click()Call TianJiaBianL 1. 基础高度及变阶处高度的确定 If Option4.Value = True Or Option5.Value = True Then BhcH = 50 / 100

18、0 JichuH0 = BeiH1 / 1000 + BeiA1 / 1000 + BhcH List1.AddItem (基础高度H0(m) & H0= & Format(JichuH0, 0.00) List1.AddItem (杯底厚度 t(mm) & t= & Format(BeiT, 0.00)End If基底净反力计算 Call Pnmaxnmin(Fload, Llong, Bwide, Pjmax, Pjmin, Mshot, Mlong) List1.AddItem (基底净反力最大值Pjmax(kPa) & Pjmax= & Format(Pjmax, 0.00) List

19、1.AddItem (基底净反力最小值Pjmin(kPa) & Pjmin= & Format(Pjmin, 0.00) (1)柱与基础交接处的冲切强度验算 Bt 冲切破坏锥体斜截面的上边长(m) Bm 冲切破坏锥体斜截面的下边长(m) Bt = Bczhu Bb = Bczhu + 2# * H0xiao Bm = (Bt + Bb) / 2 If Bwide Bb Then Fl = Pjmax * (Llong / 2 - Lczhu / 2 - H0xiao) * Bwide Else Fl = Pjmax * (Llong / 2 - Lczhu / 2 - H0xiao) * Bw

20、ide - (Bwide / 2 - Bczhu / 2 - H0xiao) 2) End If List1.AddItem (柱与基础交接处的冲切力(kN) & Fl= & Format(Fl, 0.00) Fqiangdu = 0.6 * FkTshj * Bm * H0xiao List1.AddItem (柱与基础交接处的抗冲切力(kN) & Fqiangdu= & Format(Fqiangdu, 0.00) If Fl Fqiangdu Then List1.AddItem (满足要求 ) Else MsgBox 重新调整h0后,再进行验算, vbExclamation Exit

21、Sub End If(2)变阶-(1)处的冲切验算 If Option7.Value = True Or Option8.Value = True Or Option9.Value = True Then Bt = Bbian1 Bb = Bt + 2# * H0bian1 Bm = (Bt + Bb) / 2 If Bwide Bb Then FlBian1 = Pjmax * (Llong / 2 - Abian1 / 2 - H0bian1) * Bwide Else FlBian1 = Pjmax * (Llong / 2 - Abian1 / 2 - H0bian1) * -(Bwi

22、de / 2 - Bbian1 / 2 - H0bian1) 2) End If List1.AddItem (变阶-(1)处的冲切力(kN) & Fl= & Format(FlBian1, 0.00) FqiangduBian1 = 0.6 * FkTshj * Bm * H0bian1 List1.AddItem (变阶-(1)处的抗冲切力(kN) & Fqiangdubian1= & Format(FqiangduBian1, 0.00) If FlBian1 FqiangduBian1 Then List1.AddItem (满足要求 ) Else MsgBox 重新调整H0bian1

23、后,再进行验算, vbExclamation Exit Sub End If End If(3)变阶-(2)处的冲切验算 If Option8.Value = True Or Option9.Value = True Then Bt = Bbian2 Bb = Bt + 2# * H0bian2 Bm = (Bt + Bb) / 2 If Bwide Bb Then FlBian2 = Pjmax * (Llong / 2 - Abian2 / 2 - H0bian2) * Bwide Else FlBian2 = Pjmax * (Llong / 2 - Abian2 / 2 - H0bia

24、n2) * -(Bwide / 2 - Bbian2 / 2 - H0bian2) 2) End If List1.AddItem (变阶-(2)处的冲切力(kN) & Flbian2= & Format(FlBian2, 0.00) FqiangduBian2 = 0.6 * FkTshj * Bm * H0bian2 List1.AddItem (变阶-(2)处的抗冲切力(kN) & Fqiangdubian2= & Format(FqiangduBian2, 0.00) If FlBian2 FqiangduBian2 Then List1.AddItem (满足要求 ) Else Ms

25、gBox 重新调整H0bian3后,再进行验算, vbExclamation Exit Sub End If End If(4)变阶-(3)处的冲切验算 If Option9.Value = True Then Bt = Bbian3 Bb = Bt + 2# * H0bian3 Bm = (Bt + Bb) / 2 If Bwide Bb Then FlBian3 = Pjmax * (Llong / 2 - Abian3 / 2 - H0bian3) * Bwide Else FlBian3 = Pjmax * (Llong / 2 - Abian3 / 2 - H0bian3) * -(

26、Bwide / 2 - Bbian3 / 2 - H0bian2) 3) End If List1.AddItem (变阶-(3)处的冲切力(kN) & Flbian3= & Format(FlBian3, 0.00) FqiangduBian3 = 0.6 * FkTshj * Bm * H0bian3 List1.AddItem (变阶-(3)处的抗冲切力(kN) & Fqiangdubian3= & Format(FqiangduBian3, 0.00) If FlBian3 M11 Then M11 = M11Bian1 If M11 M11Bian1 Then M11 = M11En

27、d IfIf Option8.Value = True Then If M11Bian1 M11 Or M11Bian1 M11Bian2 Then M11 = M11Bian1 If M11Bian2 M11 Or M11Bian2 M11Bian1 Then M11 = M11Bian2 If M11 M11Bian1 Or M11 M11Bian2 Then M11 = M11End IfIf Option9.Value = True Then If M11Bian1 M11 Or M11Bian1 M11Bian2 Or M11Bian1 M11Bian3 Then M11 = M11

28、Bian1 If M11Bian2 M11 Or M11Bian2 M11Bian2 Or M11Bian2 M11Bian3 Then M11 = M11Bian2 If M11Bian3 M11 Or M11Bian3 M11Bian2 Or M11Bian3 M11 Then M11 = M11Bian3 If M11 M11Bian1 Or M11 M11Bian2 Or M11 M11Bian3 Then M11 = M11End If As11 = M11 / (0.9 * FkyGshjL * H0xiao) * 10 6配筋长边L方向钢筋根数 NgangjinL = Int(A

29、s11 / (3.14 * DgangjinL * DgangjinL / 4) + 1 AsShejiL = (3.14 * DgangjinL * DgangjinL / 4) * NgangjinL List1.AddItem (长边L向配筋面积 (mm2) & As11= & Format(As11, 0.00) List1.AddItem (长边L向配筋数 & NgangjinL= & Format(NgangjinL, 00) List1.AddItem (长边L向实际配筋面积(mm2) & AsShijiL= & Format(AsShejiL, 0.00)配筋短边B方向If Option7.Value = True Then If M22B

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论