Я не понимаю разного поведения уравнения адвекции-диффузии, когда применяю разные граничные условия. Моя мотивация - симуляция реальной физической величины (плотности частиц) в условиях диффузии и адвекции. Плотность частиц должна сохраняться внутри, если только она не вытекает из краев. По этой логике, если я приведу в исполнение граничные условия Неймана, концы системы, такие как (слева и справа), тогда система должна быть«замкнутой»,т. Е. Еслипотокна границе равен нулю, то никакие частицы не могут вырваться.
Для всех приведенных ниже моделирования, я применил дискретизацию кривошипно-Николсон к уравнению адвекции-диффузии и все моделирования Наличие граничных условий. Однако для первой и последней строк матрицы (строк граничных условий) я допускаю изменениенезависимо от внутреннего значения. Это позволяет конечным точкам быть полностью неявными.
Ниже я расскажу о 4 разных конфигурациях, только одна из них - это то, что я ожидал. В конце я обсуждаю мою реализацию.
Диффузия только предел
Здесь условия адвекции отключаются путем установки скорости на ноль.
Только диффузия, с = 0,5 (Crank-Niscolson) во всех точках
Количество не сохраняется, что видно по уменьшению площади импульса.
Только диффузия, с = 0.5 (Crank-Niscolson) во внутренних точках и = 1 (полностью неявный) на границах
Используя полностью неявное уравнение на границах, я достигаю того, чего ожидаю: частицы не убегают . Вы можете видеть это по области, сохраняемой как диффузная частица. Почему выбор в граничных точках должен влиять на физику ситуации? Это ошибка или ожидается?
Диффузия и адвекция
Если включить адвекционный термин, значение на границах, похоже, не влияет на решение. Однако для всех случаев, когда границы кажутся «открытыми», то есть частицы могут выходить за границы. Почему это так?
Адвекция и диффузия с = 0,5 (Crank-Niscolson) во всех точках
Адвекция и диффузия с = 0.5 (Crank-Niscolson) во внутренних точках и = 1 (полностью неявный) на границахβ
Реализация уравнения адвекции-диффузии
Начиная с уравнения адвекции-диффузии,
Написание с использованием Crank-Nicolson дает,
Обратите внимание, что = 0,5 для Кранка-Николсона, = 1 для полностью неявных и = 0 для полностью неявных .β β
Чтобы упростить обозначения, давайте сделаем замену,
и переместите известное значение производной по времени в правую часть,
Факторинг условий дает,
который мы можем записать в матричной форме как где,
Применение граничных условий Неймана
NB снова работает над деривацией, думаю, я заметил ошибку. Я предположил полностью неявную схему ( = 1) при записи конечной разности граничного условия. Если принять здесь схему Кранка-Нисколсона, сложность становится слишком большой, и я не могу решить полученные уравнения, чтобы исключить узлы, которые находятся за пределами области. Однако, казалось бы, возможно, есть два уравнения с двумя неизвестными, но я не смог справиться. Это, вероятно, объясняет разницу между первым и вторым графиками выше. Я думаю, что мы можем сделать вывод, что только графики с = 0,5 в граничных точках являются действительными.β
Предполагая, что поток в левой части известен (принимая полностью неявную форму),
Запись этого как центрированная разница дает,
следовательно,
Обратите внимание, что здесь вводится узел который находится за пределами области проблемы. Этот узел можно устранить с помощью второго уравнения. Мы можем записать узел как, j = 1
Подстановка в значение найденное из граничного условия, дает следующий результат для строки = 1,
Выполнение той же процедуры для последней строки (при = ) дает,
Наконец, создание неявных граничных строк (установка = 1) дает,
Поэтому с граничными условиями Неймана мы можем записать матричное уравнение, ,
где,
Мое текущее понимание
Я думаю, что разница между первым и вторым графиками объясняется отмеченной выше ошибкой.
По поводу сохранения физической величины. Я полагаю, что причина в том, что, как указано здесь , уравнение переноса в форме, которую я написал, не позволяет распространяться в обратном направлении, поэтому волна просто проходит даже при граничных условиях с нулевым потоком . Моя первоначальная интуиция в отношении сохранения применяется только тогда, когда срок адвекции равен нулю (это решение на участке № 2, где сохраняется область).Даже с граничными условиями Неймана с нулевым потоком масса все еще может покинуть систему, потому что в этом случае правильными граничными условиями являются граничные условия Робина, в которых полный поток указан . Более того, условие Неймана указывает, что масса не может покинуть область посредством диффузии , она ничего не говорит о адвекции. По сути, то, что мы слышали, это замкнутые граничные условия для диффузии и открытые граничные условия для адвекции. Для получения дополнительной информации см. Ответ здесь, Реализация градиентного нулевого граничного условия в уравнении адвекции-диффузии,
Вы бы согласились?
источник
Ответы:
Я думаю, что одна из ваших проблем заключается в том, что (как вы заметили в ваших комментариях) условия Неймана не являются теми условиями, которые вы ищете , в том смысле, что они не подразумевают сохранение вашего количества. Чтобы найти правильное условие, перепишите ваш PDE как
Теперь термин, который появляется в скобках, - это общий поток, и это количество, которое вы должны обнулить на границах, чтобы сохранить . (Я добавил для универсальности и для ваших комментариев.) Тогда граничные условия, которые вы должны наложить, (предполагается, что ваш космический домен равен )Д ∂φ∂Икс+ v ϕ = 0 φ S( х , т ) ( - 10 , 10 )
для левой стороны и
для правой стороны. Это так называемые граничные условия Робина (обратите внимание, что в Википедии прямо сказано, что это изолирующие условия для уравнений адвекции-диффузии).
Если вы установите эти граничные условия, вы получите свойства сохранения, которые вы искали. Действительно, интегрируя по пространственной области, мы имеем
Используя интеграцию по частям на правой стороне, мы имеем
Теперь два центральных члена исчезают благодаря граничным условиям. Интегрируясь во времени, получаем
а также если нам разрешено переключать первые два интеграла ,
Это показывает, что домен изолирован от внешней стороны. В частности, еслиS= 0 , мы получаем сохранение φ .
источник