• Full Screen
  • Wide Screen
  • Narrow Screen
  • Increase font size
  • Default font size
  • Decrease font size
Nicola Stella || Math | Physics | Remote Sensing | Teaching |  Project Management and Consulting |  Indistrial Research and Innovation Consulting Service

La peculiarità delle equazioni alle derivate parziali iperboliche è quella di presentare due caratteristiche reali, quindi due percorsi di evoluzione del sistema in esame. Solitamente l'applicazione di schemi numerici comporta prima un esame attento della PDE iperbolica: lineare o non lineare.Tra i metodi numerici per questo tipo di PDE vi sono i metodi basati sullo studio delle caratteristiche, il metodo di Lax, di Lax-Wendroff, di Crank-Nicolson,di MacCormack, gli schemi Upwind, Runge-Kutta, metodo TVD. Un metodo per la risoluzione di PDE non lineari nel caso unidimensionale è il metodo di Roe o risolutore di Roe.

Stampa

Metodi numerici per PDE Iperbiliche Lineari

Consideriamo come caso studio la PDE lineare

\frac{\partial u}{\partial t} = -\alpha\frac{\partial u}{\partial x} con \alpha > 0

ossia l'equazione dell'onda del primo ordine.

Dal momento che i problemi maggiori si hanno nel caso di PDE iperboliche non lineari, tralasciamo i commenti per il caso lineare, riportando di seguito una tabella riassuntiva dei principali metodi numerici per le PDE iperboliche lineari con le principali caratteristiche.

N.B.: Nella Tabella c = \alpha\frac{\Delta t}{\Delta x}

Metodo
Tipo
Approssimazione
Ordine Accuratezza
Stabilità
     
Eulero FTFSEsplicito
\frac{u_{i}^{n+1} - u_{i}^{n}}{\Delta t} = -\alpha\frac{u_{i+1}^{n} - u_{i}^{n}}{\Delta x}
\mathcal{O} \left(\Delta t, \Delta x\right)
Incondizionatamente Instabile 
     
Eulero FTCS
Esplicito\frac{u_{i}^{n+1} - u_{i}^{n}}{\Delta t} = -\alpha\frac{u_{i+1}^{n} - u_{i-1}^{n}}{2\Delta x}
 \mathcal{O} \left[\Delta t, \left(\Delta x\right)^{2}\right]
Incondizionatamente Instabile 
     
Upwind 1° ordine
Esplicito
\frac{u_{i}^{n+1} - u_{i}^{n}}{\Delta t} = -\alpha\frac{u_{i}^{n} - u_{i-1}^{n}}{\Delta x}
\mathcal{O} \left(\Delta t, \Delta x\right) c \leq 1
     
Lax
Esplicito
u_{i}^{n+1} = \frac{1}{2}\left(u_{i+1}^{n} + u_{i-1}^{n}\right) - \frac{c}{2}\left(u_{i+1}^{n} - u_{i-1}^{n}\right)
\mathcal{O} \left[\Delta t, \frac{\left(\Delta x\right)^{2}}{\Delta t}\right]
c \leq 1
     
Leapfrog
Esplicito
\frac{u_{i}^{n+1} - u_{i}^{n-1}}{2\Delta t} = -\alpha\frac{u_{i+1}^{n} - u_{i-1}^{n}}{2\Delta x}
\mathcal{O} \left[\left(\Delta t\right)^{2}, \left(\Delta x\right)^{2}\right]c \leq 1
     
Lax-Wendroff
Esplicito
u_{i}^{n+1} = u_{i}^{n} - \alpha\Delta t\left(\frac{u_{i+1}^{n} - u_{i-1}^{n}}{2\Delta x}\right) + \frac{\alpha^{2}}{2}\left(\Delta t\right)^{2}\left(\frac{u_{i+1}^{n} - 2u_{i}^{n} + u_{i-1}^{n}}{\left(\Delta x\right)^{2}}\right)
\mathcal{O} \left[\left(\Delta t\right)^{2}, \left(\Delta x\right)^{2}\right]
c \leq 1
     
Eulero BTCS
Implicito
\frac{c}{2}\left(u_{i-1}^{n+1} - u_{i+1}^{n+1}\right) - u_{i}^{n+1} = -u_{i}^{n}
\mathcal{O} \left[\Delta t, \left(\Delta x\right)^{2}\right]
Incondizionatamente Stabile
     
MacCormack
Multi-step

Predictor\overline{u_{i}^{n+1}} = u_{i}^{n} - c\left(u_{i+1}^{n} - u_{i}^{n}\right)

 

Corrector:   u_{i}^{n+1} = \frac{1}{2}\left(u_{i}^{n} + \overline{u_{i}^{n+1}}\right) - \frac{c}{2}\left(\overline{u_{i}^{n+1}} - \overline{u_{i-1}^{n+1}}\right)

\mathcal{O} \left[\Delta t, \frac{\left(\Delta x\right)^{2}}{\Delta t}\right] c \leq 1

Oltre a quelli asposti ci sono altri metodi utilizzabili come ad esempio il metodo di Crank-Nicolson, varianti ai metodi Upwind, metodi Upwind al secondo ordine, etc...

 

Note - Riferimento Bibliografico: K. Hoffmann, S. Chiang - Computational Fluid Dynamics Vol.I - EES Books (2000)


Sei qui: