Численная диффузия является трудностью при компьютерном моделировании континуумов (таких как жидкости ), где моделируемая среда демонстрирует более высокую диффузионную способность , чем истинная среда. Это явление может быть особенно вопиющим, когда система вообще не должна быть диффузионной, например, идеальная жидкость приобретает некоторую ложную вязкость в численной модели.
В эйлеровых симуляциях время и пространство делятся на дискретную сетку, а непрерывные дифференциальные уравнения движения (например, уравнение Навье–Стокса ) дискретизируются в конечно-разностные уравнения . [1] Дискретные уравнения в целом более диффузионны, чем исходные дифференциальные уравнения, поэтому моделируемая система ведет себя иначе, чем предполагаемая физическая система. [2] Величина и характер разницы зависят от моделируемой системы и типа используемой дискретизации. Большинство гидродинамических или магнитогидродинамических симуляций стремятся свести численную диффузию к минимально возможному значению для достижения высокой точности, но при определенных обстоятельствах диффузия намеренно добавляется в систему, чтобы избежать сингулярностей . Например, ударные волны в жидкостях и токовые слои в плазме в некоторых приближениях бесконечно тонкие; это может вызвать трудности для численных кодов. Простой способ избежать трудностей — добавить диффузию, которая сглаживает ударную волну или токовый слой. Численные методы более высокого порядка (включая спектральные методы), как правило, имеют меньшую численную диффузию, чем методы низкого порядка.
В качестве примера численной диффузии рассмотрим эйлерову симуляцию с использованием явного временного продвижения капли зеленого красителя, диффундирующего через воду. Если вода течет по диагонали через сетку симуляции, то невозможно переместить краситель в точном направлении потока: на каждом временном шаге симуляция может в лучшем случае переносить некоторое количество красителя в каждом из вертикальных и горизонтальных направлений. Через несколько временных шагов краситель распространится по сетке из-за этого бокового переноса. Этот численный эффект принимает форму сверхвысокой скорости диффузии. [3]
Когда численная диффузия применяется к компонентам вектора импульса , она называется числовой вязкостью; когда она применяется к магнитному полю, она называется численным удельным сопротивлением .
Рассмотрим задачу Phasefield с пузырьком воздуха под высоким давлением (синим) внутри фазы воды. Поскольку при расширении воздуха в воде не происходит никаких химических или термодинамических реакций, то нет возможности получить другую (т. е. не красную или синюю) фазу во время моделирования. Эти неточности между отдельными фазами основаны на численной диффузии и могут быть уменьшены путем сгущения сетки .