
- •Задание 1. Рассчитать величины углов треугольника, зная координаты его вершин.
- •1. Расчет в Microsoft Excel
- •1.Длина стороны ab вычисляется по формуле:
- •2.Длина стороны bc вычисляется по формуле:
- •3.Длина стороны ac вычисляется по формуле:
- •2. Расчет в Mathcad
- •3. Расчет в MatLab
- •4. Расчет в Visual Basic
- •Задание 2 Расчет неприступного расстояния.
- •Расчет в Microsoft Excel
- •Расчет в Mathcad
- •3. Расчет в MatLab
- •4. Расчет в Visual Basic
- •Задание 3. Расчет превышения
- •Исходные данные:
- •1. Расчет в Microsoft Excel
- •Расчет в Mathcad
- •3. Расчет в MatLab
- •4. Расчет в Visual Basic
- •Задание 4. Решение прямой угловой засечки по формулам Юнга.
- •Исходные данные:
- •1.Расчет в Microsoft Excel
- •2.Расчет в Mathcad
- •3. Расчет в MatLab
- •4.Расчет в Visual Basic
- •Задание 5 Решение прямой угловой засечки по формулам Гаусса.
- •Исходные данные:
- •Расчет в Microsoft Excel
- •Расчет в Mathcad
- •Расчет в MatLab
- •4 . Расчет в Visual Basic
- •Задание 6 Решение обратной геодезической задачи.
- •Расчет в Microsoft Excel
- •2. Расчет в Mathcad
- •3. Расчет в MatLab
- •4. Расчет в Visual Basic
- •Задание 7 Решение обратной угловой засечки по формулам Пранис-Праневича.
- •Расчет в Microsoft Excel
- •Расчет в Mathcad
- •3.Расчет в MatLab
- •4 . Расчет в Visual Basic
- •Задание 8 Решение творческого задания для курсовой работы (Расчет токсичных выбросов в атмосферу при эксплуатации автомобилей)
- •Средние эксплуатационные нормы расхода топлива в л на 1 км пути
- •Заключение:
- •Список использованной литературы
- •Содержание
4 . Расчет в Visual Basic
Рис. 22. Вид формы для решения обратной угловой засечки по формулам Пранис-Праневича.
При расчетах требуется вычислять функцию котангенс. В VBA нет стандартной математической функции котангенс. В этом случае можно воспользоваться выражением этой функции через косинус и синус. Прежде чем, запрограммировать расчет в процедуре обработки события, поместим перед описанием этой процедуры функцию:
Function ctg(x)
ctg = Cos(x) / Sin(x)
End Function
Эту функцию будем теперь использовать в процедуре обработки события. Сначала необходимо прочитать введенные в поля значения координат и углов. Для координат вершин это можно сделать с помощью конструкций:
X1 = Val(TextBox1.Text): Y1 = Val(TextBox7.Text)
X2 = Val(TextBox8.Text): Y2 = Val(TextBox2.Text)
X3 = Val(TextBox3.Text): Y3 = Val(TextBox9.Text)
Значение углов в градусах, минутах и секундах с долями может быть введено с помощью операторов:
al = Val(TextBox4.Text) + Val(TextBox5.Text) / 60
be = Val(TextBox10.Text) + Val(TextBox6.Text) / 60
После ввода координат и углов, введя постоянную величину Pi = 4 * Atn(1) необходимо выполнить перевод углов из градусов в радианы:
al = al * Pi / 180: be = be * Pi / 180
Затем мы вводим основные расчетные формулы:
tgq = ((Y2 - Y1) / Tan(al) - (y3 - Y2) / Tan(be) + X1 - x3) / ((X2 - X1) / Tan(al) - (x3 - X2) / Tan(be) - Y1 + y3)
n = (Y2 - Y1) * (ctg(al) - tgq) - (X2 - X1) * (1 + ctg(al) * tgq)
dx = n / (1 + tgq ^ 2): dy = dx * tgq
xp = X2 + dx: yp = Y2 + dy
Последним этапом является вывод ответа:
Label1.Caption = "xp= " + Str(xp)
Label2.Caption = "yp= " + Str(yp)
Таким образом, весь вычисляющий код будет иметь вид:
Function ctg(x)
ctg = Cos(x) / Sin(x)
End Function
Private Sub CommandButton1_Click()
X1 = Val(TextBox1.Text): Y1 = Val(TextBox7.Text)
X2 = Val(TextBox8.Text): Y2 = Val(TextBox2.Text)
x3 = Val(TextBox3.Text): y3 = Val(TextBox9.Text)
al = Val(TextBox4.Text) + Val(TextBox5.Text) / 60
be = Val(TextBox10.Text) + Val(TextBox6.Text) / 60
Pi = 4 * Atn(1)
al = al * Pi / 180: be = be * Pi / 180
tgq = ((Y2 - Y1) / Tan(al) - (y3 - Y2) / Tan(be) + X1 - x3) / ((X2 - X1) / Tan(al) - (x3 - X2) / Tan(be) - Y1 + y3)
n = (Y2 - Y1) * (ctg(al) - tgq) - (X2 - X1) * (1 + ctg(al) * tgq)
dx = n / (1 + tgq ^ 2): dy = dx * tgq
xp = X2 + dx: yp = Y2 + dy
Label1.Caption = "xp= " + Str(xp)
Label2.Caption = "yp= " + Str(yp)
End Sub
Задание 8 Решение творческого задания для курсовой работы (Расчет токсичных выбросов в атмосферу при эксплуатации автомобилей)
Нужно определить мощность эмиссии загрязняющих веществ qi, мг/м·с, рассчитать концентрации загрязняющих веществ в атмосферном воздухе(С, мг/м3 )на расстоянии от дороги 10м.
Расчет выполняют в следующей последовательности:
I. Определяют мощность эмиссии qi, мг/м·с, загрязняющих веществ отдельно для каждого компонента окиси углерода на конкретном участке дороги по формуле:
qi=0,206·m·[∑(Gik·Nik·Kk) + ∑(Giд·Niд·Kд)]
где m - коэффициент, учитывающий дорожные и транспортные условия, принимается по графику на рис. 23 в зависимости от средней скорости транспортного потока V, км/ч;
Gik-средний эксплуатационный расход топлива для данного типа карбюраторных автомобилей, принимается по табл. 10, л/км; Giд - то же для дизельных автомобилей, л/км; Nik-интенсивность движения каждого выделенного типа карбюраторных автомобилей, авт./ч; Niд - то же дизельных автомобилей, авт./ч; Кк и Кд - коэффициенты, принимаемые для данного компонента загрязнения: с карбюраторными и дизельными типами ДВС, соответственно, по таблице 11.
2
.
Рассчитывают концентрации токсичных
компонентов отработавших газов в
атмосферном воздухе Сj,
мг/м3,
на различном удалении от дороги l,
используя модель Гауссового распределения
примесей в атмосфере на небольших
высотах, по формуле:
Сj=
где δ - стандартное отклонение Гауссового рассеивания в вертикальном направлении по табл. 12, м; vв - скорость ветра, преобладающего в расчетный период, м/с, φ - угол, составляемый направлением ветра к трассе дороги (при угле менее 300 принять равным 0,5); Fj - фоновая концентрация загрязнения воздуха, мг/м3.