2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Как найти все ортогональные системы векторов
Сообщение17.10.2021, 09:18 


29/12/09
366
Привет, всем!
Попытаюсь объяснить суть того, что мне нужно и сразу показать, то что я не понимаю. Приведу примеры как я шел от простого к сложному, чтобы понять как мне правильно сделать.
Начнем с простого примера.
Пусть задан единичный вектор $(x_1,y_1)$ в пространстве $R^2$. Я хочу найти ортогональный ему вектор и тоже единичный $(x_2,y_2)$. Цель, получить все ортогональные базисы в пространстве $R^2$. Для этого составил систему уравнений:

$ x_1x_2+y_1y_2=0$ - скалярное произведение

$x_2^2+y_2^2=1$ - нормировка
Число уравнений равно числу неизвестных, система нелинейная квадратичная и будет иметь два решения, что в принципе из опыта понятно, что любому вектору на плоскости могут быть два ортонормированных вектора, которые направленны в разные стороны.


Идем дальше. В пространстве $R^3$ для заданного вектора $(x_1,y_1,z_1)$ хотим тоже получить систему ортонормированных векторов. Цель таже, получить все системы ортонормированных базисов. И тут начинаются проблемы, так как мы имеем 6 неизвестных (ищем 2 вектора у каждого 3 компоненты) и всего 5 уравнений:

$ x_1x_2+y_1y_2+z_1z_2=0$ - скалярное произведение 1-го со 2-м
$ x_1x_3+y_1y_3+z_1z_3=0$ - скалярное произведение 1-го с 3-м
$ x_3x_2+y_3y_2+z_3z_2=0$ - скалярное произведение 3-го со 2-м

$x_2^2+y_2^2+z_2^2=1$ - нормировка 2-го
$x_3^2+y_3^2+z_3^2=1$ - нормировка 3-го

Попытаемся подсократить переменные. Для этого введем сферическую параметризацию от двух углов для 2-го и 3-го вектора (я имею ввиду вот так):

$x_i=\cos(\varphi_i)\cos(\vartheta_i)$
$y_i=\cos(\varphi_i)\sin(\vartheta_i)$
$z_i=\sin(\varphi_i)$
где $i=2,3$
таким образом мы имеем 4 неизвестных. Но так как уравнения, которые отвечают за нормировку уходят, то остаются 3 уравнения и 4 неизвестных. И тут тоже понятно, как и в предыдущем случае, что у любого вектора может быть бесконечно много двух ортонормированных векторов вращающихся в перпендикулярной ему плоскости. Причем как и в предыдущем случае, два вектора в плоскости существуют в двух вариантах, можно один вектор развернуть и будет уже другой базис.
Теперь сразу напишу, то что я хочу понять и сделать. Мне нужно уметь генерировать ортонормированный базис в комплексном 4х мерном пространстве $C^4$!!! Что значит сгенерировать. Вернемся к 1-му примеру. Например, генерирую 1-ый вектор используя параметризацию $x_1=\cos(\varphi_1), y_1=\sin(\varphi_1)$. Отлично, теперь задавая один параметр $\varphi_1$ - я могу решив уравнения для первого случая в пространстве $R^2$ получить решения для $\varphi_2$ из уравнений, приведенных выше и параметризации $x_2=\cos(\varphi_2),y_2=\sin(\varphi_2)$. Таким образом, варьируя только $\varphi_1$ и решая уравнения смогу получить все ортонормированные базисы в $R^2$
В 4х мерном комплексном пространстве, я даже теряюсь, какие мне параметры оставить, чтобы варьируя их получить все ортонормированные базисы. Если есть у кого-то идеи или может кто-то знает, где уже такой алгоритм есть, подскажите плиз.

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение17.10.2021, 11:21 
Аватара пользователя


23/05/20
379
Беларусь
alexey007 в сообщении #1535202 писал(а):
В 4х мерном комплексном пространстве, я даже теряюсь, какие мне параметры оставить, чтобы варьируя их получить все ортонормированные базисы. Если есть у кого-то идеи или может кто-то знает, где уже такой алгоритм есть, подскажите плиз.


