-
Notifications
You must be signed in to change notification settings - Fork 18
Add RMSE scores based vertical pressure profile recipe #2230
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
Merged
James Frost (jfrost-mo)
merged 13 commits into
main
from
2229_scores_rmse_vertical_profile_pressure_levels
Aug 4, 2026
Merged
Changes from all commits
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
5635017
Add RMSE scores based vertical pressure profile recipe
Sylviabohnenstengel 5fffbd4
Calculate RMSE for each vertical level
Sylviabohnenstengel c56d2fa
Include aggregation period into title of vertical profile line plot
Sylviabohnenstengel a0af0e3
Wire the recipe into the cylc workflow
Sylviabohnenstengel 09514c0
Select rmse profile for aggregated across all time steps in a case study
Sylviabohnenstengel a65abfd
Add loader for vertical profile RMSE for every timestep
Sylviabohnenstengel 188d65b
Correct name for vertical profile at each timepoint to SEQUENCE
Sylviabohnenstengel 0252750
Correctly name rmse profile to sequence for profiles at each timestep
Sylviabohnenstengel 23826c9
Add aggregation mode to recipe and loader to ensure clarity
Sylviabohnenstengel 4bc6ad0
Set scores to False in rose-suite.conf_example
Sylviabohnenstengel 4f7a354
split scores sections into spatial, timeseries and profile.
Sylviabohnenstengel 18e3062
update science background for rmse vertical profile recipe.
Sylviabohnenstengel 6e01005
Delete code resurrected by rebase
jfrost-mo File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
48 changes: 48 additions & 0 deletions
48
src/CSET/recipes/verification/generic_level_rmse_scores_profile.yaml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| category: Scores | ||
| title: "$VARNAME\nRMSE vertical profile between $OTHER_MODEL and $BASE_MODEL ($AGGREGATION_MODE)" | ||
| description: | | ||
| Extracts and plots the Root Mean Square Error (RMSE) of $VARNAME | ||
| as a vertical profile on pressure levels. The RMSE is calculated | ||
| pairwise between $BASE_MODEL and $OTHER_MODEL for each pressure | ||
| level field utilising the preserved coordinates in the scores package. | ||
|
|
||
| By adding a preserved coordinate to the recipe, the RMSE can be calculated for each | ||
| time step in a case study or for all time steps combined. | ||
|
|
||
| References: | ||
| https://scores.readthedocs.io/en/stable/ | ||
| https://scores.readthedocs.io/en/stable/api.html#scores.continuous.rmse | ||
|
|
||
|
|
||
| Aggregation mode: | ||
| - Case-study RMSE: Single RMSE profile calculated using all time points in the case study. | ||
| - Time-step RMSE: RMSE profiles calculated at each time point in a case study. | ||
|
|
||
| A larger RMSE implies a greater error than a smaller RMSE. An | ||
| RMSE of zero implies the two fields match exactly. | ||
|
|
||
| steps: | ||
| - operator: read.read_cubes | ||
| file_paths: $INPUT_PATHS | ||
| model_names: [$BASE_MODEL, $OTHER_MODEL] | ||
| constraint: | ||
| operator: constraints.combine_constraints | ||
| variable_constraint: | ||
| operator: constraints.generate_var_constraint | ||
| varname: $VARNAME | ||
| level_constraint: | ||
| operator: constraints.generate_level_constraint | ||
| coordinate: pressure | ||
| levels: "*" | ||
| subarea_type: $SUBAREA_TYPE | ||
| subarea_extent: $SUBAREA_EXTENT | ||
|
|
||
|
jfrost-mo marked this conversation as resolved.
|
||
| - operator: scoreswrappers.scores_rmse | ||
| preserved_coordinates: $PRESERVED_COORDS | ||
|
|
||
| - operator: plot.plot_vertical_line_series | ||
| series_coordinate: pressure | ||
| sequence_coordinate: time | ||
|
|
||
| - operator: write.write_cube_to_nc | ||
| overwrite: True | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.