2014 dxdy logo

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

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


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


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Формирователь коэффициентов численных решателей ДУ
Сообщение19.10.2022, 14:53 
Аватара пользователя


09/05/06
115
Задача: Упростить код для численных решателей разных порядков с помощью динамического формирования коэффициентов.

Не подскажет ли кто готовых символьных генераторов (скрипта в maple, например) коэффициентов для численных решателей ДУ?

Пример кода такого решателя для разных порядков приведён тут: rkfixed.cs и Adams.cs. Представлены коэффициенты для RK1 - RK6 и AB1 - AB8.

Мне хотелось бы иметь одну готовую функцию, которая при старте программы создаст необходимый набор коэффициентов для разумного количества порядков. Есть ли какой-то справочник, где не для математика формулы эти выписаны в более менее удобном для программирования общем виде?

 Профиль  
                  
 
 Re: Формирователь коэффициентов численных решателей ДУ
Сообщение19.10.2022, 17:00 


31/08/22
183
Так численно или символьно? Разница колоссальна.

https://github.com/mdmxfry/DE-methods?ysclid=l9fp304s7q370553504#runge_kutta
https://www.alglib.net/diffequations/rungekutta.php
В MathNet вроде что то было, можно код оттуда тисануть.

uni в сообщении #1567123 писал(а):
Есть ли какой-то справочник, где не для математика формулы эти выписаны в более менее удобном для программирования общем виде?

:mrgreen: мечта...

 Профиль  
                  
 
 Re: Формирователь коэффициентов численных решателей ДУ
Сообщение20.10.2022, 06:45 
Аватара пользователя


09/05/06
115
Расчёт коэффициентов символьно, результат в виде численных дробей, как в примере Adams.cs. Сами коэффициенты - это числа для известной общей формы численного решателя. Меня заколебало искать эти коэффициенты и копипастой заниматься. Хочется уже раз и навсегда вычислить их гарантированно правильно в общем виде. Я уже ошибался, занимаясь копированием, ошибку не сразу найдёшь потом.
Я знаю, что должны быть где-то эти формулы, так как их приводят в лекциях по численным решателям, где говорят типа, что легко показать и не показывают как действительно выполнить расчёт этих коэффициентов в символьном пакете. Лень самому этим заниматься, а какие статьи смотреть не знаю. Все либо на готовом сидят, либо пропускают вывод, считая, что любой это может сделать.

 Профиль  
                  
 
 Re: Формирователь коэффициентов численных решателей ДУ
Сообщение20.10.2022, 07:29 
Заслуженный участник


13/12/05
4627
Насколько я знаю в случае метода Рунге-Кутты для произвольного порядка формул нет. До седьмого порядка только вроде есть.

-- Чт окт 20, 2022 09:30:47 --

uni в сообщении #1567180 писал(а):
какие статьи смотреть не знаю

Бахвалов Численные методы

 Профиль  
                  
 
 Re: Формирователь коэффициентов численных решателей ДУ
Сообщение20.10.2022, 07:42 
Аватара пользователя


09/05/06
115
Спасибо, посмотрю. Мне не только методы Рунге-Кутты нужны, но и другие явные и неявные, для которых есть общая форма и способ вычисления коэффициентов. Это для математического пакета SMath Studio, я в нём поддерживаю разные решатели (их там более 30 из разных библиотек). Для академических целей и с целью сравнения их между собой хочется иметь какой-то базовый набор, где я мог бы сослаться на такой-то справочник в коде, что мол взято оттуда, либо приложить maple-скрипт, который генерирует коэффициенты для какой-то формы решателя (не первые 4 порядка, которые есть везде, но и порядки повыше). Сейчас либо копипаста коэффициентов неизвестно откуда, либо сторонняя библиотека и проверяешь по факту: порядок больше - ошибка меньше.

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

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



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

Сейчас этот форум просматривают: YandexBot [bot]


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

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