2014 dxdy logo

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

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




На страницу 1, 2  След.
 
 Поворот системы координат
Сообщение23.03.2009, 15:06 
Добрый день.
Есть система координат XYZ и два единичных вектора r1(x1, y1, z1) и r2(x2, y2, z2). Нужно систему координат повернуть сначала вокруг оси Z, потом вокруг оси X и вокруг оси Y, так что бы вектор r1 совместился с вектором r2. Найти три угла этих последовательных поворотов.
Думаю в математике уже должно быть какое-то стандартное решение. Подскажите пожалуйста.

 
 
 
 
Сообщение23.03.2009, 15:18 
См., напрмер, гл.3, §2, п.2 (Выяснение геометрического смыслда. Углы Эйлера) в [1]

ref.
1. Ильин В.А., Позняк Э.Г. Аналитическая геометрия. — М.: Наука, 1968.

 
 
 
 Re: Поворот системы координат
Сообщение23.03.2009, 16:35 
Render писал(а):
Добрый день.
Есть система координат XYZ и два единичных вектора r1(x1, y1, z1) и r2(x2, y2, z2). Нужно систему координат повернуть сначала вокруг оси Z, потом вокруг оси X и вокруг оси Y, так что бы вектор r1 совместился с вектором r2. Найти три угла этих последовательных поворотов.
Думаю в математике уже должно быть какое-то стандартное решение. Подскажите пожалуйста.

А зачем вращать вокруг всех трех осей. Разве двух не хватит?

 
 
 
 
Сообщение24.03.2009, 21:55 
Вот как это делается.(Без комментариев).
Изображение

 
 
 
 
Сообщение30.03.2009, 18:40 
Предыдущую картинку не осилил, но мне в голову пришел свой вариант.
Итак, давайте сначала крутить ось Z, потом ось Y.
Пусть после первого поворота вектор r1 переходит в r3, а потом r3 в r2. Чтобы вектор r3 последним поворотом совместился с r2 нужно, чтобы углы между этими векторами и осью Y были равны. Для этого нужно повернуть ось Z на разницу углов между векторами к1, к2 и осью Y(то есть на arccos(y1)-arccos(y2) ). Но на конкретном примере почему-то этот первый переход не получается правильным.

 
 
 
 
Сообщение30.03.2009, 19:57 
Так спрашивайте, растолкую :)

 
 
 
 
Сообщение04.04.2009, 10:24 
vvvv, у вас на рисунке оба вектора сначала переводятся в плоскость XZ, но ведь мы можем по условию двигать только первый вектор.

 
 
 
 
Сообщение04.04.2009, 10:43 
Разверните первый вектор вокруг оси Z так, чтобы он оказался в плоскости YZ (будет, естественно, два варианта, если только этот вектор с самого начала не был направлен по оси Z). Затем разверните вокруг X так, чтобы он (оставаясь в плоскости YZ) оказался бы под тем же углом к оси Y, что и второй вектор; снова будет два варианта на выбор, если второй вектор не направлен вдоль Y. Наконец, разверните на необходимый угол вокруг оси Y до совмещения со вторым вектором.

 
 
 
 
Сообщение04.04.2009, 11:13 
В условии задачи вообще векторы не двигаются, а поворачивается система координат? :)

 
 
 
 
Сообщение04.04.2009, 11:20 
Условия задачи сформулированы нечётко. Поскольку требуется "совместить векторы" -- имеется в виду, что поворачивается именно вектор. В противном случае должно было бы стоять что-нибудь вроде "... так, чтобы координаты вектора в новой системе стали наперёд заданными". Впрочем, принципиально на алгоритме это не сказывается.

 
 
 
 
Сообщение04.04.2009, 11:53 
vvvv писал(а):
В условии задачи вообще векторы не двигаются, а поворачивается система координат? :)

Система координат двигается вместе с вектором r1. Вектор r2 остается на месте.
Я действительно не достаточно четко об этом написал :?

 
 
 
 
Сообщение04.04.2009, 13:13 
Сформулируйте, пожалуйста, четко задачу.Что нужно сделать?Может вращать , вообще, ничего не нужно!

 
 
 
 
Сообщение04.04.2009, 14:46 
Есть две системы координат $X_0Y_0Z_0$ и $XYZ$, они совпадают.
Дано единичные вектора r1(x1, y1, z1) и r2(x2, y2, z2) заданных системе координат $X_0Y_0Z_0$.
Вектор r1 жестко зафиксирован в системе координат $XYZ$, вектор r2 жестко зафиксирован в системе координат $X_0Y_0Z_0$.
Требуется найти углы поворота системы координат $XYZ$ последовательно вокруг своих осей Z, X, Y таким образом чтобы вектор r1 совместился с вектором r2.

 
 
 
 
Сообщение04.04.2009, 17:54 
Render писал(а):
Есть две системы координат $X_0Y_0Z_0$ и $XYZ$, они совпадают. .

Уже никуда не годится: если две системы совпадают, то это вовсе не две системы, а одна.

 
 
 
 
Сообщение04.04.2009, 21:22 
Вот сделано по-аккуратней.Думаю поймете.
Изображение

 
 
 [ Сообщений: 22 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group