哈工大材料力学上机.doc
文本预览下载声明
材料力学上机大作业
应力状态分析
曹启迪 1120810831
问题的提出
该程序可以解决的问题:① 平面应力状态,已知σx,σy,τxy和角度的情况下计算不同任意截面的应力分量,还可以计算平面应力状态主应力的大小和方向并能画出应力圆;② 空间应力状态,已知σx,σy,σz,τxy等的情况下计算主应力和最大切应力。
程序源代码
平面
Private Sub Command1_Click()
Dim δx As Double, δy As Double, τxy As Double, а As Double, X As Double, Y As Double, z As Double
δx = Val(Text1.Text)
δy = Val(Text2.Text)
τxy = Val(Text3.Text)
а = Val(Text4.Text)
X = 0
Y = (δx + δy) / 2 + ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5
z = (δx + δy) / 2 - ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5
If X = Y And X = z Then
Text5.Text = Str(X)
Text6.Text = Str(Y)
Text7.Text = Str(z)
Text8.Text = Str((X - z) / 2)
Else
If X = Y And X = z Then
Text5.Text = Str(Y)
Text6.Text = Str(z)
Text7.Text = Str(X)
Text8.Text = Str((Y - X) / 2)
Else
Text5.Text = Str(Y)
Text6.Text = Str(X)
Text7.Text = Str(z)
Text8.Text = Str((Y - z) / 2)
End If
End If
Text9.Text = Str((δx + δy) / 2 + (δx - δy) / 2 * Cos(2 * а) + τxy * Sin(2 * а))
Text10.Text = Str(-(δx - δy) / 2 * Sin(2 * а) + τxy * Cos(2 * а))
If δx = δy Then
Text11.Text = Str(45)
Else
Text11.Text = Str(Atn(τxy ^ 2 / (δx - δy)) / 2)
End If
If ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5 = 50 And ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5 = 20 Then
Picture1.ScaleMode = 3
Picture1.Scale (0, 0)-(200, 80)
Picture1.Scale (-100, 40)-(100, -40)
Picture1.Line (-100, 0)-(100, 0)
Picture1.Line (0, -40)-(0, 40)
Picture1.Circle ((δx + δy) / 2, 0), ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5, QBColor(12)
Else
If ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5 20 And ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5 0 Then
Picture1.ScaleMode = 3
Picture1.Scale (0, 0)-(80, 40)
Picture1.Scale (-40, 20)-(40, -20)
Picture1.Line (-40, 0)-(40, 0)
Picture1.Line (0, -20)-(0, 20)
Picture1.Circle ((δx + δy) / 2, 0), ((δx - δy) ^ 2 / 4 + τxy ^ 2) ^ 0.5, QBColor(12)
Else
Picture1.ScaleMode = 3
Picture1.Scale (0, 0)-(400, 200)
Picture1.Scale (-200, 100)-(200, -100)
Picture1.Line (-200, 0)-(200, 0)
Picture1.Line (0, -100)-(0, 100)
Picture1.Circle ((δx + δy) / 2, 0), ((δx - δy) ^ 2 / 4 + τxy ^
显示全部