Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Решение вычислительных задач по геодезии с помощью си- стемы для математических расчетов MatLab





Для проведения вычислений можно использовать

вычислительные возможности математического пакета MatLab.

Рассмотрим решение тестового примера для расчета углов треугольника с помощью системы Matlab. Для этого выполним следующую последовательность действий:

1. Запустим программу Matlab.

2. Нажав кнопку на панели инструментов, откроем окно

редактирования программы.

3. Будем набирать программные конструкции.

Самое первое действие в программе должно быть очистка экрана от предшествующих надписей. Это делается оператором clc. Затем необходимо прочитать исходные значения координат. Для координат первой вершины это можно сделать с помощью конструкций:

x1=input('x1->'); y1=input('y1->');,

где комбинация букв, заключенная в апострофы (одиночные кавычки), выступает в роли подсказки при вводе. Для координат


остальных вершин x 2, y2, x3, y3 необходимо поступать аналогичным образом.

После ввода координат необходимо выполнить вычисление квадратов сторон и самих сторон. Это можно сделать с помощью конструкций:

ab2=(x2-x1)^2+(y2-y1)^2; ab=sqrt(ab2);.

Здесь знаками ^2 обозначена операция возведения в квадрат, sqrt

позволяет вычислить квадратный корень.

Для остальных длин сторон и их квадратов необходимо выполнить аналогичные действия.

Затем следует вычислить величину угла в граудусах с

долями:

c=(180/pi)*acos((bc2+ac2-ab2)/(2*bc*ac));.

Для вычисления остальных углов следует поступать

аналогично. В последнем фрагменте множитель 180/pi необходим для перевода из радиан в градусы, а acos означает обращение к

встроенной в Matlab функции.

Из величин углов в градусах с долями необходимо выделить градусы, минуты и секунды с долями. Для этого следует воспользоваться конструкциями:

cg=fix(c); cm=fix((c-cg)*60); csec=(c-(cg+cm/60))*3600;,

где c – величина угла в градусах с долями, cg – градусы угла, cm

минуты угла, csec – секунды угла, fix – функция взятия целой части числа (отбрасывание дробной части). Для остальных углов следует

поступать аналогично.

После последних вычислений необходимо выдать результат на экран. Это можно сделать, указав имя переменной, в которой

хранится соотвествующая вычисляемая величина, например, cg. Для

вывода остальных значений следует поступать аналогично. Кроме такого способа вывода вычисленных значений возможен еще такой, когда после вычисляемого выражения не ставится точка с запятой. Это означает, что соотвествующее вычисленное значение будет выдано на экран.

4. Закончив набор, можно запускать программу на исполне- ние активизацией кнопки на панели инструментов. При этом следует перейти в окно исполнения программы, в котором будут


появляться конструкции подсказок, запрограммированные в опера- торах ввода. В соответствующих строках следует производить ввод значений:

x1->-3 y1->0

x2->4

и т.д.

При запуске программы на исполнение и вводе данных для тестового примера получаем на экране представленный ранее ре- зультат. Если в программе обнаружатся ошибки, то необходимо устранить их причину и вновь производить запуск программы на исполнение.

Решение задачи на вычисление превышения в MatLab можно произвести с использованием следующей последовательности опе- раторов:

% превышение clc

i1=input('i1------->');

s =input('s-------->');

v2=input('v2------->'); ng=input('nu(grad)->');

nm=input('nu(min)-->');

n=(ng+nm/60);

h=s*tan(n*pi/180)+i1-v2+0.0675*(s/1000)^2

Решение задачи вычисления координат точки по формулам Юнга можно произвести с использованием следующей последова- тельности операторов:

% расчет по формулам Юнга clc

x1=input('x1->');

y1=input('y1->');

x2=input('x2->');

y2=input('y2->');

b1g=input('b1(grad)->');

b1m=input('b1(min)-->');

b1s=input('b1(sec)-->');


b2g=input('b2(grad)->');

b2m=input('b2(min)-->');

b2s=input('b2(sec)-->');

b1=b1g+b1m/60+b1s/3600; b2=b2g+b2m/60+b2s/3600; b1=b1*pi/180; b2=b2*pi/180;

xp=(x1*cot(b2)+x2*cot(b1)-y1+y2)/(cot(b1)+cot(b2)) yp=(y1*cot(b2)+y2*cot(b1)+x1-x2)/(cot(b1)+cot(b2))

Решение задачи вычисления координат точки по формулам

Гаусса можно произвести с использованием следующей последова- тельности операторов:

% Расчет по формулам Гаусса clc

x1 = input('x1->');

y1 = input('y1->');

x2 = input('x2->');

y2 = input('y2->');

a1g = input('a1(grag)->');

a1m = input('a1(min)->');

a2g = input('a2(grag)->');

a2m = input('a2(min)->');

a1= a1g+a1m/60; a2=a2g+a2m/60; a1= a1 * pi / 180; a2 = a2 * pi / 180;

xp= (x1 * tan(a1) - x2 * tan(a2) + y2 - y1) / (tan(a1) - tan(a2)) yp= y1 + (xp-x1)*tan(a1)

Решение обратной угловой засечки по формулам Пранис-

Праневича можно произвести с использованием следующей после- довательности операторов:

% расчет по формулам Пранис-Праневича clc

x1=input ('x1, y1->');

y1=input ('x1, y1->');

x2=input ('x2, y2->');

y2=input ('x2, y2->');

x3=input ('x3, y3->');

y3=input ('x3, y3->');

alg=input ('al(grad)->');


alm=input ('al(min)-->');

beg=input ('be(grad)->');

bem=input ('be(min)-->'); al = alg + alm / 60;

be = beg + bem / 60;

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) * (1/tan(al) - tgq) - (x2 - x1) * (1 + 1/tan(al) * tgq);

dx = n / (1 + tgq ^ 2); dy = dx * tgq; xp = x2 + dx

yp = y2 + dy

Решение обратной геодезической задачи с помощью MatLab можно произвести с использованием следующей последовательно-

сти операторов:

% ОГЗ

Clc

x1 = input('x1->');

y1 = input('y1->');

x2 = input('x2->');

y2 = input('y2->');

al=atan((y2-y1)/(x2-x1))*180/pi; if ((x2-x1)<0)

al=180+al;

elseif ((y2-y1)<0) al=360+al

End

s=sqrt((y2-y1)^2+(x2-x1)^2) alg = fix(al)

alm = ((al - alg) * 60)

 







Дата добавления: 2015-10-02; просмотров: 1199. Нарушение авторских прав; Мы поможем в написании вашей работы!




Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...


Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Вопрос. Отличие деятельности человека от поведения животных главные отличия деятельности человека от активности животных сводятся к следующему: 1...

Расчет концентрации титрованных растворов с помощью поправочного коэффициента При выполнении серийных анализов ГОСТ или ведомственная инструкция обычно предусматривают применение раствора заданной концентрации или заданного титра...

Психолого-педагогическая характеристика студенческой группы   Характеристика группы составляется по 407 группе очного отделения зооинженерного факультета, бакалавриата по направлению «Биология» РГАУ-МСХА имени К...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Методы прогнозирования национальной экономики, их особенности, классификация В настоящее время по оценке специалистов насчитывается свыше 150 различных методов прогнозирования, но на практике, в качестве основных используется около 20 методов...

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия