2014 dxdy logo

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

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


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


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

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

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

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

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



Начать новую тему Ответить на тему
 
 Алгоритм выбора численного метода интегрирования системы ДУ
Сообщение07.03.2006, 15:38 


11/06/05
8
Orel
Задана система нелинейных обыкновенных автономных дифференциальных ур-ний (СДУ) n-ого порядка. Как можно аргументированно выбрать наиболее подходящий метод численного интегрирования с оптимальным для данной СДУ шагом?
При этом подчеркнем, что система аналитического решения не имеет, т.е. найти ни локальную ни глобальную погрешность наверное то и нельзя. Что с чем, собственно, сравнивать? Решения при разном шаге? Нет, это ошибка, поскольку известно, что каждый метод обладает своим оптимальным шагом для той или иной конкретной задачи, т.е. отклонение от оптимального шага в меньшую или большую сторону приведет к увеличению погрешности.
Странно то, что данный вполне закономерный вопрос должен был когда-нибудь да появиться у теоретиков численных методов, но, ни у классиков жанра, ни у современных мыслителей как-то что-то ничего на этот счет нету. Или я ошибаюсь?

 Профиль  
                  
 
 
Сообщение07.03.2006, 15:52 
Заслуженный участник


09/02/06
4401
Москва
Вопрос не правильно поставлен. Не существует алгоритма подходящегося для всех случаев. В случае, когда в уравнении
$\frac {dx}{dt} =f(x) \in (R^n \to R^n)$
функция достаточно гладкая, то чем выше порядок аппроксимации тем лучше. Тут так же надо иметь в виду что повышение порядка не автоматический улучшает точность, а при оптимальном выборе шага, и с ростом порядка точности растёт быстро и сложность реализации алгоритма.

 Профиль  
                  
 
 
Сообщение07.03.2006, 15:53 
Экс-модератор
Аватара пользователя


23/12/05
12064
Press W.H., Teukolsky S.A., Vetterling W.T. Numerical recipes in C

Там есть описание, на мой взгляд, хорошего метода с адаптивным шагом, кстати без прохода с другим шагом

 Профиль  
                  
 
 
Сообщение07.03.2006, 20:13 


11/06/05
8
Orel
Спасибо за подсказки, только вопрос, на мой взгляд, поставлен вобщем-то недвусмысленно и вполне корректно (к г-ну Руст).

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

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

 Профиль  
                  
 
 Re:
Сообщение05.12.2009, 15:02 


22/09/09
275
Artem_ в сообщении #12393 писал(а):
Спасибо за подсказки, только вопрос, на мой взгляд, поставлен вобщем-то недвусмысленно и вполне корректно (к г-ну Руст).

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

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

Я обычно делаю так:
1. Делаю численное приближение матрицы Якоби правых частей СДУ (это легко, поскольку у Вас уже есть программа вычисления правых частей).
2. С помощью пакета EISPACK нахожу спектр этой матрицы.
3. Анализирую спектр на предмет:
_а. Комплексности;
_б. Жесткости.
4. Делаю выводы из а. и б. и выбираю метод решения. Для каждого метода размер шага связан с жесткостью матрицы Якоби (обычно дается автором метода при изложении процедуры интегрирования).
Пункты 1.- 4. можно назвать "азы пилотажа".
Дальнейший анализ матрицы Якоби может служить примером "высшего пилотажа". Но об этом коротко не напишешь.

 Профиль  
                  
 
 Re: Алгоритм выбора численного метода интегрирования системы ДУ
Сообщение05.12.2009, 15:54 
Заслуженный участник


09/08/09
3438
С.Петербург
Для достато
Artem_ в сообщении #12369 писал(а):
Задана система нелинейных обыкновенных автономных дифференциальных ур-ний (СДУ) n-ого порядка. Как можно аргументированно выбрать наиболее подходящий метод численного интегрирования с оптимальным для данной СДУ шагом?
Для достаточно широкого класса систем (в частности, для жёстких систем) методы с постоянными шагом вообще являются малоприменимыми. В своё время для решения задач связанных с расчётом химической кинетики пользовался программой LSODE (Livermore Solver for Ordinary Differential Equations) с адаптивным шагом: довольно хорошо работает и для жёстких, и для "мягких" случаев.

 Профиль  
                  
 
 Re: Алгоритм выбора численного метода интегрирования системы ДУ
Сообщение06.12.2009, 09:22 


22/09/09
275
Maslov в сообщении #268170 писал(а):
Для достато
Artem_ в сообщении #12369 писал(а):
Задана система нелинейных обыкновенных автономных дифференциальных ур-ний (СДУ) n-ого порядка. Как можно аргументированно выбрать наиболее подходящий метод численного интегрирования с оптимальным для данной СДУ шагом?
Для достаточно широкого класса систем (в частности, для жёстких систем) методы с постоянными шагом вообще являются малоприменимыми. В своё время для решения задач связанных с расчётом химической кинетики пользовался программой LSODE (Livermore Solver for Ordinary Differential Equations) с адаптивным шагом: довольно хорошо работает и для жёстких, и для "мягких" случаев.

У Хиндмарша сотоварищи в этом смысле лучше работает связка: VODE/VODPK.

 Профиль  
                  
 
 Re: Алгоритм выбора численного метода интегрирования системы ДУ
Сообщение06.12.2009, 17:04 


17/01/09
119
Artem_ в сообщении #12369 писал(а):
Странно то, что данный вполне закономерный вопрос должен был когда-нибудь да появиться у теоретиков численных методов, но, ни у классиков жанра, ни у современных мыслителей как-то что-то ничего на этот счет нету. Или я ошибаюсь?

Дело в том, что эта задача, по-видимому, в такой постановке не решается. В реальной жизни выбор всегда делается путем анализа "физики" задачи (с учетом информации о том, что моделирует эта система и как ведет себя моделируемый объект). Если и это не помогает - тогда просто методом проб и ошибок. :D

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

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



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

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


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

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