Хороша кінцева різниця для рівняння безперервності


22

Яка була б хороша обмеженість розрізнення для наступного рівняння:

ρt+(ρu)=0 ?

Ми можемо взяти 1D випадок:

ρt+ddx(ρu)=0

Чомусь всі схеми, які я можу знайти, - це формулювання в лагранжанських координатах. Наразі я придумав цю схему (ігноруйте j- індекс):

ρi,jn+1ρi,jnτ+1hx(ρi+1,jn+1+ρi,jn+12uxi+1/2,jnρi,jn+1+ρi1,jn+12uxi1/2n)=0

Але він, здається, справді нестабільний або має певний жахливий стан стабільності. Невже це так?

Швидкість насправді обчислюється через закон Дарсі . Плюс у нас є рівняння стану. Повна система складається також з рівняння енергії та рівняння стану ідеального газу. Швидкість може обернутися негативною .u=kμp


У випадку 1D проблема - це по суті гіперболічний pde першого порядку. Ви спробували скористатися схемою кінцевих різниць вгору від першого замовлення?
Пол

Поки я біжу з тим, що написав у питанні. Моя справа насправді 2d, хоча. Але оскільки це таке класичне рівняння, я думав, що буде наявна і класична дискретизація.
Тіам

Чи можете ви показати, як ця схема виглядатиме для цього. Мені знайома концепція з методу кінцевих обсягів, коли ви використовуєте її в конвективному терміні, але там у вас більше немає просторової похідної продукції.
Тіам

Чи задано поле швидкості чи воно також задовольняє рівняння еволюції?
Девід Кетчесон

Швидкість насправді обчислюється через закон Дарсі . Повна система складається також з рівняння енергії та рівняння стану ідеального газу. Швидкість може обернутися негативною. u=kμp
Тіам

Відповіді:


21

Ви дивитесь рівняння збереження маси:

dmdt=0

Якщо враховувати еволюцію маси на одиницю об'єму, то це зводиться до рівняння адвекції щільності у флюсовій формі:

ρt=(ρu)

Хороша річ у тому, що це просто рівняння адвекції довільного скалярного поля (в нашому випадку це буває щільність ), і це (відносно) легко вирішити за умови адекватної схеми розрізнення часу та простору, початкової та граничні умови.ρ

Розробляючи схему обмеженої диференціації, ми піклуємося про конвергенцію, стабільність та точність. Схема сходиться, якщо колиΔt0. Стабільність схем гарантує, що величинаАзалишається кінцевою, колиt. Формальна точність схеми говорить про те, де лежить похибка усікання в ряді розширення Тейлора часткової похідної. Подивіться у підручник з CFD для отримання більш детальної інформації про ці основні властивості схеми розмежування.ΔAΔtAtΔt0At

Тепер найпростіший підхід полягає в тому, щоб перейти прямо до 1-го порядку за розмежуванням за течією. Ця схема є позитивно визначеною, консервативною та обчислювально ефективною. Перші дві властивості особливо важливі, коли ми моделюємо еволюцію величини, яка завжди позитивна (тобто маса чи щільність).

Для простоти розглянемо 1-D випадок:

ρt=(ρu)x

Тепер зручно визначити потік , так що:Φ=ρu

(ρu)x=ΦxΔΦΔxΦi+1/2Φi1/2Δx

Ось схема того, що ми моделюємо:

            u           u
|          -->         -->          |
|    rho    |    rho    |    rho    |
x-----o-----x-----o-----x-----o-----x
     i-1  i-1/2   i   i+1/2  i+1

Ми оцінюємо еволюцію у комірці i . Чистий прибуток або збиток , походить від різниці , що приходить, Ф я - +1 / +2 і що виходить, Φ я + +1 / +2ρiΦi1/2Φi+1/2. Тут ми починаємо відходити від відповіді Павла. У справжньому консервативному розрізненні вгору за течією кількість у центрі клітини переноситься зі швидкістю по краю її клітини, у напрямку її руху. Іншими словами, якщо ти уявляєш, що ти введена кількість, і ти сидиш у центрі клітини, тебе швидкість переносить у камеру перед собою. Оцінювання потоку на краю комірки як добутку густини та швидкості, як на краю комірки, є невірним і не зберігає введеної кількості.

Вхідні та вихідні потоки оцінюються як:

Φi+1/2=ui+1/2+|ui+1/2|2ρi+ui+1/2|ui+1/2|2ρi+1

Φi1/2=ui1/2+|ui1/2|2ρi1+ui1/2|ui1/2|2ρi

Вищеописане лікування диференціювання флюсу забезпечує визначеність вище за течією. Іншими словами, вона регулює напрям розрізнення відповідно до знаку швидкості.

Критерій стійкості Куранта-Фрідріха-Льюї (CFL), коли проводиться диференціація часу з простим першим порядком, вперед Ейлерова диференціація задається як:

μ=uΔtΔx1

Зауважте, що в двох вимірах критерій стійкості CFL є більш суворим:

μ=cΔtΔx12

де - величина швидкості, c .u2+v2

Деякі речі, які слід врахувати. Ця схема може бути або не підходить для вашої програми залежно від того, який процес ви моделюєте. Ця схема є високодифузійною і підходить для дуже плавних потоків без різких градієнтів. Він також більш дифузний для коротших часових кроків. У 1-D випадку ви отримаєте майже точне рішення, якщо градієнти дуже малі, а якщо . У двовимірному випадку це неможливо, а дифузія - анізотропна.μ=1

Якщо ваша фізична система враховує ударні хвилі або високі градієнти іншого типу, вам слід вивчити диференціацію вищого порядку вищого рівня (наприклад, третього чи п'ятого порядку). Крім того, можливо, варто зазирнути до сімейства схем Frex Corrected Transport (Zalesak, 1979, JCP); антидифузійну корекцію за вказаною схемою Смоларкевичем (1984, JCP); Сімейство схем MPDATA Смоларкевича (1998, JCP).

Для розрізнення часу диференціація Ейлера в першому порядку може бути задовільною для ваших потреб. В іншому випадку розгляньте методи вищого порядку, такі як Ранге-Кутта (ітеративний), або Адамс-Башфорт і Адамс-Моултон (багаторівневі).

Варто було б ознайомитись з деяким підручником рівня випускників КЗР для підсумків вищезазначених схем та багато іншого.


u

1
Δt=Δxmax(u)Δt

u=Cρ

uρ

Обмеження стійкості та порядок точності формально виведені та справедливі для лінійного рівняння адвекції - де у не залежить від ρ. У минулому я успішно поєднував це рівняння з нелінійними рівняннями Нав'є-Стокса для u, v. Формальні обмеження стабільності в цьому випадку не задовольняються, але збереження ваших приростів є досить низьким. Під час налаштуванняу=-Сρ, ваше рівняння стає ρт=С[(ρ)2+ρ2ρ]. Ви повинні дослідити (якщо можливо), що є критерієм стійкості для рівняння.
milancurcic

13

In the 1D case, you don't want to use a forward or central difference scheme for the spatial derivative term (ddx) because they are numerically unstable. Instead, it is better to discretize the equation with an explicit backwards (upwind) finite difference for the spatial derivative:

ρik+1ρikΔt+ρikUikρi1kUi1kΔx=0.

If the velocities are positive, then this backward scheme is stable. If they are negative, then a forward difference will work. Regardless, there is always a constraint on your choice of Δx and Δt (courant number) to make the scheme stable.


Буде оцінювати ρ у к+1 замість цього видаліть Δтобмеження?
Тіам

Я не зовсім впевнений ... Я думаю, вам доведеться перевірити помилку усічення, щоб переконатися, що він правильно наближає PDE. Ви можете розглянути інші схеми імплікації на цьому веб-сайті: web.mit.edu/dongs/www/publications/projects/…
Пол
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.