Открыть сервис

CFL-условие

CFL-условие (условие Куранта — Фридрихса — Леви) — это необходимое условие устойчивости численного решения гиперболических уравнений в частных производных, решаемых методом конечных разностей или конечных объёмов на явных схемах. Условие устанавливает ограничение на шаг по времени в зависимости от шага по пространству и скорости распространения возмущений в среде. Названо в честь математиков Рихарда Куранта, Курта Фридрихса и Ганса Леви, сформулировавших его в 1928 году.

Математическая формулировка

В одномерном случае для линейного уравнения переноса:

\[ \frac{\partial u}{\partial t} + c \frac{\partial u}{\partial x} = 0 \]

где \(c\) — скорость волны, условие CFL записывается как:

\[ \frac{c \Delta t}{\Delta x} \leq C_{\text{max}} \]

Здесь \(\Delta t\) — шаг по времени, \(\Delta x\) — шаг по пространственной сетке, а \(C_{\text{max}}\) — число Куранта (или параметр CFL), которое для большинства явных схем не превышает 1. Для многомерных задач условие обобщается:

\[ \Delta t \sum_{i=1}^{d} \frac{|c_i|}{\Delta x_i} \leq C_{\text{max}} \]

где \(d\) — размерность пространства, \(c_i\) — компоненты скорости в каждом направлении.

Число Куранта

Число Куранта \(C\) (или число CFL) — безразмерный параметр, определяющий отношение физической скорости распространения к численной скорости сетки:

\[ C = \frac{c \Delta t}{\Delta x} \]

Для устойчивости явных схем требуется \(C \leq 1\). Значение \(C_{\text{max}}\) зависит от конкретной численной схемы: для схемы «уголок» (upwind) \(C_{\text{max}} = 1\), для схемы Лакса — Вендроффа \(C_{\text{max}} \approx 0.5\)—1, для схемы с центральными разностями — \(C_{\text{max}} \leq 1\).

Физический смысл

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

Для уравнений газовой динамики, где скорость волны равна сумме скорости потока и скорости звука, условие принимает вид:

\[ \Delta t \leq \frac{\Delta x}{\max(|u| + a)} \]

где \(u\) — скорость потока, \(a\) — скорость звука. Максимум берётся по всем узлам сетки.

История

Условие было впервые сформулировано в 1928 году в работе Рихарда Куранта, Курта Фридрихса и Ганса Леви «О разностных уравнениях математической физики» (нем. «Über die partiellen Differenzengleichungen der mathematischen Physik»). Исследователи изучали устойчивость конечно-разностных схем для гиперболических уравнений и показали, что для сходимости решения необходимо, чтобы область зависимости разностной схемы включала область зависимости дифференциального уравнения.

В 1950-х годах, с развитием вычислительной техники, условие стало широко применяться в аэродинамике, гидродинамике и сейсмологии. Питер Лакс и другие математики впоследствии обобщили условие на нелинейные системы и многомерные задачи.

Применение в вычислительной гидродинамике

В вычислительной гидродинамике (CFD) CFL-условие является основным критерием выбора шага по времени при явных схемах. Оно применяется в следующих методах:

На практике шаг по времени вычисляется динамически на каждом шаге:

\[ \Delta t = C_{\text{target}} \cdot \min_i \left( \frac{\Delta x_i}{|\lambda_i|} \right) \]

где \(\lambda_i\) — собственные числа якобиана потока (характеристические скорости), а \(C_{\text{target}}\) — заданное число Куранта (обычно 0.5—0.9 для обеспечения запаса устойчивости).

Примеры типичных значений

Тип задачиРазмерность\(C_{\text{max}}\)Примечание
Линейное уравнение переноса1D1.0Схема «уголок»
Уравнения Эйлера (газ)2D0.8—0.9Схема Годунова
Уравнения Навье — Стокса3D0.5—0.8Включая вязкость
Сейсмические волны2D0.5—0.7Схема с центральными разностями

Ограничения и критика

CFL-условие является необходимым, но не достаточным условием устойчивости. Для некоторых схем (например, с искусственной вязкостью или нелинейными ограничителями) выполнение условия не гарантирует отсутствия численных осцилляций. Кроме того, условие не учитывает:

  • Вязкость — диффузионные процессы требуют отдельного ограничения (условие фон Неймана для параболических уравнений).
  • Жёсткость — в задачах с сильно различающимися характерными скоростями (например, многофазные течения) условие может приводить к чрезмерно малым шагам по времени.
  • Неявные схемы — для них CFL-условие не является обязательным, так как такие схемы устойчивы при любых шагах (безусловно устойчивы), хотя точность может ухудшаться.

В современной вычислительной практике для преодоления ограничений CFL применяют:

  • Локальное измельчение сетки (AMR — adaptive mesh refinement) — уменьшение шага по времени только в областях с высокими скоростями.
  • Неявные схемы — для жёстких задач (например, в химической кинетике).
  • Методы расщепленияразделение на быстрые и медленные процессы с разными шагами.

Связь с другими критериями устойчивости

CFL-условие тесно связано с условием фон Неймана для параболических уравнений:

\[ \frac{\alpha \Delta t}{\Delta x^2} \leq \frac{1}{2} \]

где \(\alpha\) — коэффициент температуропроводности. Для уравнений смешанного типа (конвекция-диффузия) применяется комбинированное условие, учитывающее как конвективную, так и диффузионную компоненты.

Интересные факты

  • Первоначально условие было сформулировано для линейных уравнений, но позже обобщено на нелинейные системы через характеристические скорости.
  • В некоторых источниках условие называют «числом Куранта» или «критерием Куранта — Фридрихса — Леви».
  • Для неявных схем условие не требуется, но шаг по времени всё равно ограничивается точностью (например, для сохранения фазовых ошибок).
  • В аэродинамике высоких скоростей (сверхзвуковые течения) CFL-условие часто задаётся в диапазоне 0.3—0.5 из-за сильных ударных волн.

Источники

  • Courant, R., Friedrichs, K., Lewy, H. «Über die partiellen Differenzengleichungen der mathematischen Physik» (1928).
  • LeVeque, R. J. «Finite Volume Methods for Hyperbolic Problems» (2002).
  • Hirsch, C. «Numerical Computation of Internal and External Flows» (2007).
  • Anderson, J. D. «Computational Fluid Dynamics: The Basics with Applications» (1995).
  • Тихонов, А. Н., Самарский, А. А. «Уравнения математической физики» (1977).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →