Русскоязычный форум закрыт из-за отсутствия активности (доступен только для чтения).
Пожалуйста, пользуйтесь англоязычной его версией. Приносим извинения за неудобства
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

Вход


Опции
К последнему сообщению К первому непрочитанному
Offline уни  
#1 Оставлено : 23 октября 2010 г. 13:51:08(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Одномерный случай.

Уравнение: sin(exp(x))=0

Документ: Решение СНУ 2.sm

Пояснения:
Это тривиальный случай. Более понятным будут большие размерности.
Мы заменяем исходное уравнение немножко другим, добавляя одну переменную v.
Смысл замены в том, чтобы новая кривая спокойно проходила нули. Новое уравнение построено таким образом, что содержит все корни старого уравнения.
Находим дифурчик, который соответствует новой кривой. С помощью решателя диффура восстанавливаем интегральную кривую, начиная с условия v=1. Мы должны идти вдоль начального уравнения. Конкретно в этом случае можно взять любое значение x, чтобы "сесть" на кривую. В задачах с большей размерностью проще всего взять одно известное решение системы. Новая кривая, выходя из v=1 проходит все нули исходного уравнения. Мы отбираем те, где знак v изменился. Можно, конечно и по самой функции так пройтись, но смысл будет понятен позже, когда я покажу работу алгоритма в трёхмерном пространстве.
Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)

Wanna join the discussion?! Login to your Форум проекта SMath forum account. Новые регистрации запрещены.

Offline уни  
#2 Оставлено : 23 октября 2010 г. 15:27:41(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Одномерный случай.

Уравнение: x^7-21*x^5+84*x^3-64*x=0


Документ: Решение СНУ 3.sm
Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline уни  
#3 Оставлено : 23 октября 2010 г. 19:58:52(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Двумерный случай.

Система нелинейных уравнений: sys(4*(y-1)^2+(x-1)^2-1≡0;y-x*sin(25*x)≡0;2;1)

Документ: Решение СНУ 4.sm

Пояснения: Начальная точка (0,4; 0,58) - не лежит ни на одной из кривых, поэтому интегральная кривая будет являться по виду чем-то средним между обеими кривыми в зависимости от начальной точки. Если взять точку на эллипсе, то проекция 3D кривой будет эллипсом, если взять точку на синусоиде, то и проекция кривой будет повторять синусоиду. Т.о. мы выбираем по какой кривой двигаться.
Тем не менее, видно, что мы нашли все 16 решений системы, двигаясь вдоль одного параметра.

Отредактировано пользователем 28 октября 2010 г. 18:05:03(UTC)  | Причина: Не указана

Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline уни  
#4 Оставлено : 23 октября 2010 г. 21:31:04(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Система диффуров для двумерного случая получается путём векторного перемножения нормалей поверхностей.
Эта система описывает линию пересечения поверхностей в 3D. Если выбрать на этой линии точку и построить вектора нормалей к обеим поверхностям, а потом их векторно перемножить, то результирующий вектор будет направлен вдоль касательной к линии пересечения. Решение же диффура методом Рунге-Кутта - есть восстановление линии пересечения поверхностей, т.е. построение интегральной кривой. Ясно, что эта кривая проходит через все решения системы (односвязные). Она как ниточка с иголкой протыкает пространство на размерность меньше в точках решения.



Нули в векторе - это специальный приём. Чтобы не пересчитывать вектор D(t,x) для каждой начальной точки, эти точки вводятся в сам диффур в качестве неиспользуемых переменных (0 - это константа при интегрировании). Поэтому в самом решателе диффура можно ссылаться на эти константы.

Отредактировано пользователем 24 октября 2010 г. 11:40:31(UTC)  | Причина: Не указана

Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline уни  
#5 Оставлено : 26 октября 2010 г. 18:18:38(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Двумерный случай (с Лемнискатой Бурнулли).
Система нелинейных уравнений:sys((2/3*y)^2+(4*x)^2-1≡0;-x^2+y^2-(x^2+y^2)^2≡0;2;1)

Документ: Решение СНУ 5.sm

П.С. Наверное это можно сделать немного проще, учитывая наличие явной формулы для Лемнискаты, но не уверен. Вообще говоря, уже давно пора не ограничивать себя только численными методами, как это делают в дискретной математике. Современная вычислительная техника и технологии программирования шагнули далеко вперёд и что 50 лет назад считалось фантастикой, сегодня обыденность дня.

Отредактировано пользователем 28 октября 2010 г. 18:05:34(UTC)  | Причина: Не указана

Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline OchkovVF  
#6 Оставлено : 26 октября 2010 г. 21:33:37(UTC)
OchkovVF


Статус: Advanced Member

Группы: Registered, Advanced Member
Зарегистрирован: 03.06.2009(UTC)
Сообщений: 156
Мужчина
Российская Федерация

