TomoATT is a flexible and scalable absolute travel time tomography software package for seismic event and station datasets.
The first priority of the code design is to make it easy to use for everyone. Generally, realizing a seismic tomography calculation is a complex process. TomoATT tries to mitigate this problem by providing a very simple and user-friendly input/output file format and compilation/execution steps.
The Eikonal equation-based core solver, with a higher-order stencil and multiplicative factorization, is implemented to achieve accurate calculations of the synthetic traveltime field. To speed up the calculation, parallelization can be applied in three layers: seismic sources, domain decomposition, and sweep surface. For the parallelization of the sweep surface, TomoATT uses both MPI shared memory and SIMD parallelization.
This code is designed for running on any size of computing systems, from a personal laptop to a large HPCs, for any scale of problem with a sophisticated mpi parallelization scheme. Very strong scaling has been verified on multiple HPC systems, including Fugaku at Riken, Japan.
TomoATT can handle multiple seismic event/station data types, including both local and teleseismic events for the sources, and absolute travel time, common-source and common-receiver double difference traveltime data as the station dataset.
Your new idea can be easily implemented in TomoATT's well structured code base. Any useful updates/suggestions are welcome to be merged on the GitHub repository.