Курс линейной алгебры Канатников, Крищенко, стр.95. Процесс ортогонализации Грама-Шмидта.

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение17.10.2021, 11:56 
Заслуженный участник
Аватара пользователя


05/12/09
1813
Москва
Если бы речь шла о действительном пространстве, Вам нужна гиперсфера. В комплексном, каждую действительную координату гиперсферы можно еще покрутить мнимой экспонентой, т.е. еще по углу.

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение17.10.2021, 13:16 
Заслуженный участник


31/12/05
1517
alexey007 в сообщении #1535202 писал(а):
что в принципе из опыта понятно, что любому вектору на плоскости могут быть два ортонормированных вектора, которые направленны в разные стороны.
Давайте ограничиваться только базисами с положительной ориентацией, если вам нужны и отрицательные, можете сами получить из них изменением знака одного из векторов. Ортонормированный базис удобно представлять ортогональной матрицей с определителем $1$. Это известная задача параметризации группы $\mathrm{SO}(n)$.

https://en.wikipedia.org/wiki/Orthogonal_group

В двумерном случае мы имеем один параметр - угол поворота, матрица получается очень известного вида: $\begin{bmatrix}\cos(\theta) & -\sin(\theta) \\ \sin(\theta) & \cos(\theta)\end{bmatrix}$.

В трехмерном случае параметров три. Есть много способов выбрать их, например, углы Эйлера (тангаж, рыскание, крен).

https://en.wikipedia.org/wiki/Charts_on_SO(3)

В четырехмерном случае шесть параметров, в Вики есть сложный и интересный способ получать элементы $\mathrm{SO}(4)$ из кососимметричных матриц $4$-го порядка (то есть шести произвольных чисел).

https://en.wikipedia.org/wiki/Rotations ... dean_space

alexey007 в сообщении #1535202 писал(а):
В 4х мерном комплексном пространстве, я даже теряюсь, какие мне параметры оставить, чтобы варьируя их получить все ортонормированные базисы.
А вот тут вам нужна уже $\mathrm{SU}(4)$.

https://en.wikipedia.org/wiki/Special_unitary_group

Есть какие-то статьи о явных параметризациях $\mathrm{SU}(4)$, например

https://arxiv.org/abs/math-ph/0211056 (кажется, вам нужна формула ($32$)).

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение17.10.2021, 14:43 
Заслуженный участник


18/09/21
1756
alexey007 в сообщении #1535202 писал(а):
Пусть задан единичный вектор $(x_1,y_1)$ в пространстве $R^2$.
Так же для $R^n$ можно индуктивно.
Задать в $R^n$ произвольный единичный вектор. Потом в $R^{n-1}$ тоже задать произвольный единичный вектор и т.д.. В итоге в $R^1$ будет только два единичных вектора.
Так получите все базисы (каждый несколько раз с точностью до перестановки векторов).

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение21.10.2021, 10:32 


29/12/09
366
tolstopuz в сообщении #1535221 писал(а):
alexey007 в сообщении #1535202 писал(а):
что в принципе из опыта понятно, что любому вектору на плоскости могут быть два ортонормированных вектора, которые направленны в разные стороны.
Давайте ограничиваться только базисами с положительной ориентацией, если вам нужны и отрицательные, можете сами получить из них изменением знака одного из векторов. Ортонормированный базис удобно представлять ортогональной матрицей с определителем $1$. Это известная задача параметризации группы $\mathrm{SO}(n)$.

https://en.wikipedia.org/wiki/Orthogonal_group

В двумерном случае мы имеем один параметр - угол поворота, матрица получается очень известного вида: $\begin{bmatrix}\cos(\theta) & -\sin(\theta) \\ \sin(\theta) & \cos(\theta)\end{bmatrix}$.

В трехмерном случае параметров три. Есть много способов выбрать их, например, углы Эйлера (тангаж, рыскание, крен).

https://en.wikipedia.org/wiki/Charts_on_SO(3)

