Как я могу получить оценку паразитных колебаний в численном решении одномерного уравнения переноса?

9

Предположим, у меня была следующая периодическая проблема 1D адвекции:

ut+cux=0 в Ω=[0,1]
u(0,t)=u(1,t)
u(x,0)=g(x)
где g(x) имеет разрыв скачка в x(0,1),

Насколько я понимаю, для линейных конечно-разностных схем более высокого, чем первого порядка, паразитные колебания возникают вблизи разрыва по мере его адвекции во времени, что приводит к искажению решения от его ожидаемой формы волны. Согласно объяснению в Википедии , кажется, что эти колебания обычно возникают, когда разрывная функция аппроксимируется конечным рядом Фурье.

По какой-то причине я не могу понять, каким образом конечный ряд Фурье можно наблюдать в решении этого уравнения. В частности, как я могу аналитически оценить границу «превышения»?

Пол
источник

Ответы:

11

Первый метод против ветра является монотонным; это не вводит паразитные колебания. Но это только первый порядок точности, приводящий к такому количественному распространению, что его невозможно использовать для многих целей. Теорема Годунова утверждает, что линейные пространственные дискретизации выше первого порядка не могут быть монотонными. Для строгого контроля колебаний мы используем схемы полного уменьшения вариаций (TVD) . Методы TVD обычно ограничены точностью второго порядка. Для более высокого порядка мы должны либо ослабить наш запрос, что приведет к методам Total Variation Bounded (TVB), таким как (Weighted) Essential Nonsccillatory ((W) ENO), либо мы должны ослабить определение TVD до «сохранения принципа максимума» или аналогичные, где начальные экстремумы в терминах исходного восстановленного решения, в результате чегоспециальные предельные схемы .

Джед браун
источник
Мои извинения ... почему-то у меня сложилось впечатление, что это верно и для схемы первого заказа. Я отредактировал вопрос, чтобы отразить этот комментарий.
Павел
5

Линейная конечно-разностная дискретизация одномерной задачи с периодическими границами приводит к дискретизации вида

Un+1=LUn

где Lявляется циркулянт . Собственные векторы любой циркулянтной матрицы являются дискретными модами Фурье

vj=exp(ijhξ)
(Вот h это интервал сетки и ξявляется волновым числом, которое колеблется от нуля до самого высокого волнового числа, представленного в сетке). Эти собственные векторы образуют основу для всех функций, которые могут быть представлены в сетке. Если вы выразите решение в терминах этих дискретных мод Фурье, то численный метод будет диагонализирован, т.е. каждый компонент Фурье умножается на (обычно комплексный) скалярный коэффициент на каждом шаге. Скалярный фактор часто называют коэффициентом усиления, а то, что я только что описал, известно как анализ фон Неймана . Он аналогичен анализу Фурье линейных уравнений в частных производных, в котором используется базис Фурье для «диагонализации» линейных дифференциальных операторов.

Вы можете найти хорошие объяснения, например, в тексте Strikwerda или LeVeque .

Дэвид Кетчесон
источник
Я знаком с анализом фон Неймана. Но могу ли я на самом деле использовать этот анализ для определения границ паразитных колебаний?
Павел
Я отвечал в основном на ваше утверждение. Кажется, я не могу понять, каким образом конечный ряд Фурье можно наблюдать в решении этого уравнения. Но да, вы можете получить такие оценки из этого анализа. Например, вы можете взглянуть на сценарий наихудшего случая, в котором все режимы конструктивно вмешиваются. Тем не менее, это, вероятно, будет очень пессимистичной границей. На практике я не видел, чтобы кто-то получал границы, кроме TVD или TVB (которые достаточно сильны и не подходят для линейных схем).
Дэвид Кетчон
Вероятно, вы могли бы получить более интересную оценку, посмотрев на дисперсионное соотношение для мод с наибольшим волновым числом. Но я никогда не видел, чтобы это было сделано.
Дэвид Кетчесон
2

Не все ложные колебания являются явлениями Гиббса. Они выглядят одинаково, но есть колебания Гиббса для всех конечных приближений Фурье разрывных функций (они просто уменьшаются, когда вы добавляете больше членов). Принимая во внимание, что существуют неосциллирующие представления разрывных функций, возникающие в результате решения конечно-разностных приближений для уравнений в частных производных, которые не требуют бесконечных рядов.

У Bathe ( Inf-sup тестирование методов против ветра , PDF) есть статья на эту тему для методов конечных элементов (конвекция-диффузия, IIRC) в 1-D, которая включает вычисление константы дляинф-вирсостояние и относящиеся к колебаниям. Вы можете получить некоторое представление об этом.

Билл Барт
источник
3
Это полезный документ, но обратите внимание, что стабильность inf-sup не обеспечивает сильного контроля колебаний. Например, никакая стабильность не может обеспечить метод TVD. И в свете теоремы Годунова бессмысленно искать линейные пространственные дискретизации, если мы хотим иметь не колебательные решения большего, чем первый порядок. Обратите внимание, что число Пекле появляется во всех методах в этой статье, и методы ухудшаются до точности первого порядка какPeпри этом тоже не будучи TVD.
Джед Браун
Это все верные утверждения. Это действительно относится только к задачам конвекции-диффузии.
Билл Барт
2

Что касается вашего последнего вопроса о связи между конечными рядами Фурье и приближением конечных элементов: в общем, если вы пытаетесь спроецировать функцию с переходом на конечномерное пространство, базисные функции которого непрерывны, вы получите явление Гиббса. Это верно, если базис является конечным рядом Фурье (где базисными функциями являются синусы и косинусы) или если базисом являются обычные функции с конечными элементами, то есть свойство проекции плюс непригодность базисных функций.

Вольфганг Бангерт
источник
Я рад, что оказался неправ, так как я явно не на практике, но я не покупаю ваш комментарий о проекциях на функции шляпы без дальнейшей квалификации. Мои быстрые вычисления с использованием моего старого 1-D кода MATLAB из моего первого курса FEM показывают, что проекция функции step наH01использование шляпных функций не является колебательным. У вас есть пример, который может показать, что мне не хватает?
Билл Барт
Ничего. Старый код старый. Я могу воспроизвести колебания. Предыдущий комментарий отозван.
Билл Барт
Я рад, что смог помочь :-)
Вольфганг Бангерт
0

Один подход заключается в использовании эквивалентного уравнения, то есть дифференциального уравнения, к которому ваш дискретный метод дает наиболее близкое приближение. Это никогда не дифференциальное уравнение, которое вы намеревались решить. Затем вы смотрите на асимптотическое решение эквивалентного уравнения для ступенчатой ​​функции в качестве начальных данных. Посмотрите на Буш Д., Бонно Г. и Рамос Д., 2003. Сравнение численных схем для решения уравнения переноса. Прикладные математические письма, 16 (2), с.147-154.

Филип Роу
источник