What is SeisFlows? -Provides a complete, customizable waveform inversion workflow -So far, has been used for 3D production runs with up to 10 9 model parameters.

Slides:



Advertisements
Similar presentations
EPOS use case: High-resolution seismic tomography of Italy
Advertisements

An Introduction to Earthquake Analysis Tools (Part 1) Bill Langin 10/2/02.
Network Hosts Analyzer Hadas Shumovitch Elad Levi Tal Katz
Landscape Erosion Kirsten Meeker
Christian-Albrechts-Universität Kiel DGG-Tagung Hannover A combined elastic waveform and gravity inversion for improved density model resolution.
Numerical Grid Computations with the OPeNDAP Back End Server (BES)
1 Web Based Interface for Numerical Simulations of Nonlinear Evolution Equations Ryan N. Foster & Thiab Taha Department of Computer Science The University.
Surface wave tomography: part3: waveform inversion, adjoint tomography
“Automate Anything You See” Uses image recognition to identify and control GUI components Useful when there is no easy access to a GUI's internal or source.
WORK ON CLUSTER HYBRILIT E. Aleksandrov 1, D. Belyakov 1, M. Matveev 1, M. Vala 1,2 1 Joint Institute for nuclear research, LIT, Russia 2 Institute for.
Advanced Preconditioning for Generalized Least Squares Recall: To stabilize the inversions, we minimize the objective function J where where  is the.
LLNL-PRES-XXXXXX This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344.
RUP Implementation and Testing
NSF Geoinformatics Project (Sept 2012 – August 2014) Geoinformatics: Community Computational Platforms for Developing Three-Dimensional Models of Earth.
CHAPTER 3 - INPUT DEFINITION
LBNLGXTBR FY2001 Oil and Gas Recovery Technology Review Meeting Diagnostic and Imaging High Speed 3D Hybrid Elastic Seismic Modeling Lawrence Berkeley.
PDE2D, A General-Purpose PDE Solver Granville Sewell Mathematics Dept. University of Texas El Paso.
1 Computer Programming (ECGD2102 ) Using MATLAB Instructor: Eng. Eman Al.Swaity Lecture (1): Introduction.
3D Seismic Imaging based on Spectral-element Simulations and Adjoint Methods Qinya Liu Department of Physics University of Toronto 1 st QUEST Workshop,
Graphical User Interface You will be used to using programs that have a graphical user interface (GUI). So far you have been writing programs that have.
Earth System Modeling Framework Python Interface (ESMP) October 2011 Ryan O’Kuinghttons Robert Oehmke Cecelia DeLuca.
OCR GCSE Computing © Hodder Education 2013 Slide 1 OCR GCSE Computing Python programming 1: Introduction.
Cracow Grid Workshop, November 5-6, 2001 Concepts for implementing adaptive finite element codes for grid computing Krzysztof Banaś, Joanna Płażek Cracow.
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen Department of Computer Sciences University of Wisconsin-Madison Jeff Linderoth, Argonne.
Debugging Ensemble Productions CAMTA Meeting 11 th November 2010 John Murray.
Present / introduce / motivate After Introduction to the topic
On Optimization Techniques for the One-Dimensional Seismic Problem M. Argaez¹ J. Gomez¹ J. Islas¹ V. Kreinovich³ C. Quintero ¹ L. Salayandia³ M.C. Villamarin¹.
CUFSM and Matlab CUFSM2.5 The Matlab version of CUFSM allows much greater flexibility than the standalone version. Within the Graphical User Interface.
Understand Windows Services Software Development Fundamentals LESSON 5.3.
Engineering Optimization Most engineering design involves using optimization software Minimizes or maximizes a merit function Applies functional constraints.
NERSC User Group Meeting June 3, 2002 FY 2003 Allocation Process Francesca Verdier NERSC User Services Group Lead
Advanced topics Cluster Training Center for Simulation and Modeling September 4, 2015.
Team LYF: Applying Python to Waveform Matching Detection Xin Liu (USC), Dongdong Yao(GT), Lili Feng(CU-Boulder)
Parallel OpenFOAM CFD Performance Studies Student: Adi Farshteindiker Advisors: Dr. Guy Tel-Zur,Prof. Shlomi Dolev The Department of Computer Science Faculty.
Interaction and Animation on Geolocalization Based Network Topology by Engin Arslan.
1 The Interactions of Aerosols, Clouds, and Radiation on the Regional Scale.
CUFSM and Matlab CUFSM3.12 The Matlab version of CUFSM allows much greater flexibility than the standalone version. Within the Graphical User Interface.
Accessing the VI-SEEM infrastructure
First Day in Lab Making a C++ program
Welcome to Indiana University Clusters
CSC 222: Object-Oriented Programming
CST 1101 Problem Solving Using Computers
HTTP Server Protocol Module :
Getting Started with R.
Operating System Orientation CS3135
On Optimization Techniques for the One-Dimensional Seismic Problem
DATA MINING Python.
Automatic launch and tracking the computational simulations with LiFlow and Sumatra Evgeniy Kuklin.
Introduction to Operating System (OS)
Sahar Sargheini, Alberto Paganini, Ralf Hiptmair, Christian Hafner
NGS computation services: APIs and Parallel Jobs
PreOpenSeesPost: a Generic Interface for OpenSees
Uninformed Search Strategies
U.C. Berkeley Millennium Project
INTRODUCTION TO BASIC MATLAB
Prepared by Kimberly Sayre and Jinbo Bi
Short Read Sequencing Analysis Workshop
Let's Learn Python and Pygame
GeoFEST tutorial What is GeoFEST?
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
Development of crosshole GPR data full-waveform inversion and a real data test at the Boise Hydrogeophysics Research Site Good morning and thank you for.
GENERAL VIEW OF KRATOS MULTIPHYSICS
BSc in Digital Media, PSUIC
MPI MPI = Message Passing Interface
FEniCS = Finite Element - ni - Computational Software
Software - Operating Systems
Ph.D. Thesis Numerical Solution of PDEs and Their Object-oriented Parallel Implementations Xing Cai October 26, 1998.
F T T T F.
DATA MINING Python.
Short Read Sequencing Analysis Workshop
Presentation transcript:

