Научная статья на тему 'Построение геодезических линий в системе компьютерной математики Mathcad'

Построение геодезических линий в системе компьютерной математики Mathcad Текст научной статьи по специальности «Математика»

CC BY
251
40
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Cloud of science
ВАК
Область наук
Ключевые слова
ЗАДАЧА ПРЕСЛЕДОВАНИЯ / ОБЪЕКТ ПРЕСЛЕДОВАНИЯ / ГОРИЗОНТАЛЬНАЯ ПРОЕКЦИЯ ВЕКТОРА СКОРОСТИ / УРАВНЕНИЕ ПОВЕРХНОСТИ / МЕТОД СТРЕЛЬБЫ

Аннотация научной статьи по математике, автор научной работы — Дубанов А. А., Билдушкина М. Н.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Construction of Geodesic Lines in the Computer Mathematics System Mathcad

In this article we consider the development of algorithms for constructing geodesic lines on surfaces defined by a point basis. As a development environment, the computer mathematics system Mathcad was chosen. The process of implementing the solution of this problem is based on the introduction of a dynamic local coordinate system into the mathematical model, since the construction of geodetic lines is carried out to the point in motion. As a result, you can consider the animated image laid out on the channel Youtube.com, as well as the program code with comments on the author's website.

Текст научной работы на тему «Построение геодезических линий в системе компьютерной математики Mathcad»

Cloud of Science. 2018. T. 5. № 4 http:/ / cloudofscience.ru

Построение геодезических линий в системе компьютерной математики Mathcad

А. А. Дубанов, М. Н. Билдушкина

Бурятский институт инфокоммуникаций Сибирского государственного университета телекоммуникаций и информатики 670031, Улан-Удэ, ул. Трубачеева, 152

e-mail: alandubanov@mail.ru, bfsibguti@mail.ru

Аннотация. В статье рассматриваются вопросы разработки алгоритмов построения геодезических линий на поверхностях, заданных точечным базисом. В качестве среды разработки выбрана система компьютерной математики Mathcad. Процесс реализации решения данной задачи базируется на вводе в математическую модель динамической локальной системы координат, поскольку построение геодезических линий выполняется до точки, находящейся в движении. Как результат можно рассматривать анимированное изображение, а также программный код с комментариями, приведенный на сайте автора.

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

1. Введение. Постановка задачи

В [1] автором производилось решение в системе Mathcad известной задачи преследования. Преследование производилось на пересеченной местности, уравнение поверхности которой задано в явном виде z = f (X y). При реализации данной задачи предлагалась модель, когда горизонтальная проекция вектора скорости преследующего объекта («Лиса») направлена на горизонтальную проекцию объекта преследования («Кролик»). Данное условие учитывается в системе уравнений:

dX

f

Vf (X - Xf)

dt

dJL dt

f

(Xr - Xf )2 + (Y - Yf )2 +

(Xr - Xf)

\2

f (Xf• Yf )+iYr_ (Xf• Yf ^

5Xf

5Yf

Vf (Y - Yf)

(1.1)

(Xr - Xf )2 + Y - Yf )2 +

r f

(Xr - Xf) + (Y - Yf)f (Xf • Y)

dYt

V у

где X^ — горизонтальная проекция «Лисы», Хг ,Уг — горизонтальная проекция «Кролика», ^ — модуль скорости «Лисы».

2

В настоящей статье рассмотрена модель, где в определенный момент времени скорость «Лисы» V/ направлена по геодезической линии, соединяющей преследу-

-(х2 + у2)

ющего с преследуемым. В качестве примера рассмотрена поверхность г = е , в качестве модели выбрана «одинокая гора». Преследуемая точка будет двигаться по траектории, проекция которой на плоскость ХОУ является окружностью. Задача состоит в выполнении динамического расчет геодезической линии, соединяющей точку наблюдения («Лиса») с преследуемой точкой «Кролик».

