Applicazione delle condizioni al contorno di Dirichlet all'equazione di Poisson con metodo del volume finito


10

Vorrei sapere come vengono normalmente applicate le condizioni di Dirichlet quando si utilizza il metodo del volume finito su una griglia non uniforme centrata sulla cella,

Lato sinistro della griglia centrata sulla cella.

La mia attuale implementazione impone semplicemente la condizione al contorno del mio fissare il valore della prima cella,

ϕ1=gD(xL)

dove è la variabile soluzione e g D ( x L ) è il confine valore della condizione Dirichlet ai sx del dominio ( NB x Lx 1 / 2 ). Tuttavia, ciò non è corretto perché la condizione al contorno dovrebbe correggere il valore della faccia della cella e non il valore della cella stessa. Quello che dovrei davvero applicare è,ϕgD(xL) xLx1/2

ϕL=gD(xL)

Ad esempio, risolviamo l'equazione di Poisson,

0=(ϕx)x+ρ(x)

con condizione iniziale e condizioni al contorno,

ρ=1gD(xL)=0gN(xR)=0

(dove è una condizione al contorno di Neumann sul lato destro).gN(xR)

Soluzione numerica dell'equazione di Poisson

gD(xL)=0

Domanda

ϕ1ϕ0ϕ2xL


Aggiornare

Ecco il mio tentativo di utilizzare un approccio di cellula fantasma che hai suggerito, sembra ragionevole?

Ω1Fϕ

F3/2FL=ρ¯

FLΩ0

FL=ϕ1ϕ0h[1]

ϕ0Ω0Ω1xLgD(xL)

gD(xL)=h12hϕ0+h02hϕ1[2]

ϕ0FLϕ1gD(xL)

FL=1h(ϕ11h1(2gDhh1ϕ1))

h0h1

FL=2gDh1+2ϕ1h

Ω0Ω1hh1

FL=2h1(ϕ1gD)

Tuttavia, questo approccio ha recuperato la definizione instabile, quindi non sono sicuro di come procedere? Ho interpretato il tuo consiglio in modo errato (@Jan)? La cosa strana è che sembra funzionare, vedi sotto,

Vedi sotto, funziona,

Calcolo aggiornato, il nuovo approccio concorda molto bene con l'approccio analitico.


Bene, la tua derivazione è corretta. E ricorda davvero quello che ho chiamato (**) nella mia risposta. E, quindi, si è dimostrato stabile. Aggiungerò un commento nella mia risposta.
Jan

Inoltre, come osservazione generale, i risultati di stabilità sono in genere condizioni sufficienti. Vale a dire se uno schema non soddisfa le condizioni, in alcune situazioni, può produrre risultati affidabili.
Jan

Risposte:


3

Ω¯iΓD=0()
Rn1ΩRn

(dϕdx)1/2=2h1(ϕ1ϕ1/2)()
()()

La stabilità e la convergenza (di primo ordine nella massima norma discreta) per il problema del poisson sono state dimostrate da Grossmann & Roos per le reti, con celle di confine distinte con i loro "centri" sul confine effettivo, come illustrato nel mio disegno per un caso 1D. inserisci qui la descrizione dell'immagine

Qui, il quoziente differenziale sull'interfaccia è approssimato in modo semplice.

Direi che le cellule fantasma sono l'approccio comune, per due motivi.

  • Imitano la situazione stabile descritta nel mio disegno ma con una condizione al contorno interpolata
  • Sono semplicemente attaccati al confine fisico. Pertanto, si può usare una triangolazione del dominio, che è anche vantaggioso, poiché spesso si hanno anche BC naturali che sono direttamente imposti sull'interfaccia [ Grossmann & Roos , p. 101].

ϕ0ϕ0ϕ1gD


Grazie Jan, è davvero interessante. Ciò certamente imiterebbe la mia esperienza con alcuni approcci essendo instabili. Ho ragione, se uso un approccio di cella fantasma non ho bisogno di spostare l'ultima cella in modo che il centro sia al limite? Ho anche un problema con il concetto di spostare la cella di confine; non implica che quella cella abbia volume zero?
boyfarrell,

hΓ

hΓ0ϕ1ϕ0