What is SeisFlows? -Provides a complete, customizable waveform inversion workflow -So far, has been used for 3D production runs with up to 10 9 model parameters -Has run on clusters managed by Princeton University, Department of Defense, Chevron Corp, Total S.A. and other institutions -At the same time, can be used for very small 2D inversions on a laptop or desktop -Currently being applied to earthquake tomography, oil and gas exploration, and general nonlinear optimization research problems -Developers: Ryan Modrak, Matthieu Lefebvre, growing GitHub user community

Theory Adjoint solver f † : D → M g(m) = f † (f(m)) Misfit function χ(m)=|| f(m) – d || Solver f: M → D Earth model m M Seismic data d D Gradient g(m) = ∂ m χ(m) Data Model Gradient We use spectral element method to numerically solve elastic wave PDE SPECFEM2D SPECFEM3D SPECFEM3D_GLOBE

How to implement an inversion? Given a model m and data d, an inversion is a nonlinear optimization procedure which iteratively improves the model m and reduces the misfit || f(m) – d ||. Having implemented the solver f, one could, in principle, carry out an inversion just through a call to a function minimization routine from a standard numerical library. In practice, there are so many complications along the way that such a simple approach is not really feasible.

At the highest level, inversion is a nonlinear optimization loop 1. Compute gradient g(m) = ∂ m χ(m) 2. Compute search direction p ≈ H –1 g 3. Determine step length determine α by minimizing ϕ (α) = f(m + α p) 4. Update model m i+1 = m i + α p

Structure of a gradient computation Solver parallelized over both model region (MPI) and events (embarrasingly parallel) Data preprocessing parallelized over traces (embarrasingly parallel) Adjoint solver parallelized over both model region (MPI) and events (embarrasingly parallel) Gradient postprocessing parallelized over model region (MPI)

Survey Not at all Somewhat Very familiar Familiarity with regional/global adjoint tomography literature Familiarity with exploration geophysics literature Familiarity with nonlinear optimization algorithms Familiarity with Unix Familiarity with Python scientific computing tools Familiarity with LSF/PBS/SLURM/etc Familiarity with SPECFEM code/ development practices

1. SeisFlows Documentation 2. SeisFlows Source Code 3. SeisFlows Example 4. Presentation Slides Useful Links

SeisFlows example: 2D checkerboard inversion Included in download - SeisFlows parameter files - SPECFEM2D Par_file, interfaces, stations, and sources files - Target model in form readable by SPECFEM2D - Homogenous starting model in form readable by SPECFEM2D Based on: Tape et al. 2007, Finite frequency tomography using adjoint methods, GJI Target model

1. Open terminal: (mac)Applications > Utilities > Terminal (windows)Programs > cygwin 2. Log onto cluster: ssh -Y If prompted, type yes to add new.ssh entry Enter password when prompted 3. Load required dependencies: module load anaconda/ Now try your hand at the 2D checkerboard inversion: Compile SPECFEM2D with gfortran i.e../configure FC=gfortran 5. Immediately before "run checkerboard test in parallel", use the following SLURM command to open an interactive job on one of the compute nodes: salloc --nodes=1 --ntasks=6 Then, in parameters.py add a new parameter NPROCMAX=6 Instructions