Выполнение прямого численного моделирования изотропной турбулентности с использованием псевдоспектрального метода Фурье (Orzag & Patterson, PRL, 1972) с использованием БПФ. Для ознакомления с методом, который широко используется в сообществе турбулентности, вы можете посмотреть этот курс: http://www.math.ualberta.ca/~bowman/m655/lab3d.pdf
Используя так называемый правила заключения сделок, которые состоят из
где это время, волновое число, максимальное волновое число и спектральная амплитуда скорости.
Является ли сглаживание численной диссипацией? Другими словами, есть ли утечка энергии из-за сделки?
fluid-dynamics
simulation
ucsky
источник
источник
Ответы:
Сглаживание свертки не действует как численное рассеяние. На самом деле энергия сохраняется только в том случае, если вы исключите псевдонимы.
Идея, стоящая за обработкой сверток на основе FFT, состоит в том, чтобы избавиться от дополнительных терминов, добавляемых FFT. Свертка - это просто сумма, и вы можете вычислить ее, просто вычислив сумму. Однако это действительно медленно, поэтому лучше преобразовать входы Фурье и умножить результат, а затем инвертировать преобразование Фурье, которое, по теореме свертки, является тем же, что и свертка.
Но теорема о свертке работает только тогда, когда входы имеют бесконечную длину; для входов конечной длины отображаются дополнительные термины (псевдонимы), которые не являются физическими. Суть сделки заключается в том, чтобы вернуть исходное уравнение, которое вы пытались вычислить, и в то же время позволить вам использовать БПФ для ускорения вычислений.
источник
Понимание того, что делает сделка, требует понимания того, почему вы берете БПФ в первую очередь. Для меня метод взвешенных невязок обеспечивает простейшую структуру:
Всю магию БПФ можно представить как эффективную приближенную квадратурную схему, которая может быть сделана точной для квадратичных нелинейностей. Другие варианты сглаживания играют другие хитрости, чтобы сделать квадратуру точной для того же класса нелинейностей.
Таким образом, чтобы ответить на ваш вопрос, сделка с делами не добавляет диссипации. Это видно, потому что каждый шаг в процедуре был точным.
источник
@Malcolm дал экспертное объяснение сглаживания сверточных сумм на основе БПФ. Однако моя интуиция подсказывает мне, что это еще не полный ответ, необходимый для аббревиатуры, поэтому я дам еще несколько предложений, отражающих мою собственную борьбу за понимание численных методов.
Сглаживание не действует как числовое рассеяние, но оно делает то же самое, что числовое рассеяние - оно предотвращает взрыв вашего моделирования.
Как взрывается твоя симуляция?
Существует нефизический перенос энергии от высоких волновых чисел к низким, который сначала вызывает нестабильность (часто сопровождаемую симптомом - волны 2h, расстояние до узла h-сетки, самые маленькие волны, которые могут быть представлены на сетке).
Причиной этого является наложение больших волновых чисел на те низкие волновые числа, которые могут быть представлены сеткой. Это вызывает «спектральную блокировку» - нефизическое увеличение амплитуд (считываемой энергии) больших волновых чисел, которое ухудшается при приближении к верхнему пределу представленных волновых чисел.
Первое средство (Philips, 1959): отфильтруйте или сделайте равной нулю верхнюю половину представленного спектра волнового числа.
Второе лекарство (Orszag, 1971): лекарство, известное как правило двух третей Орзага. Стивен сказал, что «отфильтровывать половину волновых чисел - пустая трата времени, мы должны оставить 2 / 3N и отфильтровать только верхнюю 1 / 3N».
Вывод.
Наши симуляции иногда имеют тенденцию взрываться. Если вы живете во втором порядке, вселенной с конечным объемом (как это сделал автор этих строк) и ничего не знаете о спектральных методах, они скажут вам: «О, ваша симуляция взрывается? Попробуйте использовать ветер первого порядка вместо центральной схемы или смесь» ваша центральная схема с 10% против ветра в подходе отложенной коррекции. Это добавит диссипации, но предотвратит взрыв вашего моделирования! Центральная схема и Смагоринский будут моделировать физическую диссипацию, которая происходит в самых низких масштабах ". Если вы живете во вселенной Spectral Methods, вы узнаете, как происходит нефизическая передача энергии, и вы найдете лекарство от сглаживания по правилу двух третей или «заполнению».
Мое вдохновение для этого поста - замечательная книга Дж. Бойда "Спектральные методы Чебышева и Фурье", раздел 11.
Мой совет:
Действуй физически или спектрально, но думай спектрально! (Перефразируя известное «Думай глобально, действуй локально».)
источник
Не существует утечки энергии, связанной с «сглаживанием» как таковой, но есть утечка энергии, связанная с усечением, которое всегда выполняется с или без сглаживания. Позволь мне объяснить:
если у вас есть две функции f и g , каждая из которых имеет спектральное содержание вплоть до режима k , произведение fg будет иметь спектральное содержание до режима 2k . Однако вы не хотите, чтобы спектральное содержание вашего представления удваивалось на каждом временном шаге. Следовательно, вы хотите урезать произведение fg до первых k режимов. Делая это, вы теряете энергию, содержащуюся в модах выше, чем k .
Сглаживание (или сглаживание) гарантирует, что моды до k корректны в представлении fg , но не моды больше k , потому что в любом случае они будут отброшены.
источник