2014 dxdy logo

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

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


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


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

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

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

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



Начать новую тему Ответить на тему На страницу 1, 2, 3, 4  След.
 
 матричное уравнение
Сообщение26.07.2012, 17:26 


20/04/12
114
Как решить уравнения вида

$AX=XB$ или $AXB=X$

матрицы все квадратные одинаковой размерности надо найти элементы матрицы $X$.

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение26.07.2012, 17:51 
Аватара пользователя


14/08/09
1140
Как универсальный вариант - через СЛУ опять-таки: обозначить эл-ты матрицы $X$ за независимые переменные $x_{ij}$. Правда, в общем случае это весьма громоздко.

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


23/07/08
10673
Crna Gora
Гантмахер Ф.Р. Теория матриц.
В пятом издании это — глава VIII "Матричные уравнения", параграф 1 "Уравнение $AX=XB$", страница 193.

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение27.07.2012, 09:28 


20/04/12
114
Цитата:
Как универсальный вариант - через СЛУ опять-таки: обозначить эл-ты матрицы за независимые переменные . Правда, в общем случае это весьма громоздко.

вы имеете ввиду так?
общее уравнение в матричной форме
$$\begin{pmatrix}
a_{11} & a_{12} & a_{13} \\
a_{21} & a_{22} & a_{23} \\
a_{31} & a_{32} & a_{33}
\end{pmatrix}
\begin{pmatrix}
x_{11} & x_{12} & x_{13} \\
x_{21} & x_{22} & x_{23} \\
x_{31} & x_{32} & x_{33}
\end{pmatrix}
=
\begin{pmatrix}
x_{11} & x_{12} & x_{13} \\
x_{21} & x_{22} & x_{23} \\
x_{31} & x_{32} & x_{33}
\end{pmatrix}
\begin{pmatrix}
b_{11} & b_{12} & b_{13} \\
b_{21} & b_{22} & b_{23} \\
b_{31} & b_{32} & b_{33}
\end{pmatrix}
$$
потом получаем 9 уравнений
вот первое для примера
$a_{11}x_{11}+a_{12}x_{21}+a_{13}x_{31}=x_{11}b_{11}+x_{12}b_{21}+x_{13}b_{31}$
но решение такой системы уравнений в mathematica выдает, что все $x_{ij}=0$


Цитата:
Гантмахер Ф.Р. Теория матриц.
В пятом издании это — глава VIII "Матричные уравнения", параграф 1 "Уравнение ", страница 193.

сразу осознать не получилось, попозже еще раз прочитаю, но сейчас главное понять почему нельзя решать вышеприведенным методом и есть ли не вырожденное решение.

-- 27.07.2012, 10:39 --

нашел комментарий по этому поводу.
Изображение
только всё же не понятно, почему выдало всё $0$, если уравнения были записаны в общем виде с переменными $a,b$.

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение27.07.2012, 10:17 
Аватара пользователя


14/08/09
1140
mrgloom_ в сообщении #599943 писал(а):
вы имеете ввиду так?

Да.

mrgloom_ в сообщении #599943 писал(а):
но решение такой системы уравнений в mathematica выдает, что все $x_{ij}=0$

Думаю, это уже проблемы матпакета.

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение27.07.2012, 15:59 


20/04/12
114
пробую все таки решить это матричное уравнение

