solving the helmholtz equation via row projections
play

Solving the Helmholtz equation via row- projections Tristan van - PowerPoint PPT Presentation

Solving the Helmholtz equation via row- projections Tristan van Leeuwen (Univ. of BC, Canada) Dan Gordon (Univ. of Haifa, Israel) Rachel Gordon (Technion, Israel) Felix J. Herrmann


  1. Solving the Helmholtz equation via row- projections Tristan ¡van ¡Leeuwen ¡(Univ. ¡of ¡BC, ¡Canada) Dan ¡Gordon ¡(Univ. ¡of ¡Haifa, ¡Israel) Rachel ¡Gordon ¡(Technion, ¡Israel) Felix ¡J. ¡Herrmann ¡(Univ. ¡of ¡BC, ¡Canada)

  2. Modelling ¡engine ¡for ¡ 3D ¡Frequency-­‑domain ¡FWI: • work ¡with ¡few ¡sources/ frequencies ¡at ¡each ¡iteration • flexibility ¡in ¡type ¡of ¡equation • robust ¡ • parallel

  3. 3D ¡Helmholtz ¡equation: • large, ¡sparse, ¡indefinite ¡system • direct ¡factorization ¡not ¡feasible • `standard’ ¡preconditioners ¡often ¡ fail • successful ¡preconditioners ¡often ¡ tailored ¡to ¡specific ¡wave ¡equation [Ernst ¡& ¡MarLn, ¡2011]

  4. VS. simple, ¡robust, ¡... fast, ¡complicated,..

  5. Overview • Kaczmarz ¡preconditioning • Examples • Parallelization • 3D ¡Benchmark • Inversion • Conclusions

  6. Kaczmarz The ¡Kaczmarz ¡method ¡solves ¡a ¡ system ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡by ¡successive ¡row ¡ A x = b projections λ i b i − a T � � a i , x := x + i x || a i || 2 2 with ¡relaxation ¡parameter 0 < λ i < 2 [Kaczmarz, ¡’37]

  7. Kaczmarz λ < 1 λ = 1 λ > 1

  8. Kaczmarz rewrite: ✓ ◆ λ i λ i a i a T I − b i a i x := x + i || a i || 2 || a i || 2 2 2 | {z } Q i a ¡double ¡sweep ¡yields x := ( Q 1 Q 2 . . . Q n Q n . . . Q 1 ) x + ( . . . ) b | {z } |{z} Q R

  9. Kaczmarz Find ¡a ¡fixed ¡point ¡by ¡solving ( I − Q ) x = R b where ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡is ¡symmetric ¡and ¡ I − Q positive ¡semidefinite, ¡so ¡we ¡can ¡ use ¡CG ¡(CGMN). [Bjork ¡& ¡Elfving, ¡’79]

  10. Kaczmarz We ¡never ¡form ¡the ¡matrix ¡ explicitly, ¡but ¡compute ¡its ¡action: Algorithm 1 DKSWP ( A, x , b , λ ) = Q x + R b forward sweep for i = 1 to n do x := x + λ ( b i − a T i x ) a i / || a i || 2 2 end for backward sweep for i = n to 1 do x := x + λ ( b i − a T i x ) a i / || a i || 2 2 end for return x

  11. Kaczmarz • low ¡complexity ¡ • low ¡memory ¡(same ¡as ¡original ¡matrix) • no ¡setup ¡time

  12. 1D results 1D ¡profile, ¡varying ¡k, ¡10 ¡p/wavelength 1.5 0.01 1.4 0.005 1.3 1.2 p(x) 0 u 1.1 1 − 0.005 0.9 0.8 − 0.01 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 x x

  13. 1D results eigenvalues # ¡of ¡CG ¡iteraLons 1 2000 A T A AA* WAA*W* A T W T WA I − Q w=0.5 0.8 I − Q w=0.5 1500 I − Q w=1 I − Q w=1 # of CG iterations I − Q w=1.5 I − Q w=1.5 0.6 1000 � i 0.4 500 0.2 0 0 50 100 150 200 500 1000 1500 2000 2500 k 0 i

  14. 2D results Marmousi, ¡304 ¡x ¡1100, ¡f=20, ¡h=10 • CG ¡+ ¡Kaczmarz ¡(CGMN) • BiCGstab ¡+ ¡ILU(0) • SQMR ¡+ ¡ML [Bollhofer ¡et ¡al, ¡’08]

  15. 2D results ¡solve ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡starting ¡from ¡random ¡vector A r = 0 r 1 = ( I − M − 1 A ) r 0 r 1 = Q r 0 2 − 0.05 − 0.05 − 0.05 1.5 k z [1/m] 0 0 0 1 0.5 0.05 0.05 0.05 0 − 0.05 0 0.05 − 0.05 0 0.05 − 0.05 0 0.05 k x [1/m] k x [1/m] k x [1/m] ILU(0) ML Kaczmarz

  16. 2D results iteraLons Lme ¡[s]* CG ¡+ ¡Kaczmarz 5542 603 BiCGstab ¡+ ¡ILU(0) div. div. SQMR ¡+ ¡ML 514 379 0 1000 z [m] 2000 3000 0 2000 4000 6000 8000 10000 x [m]

  17. Parallelization • divide ¡domain ¡in ¡blocks • Kaczmarz ¡sweeps ¡on ¡blocks ¡are ¡ done ¡in ¡parallel ¡(CARP) • average ¡boundary ¡elements ¡ between ¡each ¡sweep • convergence ¡guaranteed [Gordon ¡& ¡Gordon, ¡’10]

  18. SEG/EAGE salt 7-­‑point ¡stencil, ¡ABC

  19. SEG/EAGE salt 0 10 -1 10 h=160; f= 1.25 f h iterations -2 h= 80; f= 2.5 10 h= 40; f= 5. h= 20; f=10. 1.25 160 310 -3 10 Res/Res(0) 2.5 80 510 -4 10 5 40 760 -5 10 10 20 1780 -6 10 on ¡1 ¡processor, ¡ ✏ = 10 − 4 -7 10 -8 10 0 1000 2000 3000 4000 5000 6000 7000 8000 iter on ¡12 ¡processors

  20. SEG/EAGE salt grid: ¡105 ¡x ¡338 ¡x ¡338, ¡h=40, ¡f=5, ✏ = 10 − 4 np iter time (s) e ffi ciency 1 621 4444.90 1.00 2 619 3091.10 0.72 4 593 1335.00 0.83 8 599 737.90 0.75

  21. Overthrust 27 ¡point ¡stencil ¡(2 nd ¡order), ¡PML

  22. Overthrust 0 10 f=1.5, ¡h=200 f=1.5 Hz. f=3 Hz. f=3, ¡ ¡ ¡ ¡h=100 f=6 Hz. f=6, ¡ ¡ ¡ ¡h=50 − 1 10 rel. residual − 2 10 − 3 10 − 4 10 100 200 300 400 500 600 iteration on ¡1 ¡processor

  23. Overthrust grid: ¡47x201x201, ¡h=100, ¡f=3 ¡Hz, ¡ ✏ = 10 − 4 e ffi ciency np iter time 1 659 20785.40 1.00 2 657 11306.90 0.92 4 596 4882.50 0.96 8 603 3960.10 0.60

  24. Inversion Camembert ¡model ¡ ¡in ¡2D ¡... 3500 velocity [m/s] 3000 2500 1000 1000 500 500 0 0 z [m] x [m]

  25. Inversion EDAM ¡model ¡ ¡in ¡3D ¡! 0 z [km] 500 1000 1000 1000 500 500 0 0 y [km] x [km]

  26. Inversion transmission ¡setup, ¡9 ¡sources, ¡ 3 ¡frequencies ¡1.0 0 10 � = 10 − 2 0 � = 10 − 3 ¡0.9 rel. model error z [km] 500 ¡0.8 1000 1000 1000 ¡0.7 500 500 0 2 4 6 8 10 iteration 0 0 y [km] x [km]

  27. Conclusions • simple, ¡robust ¡and ¡generic ¡ preconditioner • no ¡overhead, ¡cheap ¡to ¡apply • easy ¡to ¡parallelize

  28. Future plans • efficient ¡ ¡implementation ¡of ¡ sweeps ¡using ¡multi-­‑threading • investigate ¡BlockCG • incorporate ¡in ¡inversion • high-­‑order ¡schemes

  29. http://cs.haifa.ac.il/~gordon/soft.html

  30. Acknowledgements This ¡work ¡was ¡in ¡part ¡financially ¡supported ¡by ¡the ¡Natural ¡Sciences ¡and ¡Engineering ¡ Research ¡Council ¡of ¡Canada ¡Discovery ¡Grant ¡(22R81254) ¡and ¡the ¡Collaborative ¡ Research ¡and ¡Development ¡Grant ¡DNOISE ¡II ¡(375142-­‑08). ¡This ¡research ¡was ¡carried ¡ out ¡as ¡part ¡of ¡the ¡SINBAD ¡II ¡project ¡with ¡support ¡from ¡the ¡following ¡organizations: ¡ BG ¡Group, ¡BP, ¡Chevron, ¡ConocoPhillips, ¡Petrobras, ¡Total ¡SA, ¡and ¡WesternGeco.

  31. References Bollhöfer, ¡M., ¡Grote, ¡M. ¡J., ¡& ¡Schenk, ¡O. ¡(2009). ¡Algebraic ¡MulLlevel ¡PrecondiLoner ¡for ¡ the ¡Helmholtz ¡EquaLon ¡in ¡Heterogeneous ¡Media. ¡ SIAM ¡J. ¡on ¡Sc. ¡Comp. , ¡ 31 (5), ¡3781. ¡ Gordon, ¡D. ¡and ¡Gordon, ¡R. ¡(2010). ¡CARP-­‑CG: ¡A ¡robust ¡and ¡efficient ¡parallel ¡solver ¡for ¡ linear ¡systems, ¡applied ¡to ¡strongly ¡convecLon ¡dominated ¡PDEs. ¡ Parallel ¡CompuTng, ¡ 36 , ¡495–515. Björck, ¡Å. ¡and ¡Elfving, ¡T. ¡(1979) ¡Accelerated ¡projecLon ¡methods ¡for ¡compuLng ¡ pseudoinverse ¡soluLons ¡of ¡systems ¡of ¡linear ¡equaLons. ¡ BIT, ¡19 , ¡145–163. Kaczmarz, ¡S. ¡[1937] ¡Angenäherte ¡auflösung ¡von ¡systemen ¡linearer ¡gleichungen. ¡ BulleTn ¡InternaTonal ¡de ¡l’Académie ¡Polonaise ¡des ¡Sciences ¡et ¡des ¡LeYres, ¡35 , ¡355–357. Ernst, ¡O.G. ¡and ¡MarLn ¡J. ¡(2011) ¡Why ¡it ¡is ¡Difficult ¡to ¡Solve ¡Helmholtz ¡Problems ¡with ¡ Classical ¡IteraLve ¡Methods. ¡ Unpublished.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend