2014 dxdy logo

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

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


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


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

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

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

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

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



Начать новую тему Ответить на тему
 
 Выбор метода для решения жесткой системы ОДУ
Сообщение05.04.2010, 21:14 


05/04/10
3
Добрый вечер/день!
Столкнулась необходимостью решить численно жесткую систему ОДУ. Система нелинейная, 3 уравнения. Начала считать Рунге-Кутта(4, явный). Но безуспешно. Выяснилось, что необходимо полуявным методом (то есть в табл.Бутчера гл.диагональ не нулевая) решать. Скачав и прочитав много литературы, ясности нет. А именно,
1 необходимы ли условия на шаг или уже нет
2 порядок уже 2-й
3 эффективен ли? может быть какой-то другой лучше? (метод Гира, Нордикса ...)
4 какие еще секреты для жестких систем?

Заранее благодарна всем желающим помочь! :-)

 Профиль  
                  
 
 Re: Выбор метода для решения жесткой системы ОДУ
Сообщение05.04.2010, 21:25 


13/11/09
166
На мой взгляд, базовая книга по теме - Хайрер Э., Ваннер Г. Решение обыкновенных дифференциальных уравнений. Жесткие и дифференциально-алгебраические задачи

 Профиль  
                  
 
 Re: Выбор метода для решения жесткой системы ОДУ
Сообщение05.04.2010, 21:35 
Заслуженный участник


09/08/09
3438
С.Петербург
В свое время для решения жестких систем ОДУ, возникающих в процессе моделирования химической кинетики, пользовался фортрановской программой LSODE (Livermore Solver for Ordinary Differential Equations).
Вариант LSODA хорошо подходит как для жестких, так и для нежестких систем, т.к. автоматически переключается с метода Адамса на метод Гира.

Взять можно здесь: http://www.netlib.org/odepack/

 Профиль  
                  
 
 Re: Выбор метода для решения жесткой системы ОДУ
Сообщение05.04.2010, 21:40 


05/04/10
3
LSODE (Livermore Solver for Ordinary Differential Equations) - есть ли аналог для VStudio C++ ?
Хайрера скачала в процессе изучения!)

 Профиль  
                  
 
 Re: Выбор метода для решения жесткой системы ОДУ
Сообщение05.04.2010, 21:47 
Заслуженный участник


09/08/09
3438
С.Петербург
Irina_DS в сообщении #306667 писал(а):
LSODE (Livermore Solver for Ordinary Differential Equations) - есть ли аналог для VStudio C++ ?
Про реализацию на C++ ничего не знаю. Но можно построить фортрановскую DLL и подключить ее к программе на C++ без особых проблем. Собственно, я так и делал, но тогда существовал еще микрософтовский фортран. Ну а сейчас для этой цели вполне можно использовать фриварный Watcom (http://www.openwatcom.org/index.php/Main_Page)

 Профиль  
                  
 
 Re: Выбор метода для решения жесткой системы ОДУ
Сообщение05.04.2010, 22:06 


05/04/10
3
Watcom - это безусловно прекрасно! Но за отсутствием фривольного количества времени и небольшого опыта в таких делах, изучу это после deadline :-)
В LSODE используется метод дифференцирования назад. Где о нем написано компактно и полно?)
А Рунге-Кутта уже не актуален?

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

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



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

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


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

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