Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

incorporate static time shifts into the values displayed in the waveform fits plots #241

Closed
carltape opened this issue Dec 14, 2023 · 3 comments

Comments

@carltape
Copy link
Member

To reduce the effects of cycle skipping, it has been useful to apply station-specific surface-wave static time shifts. Here are two example stations (IU.MAJO and G.INU) from Alvizuri and Tape (2018), Figure S2:
image
For this inversion, the weights file (available here) looks like this:
20170903033001760.IU.MAJO.00.BH 956 0 0 1 1 1 0.00000 0 0 0 -33.4 -14.75
20170903033001760.G.INU.00.BH 964 0 0 1 1 1 0.00000 0 0 0 -35.15 8.05
The last two columns are the static time shifts for Rayleigh and Love. In this case the cross-correlations measured in the legacy capuaf code would be less than 1 s or so. Currently the MTUQ waveform fits are displaying the measured cross-correlation, but not accounting for the specified static time shift. My understanding that the inversion is doing what we expect, but I think we would benefit from displaying the "net" cross-correlation rather than the measured one. Thanks.

@rmodrak
Copy link
Member

rmodrak commented Dec 14, 2023

Agreed, the proposed change would be a helpful improvement. Also, the above description matches my understanding of the current mtuq implementation.

The reason for the current implementation I think is that user-supplied static time shifts get applied to the Green's functions during data processing and become less accessible thereafter.

Applying the static time shifts during data processing has an advantage in that the static time shifts get applied once and for all, and the data and synthetic windows are well centered prior to cut-and-paste misfit function evaluation. A side effect, however, is that the user-supplied static time shifts are not immediately accessible to the misfit function, which writes out all the attributes used for plotting.

My first thought is that it should easily doable to include these static time shifts by default in the waveform annotations. Also, we would want them to be written out in some way in the json files used for time shift spider plots. Adding this the high priority list...

@rmodrak
Copy link
Member

rmodrak commented Feb 1, 2024

Addressed in new pull request #248

For more information see here

https://github.com/rmodrak/mtuq/blob/master/tests/test_time_shifts.py

In particular

    #
    # MTUQ distinguishes between the following different types of 
    # time-shift corrections
    # 
    # - "static_shift" is an initial user-supplied time shift applied during
    #   data processing
    #
    # - "time_shift" is a subsequent cross-correlation time shift applied during 
    #   misfit evaluation
    #
    # - "total_shift" is the total correction, or in other words the sum of
    #   static and cross-correlation time shifts
    #

time_shifts

@rmodrak
Copy link
Member

rmodrak commented Feb 2, 2024

Please feel free to reopen if necessary

@rmodrak rmodrak closed this as completed Feb 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants