1 / 10

IWAVE++: a Framework for Imaging and Inversion based on Regular-Grid Finite Difference Modeling

IWAVE++: a Framework for Imaging and Inversion based on Regular-Grid Finite Difference Modeling. William W. Symes The Rice Inversion Project Department of Computational and Applied Mathematics Rice University, Houston, TX symes@caam.rice.edu. Rice Vector Library.

garron
Download Presentation

IWAVE++: a Framework for Imaging and Inversion based on Regular-Grid Finite Difference Modeling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IWAVE++: a Framework for Imaging and Inversion based on Regular-GridFinite Difference Modeling William W. Symes The Rice Inversion Project Department of Computational and Applied Mathematics Rice University, Houston, TX symes@caam.rice.edu TRIP 2011 Review

  2. Rice Vector Library TRIP 2011 Review

  3. Abstract time-stepping library, including universal implementation of optimal checkpointing C++ classes expressing calculus in Hilbert SpaceDesign Paper: Padula, Scott & S, ACM TOMS 2009High level abstractions – Space, Vector, (linear or nonlinear) Operator, FunctionalEvaluation objects – organize the value of function & derivatives at a point, enforce coherency Abstract Optimization: the Rice Vector Library (“RVL”) TRIP 2011 Review

  4. Abstract time-stepping library, including universal implementation of optimal checkpointing Typical use: migration looks likeMyKindaDataSpace dsp(…);MyKindaModelSpace msp(…);Vector m(msp); Vector g(msp); Vector d(dsp); …MyKindaModelingOp op(….);OperatorEvaluation opeval(op,m);opeval.getDeriv().applyAdj(d,g);“THE MATH IS THE API” Abstract Optimization: the Rice Vector Library (“RVL”) TRIP 2011 Review

  5. Abstract time-stepping library, including universal implementation of optimal checkpointing Built on RVL:Optimization Library UMin: LBFGS, trust region G-N-K, CG, Arnoldi…Abstract time-stepping library TSOpt, including universal implementation of optimal checkpointing (Griewank 92)Plans: additional algorithms (L1, TV, matrix-free TR-SQP, …) Abstract Optimization: the Rice Vector Library (“RVL”) TRIP 2011 Review

  6. Critical component: standard interface to concrete data types – in-core, out-of-core, distributed,…RVL Objects = intrusive handles – underlying data not exposed, limited access, usually no operator newExamples: FunctionObjects to perform array operations for linear algebra, associate out-of-core data with Vectors, etc.New data types – build these components! Abstract Optimization: the Rice Vector Library (“RVL”) • DataContainer – data abstraction, forms Visitor pattern with • FunctionObject – encapsulates all actions on data TRIP 2011 Review

  7. RVL + IWAVE = IWAVE++ TRIP 2011 Review

  8. Reverse Time Migration and Full Waveform Inversion • Requirements for any inversion implementation: • modeling • linearized (“Born”) modeling • adjoint (transposed) linearized modeling [= RTM] • optimization algorithm, implementation • interface modeling and optimization • Our approach: • maximize code re-use • high-quality abstract optimization, linear algebra library (RVL) • middleware layer forms interface TRIP 2011 Review

  9. Reverse Time Migration and Full Waveform Inversion • Code re-use - build on IWAVE: • define additional interfaces needed using IWAVE types, minimal extensions: • gts_adj(RDOM * p, RDOM * r, int iv, void * gfd_pars) • re-use parallel automation, job control, i/o from IWAVE • However IWAVE data structures (RDOM etc.) are not RVL vectors, and simulators are not operators… TRIP 2011 Review

  10. Reverse Time Migration and Full Waveform Inversion • Middleware layer – IWAVE++ • C++ classes encapsulating high-level drivers for IWAVE functions, Born & adjoint extensions • delegates checkpointing, optimization functions to TSOpt • RVL data types translated to IWAVE in/outputs • [WWS, Enriquez & Sun, Geophys. Prosp. 11] • Release with acoustic staggered grid app: Q2 12 • Claims to fame: works just like IWAVE, passes dot product test […demo] TRIP 2011 Review

More Related