МатВектор

Command Palette

Search for a command to run...

🌐 Матфизика

Явная и неявная разностные схемы

англ. Explicit and implicit schemes

Два способа шага по времени: явная схема вычисляет новый слой напрямую, но требует маленького шага; неявная решает систему уравнений, зато устойчива при любом шаге.

Дискретизируя эволюционное уравнение по времени, выбирают между явной и неявной схемами. Явная для теплопроводности берёт новое значение напрямую из соседних старых: — значение на новом слое пишется в лоб, без решения систем. Неявная выражает новый слой через самого себя: — на каждом шаге решается трёхдиагональная система, зато алгоритм Thomas за линейное время. Базовая терминология — в терминах разностная схема.

Расплата за простоту явной схемы — условие устойчивости : шаг по времени обязан быть квадратично меньше шага по сетке, и удвоение точности в пространстве вчетверо удорожает время. Неявная схема безусловно устойчива — шаг берут из требований точности, а не страха взрыва. Для волнового уравнения аналогичную роль играет условие Куранта : информация не должна за шаг перелетать через клетку. Золотая середина — схема Кранка—Николсон, комбинация обоих подходов с вторым порядком по времени. Численные сеточные методы и их разбор — в материале уравнение теплопроводности.

явная схема и её условие устойчивости: шаг по времени квадратично привязан к шагу сетки — цена прямоты вычислений

Частые вопросы

Какая схема лучше — явная или неявная?

Зависит от задачи. Явная проще в коде и параллелится идеально, но её шаг связан условием устойчивости — для теплопроводности это мучительно при мелких сетках. Неявная требует решения систем на каждом шаге, зато шаг ограничен только точностью. Правило выбора: гладкие решения на грубых сетках и короткие времена — явная; долгие процессы, жёсткие задачи, мелкие сетки — неявная. Гибрид Кранка—Николсон часто лучший компромисс по точности на шаг.

Что такое условие Куранта и где оно появляется?

Это требование, чтобы численная область зависимости схемы накрывала физическую: за шаг по времени волна не должна пробегать дальше одной клетки сетки, . Нарушение проявляется эффектно: решение начинает осциллировать и взрывается, хотя аппроксимация формально есть. Для явных схем гиперболических уравнений условие Куранта — закон, для параболических его аналог жёстче — . Неявные схемы этих ограничений не имеют по устойчивости, но точность всё равно помнит о физике.