Metoda MacCormack

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Metoda MacCormack este o metodă numerică cu diferență finită și este utilizată pentru soluția ecuațiilor diferențiale parțiale hiperbolice sau a sistemelor de ecuații diferențiale . Schema numerică este utilizată în dinamica calculată a fluidelor pentru a rezolva legile conservării , are o precizie de ordinul doi atât în ​​timp cât și în spațiu. Șablonul său spațial este de tip simetric, în timp ce progresul temporal este de tip explicit, deoarece soluția la noul timp depinde doar de proprietățile spațiale ale timpului vechi. Metoda își ia numele de la creatorul său Robert W. MacCormack, care a publicat-o pentru prima dată în 1969. Este o metodă simplă, rapidă din punct de vedere al calculului, dar care introduce erori de dispersie deloc neglijabile în regiunile caracterizate de gradienți mari ( fenomenul lui Gibbs ) . [1]

Formulare

Reprezentarea schemei MacCormack

Pornind de la ecuația diferențială parțială:

,

cu , sau asta care este o funcție a , metoda numerică MacCormack caută soluția în doi pași distincti, numiți din pasul predictor englez și pasul corector prin alternarea diferențelor finite înainte și înapoi (sau invers) a căror succesiune duce la soluția explicită la un moment nou . În funcție de faptul dacă începeți cu o diferență înainte și apoi înapoi, sau mai întâi înapoi și apoi înainte, metoda va fi definită ca corector predictor înainte-înapoi sau corector predictor înapoi-înainte.

Primul pas ( pas predictor )

Pornind de la valorile Și la momentul în noduri Și , este posibil să se calculeze o primă aproximare a vectorului , în sens la noul timp , apel , conform ecuației:

.

Soluția astfel obținut este doar o funcție a nodurilor Și , și, prin urmare, reprezintă o diferență înainte în spațiu ( predictor înainte) .

Vector cunoscut , se pot determina aproximări de măreție la nod în același timp următor .

Al doilea pas ( pas corector )

În al doilea pas, soluția este evaluată la momentul în nod introducerea unei diferențe finite înapoi în spațiu ( corector backwad ):

,

din care se obține corespondentul .

În cele din urmă, efectuarea unei semi-diferențe în timp:

,

și aproximativ cu media valorilor din acel moment Și soluției, calculată ca o aproximare inițială în timpul etapei predictive:

substituția permite atingerea expresiei finale:

Se arată că cele mai bune rezultate sunt obținute dacă ordinea diferențelor este inversată ( corector predictor-invers înapoi la un pas, apoi corector predictor-înainte înapoi la pasul următor) la fiecare pas de timp. .

Stabilitate

Discretizarea spațială înainte utilizată în primul pas este instabilă atunci când toate valorile proprii ale matricei Jacobian asociate cu problema au un semn pozitiv. Discretizarea înapoi, pe de altă parte, este instabilă dacă valorile proprii sunt negative. De exemplu, dacă schema se aplică în dinamica fluidelor, prima condiție apare pentru un regim supersonic , în timp ce a doua apare pentru un regim subsonic . [2] Cu toate acestea, se poate demonstra că combinația celor două condiții face ca schema completă să fie stabilă, cu condiția să se verifice criteriul de stabilitate Courant-Fredrichs-Lewy :

,

care relatează discretizarea spațială cu avansarea maximă în timp , prin viteza maximă a informațiilor purtate de unda de fluid . Această condiție garantează că în timpul avansării temporale informațiile nu au părăsit domeniul spațial și își păstrează stabilitatea.

Alternarea unui pas înainte și a unui pas înapoi permite metodei să obțină precizie de ordinul doi , deoarece erorile de trunchiere ale celor două semi-pași se anulează reciproc.

Atunci când este aplicat în dinamica fluidelor, stabilitatea modelului este influențată de prezența discontinuităților (cum ar fi o undă de șoc ). De fapt, se pare că varianta corectorului predictor înainte-înapoi este mai potrivită pentru reprezentarea discontinuităților care călătoresc de la stânga la dreapta și invers versiunea corectorului predictor-înainte înapoi . Din acest motiv, în problemele caracterizate de fluxuri non-staționare și, în general, unde direcția discontinuităților nu este cunoscută a priori, este convenabil să alternăm cele două variante la fiecare pas de timp. [2]

Notă

  1. ^ Anderson JD, Computational Fluid Dynamics: The Basics with Applications, McGraw Hill, 1994
  2. ^ a b Winterbone DE, Theory of Engine Manifold Design: Wave Action Methods for IC Engines, Professional Engineering Publishing, 2000, pp. 96-98

Bibliografie

  • ( EN ) MacCormack RW, The effect of viscosity in hypervelocity and impact cratering , în lucrarea AIAA , 1969, pp. 69-354.
  • ( EN ) MacCormack RW, Soluție numerică de integrare a unei unde de șoc cu un strat limitar laminar , în Proceeding of Second Internal Conference on Numerical lines in fluid fluid , Springer Verlag, 1971.
  • (EN) Anderson JD, Computational Fluid Dynamics: The Basics with Applications, McGraw Hill, 1994.
  • ( EN ) Winterbone DE, Theory of Engine Manifold Design: Wave Action Methods for IC Engines , Professional Engineering Publishing, 2000, ISBN 1 86058 209 5 .

Elemente conexe

linkuri externe