если записать полностью, выдает все нули
Код:
Solve[a11*m11 + a12*m21 + a13*m31 == m11*b11 + m12*b21 + m13*b31 &&
  a11*m12 + a12*m22 + a13*m32 == m11*b12 + m12*b22 + m13*b32 &&
  a11*m13 + a12*m23 + a13*m33 == m11*b13 + m12*b23 + m13*b33 &&
  a21*m11 + a22*m21 + a23*m31 == m21*b11 + m22*b21 + m23*b31 &&
  a21*m12 + a22*m22 + a23*m32 == m21*b12 + m22*b22 + m23*b32 &&
  a21*m13 + a22*m23 + a23*m33 == m21*b13 + m22*b23 + m23*b33 &&
  a31*m11 + a32*m21 + a33*m31 == m31*b11 + m32*b21 + m33*b31 &&
  a31*m12 + a32*m22 + a33*m32 == m31*b12 + m32*b22 + m33*b32 &&
  a31*m13 + a32*m23 + a33*m33 == m31*b13 + m32*b23 + m33*b33, {m11,
  m12, m13, m21, m22, m23, m31, m32,m33}]


если положить $m_{33}:=1$ и $8$ неизвестных пишет нет решений (или не знаю как интерпретировать пустой вывод)
Код:
Solve[a11*m11 + a12*m21 + a13*m31 == m11*b11 + m12*b21 + m13*b31 &&
  a11*m12 + a12*m22 + a13*m32 == m11*b12 + m12*b22 + m13*b32 &&
  a11*m13 + a12*m23 + a13 == m11*b13 + m12*b23 + m13*b33 &&
  a21*m11 + a22*m21 + a23*m31 == m21*b11 + m22*b21 + m23*b31 &&
  a21*m12 + a22*m22 + a23*m32 == m21*b12 + m22*b22 + m23*b32 &&
  a21*m13 + a22*m23 + a23 == m21*b13 + m22*b23 + m23*b33 &&
  a31*m11 + a32*m21 + a33*m31 == m31*b11 + m32*b21 + b31 &&
  a31*m12 + a32*m22 + a33*m32 == m31*b12 + m32*b22 + b32 &&
  a31*m13 + a32*m23 + a33 == m31*b13 + m32*b23 + b33, {m11, m12, m13,
  m21, m22, m23, m31, m32}]


если убрать одно уравнение, например первое(но тут непонятно какое уравнение надо убирать и повлияет ли это на ответ?), то выдает решение примерно на страницу.

вообще еще немного о задаче.
по идее $m_{33}=1$ всегда.
потом еще матрицы $A,B$ я определяю лишь примерно, т.е. с погрешностью, возможно ли в таком случае получить адекватный ответ или всё там "разойдется"?

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение27.07.2012, 17:00 
Аватара пользователя


14/08/09
1140
mrgloom_
Там же в ответе может получаться в зависимости от матриц $A, B$ разиличное кол-во решений. Так что как вы хотите, что бы вам матпакет уравнения классифицировал? :?
Попробуйте решить для конкретного примера и $2 \times 2$, например. Можно даже руками.
Кстати, что-нибудь известно про вырожденность матриц $A,B$? Для некоторых случаев, вероятно, можно придумать более простые алгоритмы. Ну и литературу вам посоветовали...

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 09:06 


20/04/12
114
A это матрица поворота, например при повороте на 90 градусов по часовой стрелке она имеет вид
$$\begin{pmatrix}
0 & 1 & 0 \\
1 & 0 & 0 \\
0& 0 & 1
\end{pmatrix}$$

матрицу $A$ мы можем подбирать по вкусу (поворот может быть на любой угол)

и еще чуть о задаче:
Есть произвольный четырёхугольник мы можем определить координаты его вершин на любом кадре.
есть камера у которой есть перспективные искажения.
мы можем поворачивать его на любой градус под камерой.
задача определить искажение камеры.

наглядный пример.
произвольный объект $X$
Изображение
произвольный объект повернутый на $90$ градусов $X\cdot Rot$
Изображение
произвольный объект с искажением $XM$
Изображение
произвольный объект повернутый на $90$ с искажением $X\cdot Rot\cdot M$
Изображение

мы можем получить матрицу перехода от $XM$ к $X\cdot Rot\cdot M$
т.е. у нас запишется уравнение $X\cdot M\cdot L=X\cdot Rot\cdot M\Rightarrow Rot\cdot M=M\cdot L$
$L$-матрица перехода (известна, но с погрешностью т.к. определяется по точкам)
$M$-матрица искажений, которую надо найти
$Rot$-матрица поворота(известна точно)

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 12:18 