2. Геодезическая линия по двум точкам. Реализация в МаШсад

Будем считать, что по условиям задачи у нас есть поверхность, заданная в виде г = /(х,у). Нам выгоднее ее представить в параметрическом виде

R(ii,v) =

u v

/ (и,V)_

для того, чтобы реализовать подходы, изложенные в классических учебниках по дифференциальной геометрии [2, 3]. Согласно известным трудам по дифференциальной геометрии координаты геодезической линии должны удовлетворять решению системы дифференциальных уравнений (2.1).

d 2u ds2 -Г1 • Г ii ' du v ds |2- 2Г12 du ds dv ds -Г1 • 1 22 ' dv )2 V ds )

d 2v_ ds2 ~ -Г2 • Г ii f du V ds )2- 2Г?2 du ds dv ds -Г2 • Г 22 r dv )2 v ds )

(2.1)

где Г*. — символы Кристоффеля второго рода; 5 — параметр длины дуги. Мы

считаем, что для решения поставленных задач более удобным является, когда параметр V является зависимым от параметра и (2.2).

ч2 /- , \3

(2.2)

d-V = -!* + (Г'= - + (2Г;= -Г?,).( £ i + r-.f £ |.

du du V du) V du.

Вывод уравнения (2.2) показан в учебном пособии [4].

Реализован программный код [5], выполняющий построение геодезической

линии на поверхности z = e

из точки (-2; -0.5) в точку (2; -0.5) (см. рис. 1).

Рисунок 1. Геодезическая линия по двум точкам. Краевая задача. Данный программный код выполнен в системе компьютерной математики Mathcad 11 [5]

При решении дифференциального уравнения (2.2) является важным наличие функциональной зависимости v(u). Вероятность существования такой зависимости существенно повышает переход в локальную систему координат (рис. 2).

Предполагается, что в зависимости от значения угла ф, который является функцией времени, будет производиться переход в локальную систему координат H\,Hi, что означает перерасчет исходной поверхности

и

R(u,v)= v

_ f (u,v)_

и символов Кристоффеля (2.3) в новом динамическом базисе.

Для реализации поставленной задачи в системе Mathcad взята для примера простая поверхность

R(u,v) =

Далее вычислим коэффициенты первой квадратичной формы

Ли "Ли Ли ■ Лг

g(u,v)= _ _ _ Ли • Лг Лг ■ Лг

и сразу найдем инверсную ей матрицу ig(u, у) = g(u, у)1. Запись символов Кристоффеля второго рода (2.3) взята из источника [4], адаптированна для ввода в системы компьютерной математики.

Рисунок 2. Преобразования координат Е\,Ег —базис плоскости (ХОУ). Н\,Нг —локальный базис, организованный направлением, соединяющим преследующий объект с преследуемым. В данном случае зависимость от времени базиса Н\,Нг выражаем в угле наклона ф оси Н\ коси Еу, —координаты базиса Е\,Ег

в базисе Н\,Нг, е1(ф), ег(ф) —координаты базиса Н\,Нг в базисе Е\,Ег.

