Roman Osipov
Долгожитель
|
Вы не пробовали поступать так (пример написан ниже) рассмотрю систему: x+y+z=0 2x+2y+2z=0 x+y-z=3 Определитель соотв. матрицы системы delta=0 (поэтому по формулам Крамера решать нельзя). Система просто имеет бесконечно много решений вида: x=Const y=3/2-Const z=-3/2 Const любое число, которое Вам заблагорассудится.
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 15 июля 2008 15:39 | IP
|
|
Guest
Новичок
|
Да! Похоже Вы правильно меня поняли. Для наглядности можно представить ее так: a*Xc(1)+c*Yc(1)+tx = (a'*Xc(1)+c'*Yc(1)+tx')( b'*Xc(1)+d'*Yc(1)+ty'); b*Xc(1)+d*Yc(1)+ty = (a'*Xc(1)+c'*Yc(1)+tx')sqrt(1-(sin(PHI(1)))^2)*(delta); a*Xc(2)+c*Yc(2)+tx = (a'*Xc(2)+c'*Yc(2)+tx')( b'*Xc(2)+d'*Yc(2)+ty'); b*Xc(2)+d*Yc(2)+ty = (a'*Xc(2)+c'*Yc(2)+tx')sqrt(1-(sin(PHI(2)))^2)*(delta); a*Xc(3)+c*Yc(3)+tx = (a'*Xc(3)+c'*Yc(3)+tx')( b'*Xc(3)+d'*Yc(3)+ty'); b*Xc(3)+d*Yc(3)+ty = (a'*Xc(3)+c'*Yc(3)+tx')sqrt(1-(sin(PHI(3)))^2)*(delta); delta, я так понимаю, образовалась при преобразовании cos в sin ? Как же нам дальше быть? Может в MathCad попробовать найти символьное решение системы ?
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 15 июля 2008 15:49 | IP
|
|
Roman Osipov
Долгожитель
|
Mathcad с этим справится, но числа в правой части для получения решения в нем лучше ввести вне соотв. символьной процедуры решения, а то получите выражение, которое в длину на 10 экранах не уместится. Используйте функцию lsolve. delta = 1, если угол лежит в 1 или 2 четверти delta = -1, если угол лежит в 3 или 4 четверти Только не sqrt(1-(sin(PHI(i)))^2), а sqrt(1-(cos(PHI(i)))^2), это понятно, просто описка, я ведь sin(PHI(i)) выражал через cos(PHI(i))
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 15 июля 2008 15:59 | IP
|
|
Roman Osipov
Долгожитель
|
Я поправил соотв. сообщения. Что скажете на счет сообщения от 15.39?
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 15 июля 2008 16:01 | IP
|
|
Guest
Новичок
|
Честно говоря я не понял, что Вы хотели сказать. Я ведь как раз и обхожу сингулярность матрицы (определитель равен 0) для того, чтобы можно было пользоваться методами Крамера и Гаусса, пользуясь при этом полярными координатами. Ну грубо говоря, если у Вас есть 3 точки у которых координаты x1=10, y1=10, x2=10, y2=20, x3=10, y3=30 (X у всех равен ), а координаты этих точек после трансформации не равны как для X так и для Y, то метод Крамера с использованием прямоугольной системы "даст трещину", поскольку определитель матрицы будет равен 0, а в полярных координатах все будет ОК. Это и была моя идея обойти такие трудности.
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 15 июля 2008 16:16 | IP
|
|
Guest
Новичок
|
Спасибо огромное Roman Osipov! Буду сейчас трудиться в MathCad! Если интересно о результатах сообщю здесь.
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 15 июля 2008 16:27 | IP
|
|
Roman Osipov
Долгожитель
|
У Вас бывают случаи, когда система имеет бесконечно много решений, поэтому, я подумал, что из этого бесконечного множества Вы можете выбрать по своему усмотрению нужное, чтобы оно встроилось во всю систему. Сообщайте о результатах, надеюсь, что все получится в лучшем виде.
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 15 июля 2008 16:31 | IP
|
|
|