РАБОТА 4. ИНВАРИАНТЫ ТРАЕКТОРНЫХ МОДЕЛЕЙ

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

1. Теоретические сведения

Изучение данных астрономических наблюдений привело Иоганна Кеплера (1571-1630) к формулировке трех знаменитых законов орбитального движения планет вокруг Солнца. Первый закон Кеплера гласит, что каждая планета движется по эллипсу, в одном из фокусов которого находится Солнце. Второй закон говорит, что при движении планеты ее скорость изменяется таким образом, что радиус-вектор, проведенный от Солнца к планете, заметает равные площади за равные промежутки времени. И наконец, третий закон Кеплера сравнивает орбитальное движение разных планет, утверждая, что квадраты периодов, за которые две планеты совершают полные обороты по своим орбитам, пропорциональны кубам больших осей их орбит.

Школьные курсы физики и астрономии трактуют разнообразие орбит и траекторий, порождаемых сечениями конуса.

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

f(x,y)=ax2+2bxy+cy2=const.
(1)

Подстановкой уравнения кривой в сетевой инструмент всегда можно проверить свои решения, попробуйте, как будет выглядеть x^2+xy+y^2=1 в Wolfram Alpha

КАНОНИЧЕСКИЕ УРАВНЕНИЯ КРИВЫХ ВТОРОГО ПОРЯДКА

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

Она отвечает развертке эллипса синусоидальными зависимостями, также хорошо известными в школьных трактовках круга:


t=time(2*PI 30), 
x=fun(2*cos(t)), y=fun(sin(t)), axis(2), [x y]=??

Подходящим выбором базиса (заменой переменных) уравнение траектории всегда можно привести к такой канонической форме

x2/p2+y2/q2=1,
(2)

когда в уравнении элипса параметры p, q равны длинам его полуосей, а взаимное произведение координат отсутствует. Каноническая запись уравнения гиперболы отличается от (2) только знаком

x2/p2-y2/q2=1.
(3)

ИНВАРИАНТЫ ПРЕОБРАЗОВАНИЯ ПОВОРОТА

Поворот эллипса не меняет длин его полуосей (сторон прямоугольника, в который эллипс вписан), поэтому p, q - инварианты преобразования поворота. Аналогичные инварианты связаны с гиперболой: касающийся двух ее ветвей прямоугольник ограничивается по высоте диагоналями, построенными в виде касательных к ветвям гиперболы. Иллюстративная геометрическая сторона интересует, впрочем, нас сейчас значительно меньше принципиального вопроса о нахождении инвариантов в том случае, когда уравнение кривой записано в самом общем виде (1). В отличие от (2) и (3), в этом уравнении неочевидно, как связаны инварианты с параметрами a, b, c. Вопрос не праздный, поскольку помимо характерных особенностей кривых, он позволяет познакомиться с некоторым общим подходом к исследованию инвариантов и других, значительно более сложных математических моделей.

ВЕКТОРНО-МАТРИЧНАЯ ЗАПИСЬ УРАВНЕНИЙ КРИВЫХ

На языке теории матриц линии уровня описываются с помощью квадратичной формы

XTAX=1,
(4)

описывающей двустороннее произведение вектора координат Х=(x y)T, где A - симметричная матрица вида

A =
a
b
b
c

Эта запись отвечает канонической (при b=0), если A – диагональная матрица. Задача о диагонализации симметричной матрицы сводится к полной алгебраической проблеме собственных значений, о которой предстоит рассказать, поскольку рассматриваемая геометрическая интерпретация - это всего лишь повод с ней познакомиться. Именно она будет важной.

АЛГЕБРАИЧЕСКАЯ ПРОБЛЕМА СОБСТВЕННЫХ ЗНАЧЕНИЙ

Полная алгебраическая проблема собственных значений матрицы A связана с нахождением всех ее собственных значений и собственных векторов.

Собственный вектор H матрицы А отличается от прочих векторов тем, что умножение на матрицу не изменяет его направления:

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

AH=λH,
(5)

оно нелинейно относительно искомых λ и H (содержит их произведение). Обратим внимание, что задача не сводится к решению системы линейных алгебраических уравнений типа AH=b и образует в вычислительной математике вполне самостоятельную тему. Вместе с тем, для решения невозможно обойтись без привычных инструментов, поэтому нелинейные составляющие необходимо как-то разделить. Разделение осуществляется следующим образом. Уравнение (5) переписывается в более стандартном для линейных задач виде

(A-λI)H=0,
(6)

где I=diag(1..1) - единичная диагональная матрица того же размера, что и A, используемая для согласования размерностей. Теперь чисто формально это уравнение можно "решить" как H=(A-λI)-10=0. И без того видно, что система (5) имеет нулевое решение. Такие решения называются тривиальными и они нас не интересуют. Не тривиальные векторы существуют только тогда, когда матрица A-λI не имеет обратной. Случай в матричной алгебре хорошо известный: вырожденные (неинвертируемые) матрицы отличаются нулевым определителем.

Характеристическим уравнением матрицы А называют уравнение вида

