-
Notifications
You must be signed in to change notification settings - Fork 5
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
Add infrastructure to compute errors against observations #625
Conversation
d830d52
to
1cdb4ae
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks Gabriele! Here are a few minor comments. I need to spend more time understanding how sampling over time works, but other than that it looks good. Also If I understand correctly it is now plotting the rmse map, not the bias map you showed in the comment?
A struct to describe some observation data that we want to compare against. | ||
|
||
""" | ||
struct ObsDataSource |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just note that we will compare with data that has a z dimension as well, but we can add that when we are actually doing it.
A struct to describe some simulation data. | ||
|
||
""" | ||
struct SimDataSource |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here, we will need the height information in the future.
ca0935c
to
39a6a6c
Compare
1e536e8
to
ae00d5b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
6d24cde
to
9c832eb
Compare
This PR introduces a new module,
Leaderboard
, currently living in the AMIP experiment.Leaderboard
usesNCDatasets
andClimaAnalysis
to compute error maps between observations and simulations.Leaderboard
defines two new structsObsDataSource
andSimDataSource
.ObsDataSource
describes some observational data (contained a NetCDF file) by specifying the name of the variable and other attributes.SimDataSource
does the same for simulated (atmos) data.The
rmse
error takes these two data structures and a target date, resamples the observational data to the simulated output grid (with a 0th order interpolation scheme, ie nearest neighbors). Then, it computesThis variable is neatly packaged in a
ClimaAnalysis.OutputVar
so that it can be directly plotted.Leaderboard
also provides an numerical integration routine on the sphere. Withintegrate_on_sphere
the RMSE can be integrated over the sphere to condense it to a single number (a 1/4pi might be needed to normalize the integration volume). These values are saved in the attributes of theOutputVar
produced bybias
.Closes #407