Алгоритмы для линейной системы ОДУ


12

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

dudt=Au
An×n

Есть неявное правило трапеции, которое я имел хороший опыт.

(IΔt2A)un+1=(I+Δt2A)un

А как насчет явных методов или аппроксимаций Паде? Кроме того, как это изменится, если в RHS будет добавлен принудительный термин?


5
Нам действительно нужно больше информации об A. В зависимости от расположения собственных значений, стабильность может быть проблемой, влияющей на выбор между явными или неявными методами. Также имеет значение, в каком порядке вы хотели бы и будет ли А изменяться во времени / в зависимости от того, нужен ли вам жесткий решатель. Там действительно не хватает информации, чтобы сделать информированный ответ.
Годрик Провидец

@GodricSeer Спасибо, Годрик. Я добавил некоторые предположения о . A
Габриэль Ланди

@GabrielLandi Вам нужно будет добавить больше информации, чтобы получить конкретный ответ. Насколько большой ? Является ли нормально? Собственные значения реальны, мнимы или сложны? Насколько они велики (наибольшая и наименьшая величина)? AAA
Дэвид Кетчон

Ответы:


15

Поскольку ваша матрица не зависит от результатом является экспоненциальная матрица, умноженная на начальный вектор. Стандартное обсуждение подходящего метода можно найти по адресу http://scholar.google.at, выполнив поиск по «Девятнадцати сомнительным путям».u

Алгоритм масштабирования и возведения в квадрат (наименее сомнительный) см. Также http://blogs.mathworks.com/cleve/2012/07/23/a-balancing-act-for-the-matrix-exponential/

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.