哈工大材料力学上机编程报告Word下载.docx
- 文档编号:18941298
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:17
- 大小:188.71KB
哈工大材料力学上机编程报告Word下载.docx
《哈工大材料力学上机编程报告Word下载.docx》由会员分享,可在线阅读,更多相关《哈工大材料力学上机编程报告Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
用到了简支梁受集中力、均布载荷和集中力偶情况下的挠曲线方程。
三、VB程序源代码
1.主界面
PrivateSubCommand1_Click()(与平面应力状态分析窗口连接)
Form2.Show
Form1.Hide
EndSub
PrivateSubCommand2_Click()(与简支梁转角挠度计算窗口连接)
Form3.Show
PrivateSubForm_Load()(保证开始时只有主界面出现,隐藏其它窗口)
Form1.Show
Form2.Hide
Form3.Hide
2.平面应力分析
PrivateSubComman()(定义变量)
DimXAsSingle,YAsSingle,WAsSingle,ZAsSingle,AAsSingle,BAsSingle
PrivateSubCommand1_Click()
DimXAsSingle,YAsSingle,WAsSingle,ZAsSingle,AAsSingle,BAsSingle,CAsDouble
X=Val(Text1.Text)
Y=Val(Text2.Text)
W=Val(Text3.Text)
Z=Val(Text4.Text)
C=Sqr(((X-Y)/2)^2+W^2)
A=(X+Y)/2+C(主应力计算)
B=(X+Y)/2-C
IfA>
OThen(比较各主应力大小)
Text11.Text=A
Else
Text12.Text=A
Text11.Text=0
EndIf
IfB>
0Then
Text12.Text=B
Text13.Text=0
Text13.Text=B
Text12.Text=0
Text14.Text=C
Text15.Text=(X+Y)/2+0.5*(X-Y)*Cos(2*Z*3.1415/180)+W*Sin(2*Z*3.1415/180)(计算任意角度的正应力)
Text16.Text=-0.5*(X-Y)*Sin(2*Z*3.14159/180)+W*Cos(2*Z*3.1415/180)(计算任意角度的切应力)
IfX=YThen
Text17.Text=45
Text17.Text=0.5*Atn(2*W/(X-Y))*180/3.1415(主应力角)
Text18.Text=Text17.Text+45(切应力角)
PrivateSubCommand2_Click()(回主目录)
PrivateSubCommand4_Click()(测绘应力圆)
DimCAsSingle,RAsSingle,lAsSingle,XAsSingle,YAsSingle,WAsSingle,ZAsSingle,AAsSingle,BAsSingle,DAsSingle,EAsSingle
A=(X+Y)/2+C
IfA<
D=-1*A
D=A
IfB<
E=-1*B
E=B
l=D+E
Picture1.Scale(-l,-l)-(l,l)(建立坐标系)
Picture1.Line(-l,0)-(l,0)
Picture1.Line(0,-l)-(0,l)
Picture1.CurrentX=0
Picture1.CurrentY=0
Picture1.Print"
O(0,0)"
Picture1.DrawWidth=2
C=(Val(Text1.Text)+Val(Text2.Text))/2
R=Sqr(((Val(Text1.Text)-Val(Text2.Text))^2)/4+Val(Text3.Text)^2)
Picture1.Circle(C,0),R(画应力圆)
C("
;
C;
"
0)"
A=(X+Y)/2+Sqr(((X-Y)/2)^2+W^2)
B=(X+Y)/2-Sqr(((X-Y)/2)^2+W^2)
Text14.Text=Sqr(((X-Y)/2)^2+W^2)
Text15.Text=(X+Y)/2+0.5*(X-Y)*Cos(2*Z*3.1415/180)+W*Sin(2*Z*3.1415/180)
Text16.Text=-0.5*(X-Y)*Sin(2*Z*3.14159/180)+W*Cos(2*Z*3.1415/180)
Text17.Text=0.5*Atn(2*W/(X-Y))*180/3.1415
Text18.Text=Text17.Text+90
σmin="
B;
"
σmax="
A;
τmax="
Text14.Text;
σα="
Text15.Text;
τα="
Text16.Text;
ασ1="
Text17.Text;
ασ2="
Text18.Text;
3.简支梁转角挠度计算
PrivateSubcmdOk_Click()
l=Val(tetL.Text)/1000(单位换算)
E=Val(tetE.Text)*10^9
i=Val(tetI.Text)/10^12
X=Val(tetX.Text)/1000
Ifl<
0OrX<
0OrX>
lOri<
=0OrE<
=0Then(输入检验)
MsgBox"
您的输入参数有误,请重新输入!
ExitSub
EndIf
Module1.X=X
CallModule1.fmqin
zi=Module1.zj
nd=Module1.nd
zj=zj*180/3.1415926'
转化成角度值
nd=nd*1000
ForX=0TolStepl/1000
i=i+1
zjM(i)=Module1.zj
ndM(i)=Module1.nd
zjM(i)=zjM(i)*180/3.1415926'
IfzjM(i)>
zjMMThen
zjMM=zjM(i)
IfndM(i)>
ndMMThen
ndMM=ndM(i)
NextX
tetZJm.Text=zjMM
tetNDm.Text=ndMM
IfAbs(zj)<
1Then
Ifzj<
tetZj.Text="
-0"
&
(-Round(zj,4))
Else
0"
zj
tetZj.Text=Round(zj,4)'
四舍五入取小数点后两位
IfAbs(nd)<
Ifnd<
tetNd.Text="
(-Round(nd,4))
(Round(nd,4))
tetNd.Text=Round(nd,4)
PrivateSubcmdSecond_Click()'
点重新输入时清空所有参数文本框
tetL.Text="
tetE.Text="
tetI.Text="
cboF.Text="
请选择集中力F,输入后点确定!
请选择集中力偶M,输入后点确定!
请选择均布力Q,输入后点确定!
tetFn.Text="
tetFnx.Text="
tetMn.Text="
tetMnx.Text="
tetQn.Text="
tetC.Text="
tetD.Text="
tetX.Text="
PrivateSubcmdUload_Click()'
点取消时关闭窗口
UnloadMe
PrivateSubCommand1_Click()
IfVal(tetFnx.Text)>
Val(tetL.Text)Then
您输入的集中力作用位置不正确,请重新输入!
SelectCasecboF.Text
Case"
F1"
fn(1,0)=Val(tetFn.Text)
fn(1,1)=Val(tetFnx.Text)
记录完毕,选择下一个F输入!
F2"
fn(2,0)=Val(tetFn.Text)
fn(2,1)=Val(tetFnx.Text)
F3"
fn(3,0)=Val(tetFn.Text)
fn(3,1)=Val(tetFnx.Text)
F4"
fn(4,0)=Val(tetFn.Text)
fn(4,1)=Val(tetFnx.Text)
F5"
fn(5,0)=Val(tetFn.Text)
fn(5,1)=Val(tetFnx.Text)
F6"
fn(6,0)=Val(tetFn.Text)
fn(6,1)=Val(tetFnx.Text)
F7"
fn(7,0)=Val(tetFn.Text)
fn(7,1)=Val(tetFnx.Text)
F8"
fn(8,0)=Val(tetFn.Text)
fn(8,1)=Val(tetFnx.Text)
F9"
fn(9,0)=Val(tetFn.Text)
fn(9,1)=Val(tetFnx.Text)
F10"
fn(10,0)=Val(tetFn.Text)
fn(10,1)=Val(tetFnx.Text)
F11"
fn(11,0)=Val(tetFn.Text)
fn(11,1)=Val(tetFnx.Text)
EndSelect
PrivateSubCommand2_Click()
IfVal(tetMnx.Text)>
SelectCasecboM.Text
M1"
mn(1,0)=Val(tetMn.Text)
mn(1,1)=Val(tetMnx.Text)
cboM.Text="
记录完毕,选择下一个M输入!
M2"
mn(2,0)=Val(tetMn.Text)
mn(2,1)=Val(tetMnx.Text)
M3"
mn(3,0)=Val(tetMn.Text)
mn(3,1)=Val(tetMnx.Text)
M4"
mn(4,0)=Val(tetMn.Text)
mn(4,1)=Val(tetMnx.Text)
M5"
mn(5,0)=Val(tetMn.Text)
mn(5,1)=Val(tetMnx.Text)
M6"
mn(6,0)=Val(tetMn.Text)
mn(6,1)=Val(tetMnx.Text)
M7"
mn(7,0)=Val(tetMn.Text)
mn(7,1)=Val(tetMnx.Text)
M8"
mn(8,0)=Val(tetMn.Text)
mn(8,1)=Val(tetMnx.Text)
M9"
mn(9,0)=Val(tetMn.Text)
mn(9,1)=Val(tetMnx.Text)
M10"
mn(10,0)=Val(tetMn.Text)
mn(10,1)=Val(tetMnx.Text)
M11"
mn(11,0)=Val(tetMn.Text)
mn(11,1)=Val(tetMnx.Text)
PrivateSubCommand3_Click()
SelectCasecboQ.Text
Q1"
qn(1,0)=Val(tetQ.Text)
qn(1,1)=Val(tetC.Text)
qn(1,2)=Val(tetD.Text)
cboQ.Text="
记录完毕,选择下一个q输入!
Q2"
qn(2,0)=Val(tetQ.Text)
qn(2,1)=Val(tetC.Text)
qn(2,2)=Val(tetD.Text)
Q3"
qn(3,0)=Val(tetQ.Text)
qn(3,1)=Val(tetC.Text)
qn(3,2)=Val(tetD.Text)
Q4"
qn(4,0)=Val(tetQ.Text)
qn(4,1)=Val(tetC.Text)
qn(4,2)=Val(tetD.Text)
Q5"
qn(5,0)=Val(tetQ.Text)
qn(5,1)=Val(tetC.Text)
qn(5,2)=Val(tetD.Text)
Q6"
qn(6,0)=Val(tetQ.Text)
qn(6,1)=Val(tetC.Text)
qn(6,2)=Val(tetD.Text)
Q7"
qn(7,0)=Val(tetQ.Text)
qn(7,1)=Val(tetC.Text)
qn(7,2)=Val(tetD.Text)
Q8"
qn(8,0)=Val(tetQ.Text)
qn(8,1)=Val(tetC.Text)
qn(8,2)=Val(tetD.Text)
Q9"
qn(9,0)=Val(tetQ.Text)
qn(9,1)=Val(tetC.Text)
qn(9,2)=Val(tetD.Text)
Q10"
qn(10,0)=Val(tetQ.Text)
qn(10,1)=Val(tetC.Text)
qn(10,2)=Val(tetD.Text)
Q11"
qn(11,0)=Val(tetQ.Text)
qn(11,1)=Val(tetC.Text)
qn(11,2)=Val(tetD.Text)
tetQ.Text="
PrivateSubCommand4_Click()
四、程序应用截图:
1.主目录:
2.平面应力状态分析
3.简支梁转角挠度计算
五:
实验结果分析:
平面应力状态的计算结果正确,并且可以做出应力圆。
简支梁转角挠度计算可以输入足够多的力或力偶,能计算出正确结果。
但考虑VB编程之后在多次计算过程中难免出现纰漏,该程序还有很多需要修缮之处。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 哈工大 材料力学 上机 编程 报告