Сказал «Спасибо»: 205 раз
Поблагодарили: 3 раз в 3 постах
См. похожую задачу
communities.ptc.com/videos/1472
Offline уни  
#7 Оставлено : 27 октября 2010 г. 19:38:14(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Да, кстати, по поводу этого метода нахождения решений. Называется он - метод Драгилева. Научил меня им пользоваться Алексей (Иванов А. Б.), который тут был не понят Good Судя по словам Алексея Борисовича, метод является усовершенствованием метода продолжения по параметру. Нашёл тут книжку, где есть кое-что как раз в тему этого метода:
В. И. Шалашилин, Е. Б. Кузнецов, Метод продолжения решения по параметру и наилучшая параметризация в прикладной математике и механике, Эдиториал УРСС, Москва, 1999 г, с. 222.
Ссылка на диссертацию по этой работе одного из воспитанников автора (Е. Б. Кузнецов): Параметризация вычислительного процесса в задачах математического моделирования, Красников С. Д., М., 2008 г. (05.13.18)

Книжка есть в электронном виде в сети (djvu). Там есть начальная теория. Жаль я не математик и в моей инженерной практике такие знания не нужны, хотя аспирантуру начинал по этой же специальности (05.13.18). Может быть мне кто-нить растолкует чем отличается подход в диссертации от подхода в методе Драгилева и какие цели и там, и там преследуются.
Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline уни  
#8 Оставлено : 27 октября 2010 г. 22:21:03(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Двумерный случай (экстремумы функции Химмельблау). Посмотрим на влияние выбора начальной точки при восстановлении интегральной кривой.

Задачка: найти все точки экстремума функции Химмельблау f(x;y)←(x^2+y-11)^2+(x+y^2-7)^2

Вариант 1. Точка (-5,56; 4,06) - эта точка выбиралась графически, как лежащая на втором уравнении. Было выбрано именно второе уравнение, т.к. оно односвязно и проходит все точки экстремума - нули производных.

Документ: Решение СНУ 6_1.sm

Отредактировано пользователем 28 октября 2010 г. 1:11:49(UTC)  | Причина: Не указана

Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline уни  
#9 Оставлено : 27 октября 2010 г. 22:36:50(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Задачка: найти все точки экстремума функции Химмельблау f(x;y)←(x^2+y-11)^2+(x+y^2-7)^2
Вариант 2. Точка (-7.3725; -4.3366) На картинке я уравнение приравнял к нулю - это атавизм Good Нужно найти экстремумы.

Документ: Решение СНУ 6_2.sm

Решение уже идёт конкретно вдоль второго уравнения, чтобы не сбиться с пути Good
Точность оставляет желать лучшего. Интересно было бы посмотреть на итерационные методы на этой же задачке.

Отредактировано пользователем 28 октября 2010 г. 1:13:44(UTC)  | Причина: Не указана

Россия навсегда!
Вячеслав Мезенцев
thanks 1 пользователь поблагодарил уни за этот пост.
genf оставлено 25.01.2014(UTC)
Offline alekcey  
#10 Оставлено : 30 октября 2010 г. 20:33:14(UTC)
alekcey


Статус: Member

Группы: Registered
Зарегистрирован: 04.04.2010(UTC)
Сообщений: 16
Откуда: Ростов

уни написал:
Двумерный случай (с Лемнискатой Бурнулли).
Система нелинейных уравнений:sys((2/3*y)^2+(4*x)^2-1≡0;-x^2+y^2-(x^2+y^2)^2≡0;2;1)
П.С. Наверное это можно сделать немного проще, учитывая наличие явной формулы для Лемнискаты, но не уверен. Вообще говоря, уже давно пора не ограничивать себя только численными методами, как это делают в дискретной математике. Современная вычислительная техника и технологии программирования шагнули далеко вперёд и что 50 лет назад считалось фантастикой, сегодня обыденность дня.

Известно, что пакет Математика 7 находит все корни алгебраических систем. Причём довольно шустро… При этом не доводилось слышать, что проблемы полного решения СНАУ уже не существует. Интересно узнать, а с помощью Вашего метода можно найти ВСЕ решения алгебраической системы уравнений?
Offline Lrrr  
#11 Оставлено : 15 января 2012 г. 4:45:32(UTC)
Lrrr

Статус: Newbie

Группы: Registered
Зарегистрирован: 24.12.2011(UTC)
Сообщений: 7

Доброго времени суток!

уни, хотелось бы Вас поблагодарить за подробное иллюстрированное и концентрированное изложение метода Драгилева, описание которого приведено на "exponenta.ru". Но там несколько обширных тем, в которых я просто заблудилсяGood. Извините, тема еще актуальна? Хотелось бы задать несколько вопросов.
Offline Aleksey_1  
#12 Оставлено : 15 января 2012 г. 9:11:57(UTC)
Aleksey_1

Статус: Newbie

Группы: Registered
Зарегистрирован: 12.01.2012(UTC)
Сообщений: 4
Откуда: Ростов-на-Дону

Поблагодарили: 3 раз в 2 постах
А Вы обратитесь там же с конкретным вопросом, и Вам, уверен, подробно ответят...Good

Offline Lrrr  
#13 Оставлено : 16 января 2012 г. 1:34:23(UTC)
Lrrr

Статус: Newbie

Группы: Registered
Зарегистрирован: 24.12.2011(UTC)
Сообщений: 7

Спасибо!
У «экспоненты» есть одно свойство– необходимость подвешивать файлы вложений на внешние обменники. Через некоторое время такие файлы имеют свойство пропадать. И пароль там генерит сама система и я его постоянно забываю, тк редко пользуюсьSad.

Поэтому уж здесь, если не затруднит, то вот такие пока вопросы. Я не математик, поэтому извините, если что-то совсем коряво буду излагать, или очень очевидные вещи спрашивать.
Для определенности можно рассматривать плоскую задачу о пересечении двух кривых, заданных в неявном виде. Тут можно простое геометрическое толкование задачи придумать, что для понимания тоже неплохо.

1. Исходную систему уравнений в ряде случаев необходимо приводить к виду, когда
Число_ переменных =число_ уравнений + 1 (или я не прав?)
Существуют ли какие-либо алгоритмы или рекомендации по выполнению такого приведения? Или это больше искусство, и все зависит от конкретного случая?
2. Выбор начального условия. Получается, что первоначально нужно знать хотя бы одну точку пересечения. Есть ли алгоритмы поиска таких точек с использованием самого Метода?
Offline уни  
#14 Оставлено : 6 октября 2012 г. 14:33:40(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Я полностью автоматизировал работу алгоритма в SMath. Единственное пока неудобство - это необходимость внешнего плагина для его работы: MapleWrapper плагин.
Дело в том, что мне нужно особым образом вычислять Якобиан, а встроенная функция не достаточно ещё реализована. Поэтому приходится пользоваться услугами maple через вышеуказанный плагин.

Много примеров по работе с методом я выложил на параллельном английском форуме: Draghilev's method.

Ответы на последние вопросы:
1. Сейчас реализация метода самостоятельно делает все необходимые преобразования, поэтому можно не думать о ещё одной переменной, а просто задать систему.
2. Начальное условие не обязательно должно быть решением системы. Если обратиться к аналогии, то можно сказать так: для случая двух уравнений и двух переменных первоначальная точка должна быть решением одного из входящих в систему уравнений.

Что касается работы с функцией Draghilev(), то я остановлюсь попозже более подробно на тонких моментах настройки решателя, но это вовсе не исключает понимания хотя бы общих принципов теории. Я старался иллюстрировать примеры, поэтому советую начать именно с них и пройтись по каждому.
Россия навсегда!
Вячеслав Мезенцев
Offline Ber7  
#15 Оставлено : 15 ноября 2013 г. 1:06:36(UTC)
Ber7


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 22.03.2010(UTC)
Сообщений: 223
Мужчина
Израиль
Откуда: Beer-Sheva

Сказал «Спасибо»: 173 раз
Поблагодарили: 256 раз в 133 постах
Уважаемый Вячеслав,не могли бы показать Вы решение этого примера
методом Драгилева? Ваше решение послужит мне образцом для нахождения
координат звеньев других механизмов.
С уважением,Фридель.

Отредактировано пользователем 12 января 2014 г. 9:03:28(UTC)  | Причина: Не указана

Вложение(я):
maplePrimer1.sm (26kb) загружен 49 раз(а).
Метод расчета рычажных механизмов :
http://www.exponenta.ru/...litskiy-ivanov/index.asp
Offline уни  
#16 Оставлено : 15 ноября 2013 г. 20:49:31(UTC)
уни


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 02.06.2009(UTC)
Сообщений: 346
Мужчина
Российская Федерация

Сказал «Спасибо»: 50 раз
Поблагодарили: 156 раз в 105 постах
Доброго Фридель.

При такой постановке задачи я не знаю как применить метод. В данном случае не хватает каких-то дополнительных условий. Решения могут быть закручены как по часовой стрелке, так и против часовой стрелки, а это неопределённость в постановке. Метод Драгилева ищет численные решения в строго определённых (аналитичных) системах. Ещё мне не совсем ясно на счёт того что задано и что нужно найти. Если начальные координаты отрезка заданы, то найти координаты второго конца можно и без метода Драгилева при помощи функций для решения систем нелинейных уравнений, которые есть в соотв-щем дополнении.
Россия навсегда!
Вячеслав Мезенцев
Пользователи, просматривающие эту тему
Similar Topics
численное решение СНУ (Предложения)
по alekcey 04.04.2010 1:43:30(UTC)
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.