adjtomo/seisflows

Inversion workflow SPECFEM3D_GLOBE model=GLL bug

Closed this issue · 1 comments

bch0w commented

TL;DR Users running inversions with SPECFEM3D_GLOBE in the master or devel branches will not see model updates, and model parameters/misfit during the line search will remain static.


While working on the ambient noise workflow branch using SPECFEM3D_GLOBE as my solver, I encountered an issue where the GLL global model was not updating during the line search, and misfit was held constant, even though the gradient was non-zero and looked appropriate.

After some digging, I realized this was due to the fact that the GLOBE code approaches GLL models differently than the Cartesian code. In Cartesian, to update a model, you run an xgenerate_databases step to import the updated GLL model created by SeisFlows. In GLOBE, there is no xgenerate_databases step, and instead, the User must re-mesh (xmeshfem3D) and run the solver (xspecfem3D) with Par_file parameter model set as GLL. The updated GLL model must be in sub-directory DATA/GLL (or equivalent set in constants).

The current GLOBE approach in SeisFlows does not do this, and therefore models will not update during the line search (i.e., the same starting model will be used over and over again). This is fixed in the latest version of the feature-noise_workflow branch but needs to be fixed in the devel branch.

This is fixed in the devel branch in #181 and will make it into the next major version release