La dipendenza dal valore della cellula fantasma può essere rimossa con questo approccio? Immagino che non debba essere incluso nelle equazioni ma utilizzato solo uno strumento per scrivere le condizioni al contorno. Per quanto riguarda la cella di confine "spostata". Sembra che quel punto usi la differenza finita piuttosto che il metodo del volume finito. Sarebbe accurato?
boyfarrell,

1
Ok ho capito! Grazie. C'è un errore di battitura. nel secondo paragrafo "Pertanto, se nella tua configurazione, l'approccio [eqn] è instabile, questa non è una contraddizione con i risultati di stabilità noti." Il "no" dovrebbe essere "in" . Questo capovolge il significato della frase per indicare l'opposto di ciò che vuoi (penso)!
boyfarrell,

3

ϕ1ϕ2ϕ1x2x1(x1x0)=0x0xiϕiϕ1ϕ2ϕ1

Quello che trovi qui è perché i volumi finiti non sono usati frequentemente per le equazioni ellittiche per le quali si pongono le condizioni di Dirichlet. Sono utilizzati per le leggi di conservazione in cui sono indicate le condizioni più naturali in termini di flussi.


3

d2ϕdx2=f
(dϕdx)3/2(dϕdx)1/2=x1/2x3/2fdx
(dϕdx)3/2=ϕ2ϕ1h+

(dϕ/dx)1/2ϕ1/2x1/2x1x2h

(dϕdx)1/2=1h(13ϕ2+3ϕ183ϕ1/2)
(dϕdx)1/2=2h1(ϕ1ϕ1/2)

Naturalmente, una cosa che deve anche essere verificata è la stabilità della tua discretizzazione con l'approssimazione del secondo ordine al limite. Dalla parte superiore della mia testa, non so se sarà stabile combinato con un'approssimazione centrata del secondo ordine all'interno. Un'analisi di stabilità della matrice te lo dirà di sicuro. (Sono praticamente certo che l'approssimazione del primo ordine al confine sarà stabile.)

Menzionate la possibilità di usare i punti fantasma. Questo porta al problema che devi estrapolare dall'interno al punto fantasma e usare il bc nel processo. Sospetto, ma non l'ho "dimostrato", che almeno alcuni trattamenti con i punti fantasma sono equivalenti all'uso del tipo di approccio che ho delineato sopra.

Spero che questo aiuti un po '.


Ciao Brian Non pensavo fosse possibile applicare le condizioni al contorno di Dirichlet usando la forma del flusso (cioè debolmente). In effetti ho fatto quella domanda qualche mese fa, scicomp.stackexchange.com/questions/7777/… Ho provato a implementare qualcosa del genere allora ma, per qualsiasi motivo, l'implementazione era instabile e sempre fallita. Conosci un riferimento in cui le condizioni di Dirichlet sono applicate all'equazione di Poisson, sono interessato a sapere cosa è standard ? Forse questo non è fatto per le equazioni ellittiche?
boyfarrell,

Non conosco uno standard, ma non riesco a immaginare che tutte queste implementazioni siano instabili. Hai provato l'analisi a matrice? In questo caso dovrebbe essere molto semplice. Le persone risolvono le equazioni di Navier-Stokes con trattamenti a punti fantasma e trattamenti come quello sopra. (Ovviamente, gli effetti viscosi non dominano a tal punto da poter considerare l'equazione di Poisson come un buon modello.) Forse questi riferimenti aiutano: ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/ ... e nas.nasa.gov/assets/pdf/techreports/1997/nas-97-011.pdf
Brian Zatapatique,

Ciao Brian No, non ho provato l'analisi a matrice. Ad essere sincero, non sono troppo sicuro di come farlo. Avrò tempo la prossima settimana per rivisitare questo problema, quindi potrei postare una nuova domanda allora!
boyfarrell,

La mia comprensione è anche che l'estrapolazione del punto fantasma (quadratica) finisce per essere equivalente alla classica discretizzazione della differenza finita di Shortley-Weller per condizioni al contorno di Dirichlet irregolari (curve), ad esempio come descritto a p74 di Morton e Meyers Soluzione numerica di equazioni differenziali parziali (2a edizione). (La versione di estrapolazione lineare equivale al metodo più semplice di Gibou et al. Sciencedirect.com/science/article/pii/S0021999101969773 ) Inoltre: gli estpolanti sia lineari che quadratici offrono soluzioni accurate del 2 ° ordine, ma lineari solo gradienti del 1 ° ordine.
combatti il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.