-
Notifications
You must be signed in to change notification settings - Fork 44
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
Adding detrending/drift removal functionality #123
Comments
For a module name, I think |
Thanks for the feedback @MackenzieBlanusa. Yes my approach is to find the time where the 'historical' run was split from 'piControl', the 250 year linear trend should then be applicable to any combination of 'historical' and scenarios. I am not sure if one can make an argument to detrend the scenarios separately, but in that case I would be worried that the different duration could lead to spurious signals due to interannual-decdal variability in the control. What do you think? |
Thanks for the clarification @jbusecke. I agree with your concern about detrending the scenarios separately. I think it would be best to just work with the single linear trend obtained from the historical and piControl. |
Ill try to start working on this today, and will ping you here once I have a working PR. |
I have developed quite a bit of logic to remove control run drift from CMIP6 models for my recent OMZ paper, and would like to refactor this into cmip6_preprocessing.
The logic I use has these basic steps:
piControl
runbranch_time_parent
.branch_time_parent
, and calculate a linear slope at everyx
,y
, andlev
position. Save that output1850-01-01
(the time when the historical forcing starts).I will migrate this functionality here (and would then welcome feedback), but I wanted to discuss the API first.
First of all I was wondering about how to call the module (which I would create for this purpose):
cmip6_preprocessing/drift_correction
cmip6_preprocessing/time_tools
(this could more general time related functionality like dealing with the time dimension #64, which is also needed for the above tools)cmip6_preprocessing/detrending
(seems a bit ambiguous to me?)Not super stoked about these yet. Any ideas?
For the API I would imagine something along the lines of:
Any thoughts?
cc @MackenzieBlanusa
The text was updated successfully, but these errors were encountered: