Які основні принципи створення генерується сітки?


13

Мене цікавить реалізація рухомої сітки для проблеми адвекції-дифузії. Методи адаптивного переміщення сітки дають хороший приклад того, як це зробити для рівняння Бергера в 1D, використовуючи скінченну різницю. Чи міг би хтось запропонувати відпрацьований приклад вирішення 1D рівняння адвекції-дифузії, використовуючи скінченну різницю з рухомою сіткою?

Наприклад, у консервативній формі рівняння -

ut=(a(x)u+dux)x

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

Як слід вирішити задачу про рівномірний розподіл рухомої сітки (можливо, за допомогою алгоритму Де Бура чи іншого підходу)? Я хотів би реалізувати це самостійно в Python, тому якщо ваша відповідь можна буде легко перекласти в код ще краще!


Старе питання до щедрості

  1. Які основні підходи для створення адаптивної сітки на основі властивостей системи? Чи слід використовувати флюс як міру того, де великі градієнти?
  2. Тому що я шукаю ітераційне (час розгортання) рішення. Я думаю, важливо інтерполювати від старої сітки до нової сітки, який звичайний підхід?
  3. Мені б дуже цікаво побачити відпрацьований приклад простої проблеми (наприклад, рівняння адвекції).

Трохи відомостей про специфіку проблеми. Я імітую 1D-сполучену систему рівнянь,

ut=au2ux2+buux+fu(x,u,v,w)vt=av2vx2+bvvx+fv(x,u,v,w)wt=auux+avvx+fw(x,u,v,w)

Набір рівнянь описує проблему адвекції-дифузії двох видів, де третє рівняння з'єднується з двома іншими. Рішення швидко змінюється поблизу центру моєї сітки, див. Нижче (це ілюстрації, а не розрахунки),

Приклади розчинів

Зауважте, що масштаб журналу на нижньому графіку розв'язки для та змінюються залежно від порядків. На верхньому графіку ( ) в центрі спостерігається розрив. Я розв'язую вищевказану систему з адаптивним вітром, де дискретизація може адаптуватися від центрального до вітрового, що домінує залежно від місцевого значення числа Пеклета . Я вирішую систему неявно з трапеційною інтеграцією в часі ("Кран-Ніколсон").v wuvw

Мені цікаво застосувати адаптивну сітку до цієї проблеми. Я думаю, що це важливо, оскільки в іншому випадку можуть бути втрачені деталі параметру пікової форми ( ). На відміну від цього питання , я б хотів застосувати алгоритм для генерації сітки, сподіваюся просто.w

Оскільки це проблема адвекции-дифузії, можна уявити собі схему адаптивної сітки на основі потоків від і на межі комірок. Оскільки це вказувало б, де значення швидко змінюється. Пік також відповідає тому, де потік найбільший.v wuvw


З того, що я збираю, ваша розривчастість є досить стійкою особливістю системи в тому, що вона може рухатися, але вона завжди є десь (виправте мене, якщо я помиляюся). З цієї причини ви можете скористатися рухомою сіткою, а не доопрацюванням сітки. Програмувати себе корисно трохи простіше. [Ця книга] (books.google.com/books?isbn=1441979166) - хороша довідка.
Даніель Шаперо

Так, на його думку, це має бути досить стійкою особливістю (розривом), вона може трохи рухатися під час тривалості часу і, можливо, стає трохи асиметричною при наближенні до сталого стану. Я думаю, я міг би використовувати нерівномірну (неадаптативну) сітку з точками, скупченими в центрі, а не чимось складнішим. Я не знав про різні методи адаптації сітки. Книга здається гарною, хоча для того, щоб жорстко реалізувати рухливу сітку, ще досить багато роботи. Я сподівався на "швидке виправлення"!
boyfarrell

Відповіді:


4

Адаптивна сітка - це сітчаста мережа, яка автоматично кластеризує точки сітки в регіонах з великими градієнтами поля потоку; він використовує рішення властивостей поля потоку для визначення точок сітки у фізичній площині. Адаптивна сітка розвивається за кроками часу у поєднанні з залежним від часу рішенням рівнянь керуючого поля потоку, яке обчислює змінні поля потоку за кроками часу. Під час рішення рішення точки сітки у фізичній площині рухаються таким чином, щоб «адаптуватися» для областей великих градієнтів поля потоку. Отже, фактичні точки сітки у фізичній площині постійно перебувають у русі під час розчинення потокового поля та стають нерухомими лише тоді, коли розчин потоку наближається до сталого стану.

Адаптація сітки використовується як для стійких, так і для нестабільних типів проблем. У разі проблем з постійним потоком сітка адаптується після заздалегідь заданої кількості ітерацій, і адаптація сітки зупиниться в точці, коли рішення конвергується. У разі точного вирішення часу рух сітки та уточнення точки сітки здійснюються разом із точним вирішенням фізичної задачі в часі. Для цього потрібне точне з'єднання PDE фізичної проблеми та тих, що описують рух сітки або адаптацію сітки.

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

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

h тип: -

Метод передбачає автоматичне уточнення або грубість просторової сітки на основі післякірочних оцінок помилок або індикаторів помилок.h

r тип: -

Замість внесення локальних топологічних змін до сітки та її підключення, r-адаптивні методи вносять локальні зміни до роздільної здатності, переміщуючи місця фіксованої загальної кількості точок сітки.

p тип: -

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

Drivingsourcesofgridadaptation

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

2.Truncationerrorbasedadaption - це різниця між частковим диференціальним рівнянням та його дискретним рівнянням. Помилка урізання є більш підходящим підходом для пошуку місця, де має відбутися адаптація. Загальна концепція адаптації на основі помилки усікання полягає в рівномірному розподілі похибки над областю моделювання для зменшення повної помилки дискретизації. Для простих рівнянь оцінка помилки усікання є найпростішою роботою, але для складних схем необхідний її складний, тому для цього потрібен різний підхід. Для простих схем дискретизації помилка укорочення може бути обчислена безпосередньо. Для більш складних схем, де складна пряма оцінка усічення, необхідний підхід до оцінки похибки усікання.

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

Всього найкращого!

References:

[1] Fidkowski Krzysztof J. та Darmofal David L. Огляд результатів помилок та адаптації сітки в обчислювальній рідинній динаміці. Журнал AIAA, 49: 673–694, 2011.

[2] Джон Таннехілл Річард Плетчер та Дейл Андерсон. Обчислювальна рідина механіка та тепловіддача. Тейлор і Френсіс, 1997.

[3] Дж. Дж. Андерсон. Обчислювальна рідина-динаміка: основи застосування.McGraw Hill Inc., 1995.

[4] Рой Крістофер Дж. Стратегії управління адаптацією сітки в CFD. Під час 47-ї зустрічі AIAA з питань аерокосмічної науки, що включає Форум нових горизонтів та аерокосмічну експертизу, 2009 р.

[5] Алгоритми та проблеми адаптації сітки McRae Scott D. Редагування сітки. Обчислювальні методи в прикладній механіці та техніці, 189: 1161–1182, 2000.

[6] Іваненко Сергій Олександрович Азаренок Борис Н. та Тан Дао. Метод адаптивного перерозподілу сітки на основі схеми годунов. Comm. математика. наук., 1: 152–179.

[7] Ахмаді Маджид та Галі Вахід С. Моделювання невидимого потоку в каскадах за допомогою методу кінцевого обсягу з адаптацією розчину. У 6-му симпозіаді з аеродинаміки CASI, 1997.

[8] Ясак Х. та Госман А.Д. Автоматичний контроль роздільної здатності для методу німецько-об'ємного рівня, частина 1: a-posteriori похибки. Числовий тепловіддача, Тейлор та Френсіс, 38: 237–256, 2000.

[9] Ясак Х. та Госман А.Д. Автоматичний контроль роздільної здатності для еміти швидкого обсягу, частина 2: Адаптивне зміщення сітки та грубозернистість. Числовий трансфер тепла, Тейлор і Френсіс, 38: 257–271, 2000.

[10] Томпсон Девід С. Соні Бхарат К., Кумулліл Рой та Торнбург Х'ю. Рішення адаптивної стратегії сітки на основі точкового перерозподілу. Обчислювальні методи в прикладній механіці та техніці, 189: 1183–1204, 2000.

[11] Вендітті Девід А. та Дармофал Девід Л. Оцінка суміжних помилок та адаптація сітки для функціональних виходів: Застосування для квазі-одновимірного fl власності. Журнал обчислювальної фізики, 164: 204–227, 2000.

[12] Баласубраманян Р. та Ньюман JC Порівняння суміжної та функціональної адаптації сітки для функціональних виходів. Міжнародний журнал для числових методів у флюїдах, 53: 1541–1569, 2007.

[13] Гартман Ральф. Оцінка помилок та пристосування на основі аеродинаміки на основі суміжних змін. На Європейській конференції з обчислювальної динаміки рідин, 2006.


Цей перший абзац походить з обчислювальної динаміки рідин: вступ. Мабуть, мабуть, це посилання. Але це огляд, дякую. Ви коли-небудь застосовували адаптацію до проблеми advection, це в основному те, що я намагаюся вирішити?
boyfarrell

@boyfarrell, Так це правда, насправді я взяв це все зі свого звіту про адаптацію сітки як частину моєї курсової роботи, де я правильно цитував посилання. Тут важко додати стільки посилань, тому я її опустив. Якщо ви хочете, я поділюся з вами всіма посиланнями. Так, я планую використовувати адаптацію сітки як частину моєї дослідницької роботи, але ще не розпочату. Всього найкращого!
Shainath

Перегляд літератури - це дійсно хороший спосіб розпочати, дякую за обмін!
boyfarrell

@boyfarrell, я додав посилання на свою відповідь, які я використав для вищеописаного опису. Все найкраще
Шайнат

3

Я шукав (як і раніше) хороших відповідей на це. Я працюю з багаторівневими адаптивними сітками, де використовую якийсь критерій для уточнення. Люди, які роблять FEM, користуються досить дешевими (обчислювально) суворими оцінками помилок, які вони використовують як критерій уточнення. Для нас, хто займається FDM / FVM, мені не пощастило знайти такі оцінки.

У цьому контексті, якщо ви хочете бути суворими щодо уточнення, тобто уточнення, заснованого на деякій оцінці фактичної помилки, ваш (майже) єдиний вибір - екстраполяція Річардсона. Так, наприклад, використовували Бергер і Олігер (1984) для їх структурного блоку, гіперболічного вирішення AMR. Методика загальна в тому сенсі, що ви можете використовувати Екстраполяцію Річардсона практично для будь-якої проблеми. Єдине питання з цим полягає в тому, що це дорого, особливо для перехідних проблем.

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

Що стосується інтерполяції між сітками, то, як правило, потрібно щось, що є принаймні настільки ж точним, як ви вирішуєте. Іноді можна побудувати інтерполяції, які задовольняють певні властивості, наприклад, зберегти масу або опуклі, таким чином, не вводяться нові екстремуми. Я зазначив, що ця остання властивість іноді дуже важлива для стабільності загальної схеми.


Дякуємо, що поділилися своїм досвідом. Так, здається, що робити це суворо, насправді досить задіяно. Оскільки моя проблема порівняно проста (лише для 1D тощо). Спершу спробую фіксований (нерівномірний) пояс. Хоча я дуже спокушаюсь реалізувати певний підхід до рухливої ​​сітки . Якщо ви вже робили рухливу сітку раніше, наскільки просто це реалізувати для, скажімо, рівняння адвекції?
boyfarrell

@boyfarrell Я не впевнений, що таке рухома сітка . Це як 1D сітка, де відстань між точками може змінюватися в часі?
GradGuy

Просто переглядаючи посилання, запропоновані Даніелем Шаперо (вгорі) Адаптивні методи переміщення сітки . Здається, цікаво.
boyfarrell

2

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


Дякуємо, що поділилися своїм досвідом. Я думаю, ти маєш рацію; Я, мабуть, міг би просто використовувати нестабільну сітку в цьому випадку, оскільки розрив залишається більш-менш на тому самому місці. Чи погодились би ви?
boyfarrell
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.