Come funziona esattamente l'algoritmo multigrid * completo *?


12

Quindi capisco (o almeno credo di sì) come funziona un ciclo a V. Ho scritto in Matlab la versione ricorsiva 1-D di un V-cycle. Tuttavia, quando ho eseguito il mio codice per FMG, la mia soluzione non convergeva. Credo che il mio problema risieda nella mia comprensione dell'attuale parte FMG. Quello che attualmente so è questo:

  1. Appena prima dell'interpolazione FMG, ho rilassato la mia soluzione u
  2. Interpolare sia l'errore che (?)u
  3. Eseguire un v-cycle a 2 griglie, passando l' errore nel v-cycle (?)
  4. Rilassa l'errore (sulla seconda griglia più grossolana)
  5. Interpolare e l'erroreu
  6. Aggiorna aggiungendo l'errore ad esso.u
  7. Eseguire un v-cycle, quindi ripetere dal passaggio 4.

Non sono sicuro dell'ordine, ma potrei anche sbagliarmi su cosa esattamente interpolo e passo nel mio v-ciclo. Se mi manca qualcosa dell'algoritmo, per favore fatemi sapere.

Risposte:


11

Dove ti è venuta l'interpolazione dell '"errore"? (E come si misura l'errore?)

uuhIHhuHIhH=IhH

rh=Ahuhbh

u~HI^hHu~hA

AHuH=IhHbhbH+AHI^hHu~hIhHAhu~hτhH

bHτhHuhAHI^hHuh=bH+τhHuhu~h+IHh(uHI^hHu~h)


L'errore è stato calcolato mentre calcolavo i residui procedendo dalla griglia più fine a quella più grossolana. L'approssimazione iniziale per griglia è solo zero, dove viene poi rilassata con un metodo iterativo.
AlanH,

In che modo l'errore (dell'ipotesi iniziale della soluzione) gioca un ruolo in tutto questo?
AlanH,

1
uhIHhuH

Nello schema di correzione a due griglie di Briggs menziona specificamente l'errore di interpolazione dalla griglia grossolana a quella fine. Non sembrare ostinato, ma è in qualche modo diverso da quello che hai spiegato?
AlanH,

1
T=IP1Aen+1=Ten
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.