@presentation {yin2022TRANSFORMjulia,
	title = {Julia for Geoscience},
	year = {2022},
	month = {04},
	abstract = {In this tutorial, we will introduce the Julia programming language to the geoscience community, covering topics such as I/O, data processing, inversion, and machine learning. We will begin by installing Julia and relevant packages. Through a series of tutorials, we will demonstrate Julia{\textquoteright}s abstraction power and show how to load and plot data, write your own functions/operators, form and solve a geophysical inverse problem, and demonstrate how to integrate wave-equation solvers in Julia with machine learning frameworks. The intent of this presentation is to provide an introductory level tutorial that will be useful to members of the geoscience community.},
	keywords = {JOLI, JUDI, Julia, machine learning, SLIM, software, TRANSFORM},
	url = {https://transform.softwareunderground.org/2022-julia-for-geoscience},
	url2 = {https://www.youtube.com/watch?v=HyWfp3NzIbg},
	software = {https://github.com/slimgroup/SLIMTutorials},
	author = {Ziyi Yin and Mathias Louboutin and Philipp A. Witte and Ali Siahkoohi and Gabrio Rizzuti and Rafael Orozco and Henryk Modzelewski and Felix J. Herrmann}
}
@conference {witte2021JULIACONmedlj,
	title = {InvertibleNetworks.jl - Memory efficient deep learning in Julia},
	booktitle = {JuliaCon},
	year = {2021},
	note = {(JuliaCon, virtual)},
	month = {07},
	abstract = {We present InvertibleNetworks.jl, an open-source package for invertible neural networks and normalizing flows using memory-efficient backpropagation. InvertibleNetworks.jl uses manually implement gradients to take advantage of the invertibility of building blocks, which allows for scaling to large-scale problem sizes. We present the architecture and features of the library and demonstrate its application to a variety of problems ranging from loop unrolling to uncertainty quantification.},
	keywords = {deep learning, Invertible network, Julia, Normalizing flows, segmentation},
	url = {https://slim.gatech.edu/Publications/Public/Conferences/JuliaCon/2021/witte2021JULIACONmedlj/witte2021JULIACONmedlj.pdf},
	url2 = {https://www.youtube.com/watch?v=9M-zEGHY4i4},
	author = {Philipp A. Witte and Mathias Louboutin and Ali Siahkoohi and Gabrio Rizzuti and Bas Peters and Felix J. Herrmann}
}
@presentation {witte2019HOTCSEdsagip,
	title = {Domain-specific abstractions for large-scale geophysical inverse problems},
	year = {2019},
	note = {(HotCSE)},
	abstract = {During these times of sustained low oil prices, it is essential to look for new innovative ways to collect (time-lapse) seismic data at reduced costs and preferably also at reduced environmental impact. By now, there is an increasing body of corroborating evidence {\textemdash} whether these are simulated case studies or actual acquisitions on land and marine {\textemdash} that seismic acquisition based on the principles of compressive sensing delivers on this premise by removing the need to acquire replicated dense surveys. Up to ten-fold increases in acquisition efficiency have been reported by industry while there are indications that this breakthrough is only the beginning of a paradigm shift where full-azimuth time-lapse processing will become a reality. To familiarize the audience with this new technology, I will first describe the basics of compressive sensing, how it relates to missing-trace interpolation and simultaneous source acquisition, followed by how this technology is driving innovations in full-azimuth (time-lapse) acquisition, yielding high-fidelity data with a high degree of repeatability and at a fraction of the costs.},
	keywords = {full-waveform-inversion, Imaging, inversion, Julia, large-scale, software},
	url = {https://slim.gatech.edu/Publications/Public/Lectures/HotCSE/2019/witte2019HOTCSEdsagip/witte2019HOTCSEdsagip.pdf},
	author = {Philipp A. Witte and Mathias Louboutin and Felix J. Herrmann}
}
@article {witte2019ecl,
	title = {Geophysics Bright Spots: Efficient coding of large-scale seismic inversion algorithms},
	journal = {The Leading Edge},
	volume = {38},
	number = {6},
	year = {2019},
	note = {(The Leading Edge)},
	pages = {482-484},
	abstract = {In {\textquotedblleft}A large-scale framework for symbolic implementations of seismic inversion algorithms in Julia,{\textquotedblright} Witte et al. describe new developments in how to code complex geophysical algorithms in a concise way. Subsurface seismic imaging and parameter estimation are among the most computationally challenging problems in the scientific community. Codes for solving seismic inverse problems, such as FWI or least-squares reverse time migration (LS-RTM), need to be highly optimized, but at the same time, facilitate the implementation of complex optimization algorithms. Traditionally, production-level codes in the oil and gas industry were exclusively written in low-level languages, such as C or Fortran, with extensive amounts of manual performance optimizations, thus making code maintenance, debugging, and adoption of new algorithms prohibitively challenging. Witte et al. present a paradigm of software engineering for seismic inverse problems based on symbolic user interfaces and code generation with automated performance optimization. Inspired by recent deep learning frameworks, the Julia Devito inversion framework (JUDI; an open-source software package) combines high-level abstractions for expressing seismic inversion algorithms with a domain-specific language compiler called Devito for solving the underlying wave equations. Devito{\textquoteright}s generated code is compiled just in time and outperforms codes with manual performance optimizations. JUDI utilizes Julia{\textquoteright}s high-level parallelization, making the software easily adaptable to a variety of computing environments such as densely connected HPC clusters or the cloud. The numerical examples (Figure 3) demonstrate the ability to implement a variety of complex algorithms for FWI and LS-RTM in a few lines of Julia code and run it on large-scale 3D models. The paper concludes that abstractions and performance are not mutually exclusive, and use of symbolic user interfaces can facilitate the implementation of new and innovative seismic inversion algorithms.},
	keywords = {bright spots, inversion, Julia, large-scale},
	doi = {10.1190/tle38060482.1},
	url = {https://library.seg.org/doi/10.1190/tle38060482.1},
	author = {Philipp A. Witte and Mathias Louboutin and Navjot Kukreja and Fabio Luporini and Michael Lange and Gerard J. Gorman and Felix J. Herrmann}
}
@conference {witte2017SIAMlsw,
	title = {Large-scale workflows for wave-equation based inversion in Julia},
	booktitle = {SIAM Conference on Computational Science and Engineering},
	year = {2017},
	note = {(SIAM Conference on Computational Science and Engineering, Atlanta)},
	month = {02-03},
	abstract = {Full-waveform inversion is a PDE-constrained optimisation problem involving massive amounts of data (petabytes) and large numbers of unknowns (O(10^9)). This well known compute-intensive and data-intensive is extremely challenging for several reasons. First, there is the complexity of having to handle extremely large data volumes with metadata related to experimental details in the field, and the discretization of the unknown earth parameters and approximate physics. Second, reduced or adjoint-state methods call for computationally intensive PDE solves for each source experiment (of which there are thousands) for each iteration of a gradient-based optimization scheme. The talks will give an overview how carefully chosen layers of abstraction can help manage both the complexity and scale of inversion while still achieving the high degree of computational performance required to make full-waveform a practical tool. Specifically, the presentations will focus on domain specific stencil language for time-stepping methods to solve various types of wave equations and on abstracts for large-scale parallel optimization frameworks.},
	keywords = {Full-waveform inversion, Julia, large scale, least-squares migration, SIAM},
	url = {https://slim.gatech.edu/Publications/Public/Conferences/SIAM/2017/witte2017SIAMlsw/witte2017SIAMlsw_pres.mov},
	presentation = {https://slim.gatech.edu/Publications/Public/Conferences/SIAM/2017/witte2017SIAMlsw/witte2017SIAMlsw_pres.pdf},
	author = {Philipp A. Witte and Mathias Louboutin and Felix J. Herrmann}
}