= 1 igii f | +1 igu | + 2 l du du du J 2 [du du dv

Г1 = 1 ig f dg11 + dg12 .

dg 12 V 1. f dg 12 dg 22

dg

12

2 V dv du du 1 2 V dv du dv

Г1 -ho fdgn, dg22

Г 22 ~ '611 I - + - -2 [ dv dv du

1 f dg22 _i_ dg22 dg22 ■ —ig12 I--1----

2 [ dv dv dv

Г11 ~ ig 21

Г12 = ~ ig 21

dg11 dg11 dg11

- +

du du du

dg11 , dg12 dgn

--1----

dv du

1

+ " ig 22

, + " ig22 du ) 2

dgj2 + dg 21 dg11

du du dv

dg12 , dg 22 dg 12

dv du

(2.3)

Г22 = 1 ig21 P^ + ^

22 2 21 [ dv dv

dg2

1 ig22 Г06^

2 22 [ dv

dv

dg22 d62

си ) 2 ^ ду ду ду Далее приступим к решению краевой задачи. Для этого преобразуем дифференциальное уравнение второго порядка (2.2) в систему ОДУ первого порядка (2.4) стандартным методом. Система уравнений (2.4) решается при помощи встроенной процедуры гкПхе^

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

= У,

у

du dY

dY = -Г22 + (Г22 - 2Г122) • У + (2Г12 - Г2) • (У)2 + Г11 (У )3 du

(2.4)

где У0 = v, у = jt.

При реализации метода «стрельбы» в системе Mathcad [5], был задан диапазон углов а = [-я/12;я/12] с шагом Да = я/60. Для каждого значения а,- решается система уравнений (2.4) с начальными условиями [—2;tg(a)]T. В приведенном примере геодезическая линия строится от точки (—2; —0.5) до точки (2; —0.5). Посмотреть листинг решения данной задачи можно в [5]. При получении решения системы дифференциальных уравнений (2.4) на отрезке u = [—2; 2] невязка для каждого значения а будет равна = v |u=2 —v0, в данном примере v0 = —0.5. На рис. 3 показана зависимость невязки ^ от угла «стрельбы» аг К зависимости 1(а) можно применить различные методы интерполяции, в нашем примере была применена линейная интерполяция. Для решения уравнения А(а) = 0 существует встроенная функция root, которая ищет нули функции на заданном диапазоне. Полученное значение а дает направление геодезической линии от точки (—2; —0.5) до точки (2; —0.5). На рис. 4 показана зависимость параметра v (ось ординат) от параметра u (ось абсцисс).

г-

J-

-025 ~ О2 -0 15 - 0.1 -0.05 0 0.05 0.1 0.15 0 2 02i

а. ^ а а т

Рисунок 3. Зависимость невязки от угла «стрельбы»

Рисунок 4. Зависимость у от u

На рис. 4 наглядно видно, что при вычисленном угле «стрельбы» А,(а) = 0 траектория геодезической линии выходит из точки (—2; —0.5) и приходит в заданную точку (2; —0.5).

Следует отметить, что в системе компьютерной математики Mathcad существуют встроенные средства решения краевых задач, такие как процедура 8Ьуя1,

вычислительный блок Given-Odesolve, в которых так или иначе, неявно прописан известный алгоритм «стрельбы». При реализации встроенных процедур неизбежны трудности при локализации корней уравнения А,(а) = 0 в случаях их множественности или их отсутствия. Поэтому, во избежание прерывания вычислительного процесса, поиск нулей функции А(а) = 0 решено реализовать самим. Предложено описать построение геодезической линии из определенной неподвижной точки к точке, движущейся по определенной траектории по заданной поверхности.

3. Динамическое вычисление траектории геодезической линии

Для решения данной задачи, для примера, сформирован отдельный программный код [6], где для решения дифференциальных уравнений использован вычислительный блок системы Given-Odesolve.

Как уже говорилось ранее, преследуемая точка движется по окружности в проекции на плоскость ХОУ:

" X" "Х/" +я • С08(ф)

_ У _ _У/ _ 8ш(ф)

Обозначения в этой формуле имеют тот же смысл, что и на рис. 2. В листинге программы [6] были заданы значения [Хг; = [2; - 0.5]т, [Xг\ Г^]1 = [-2 ;-0.5]т, Я = 4. Далее, в системе координат Н\, Н2(см. рис. 2), произведен перерасчет исходной поверхности V) = [м V /(», V) |1, коэффициентов первой квадратичной формы, символов Кристоффеля. Как несложно установить, все это будет зависеть от угла ф (рис.2). Также преобразуется в систему координат Н\,Н2 (рис. 2) и дифференциальное уравнение второго порядка (2.2). Поскольку на основе его будет сформирован вычислительный блок Given-Odesolve, в сформированный вычислительный блок (рис. 5) вводятся следующие граничные условия: у(0) = 0 и ^(0) = tg{у), где у — угол наклона «стрельбы» в системе координат Н\, Нг к оси Ни

(ЗПГСО

-^уЛиЛ - -Офг^.у^иЛб) + (ОфЬЛги.У^иЛй) - 2-Сф212(ш,УГ{иг).в))- — уЛи*) + (2 <

т I г* ;

\у(0) « 0 \-£(0) = еатта , еатта) 0(1е5о1\ е! и^-,4)

Рисунок 5. Вычислительный блок Given-Odesolve. Фрагмент листинга

Вычислительный блок Given-Odesolve позволяет сформировать функцию пользователя. В данном программном коде (см. рис. 5) сформирована функция у(ф,у), где ф — угол между векторами // и Е\, а у — угол наклона «стрельбы» к оси Н\ (см. рис. 2). В представленном листинге переменная gamma имеет значение tg(y). Отметим, что вычислительный блок Given-Odesolve позволяет решить краевую задачу, если задать краевые условия v(0) = 0 и v(4) = 0, но при решении нашей задачи встроенный алгоритм решения проявил нестабильность при поиске решений уравнения (2.2), поэтому решено реализовать алгоритм «стрельбы». В программном коде [6] все реализовано для случая, когда объект преследования движется по сегменту окружности в проекции на горизонтальную плоскость ф е[0;л/2] (рис. 6). Для каждого значения ф; выпускаем серию «пристрелочных» выстрелов y (в данном случае у е[-л/12; л/12]) и в результате получаем для каждого значения ф массив невязок . (рис. 7) отклонения траектории геодезической от расчетной точки, соответствующей значению ф. Для каждого значения ф; следует построить интерполирующую функцию, чтобы найти значение невязки AQ = 0. В программном коде применена линейная интерполяция. На рис. 7 отмечены все точки Я0 , имеющие нулевую невязку. Результат моделирования можно просмотреть в [7].

Рисунок 6. Преследуемый объект движется по окружности

■04 -02 0 0.: 0.4

Рисунок 7. Массив невязок

4. Выводы

В статье решена задача разработка алгоритма построения геодезической линии из заданной точки к движущейся. Для решения краевой задачи использовался метод «стрельбы». Результаты представлены на ресурсах [5-7]. В работах [8-12] предлагаются различные модели применительно к задаче преследования, но все они рассматриваются исключительно на плоскости. При использовании алгоритмов, предложенных в статье, возможно применение моделей, разработанных в [8-12], не только на плоскости, но на поверхностях, заданных точечным базисом.

Литература

[1] Дубанов А. А., Эрдынеева Л. И. Задача преследования в системе вычислительной математики Mathcad // Международный журнал прикладных и фундаментальных исследований. 2016. № 9. С. 7-12.

[2] Рашевский П. К. Курс дифференциальной геометрии. — М.-Л. : Государственное издательство технико-теоретической литературы, 1950.

[3] Выгодский М. Я. Дифференциальная геометрия. — М.-Л. : Государственное издательство технико-теоретической литературы, 1949.

[4] Жукова Н. И., Багаев А. В. Геодезические линии на поверхностях : учеб.-метод. пособие. — Н. Новгород : Изд. Нижегородского госуниверситета, 2008.

[5] Дубанов А. А. Геодезические линии в задаче преследования. Геодезические [Электронный ресурс] URL: http://dubanov.exponenta.ru Сайт «Геометрическое моделирование в Mathcad»

[6] Дубанов А. А. Геодезические линии в задаче преследования. Построение геодезической до бегущей точки. Использование блока «Given-Odesolve» [Электронный ресурс] URL: http://dubanov.exponenta.ru Сайт «Геометрическое моделирование в Mathcad»

[7] Дубанов А. А. Геодезическая линия [Электронный ресурс] URL: https://www.youtube.com/watch?v=XIzV9kQdM-s

[8] Бурдаков С. Ф., Сизов П. А. Алгоритмы управления движением мобильного робота в задаче преследования // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. 2014. Вып. 6(210). С. 49-58.

[9] Желнин Ю. Н. Линеаризованная задача преследования и уклонения на плоскости // Ученые записки ЦАГИ. 1977. № 3. Т. 8. С. 88-97.

[10] Кузьмина Л. И., Осипов Ю. В. Расчет длины траектории для задачи преследования // ВестникМГСУ. 2013. № 12. С. 20-26.

[11] Саматов Б. Т. Задача преследования-убегания при интегрально-геометрических ограничениях на управление преследователя // Автоматика и телемеханика. 2013. № 7.

С. 17-28.

[12] Маматов М. Ш., Алимов Х. Н. К решению задачи преследования в управляемых распределенных системах высокого порядка // Математические труды. 2013. Т. 16. № 2. С. 95-110.

Авторы:

Александр Анатольевич Дубанов — кандидат технических наук, доцент, доцент кафедры «Информационные и коммуникационные технологии», Бурятский институт инфокоммуни-каций Сибирского государственного университета телекоммуникаций и информатики

Марина Нимажаповна Билдушкина — старший преподаватель кафедры «Информационные и коммуникационные технологии», Бурятский институт инфокоммуникаций Сибирского государственного университета телекоммуникаций и информатики

Construction of Geodesic Lines in the Computer Mathematics System Mathcad

A. A. Dubanov, M. N. Bildushkina

Buryat Institute of Infocommunications, Siberian State University of Telecommunication and Informatics 86, st. Kirova, Novosibirsk, 630102, Russia e-mail: alandubanov@mail.ru, bfsibguti@mail.ru

Abstract. In this article we consider the development of algorithms for constructing geodesic lines on surfaces defined by a point basis. As a development environment, the computer mathematics system Mathcad was chosen. The process of implementing the solution of this problem is based on the introduction of a dynamic local coordinate system into the mathematical model, since the construction of geodetic lines is carried out to the point in motion. As a result, you can consider the animated image laid out on the channel Youtube.com, as well as the program code with comments on the author's website.

Keywords: pursuit problem, pursuit object, horizontal projection of the velocity vector, surface equation, shooting method.

References

[1] Dubanov A. A., Erdyneyeva L. I. (2016) Mezhdunarodnyy zhurnal prikladnykh i fundamental'nykh issle-dovaniy, 9:7-12. [In Rus]

[2] Rashevskiy P. K. (1950) Kurs differentsial'noy geometrii. [In Rus]

[3] VygodskiyM. Ya. (1949) Differentsial'naya geometriya. [In Rus]

[4] Zhukova N. I., Bagayev A. V. (2008) Geodezicheskiye linii na poverkhnostyakh. [In Rus]

[5] Dubanov A. A. Geometricheskoe modelirovanie v Mathcad http://dubanov.exponenta.ru

[6] Dubanov A. A. Use Given-Odesolve. http://dubanov.exponenta.ru [In Rus]

[7] https://www.youtube.com/watch?v=XIzV9kQdM-s

[8] Burdakov S. F., Sizov P. A. (2014) Nauchno-tekhnicheskiye vedomosti SPbGPU. Informatika. Telekom-munikatsii. Upravleniye, 6(210):49-58. [In Rus]

[9] Zhelnin Yu. N. (1977) Uchenyye zapiski TSAGI, 8(3):88-97. [In Rus]

[10] Kuz'mina L. I., Osipov Yu. V. (2013) VestnikMGSU, 12:20-26. [In Rus]

[11] Samatov B. T. (2013) Avtomatika i telemekhanika, 7:17-28. [In Rus]

[12]MamatovM. Sh, Alimov Kh. N. (2013)Matematicheskiye trudy, 16(2):95-110. [In Rus]

i Надоели баннеры? Вы всегда можете отключить рекламу.