В четырехмерном случае шесть параметров, в Вики есть сложный и интересный способ получать элементы $\mathrm{SO}(4)$ из кососимметричных матриц $4$-го порядка (то есть шести произвольных чисел).

https://en.wikipedia.org/wiki/Rotations ... dean_space

alexey007 в сообщении #1535202 писал(а):
В 4х мерном комплексном пространстве, я даже теряюсь, какие мне параметры оставить, чтобы варьируя их получить все ортонормированные базисы.
А вот тут вам нужна уже $\mathrm{SU}(4)$.

https://en.wikipedia.org/wiki/Special_unitary_group

Есть какие-то статьи о явных параметризациях $\mathrm{SU}(4)$, например

https://arxiv.org/abs/math-ph/0211056 (кажется, вам нужна формула ($32$)).


Спасибо! Это прям в точку, я теорию групп не изучал, но для этой задачи мне прям это то что нужно. Пришлось поразбираться, но использование теории групп сильно упращает получение всех ортогональных базисов.
Теперь пытаюсь понять немного другую задачу. Если у меня уже есть фиксированный базис из 4х ортогональных векторов в комплексном 4х мерном пространсве. Теперь мне нужно как то параметризовать два ортогональных вектора в этом базисе, так чтобы я с помощью этих параметров смог получить все пары ортогональных векторов в 4х мерном пространстве. Надеюсь сумел понятно написать) Наверно такое преставление всевозможных ортоноальнрых пар векторов можно предстваить, испоьзуя теорию групп.

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение21.10.2021, 17:37 


29/12/09
366
Кажется понял. Надо взять изначально два любых ортогональных вектора в пространсве $C^4$
$\overrightarrow{V_1}=\{1, 0, 0, 0\}$

$\overrightarrow{V_2}=\{0, 1, 0, 0\}$

И дальше можно получить все пары ортогональных векторов используя преобразование:
$\overrightarrow{V_1'}=R\overrightarrow{V_1}$

$\overrightarrow{V_2'}=R\overrightarrow{V_2}$

где $R$ - матрица поворота вокруг осей в $C^4$
Подскожите, плиз. Правильно?

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение21.10.2021, 18:40 
Заслуженный участник


31/12/05
1517
Да, фактически можно брать два столбца матрицы поворота. Но придется менять все $15$ параметров, получая одни и те же пары по многу раз. Как это сделать эффективнее - я не знаю.

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 22:06 


29/12/09
366
Кто нибудь знает в группе поворотов SU(4) какой диапазона изменения углов? От 0 до $2\pi$? Или...

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 22:50 
Заслуженный участник


18/09/21
1756
Там углами вообще не оперируют.
SU(4)

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 23:02 


29/12/09
366
Я имею ввиду, если взять например один из 15 генераторов $L_1$ группы $SO(4)$ и построить матрицу поворота вокруг оси 1 на угол $\alpha_1$
матрица поворота будет иметь вид $R_1=\exp(\alpha_1L_1)$, так вот угол $\alpha_1$ в каких пределах может меняться?

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 23:09 
Заслуженный участник


18/09/21
1756
Что мешает менять его от минус бесконечности до полюс бесконечности?

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 23:16 


29/12/09
366
Мне нужно будет вращать вектора и хотел бы исключить повторяющиеся положения, если они через $2\pi$ повторяются, например. Ну и планирую потом решать задачу оптимизации по углам, тут уж точно лучше понимать в каком диапазоне углы меняются

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 23:24 
Заслуженный участник


18/09/21
1756
Например матрица $\lambda_{15}$ действительная и диагональная.
Не вижу никакой периодичности в $f(\alpha)=\exp(\alpha \lambda_{15})$.

 Профиль  
                  
 
 Re: Как найти все ортогональные системы векторов
Сообщение22.10.2021, 23:33 


29/12/09
366
Да, я тоже не понимаю как это работает. Надо может быть попробовать разобрать это на примере SO(2) и потом как то понять как это работает для SU(4)

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group