Явная и неявная разностные схемы
англ. Explicit and implicit schemes
Два способа шага по времени: явная схема вычисляет новый слой напрямую, но требует маленького шага; неявная решает систему уравнений, зато устойчива при любом шаге.
Дискретизируя эволюционное уравнение по времени, выбирают между явной и неявной схемами. Явная для теплопроводности берёт новое значение напрямую из соседних старых: — значение на новом слое пишется в лоб, без решения систем. Неявная выражает новый слой через самого себя: — на каждом шаге решается трёхдиагональная система, зато алгоритм Thomas за линейное время. Базовая терминология — в терминах разностная схема.
Расплата за простоту явной схемы — условие устойчивости : шаг по времени обязан быть квадратично меньше шага по сетке, и удвоение точности в пространстве вчетверо удорожает время. Неявная схема безусловно устойчива — шаг берут из требований точности, а не страха взрыва. Для волнового уравнения аналогичную роль играет условие Куранта : информация не должна за шаг перелетать через клетку. Золотая середина — схема Кранка—Николсон, комбинация обоих подходов с вторым порядком по времени. Численные сеточные методы и их разбор — в материале уравнение теплопроводности.
Частые вопросы
Какая схема лучше — явная или неявная?
Зависит от задачи. Явная проще в коде и параллелится идеально, но её шаг связан условием устойчивости — для теплопроводности это мучительно при мелких сетках. Неявная требует решения систем на каждом шаге, зато шаг ограничен только точностью. Правило выбора: гладкие решения на грубых сетках и короткие времена — явная; долгие процессы, жёсткие задачи, мелкие сетки — неявная. Гибрид Кранка—Николсон часто лучший компромисс по точности на шаг.
Что такое условие Куранта и где оно появляется?
Это требование, чтобы численная область зависимости схемы накрывала физическую: за шаг по времени волна не должна пробегать дальше одной клетки сетки, . Нарушение проявляется эффектно: решение начинает осциллировать и взрывается, хотя аппроксимация формально есть. Для явных схем гиперболических уравнений условие Куранта — закон, для параболических его аналог жёстче — . Неявные схемы этих ограничений не имеют по устойчивости, но точность всё равно помнит о физике.