SeisFlows — Automated Inversion Software

SeisFlows is an open-source, Python-based waveform inversion package meant to automate the problems of full waveform inversion, seismic migration, and adjoint tomography on high performance computers.

SeisFlows is hosted on GitHub as part of the adjTomo organization.



To install SeisFlows and its dependencies, we recommend installing within a Conda environment to not affect your root environment. The devel branch houses the most up-to-date codebase.


SeisFlows is installed using the Pip -e which enables development mode, where source code changes are immediately acccessible to Python (i.e., you do not need to re-install SeisFlows when updating source code).

git clone --branch devel https://github.com/adjtomo/seisflows.git
cd seisflows
conda env create -f environment.yml
conda activate seisflows

Alternative: update an existing environment

The above installation instructions create a new Conda environment named seisflows. If you have an existing Conda environment and want to install SeisFlows and it’s dependencies there, you can run the following:

git clone --branch devel https://github.com/adjtomo/seisflows.git
cd seisflows
conda activate <your environment>
conda env update -f environment.yml

Cite SeisFlows

If you use SeisFlows for your work, please cite the following papers: Chow et al. (2020) and Modrak et al. (2018)

Chow, B., Kaneko, Y., Tape, C., Modrak, R., & Townend, J. (2020). An automated workflow for adjoint tomography — waveform misfits and synthetic inversions for the North Island, New Zealand. Geophysical Journal International, 223(3), 1461-1480.

Modrak, R. T., Borisov, D., Lefebvre, M., & Tromp, J. (2018). SeisFlows — Flexible waveform inversion software. Computers & geosciences, 115, 88-95.

Publications which have used (and cited) SeisFlows can be found on Google Scholar.