20/04/12
114
учитывая ограничения налагаемые на матрицы $A$ и $M$
$A$ - матрица поворота,значит у неё последняя строка $= (0, 0, 1)$
$M$ - матрица перспективного искажения у нее $m_{33}=1$ ( и $b_{33}=1$ кстати тоже)

получаем 3 последних уравнения которые противоречат(или можно какое то выкинуть?)
$m_{31}= m_{31}b_{11}+m_{32}b_{21}+b_{31}$
$m_{32}= m_{31}b_{12}+m_{32}b_{22}+b_{32}$
$0= m_{31}b_{13}+m_{32}b_{23}$
т.е. получается, что решений нет или это просто даёт доп. ограничения на $ b_{ij}$ ?

и как это интерпретировать? т.е. получается по этим двум картинкам невозможно установить прилагаемое искажение $M$?

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 14:20 
Заслуженный участник
Аватара пользователя


23/07/08
10673
Crna Gora
Скажите, а разве перспективные искажения можно задать просто умножением на некоторую матрицу?
Вот, например, на плоскости квадрат с вершинами $(1,1), (-1,1), (-1,-1), (1,-1)$.
Изображение
Разве существует такое преобразование координат вида $x'=Mx$, при котором этот квадрат отображается в трапецию? Ну, скажем, $(1,1), (-1,1), (-2,-1), (2,-1)$?

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 15:07 


20/04/12
114
наблюдение о том $XRotM\ne XS, \ \text{где} \ S=RotM $
т.е. 2 последовательные операции невозможно проделать за 1 операцию, заменив произведением матриц
и ваш вопрос навёл меня на мысль о том, что матричное уравнение составлено не верно.
т.е. тут не подходит перемножение матриц (оператор как бы не линейный (не знаю как это звучит строго математически))
т.е. в общем виде уравнение надо записывать так
$M[Rot[X]]= L[M[X]]$
а преобразование записываются в такой форме
прямое
$$u= \frac{m_{13} + m_{11}x + m_{12}y}{m_{33} + m_{31}x + m_{32}y};$$
$$v= \frac{m_{23} + m_{21}x + m_{22}y}{m_{33} + m_{31}x + m_{32}y};$$
и обратное
$$
x= -\frac{-(m_{13}m_{22}) + m_{12}m_{23} - m_{23}m_{32}u + m_{22}m_{33}u + m_{13}m_{32}v - m_{12}m_{33}v}{m_{12}m_{21} - m_{11}m_{22} + m_{22}m_{31}u - m_{21}m_{32}u - m_{12}m_{31}v + m_{11}m_{32}v};$$

$$y= -\frac{m_{13}m_{21} - m_{11}m_{23} + m_{23}m_{31}u - m_{21}m_{33}u - m_{13}m_{31}v + m_{11}m_{33}v}{m_{12}m_{21} - m_{11}m_{22} + m_{22}m_{31}u - m_{21}m_{32}u - m_{12}m_{31}v + m_{11}m_{32}v};$$

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 15:21 
Заслуженный участник
Аватара пользователя


23/07/08
10673
Crna Gora
mrgloom_ писал(а):
т.е. тут не подходит перемножение матриц (оператор как бы не линейный (не знаю как это звучит строго математически))
Совершенно верно. Так и звучит, "оператор нелинейный".

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 16:05 


20/04/12
114
можно составить уравнение для 4-х точек, но оно опять же как то не очень хорошо решается.
какие могут быть рекомендации?


