Решение вычислительных задач по геодезии с помощью си- стемы для математических расчетов MathCad
Для проведения вычислений можно использовать возможности математического пакета MathCad. Рассмотрим решение тестового примера для расчета углов треугольника с помощью программы MathCad. Запустим систему MathCad. Будем исходить из того, что координаты вершин треугольника заданы. Будем задавать их с помощью операции присваивания в рабочем поле окна программы. Для координат первой вершины это можно сделать с помощью конструкций: x1:=-3 y1:=0. Для набора знака:= следует воспользоваться кнопкой с панели Арифметика. При этом координатам следует присваивать значения координат точек, например, из тестового примера. Для координат остальных вершин x2, y2, x3, y3 необходимо поступать аналогичным образом. После ввода координат необходимо выполнить вычисление квадратов сторон и самих сторон. Это можно сделать с помощью конструкций: AB2:= (x2 - x1)2 + (y2 - y1)2 AB:=
AB2. Здесь операция возведения в квадрат оформляется с использованием кнопки с панели Арифметика. Для остальных длин сторон и их квадратов необходимо поступать аналогично. Затем следует вычислить величину угла в граудусах с долями:
C:= 180
acos é(BC2+ AC2 - AB2)ù p ë 2 × BC× AC û. Здесь acos означает обращение к математической функции аркосинус, множитель 180/pi необходим для перевода из радиан в градусы. Дроби набираются с использованием кнопки , операция умножения - , скобки- , а число p - с панели Арифметика. Для вывода окончательных ответов или промежуточных зна- чений необходимо ввести в рабочем окне имя переменной, в кото- рой хранится нужная величина и вслед за ней ввести знак равенства без двоеточия. Для того, чтобы вывести значение угла в градусах с долями необходимо использовать конструкцию: C=35.727. Причем операция вывода производится с использованием кнопки с
панели Арифметика (не путать с). После активизации кнопки результат появляется на экране автоматически. Для вычисления остальных углов следует поступать аналогично. Из величин углов в градусах и долях необходимо выделить градусы, минуты и секунды с долями. Для этого следует воспользоваться конструкциями: Cg:= trunc (C) Cm:= trunc [(C - Cg) × 60] Cm Cs:= round ééC - æ Cg + öù × 3600, 1ù, ëë è 60 øû û где Cg – градусы угла, Cm – минуты угла, Cs – секунды угла, trunc – функция взятия целой части числа (отбрасывание дробной части), round – функция округления с точностью до одного знака после запятой. Для остальных углов следует поступать аналогично. После последних вычислений необходимо вывести результат. Это можно сделать с помощью конструкций: Cg = 35 Cm = 43 Cs = 38.6 Таким образом, весь вычисляющий код будет иметь вид: x1:= -3 y1:= 0 x2:= 4 y2:= -3 x3:= 8 y3:= 7 AB2:= (x2 - x1)2 + (y2 - y1)2BC2:= (x3 - x2)2 + (y3 - y2)2AC2:= (x3 - x1)2 + (y3 - y1)2 AB:= BC:= AC:= AB2 BC2 AC2
C:= 180
acos é(BC2+ AC2 - AB2)ù p ë 2 × BC× AC û
A:= 180
acos é(AB 2 + AC 2 - BC 2)ù p ë 2 × AB × AC û
B:= 180
acos é(AB2 + BC2- AC2)ù p ë 2 × AB × BC û C = 35.727 Cg:= trunc (C) Cm Cm:= trunc [(C - Cg) × 60] Cs:= round ééC - æ Cg + öù × 3600, 1ù ëë è 60 øû û A = 55.67 Ag:= trunc (A) Am Am:= trunc[(A - Ag) × 60] As:= round ééA - æ Ag + öù × 3600, 1ù ëë è 60 øû û
Bg:= trunc (B) Bm:= trunc [(B - Bg) × 60]
Видно, что получаются те же значения, которые были полу- чены при проведении расчетов при помощи электронных таблиц. Набранные конструкции могут быть сохранены в виде фай- ла, с тем, чтобы в дальнейшем при необходимости произвести за- грузку и расчеты. Следует отметить, что сохранение документов MathCad может быть осуществлено в файл формата rtf (для Word). Решение задачи на вычисление превышения в MathCad можно произвести с использованием следующего кода: i1:= 1.42 s:= 1785.4
17.8 v2:= 3 p s 2 n:= -æ 1 + ö h:= s × tan æ n × ö + i1 - v2 + 0.0675× æö è 60 ø è 180ø è 1000ø h = -41.777. Округлив полученное значение, будем иметь h=-41.78. Видно, что получается то же значение, которое было полу- чено при проведении расчетов при помощи электронных таблиц. Решение задачи вычисления координат удаленной точки по формулам Юнга можно произвести с использованием следующего кода: x1:= 50 y1:= 50 x2:= 30 y2:= 70 b1:= 26 + + p 9.8 3600 b2:= 58 + + p 0.7 3600 b1:= b1 ×
b2:= b2 ×
x1 + tan (b2) x2 tan (b1)
- y1 + y2 y1 + tan (b2) y2 tan (b1)
+ x1 - x2 xp:= yp:= + tan (b1) tan (b2) + tan (b1) tan (b2) xp = 42.112 yp = 72.912. Видно, что получаются те же значения, которые были полу- чены при проведении расчетов при помощи электронных таблиц. Решение обратной угловой засечки по формулам Пранис- Праневича можно произвести с использованием следующего кода: x1:= 3 y1:= 1 15.3 x2:= 1 y2:= 4 1.0 x3:= 2 y3:= 7 - задание координат al:= 20 + p be:= 19 + 60 p - задание углов al:= al ×
be:= be ×
- перевод градусов в радианы
tgq:= [(y2 - y1) × cot (al) - (y3 - y2) × cot (be) + x1 - x3] [(x2 - x1) × cot (al) - (x3 - x2) × cot (be) - y1 + y3] n:= (y2 - y1) × (cot (al) - tgq) - (x2 - x1) × (1 + cot (al) × tgq) n dx:= dy:= dx × tgq 1 + tgq2 xp:= x2 + dx yp:= y2 + dy xp = 10.372 yp = 2.283 - выдача ответа Видно, что получаются значения, приведенные в тестовом примере. Решение задачи на вычисление неприступного расстояния в MathCad можно произвести с использованием следующего кода: AC 1:= 225.78 базисов A C 2:= 2 2 7. 3 8A C 3:= 1 9 3. 4 8A C 4:= 2 4 1. 1 9- ввод d1:= æ81 + è d3:= æ87 + è 14ö × 60ø 25ö × 60ø p 180 p d2:= æ88 + è d4:= æ89 + è 55ö × 60ø 49ö × 60ø p 180 p
- ввод первого угла и пе- ревод в радианы b1:= æ54 + è b3:= æ55 + è 37ö × 60ø 29ö × 60ø p 180 p b2:= æ49 + è b4:= æ47 + è 55ö × 60ø 43ö × 60ø p 180 p
- ввод второго угла и пе- ревод в радианы
AB1:= AC1 ×
sin(b1)
AB2:= AC2 ×
sin(b2)
AB3:= AC3 ×
расстояний sin(p - d1 - b1) sin(b3)sin(p - d3 - b3)
AB4:= AC4 × sin(p - d2 - b2) sin(b4)sin(p - d4 - b4)
- расчет AB 1 + AB 2 + AB 3 + AB 4 AB:= - вычисление ответа AB = 264.286. После округления АВ=264.29.
|