Главный вопрос в том, какие физические процессы (волны или термины источника) имеют временные масштабы, которые вы хотите решить, и которые вы бы предпочли перешагнуть. Если вас не интересует самый быстрый масштаб времени в системе, то уравнения называются «жесткими». Гиперболические законы сохранения обычно записываются в виде систем первого порядка.
UT+ ∇ ⋅ F( У ) = G ( U , ∇ U , . . . )
где содержит консервативные переменные, F - поток, а G называется «исходным термином». Обратите внимание , что с этой терминологией, поток F не содержит производных, поэтому диффузионные и дисперсионные члены должны идти в G . Весьма распространено использовать неявную или полуявную интеграцию, когда термины источника жесткие, как со многими проблемами химической реакции и когда присутствует диффузия или дисперсия. Химическая реакция обычно может быть неявно решена локально в каждом элементе, поскольку она не связана с соседними клетками.UFграммFграмм
A = [ ∂F/ ∂ты ]
Например, если вы моделируете эволюцию океана в течение длительного времени, вас могут не интересовать поверхностные гравитационные волны (например, цунами). К сожалению, изменение скорости волны (либо замедление ее использования явных методов, либо приведение к модели с «жесткой крышкой», которая может использовать проекцию) меняет физику, изменяя способ распространения вихрей. Вихри в океане - это эффект, когда гравитационная волна почти уравновешена конвекцией, но не совсем.
Другим примером является сжимаемый Эйлер, например, поток воздуха через центр обработки данных. Скорость акустической волны намного выше, чем конвекция, и только последняя важна для теплопередачи. Если вы не заинтересованы в акустике, вы можете использовать неявный метод.
Относительная эффективность неявного метода зависит от затрат на решение алгебраических систем на каждом шаге / этапе по сравнению с размером шага, который можно использовать с явными методами. Эффективное решение таких алгебраических систем является активной темой исследований. (Сделайте еще один вопрос, и я отвечу на него и ссылку здесь.)
Вы также можете использовать неявные методы, если:
- ваши уравнения имеют значимые устойчивые состояния, которые вы хотите исследовать напрямую, возможно, для характеристики стабильности
- Вы решаете проблемы обратного / ассимиляции данных, связанные с долгой историей
- Вы хотите обойти барьеры порядка, чтобы использовать методы интеграции времени очень высокого порядка с определенными свойствами стабильности
- вы используете пространственно-временные адаптивные методы
- вы используете пространственную дискретизацию, которая уже требует решения алгебраической системы (например, непрерывные методы конечных элементов с согласованной матрицей масс)