код для солвера математики, дождаться выполнения которого я так и не смог:
Код:
Solve[(b13+(b11 (m13+m11 x1+m12 y1))/(m33+m31 x1+m32 y1)+(b12 (m23+m21 x1+m22 y1))/(m33+m31 x1+m32 y1))/(b33+(b31 (m13+m11 x1+m12 y1))/(m33+m31 x1+m32 y1)+(b32 (m23+m21 x1+m22 y1))/(m33+m31 x1+m32 y1))==
(m13+(m11 (a13+a11 x1+a12 y1))/(a33+a31 x1+a32 y1)+(m12 (a23+a21 x1+a22 y1))/(a33+a31 x1+a32 y1))/(m33+(m31 (a13+a11 x1+a12 y1))/(a33+a31 x1+a32 y1)+(m32 (a23+a21 x1+a22 y1))/(a33+a31 x1+a32 y1))&&
(b23+(b21 (m13+m11 x1+m12 y1))/(m33+m31 x1+m32 y1)+(b22 (m23+m21 x1+m22 y1))/(m33+m31 x1+m32 y1))/(b33+(b31 (m13+m11 x1+m12 y1))/(m33+m31 x1+m32 y1)+(b32 (m23+m21 x1+m22 y1))/(m33+m31 x1+m32 y1))==
(m23+(m21 (a13+a11 x1+a12 y1))/(a33+a31 x1+a32 y1)+(m22 (a23+a21 x1+a22 y1))/(a33+a31 x1+a32 y1))/(m33+(m31 (a13+a11 x1+a12 y1))/(a33+a31 x1+a32 y1)+(m32 (a23+a21 x1+a22 y1))/(a33+a31 x1+a32 y1))&&
(b13+(b11 (m13+m11 x2+m12 y2))/(m33+m31 x2+m32 y2)+(b12 (m23+m21 x2+m22 y2))/(m33+m31 x2+m32 y2))/(b33+(b31 (m13+m11 x2+m12 y2))/(m33+m31 x2+m32 y2)+(b32 (m23+m21 x2+m22 y2))/(m33+m31 x2+m32 y2))==
(m13+(m11 (a13+a11 x2+a12 y2))/(a33+a31 x2+a32 y2)+(m12 (a23+a21 x2+a22 y2))/(a33+a31 x2+a32 y2))/(m33+(m31 (a13+a11 x2+a12 y2))/(a33+a31 x2+a32 y2)+(m32 (a23+a21 x2+a22 y2))/(a33+a31 x2+a32 y2))&&
(b23+(b21 (m13+m11 x2+m12 y2))/(m33+m31 x2+m32 y2)+(b22 (m23+m21 x2+m22 y2))/(m33+m31 x2+m32 y2))/(b33+(b31 (m13+m11 x2+m12 y2))/(m33+m31 x2+m32 y2)+(b32 (m23+m21 x2+m22 y2))/(m33+m31 x2+m32 y2))==
(m23+(m21 (a13+a11 x2+a12 y2))/(a33+a31 x2+a32 y2)+(m22 (a23+a21 x2+a22 y2))/(a33+a31 x2+a32 y2))/(m33+(m31 (a13+a11 x2+a12 y2))/(a33+a31 x2+a32 y2)+(m32 (a23+a21 x2+a22 y2))/(a33+a31 x2+a32 y2))&&
(b13+(b11 (m13+m11 x3+m12 y3))/(m33+m31 x3+m32 y3)+(b12 (m23+m21 x3+m22 y3))/(m33+m31 x3+m32 y3))/(b33+(b31 (m13+m11 x3+m12 y3))/(m33+m31 x3+m32 y3)+(b32 (m23+m21 x3+m22 y3))/(m33+m31 x3+m32 y3))==
(m13+(m11 (a13+a11 x3+a12 y3))/(a33+a31 x3+a32 y3)+(m12 (a23+a21 x3+a22 y3))/(a33+a31 x3+a32 y3))/(m33+(m31 (a13+a11 x3+a12 y3))/(a33+a31 x3+a32 y3)+(m32 (a23+a21 x3+a22 y3))/(a33+a31 x3+a32 y3))&&
(b23+(b21 (m13+m11 x3+m12 y3))/(m33+m31 x3+m32 y3)+(b22 (m23+m21 x3+m22 y3))/(m33+m31 x3+m32 y3))/(b33+(b31 (m13+m11 x3+m12 y3))/(m33+m31 x3+m32 y3)+(b32 (m23+m21 x3+m22 y3))/(m33+m31 x3+m32 y3))==
(m23+(m21 (a13+a11 x3+a12 y3))/(a33+a31 x3+a32 y3)+(m22 (a23+a21 x3+a22 y3))/(a33+a31 x3+a32 y3))/(m33+(m31 (a13+a11 x3+a12 y3))/(a33+a31 x3+a32 y3)+(m32 (a23+a21 x3+a22 y3))/(a33+a31 x3+a32 y3))&&
(b13+(b11 (m13+m11 x4+m12 y4))/(m33+m31 x4+m32 y4)+(b12 (m23+m21 x4+m22 y4))/(m33+m31 x4+m32 y4))/(b33+(b31 (m13+m11 x4+m12 y4))/(m33+m31 x4+m32 y4)+(b32 (m23+m21 x4+m22 y4))/(m33+m31 x4+m32 y4))==
(m13+(m11 (a13+a11 x4+a12 y4))/(a33+a31 x4+a32 y4)+(m12 (a23+a21 x4+a22 y4))/(a33+a31 x4+a32 y4))/(m33+(m31 (a13+a11 x4+a12 y4))/(a33+a31 x4+a32 y4)+(m32 (a23+a21 x4+a22 y4))/(a33+a31 x4+a32 y4))&&
(b23+(b21 (m13+m11 x4+m12 y4))/(m33+m31 x4+m32 y4)+(b22 (m23+m21 x4+m22 y4))/(m33+m31 x4+m32 y4))/(b33+(b31 (m13+m11 x4+m12 y4))/(m33+m31 x4+m32 y4)+(b32 (m23+m21 x4+m22 y4))/(m33+m31 x4+m32 y4))==
(m23+(m21 (a13+a11 x4+a12 y4))/(a33+a31 x4+a32 y4)+(m22 (a23+a21 x4+a22 y4))/(a33+a31 x4+a32 y4))/(m33+(m31 (a13+a11 x4+a12 y4))/(a33+a31 x4+a32 y4)+(m32 (a23+a21 x4+a22 y4))/(a33+a31 x4+a32 y4))&&m33==1,{m11,m12,m13,m21,m22,m23,m31,m32}]

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 21:06 
Заслуженный участник


27/04/09
28128
Небольшой комментарий вбок: в Mathematica ответ {} на Solve означает, что решений нет, а похожий на него {{}} означает бесконечное количество решений. Если получилось второе, можно попробовать Reduce или что-нибудь похожее, чтобы одни переменные выражались через другие. Или можно попробовать Solve с указанием меньшего количества переменных, чтобы через остальные их можно было выражать.

 Профиль  
                  
 
 Re: матричное уравнение
Сообщение30.07.2012, 21:15 
Аватара пользователя


11/08/11
1135
mrgloom_ в сообщении #599943 писал(а):
только всё же не понятно, почему выдало всё 0, если уравнения были записаны в общем виде с переменными a,b.

Сказано же, что нетривиальное решение есть только в случае, когда у матриц $A$ и $B$ есть хоть одно общее характеристическое число. Если склероз мне не изменяет, даже для матриц $3 \times 3$ это условие выглядит весьма нетривиально, если его через элементы самих матриц записывать. Возможно, ваш матпакет тупо его ниасилил и решил считать, что оно не выполнено, и дело с концом. Пользуясь матпакетами, не забывайте, что их нам ведь не Яхве даровал на золоченых скрижалях, они же людьми написаны.

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

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

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



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

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


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

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