|A-λI|=0,
(7)

где | . | - обозначение определителя. Разделение переменных произошло, поскольку в этом нелинейном уравнении относительно λ отсутствует собственный вектор H. Про него известно то, что вычисление определителя порождает полином того же порядка, каков размер n матрицы A. Полиномы в математике, это исхоженная несколькими столетиями тема. Число корней полинома задается его порядком, это дает решающую информацию о количестве собственных значений матрицы λ1..λn, нумеруемых, соответственнно, индексами от 1 до n.

После решения нелинейного уравнения (7), остается сухой остаток в виде уравнений (5) или (6). Поскольку собственные значения уже известны, то после подстановки их, получаются обычные линейные алгебраические уравнения, имеющие разве ту специфику, что их решения неединственны. Их решают вполне однозначно, уходя от тривиальности произвольным назначением в 1-цу любой из координат вектора H и переписыванием уравнения относительно оставшихся неизвестных.

Пример. Треугольная матрица

A =
1
1
0
2

имеет характеристическое уравнение вида (1-λ)(2-λ)=0. Для диагональных и треугольных матриц корни характеристического полинома всегда совпадают с элементами главной диагонали A, в данном случае λ1=1, λ2=2.

A-λ1I =
0
1
0
1

A-λ2I =
-1
1
0
0

Матрица A-λ1I вырождена, вторая строчка повторяет первую, ее можно отбросить. Уравнение (A-λ1I)H1=0 связывает только вторую координату собственного вектора, она должна быть равна 0. Первая координата произвольна, назначаем ее равной единице, т.е. H1=[1 0]T.

Матрица A-λ2I вырождена, вторая строчка нулевая, ее можно отбросить. Из уравнения (A-λ2I)H2=0 следует, что координаты собственного вектора равны между собой, причем, неважно, какого они размера. Назначаем их равными единице, т.е. H2=[1 1]T.

Проверяем, подставив данные в виджет.

Программа возвращает те же собственные числа, только в иной последовательности (машине все равно, как их нумеровать). Собственным числам 2, 1 соответствует матрица собственных векторов T=[-0.8407 1.1891; -0.8409 0]. Собственный вектор определен с точностью до постоянного множителя, знак при нем не играет никакого значения. Например, векторы [1 1]T и [-0.8407 -0.8407]T=-0.8407 [1 1]T отличаются множителем. И то и другое решение является собственным вектором матрицы A.

Назначив одну координату, в ручном расчете, мы фиксируем некоторую возможную длину вектора. Отсюда следует то, что найденные ненормированные собственные векторы H1..Hn можно и нужно (в этой работе) нормировать - делать их единичными по длине делением координат на норму. По теореме Пифагора, норма или длина вектора, это корень квадратный из суммы квадратов его координат.

Цепочка условий для каждого собственного числа (5), переписанная в матричной форме, выглядит лаконично как

AT=TD,
(∞)

где D=diag(λ1..λn) - диагональная матрица собственных значений дматрицы A, слева и справа в уравнении расположена T=[H1..Hn] - столбцовая матрица ее собственных векторов. Отсюда остается один шаг до важного заключения: любая простая (т.е. имеющая полный набор собственных векторов) матрица A сводится преобразованием подобия с T к диагональной матрице D

D=T-1AT.
(9)

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

ПРИВЕДЕНИЕ УРАВНЕНИЙ КРИВЫХ К КАНОНИЧЕСКОМУ ВИДУ

Запишем матричное общее уравнение кривой (4) с учетом диагонального разложения матрицы A=TDT-1 как

XTTDT-1X=1,
(10)

причем

D =
λ1
0
0
λ2

Дополнительно о задаче известно, что A - симметричная матрица, а собственные векторы симметричных матриц ортогональны. Помимо того, их еще можно нормировать. Инверсия ортогональных (состоящих из ортогональных вектор-столбцов единичной длины) матриц сводится к их транспонированию T-1=TT, поэтому (10) можно упростить до

XTTDTTX=1.
(11)

Осталось немногое, пусть Z=TTX - новый вектор координат в базисе, в котором A заменяется на более простую матрицу D. В этих новых координатах запись будет канонической

ZTDZ=1,
(12)

причем

D =
1/p2
0
0
±1/q2

Искомые инварианты p, q определяются собственными значениями

p=1/√|λ1|, q=1/√|λ2|.

Тип кривой зависит от знака определителя, называемого дискриминантом квадратической формы |A|=|D|=λ1λ2. Для эллипса дискриминант положителен.

Собственные векторы матрицы A указывают направление главных осей повернутых эллипса или гиперболы (почему их уравнение в исходных координатах более сложно, чем каноническое). В самом деле, если взять в качестве X собственный вектор X=H1, то Z=TTX=[H1 H2]T H1 = [1 0]T. Это первый орт e1. Второй собственный вектор в новом базисе будет выглядеть как второй орт e2= [ 0 1 ]T.

ПОСТРОЕНИЕ ГРАФИКОВ КРИВЫХ

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

z1(t) = p cos(t), z2(t) = q sin(t), t=0...2π,

