adjtomo/seisflows

Fix Seismic Unix (SU) format support and bugfix default preprocessing

bch0w opened this issue · 1 comments

bch0w commented

Based on discussion raised by @Ben-J-Eppinger in #173, the original version of SeisFlows provided support for the Seismic Unix (SU) format and provided useful preprocessing functions related to exploration-scale seismic problems, such as arrival muting, normalization etc.

In the course of the re-write, these capabilities were brought over but not tested extensively or at all, leading to a broken implementation of these features. Many of the functions and logic loops still exist but will need some bugfixing to get working again.

Tasks for this PR include:

  • Preprocess.read() can read/write SU format traces
  • Preprocess.write() can write SU format adjoint sources
  • Ensure SPECFEM2D/3D/3D_GLOBE implementations of SU format are accounted for
  • Fix and test function preprocess.default._apply_mute()
  • Complete Event-based normalization portion of preprocess.default._apply_normalize()

I think I encountered a bug in the default preprocessing module. When I set the flag components: 'Z' in the parameters.yaml file, even then all the components get used for computing adjoint sources and the subsequent analysis instead of just the Z component.