Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Расчет концентраций вредных веществ в атмосферном воздухе. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
Рис. 8. Интерфейс второй диалоговой формы
61
'расчет параметра m
If F < 100 Then m = 1 / (0.67 + 0.1 * Sqr(F) + 0.34 * F ^ (1 / 3)) Else m = 1.47 / F ^ (1 / 3) End If
'расчет параметра n
If Vm >= 2 Then N = 1 Else If Vm >= 0.5 And Vm < 2 Then N = 0.532 * Vm ^ 2 - 2.13 * Vm + 3.13 Else If Vm < 0.5 Then N = 4.4 * Vm End If End If End If
'расчет опасной скорости ветра
If F < 100 And Vm <= 0.5 Then Um = 0.5 Else If F < 100 And Vm <= 2 And Vm > 0.5 Then Um = Vm Else
62
If F < 100 And Vm > 2 Then Um = Vm * (1 + 0.12 * Sqr(F)) End If End If End If If F >= 100 And Vm1 <= 0.5 Then Um = 0.5 Else If F >= 100 And Vm1 <= 2 And Vm1 > 0.5 Then Um = Vm1 Else If F >= 100 And Vm1 > 2 Then Um = 2.2 * Vm1 End If End If End If
'расчет параметра d
If F < 100 And Vm <= 0.5 Then d = 2.48 * (1 + 0.28 * fe ^ (1 / 3)) Else If F < 100 And Vm <= 2 And Vm > 0.5 Then d = 4.95 * Vm * (1 + 0.28 * F ^ (1 / 3)) Else If F < 100 And Vm > 2 Then d = 7 * Sqr(Vm) * (1 + 0.28 * F ^ (1 / 3)) End If
63
End If End If If F >= 100 And Vm1 <= 0.5 Then d = 5.7 Else If F >= 100 And Vm1 <= 2 And Vm1 > 0.5 Then d = 11.4 * Vm1 Else If F >= 100 And Vm1 > 2 Then d = 16 * Sqr(Vm1) End If End If End If UserForm3.TextBox1.Text = V1 UserForm3.TextBox2.Text = T1 UserForm3.TextBox3.Text = F UserForm3.TextBox4.Text = Vm UserForm3.TextBox5.Text = Vm1 UserForm3.TextBox6.Text = fe UserForm3.TextBox7.Text = m UserForm3.TextBox8.Text = N UserForm3.TextBox9.Text = Um UserForm3.TextBox10.Text = d UserForm3.Show End Sub
64
10. Аналогично для кнопки Очистить.
Private Sub CommandButton2_Click() TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" TextBox4.Text = "" TextBox5.Text = "" TextBox6.Text = "" TextBox7.Text = "" TextBox8.Text = "" TextBox9.Text = "" TextBox10.Text = "" TextBox11.Text = "" TextBox12.Text = "" TextBox13.Text = "" TextBox14.Text = "" TextBox15.Text = "" End Sub
11. Аналогично для кнопки Выход.
Private Sub CommandButton3_Click() End End Sub
12. Оформить User Form3 (рис. 9). Листинг программ для User Form3
следующий.
Private Sub CommandButton1_Click() N = Val(UserForm2.TextBox1.Text) H = Val(UserForm2.TextBox2.Text)
65
d = Val(UserForm2.TextBox3.Text) W0 = Val(UserForm2.TextBox4.Text) Tg = Val(UserForm2.TextBox5.Text) Tb = Val(UserForm2.TextBox6.Text) MSO2 = Val(UserForm2.TextBox7.Text) M3 = Val(UserForm2.TextBox8.Text) MNO2 = Val(UserForm2.TextBox9.Text) A = Val(UserForm2.TextBox13.Text) n1 = Val(UserForm2.TextBox14.Text) f1 = Val(UserForm2.TextBox15.Text) V1 = UserForm3.TextBox1.Text T1 = UserForm3.TextBox2.Text F = UserForm3.TextBox3.Text Vm = UserForm3.TextBox4.Text Vm1 = UserForm3.TextBox5.Text fe = UserForm3.TextBox6.Text m = UserForm3.TextBox7.Text N = UserForm3.TextBox8.Text Um = UserForm3.TextBox9.Text
d = UserForm3.TextBox10.Text CMSO2 = A * MSO2 * f1 * m * N * n1 / (H ^ 2 * (V1 * T1) ^ (1 / 3)) XMSO2 = (5 - f1) / 4 * d * H
CMNO2 = A * MNO2 * f1 * m * N * n1 / (H ^ 2 * (V1 * T1) ^ (1 / 3))
XMNO2 = (5 - f1) / 4 * d * H CM3 = CMSO2 * M3 / MSO2 * F XM3 = XMSO2 * (5 - F) / 4
66
With Worksheets("Диаграмма")
.Range("A1").Value = "x"
.Range("B1").Value = "x / XMSO2"
.Range("C1").Value = "s1"
.Range("D1").Value = "C SO2"
.Range("E1").Value = "C NO2"
.Range("F1").Value = "C золы"
End With
i = 2
For x = 50 To 3000 Step 50
XXM = x / XMSO2
XXM3 = x / XM3
If XXM <= 1 Then
s1 = 3 * XXM ^ 4 - 8 * XXM ^ 3 + 6 * XXM ^ 2
Else
If XXM <= 8 And XXM > 1 Then
s1 = 1.13 / (0.13 * XXM ^ 2 + 1)
End If
End If
If XXM3 <= 1 Then
s1_3 = 3 * XXM3 ^ 4 - 8 * XXM3 ^ 3 + 6 * XXM3 ^ 2
Else
67
Рис. 9. Интерфейс третьей диалоговой формы
68
If XXM3 <= 8 And XXM3 > 1 Then
s1_3 = 1.13 / (0.13 * XXM3 ^ 2 + 1)
Else
If XXM3 > 8 And F <= 1 Then
s1_3 = XXM3 / (3.58 * XXM3 ^ 2 - 35.2 * XXM3 + 120)
Else
If XXM3 > 8 And F > 1.5 Then
s1_3 = 1 / (0.1 * XXM3 ^ 2 + 2.47 * XXM3 - 17.8)
End If
End If
End If
End If
Cso2 = CMSO2 * s1
Cno2 = 0.017 * Cso2
C_3 = CM3 * s1_3 With Worksheets("Диаграмма")
.Cells(i, 1).Value = x
.Cells(i, 2).Value = XXM
.Cells(i, 3).Value = s1
.Cells(i, 4).Value = Cso2
.Cells(i, 5).Value = Cno2
.Cells(i, 6).Value = C_3 End With
i = i + 1 Next x
69
UserForm4.TextBox1.Text = CMSO2
UserForm4.TextBox2.Text = XMSO2
UserForm4.TextBox3.Text = CMNO2
UserForm4.TextBox4.Text = XMNO2
UserForm4.TextBox5.Text = CM3
UserForm4.TextBox6.Text = XM3
UserForm4.Show
End Sub
Private Sub CommandButton4_Click()
End
End Sub
Private Sub CommandButton5_Click()
Unload UserForm3
Load UserForm2
End Sub
13. Оформить User Form4 (рис. 10). Листинг программ для User
Form4 следующий.
Private Sub CommandButton1_Click()
Unload UserForm4
Load UserForm3
End Sub
Private Sub CommandButton2_Click()
Unload UserForm4
Load UserForm2
End Sub
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]