для гиперболы в развертку подставляют гиперболические косинус и синус

z1(t) = p ch(t), z2(t) = q sh(t), t=-T...0...+T,

от диапазона T зависит размер отрезка кривой. Обратная замена переменных X=TTZ позволяет увидеть форму траекторных орбит в исходном базисе.

Эллипс построен выше, приведем развертку правой ветви гиперболы (левая получается отражением)


t=time(2 30), t={t-1}, 
z1=fun(2*ch(t)), z2=fun(-sh(t)), axis(3), [z1 z2]=??

При расчетах можно брать число точек поменьше t=time(2 30), и не забывайте, если строите эллипс, что у периодических функций протяженность периода 2*PI. Для того, чтобы график не искажался при повороте, масштабы осей стоит фиксировать с учетом расчетных амплитудных значений по axis(амплитуда осей), если исключить эту операцию, адаптатор подберет масшаб сообразуясь с амплитудными значениями кривой

ПОВОРОТ КРИВОЙ

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

Точки Z=[z1 z2]T связаны с точками рисунка в исходном базисе Z=TTX=T-1X, отсюда X=TZ. Следовательно, чтобы рисунок повернуть, надо каждую пару точек рисунка умножить на матрицу собственных векторов T, т.е. посчитать Z=[z1 z2], tr(Z), и найти X={T*Z}, далее следует обратное транспонирование tr(X) и plot(X[0] X[1]). Можно обойтись без повторного транспонирования, опираясь на правило (AB)T=BTAT


T=[-0.6618 0.7497;-0.7497 -0.6618], norms(T), 
t=time(2*PI 30), z1=fun(2*cos(t)), z2=fun(sin(t)), 
Z=[z1 z2], X={{Z*T'}}, axis(3), plot(X[0] X[1])

Ортогональная матрица собственных векторов T выступает как матрица поворота рисунка кривой только в том случае, если ее столбцы нормированы. Нормирование вектор-столбца, это деление вектора на его длину (норму, т.е. корень из суммы квадратов компонент вектора). В системе есть соответствующая унарная операция norms(T).

2. Указания по выполнению лабораторной работы

2.1. Задание по работе и содержание отчета

Требуется построить теоретически и получить экспериментально с помощью компьютера график орбиты, используя конкретные значения коэффициентов a, b, c матрицы A (см. варианты заданий). Предусмотреть проверку правильности результата путем подстановки рассчитанного компьютером массива точек в исходное уравнение кривой. В письменный отчет по работе входят:

1. Пояснение алгоритмов поиска инвариантов, описывающих кривые.
2. Описание алгоритмов построения траекторий по шагам. Теоретическое построение заданной траектории с помощью описанного алгоритма и графики (промежуточный и окончательный).
3. Программы для построения кривых.
4. Программы проверки правильности вычисления инвариантов и правильности построенных орбит.

2.2. Порядок выполнения работы

1. Найти собственные векторы и собственные числа симметричной матрицы A с помощью компьютера (в справке по iMatLab матрица собственных векторов обозначается V, A=VD/V), потом вручную, используя ту же нумерацию собственных значений, что дает машинный расчет (нумерация эта вполне свободна, но нам нужно сравнивать два пути расчета между собой).
2. Найти инварианты преобразования поворота, описывающие кривые. Определить тип кривой по дискриминанту (по знакам собственных значений).
3. Построить кривые, опираясь на параметрическое представление эллипса или гиперболы.
4. Осуществить обратное преобразование координат, умножая для этого каждую вычисленную вами ранее точку кривой Z = [ x(t) y(t) ]T на матрицу поворота (матрицу собственных векторов A) X=TZ. Иными словами, построить заданные кривые в исходном базисе.
5. Исследовать влияние изменения инвариантов на кривые. Наблюдать изменение формы кривой при увеличении инварианта q и смене его знака.

2.3. Контрольные вопросы

1. Дать алгебраическое и геометрическое определение собственных чисел матрицы. Пояснить их связь с инвариантами ортогонального преобразования (преобразования, описывающего поворот).
2. Пояснить геометрический смысл инварианта q для гиперболы. Указать предельный случай, разграничивающий эллипс и гиперболу.
3. В каком случае геометрические характеристики эллипса инвариантны по отношению к линейной замене переменных Z=MX (M - произвольная матрица)?
4. В каких случаях собственные векторы матрицы бывают ортогональны? Может ли у матрицы не быть собственных векторов? Ответ обосновать.
5. Пояснить случай отрицательных собственных значений. Нарисовать вид траектории для такой квадратической формы.

2.4. Варианты заданий

1 2 3 4 5 6 7 8 9 101112
a 7 616 16 7 7 7 16 16 6 6 4
b 4 5 9 4 5 6 3 8 10 4 5 2
c 8 8 8 8 8 8 8 8 8 882

13 14 15 16 17 18 19 10 21 222324
a 3 31 8 1 2 8 8 8 8 8 8
b 7 9 9 5 7 2 5 4 10 8 3 6
c 1 1 3 7 3 4 6 6 16 1677



Rambler's Top100