|
| 1 | +--- |
| 2 | +documentation: |
| 3 | + title: Diagnostic to calculate Global Warming Level exceedance years. |
| 4 | + |
| 5 | + description: | |
| 6 | + Recipe for calculating global warming level exceedances for individual model |
| 7 | + and ensemble members. This recipe tests CMIP7 like data. |
| 8 | +
|
| 9 | + authors: |
| 10 | + - swaminathan_ranjini |
| 11 | + |
| 12 | + maintainer: |
| 13 | + - swaminathan_ranjini |
| 14 | + |
| 15 | + references: |
| 16 | + - swaminathan22jclim |
| 17 | + |
| 18 | +preprocessors: |
| 19 | + calculate_anomalies: |
| 20 | + custom_order: true |
| 21 | + area_statistics: |
| 22 | + operator: mean |
| 23 | + annual_statistics: |
| 24 | + operator: mean |
| 25 | + keep_group_coordinates: true |
| 26 | + anomalies: |
| 27 | + period: full |
| 28 | + reference: &ref_period |
| 29 | + start_year: 1850 |
| 30 | + start_month: 1 |
| 31 | + start_day: 1 |
| 32 | + end_year: 1900 |
| 33 | + end_month: 12 |
| 34 | + end_day: 31 |
| 35 | + standardize: false |
| 36 | + extract_time: # Future period |
| 37 | + start_year: 2000 |
| 38 | + start_month: 1 |
| 39 | + start_day: 1 |
| 40 | + end_year: 2100 |
| 41 | + end_month: 12 |
| 42 | + end_day: 31 |
| 43 | + |
| 44 | + multi_model_gwl_stats: |
| 45 | + custom_order: true |
| 46 | + extract_time: # Future period |
| 47 | + start_year: 2000 |
| 48 | + start_month: 1 |
| 49 | + start_day: 1 |
| 50 | + end_year: 2100 |
| 51 | + end_month: 12 |
| 52 | + end_day: 31 |
| 53 | + annual_statistics: |
| 54 | + operator: mean |
| 55 | + keep_group_coordinates: true |
| 56 | + regrid: |
| 57 | + target_grid: 1x1 |
| 58 | + scheme: linear |
| 59 | + |
| 60 | +GWL_PARAMS: &gwl_calc_params |
| 61 | + window_size: 21 |
| 62 | + gwls: [1.5, 2.0, 3.0, 4.0, 5.0] |
| 63 | + |
| 64 | +GWL: &gwl_exceedance_script |
| 65 | + <<: *gwl_calc_params |
| 66 | + script: gwls/calculate_gwl_exceedance_years.py |
| 67 | + |
| 68 | + |
| 69 | +PLOT_STATS: &plot_gwl_mm_stats_script |
| 70 | + <<: *gwl_calc_params |
| 71 | + script: gwls/plot_gwl_exceedance_mm_stats.py |
| 72 | + pattern: 'GWL_exceedance_years.csv' |
| 73 | + |
| 74 | +diagnostics: |
| 75 | + calculate_gwl_exceedance_years: |
| 76 | + description: Calculate Global Warming Level exceedance years from smoothed temperature anomalies. |
| 77 | + variables: |
| 78 | + tas_anomaly: |
| 79 | + short_name: tas |
| 80 | + branding_suffix: tavg-h2m-hxy-u |
| 81 | + mip: atmos |
| 82 | + preprocessor: calculate_anomalies |
| 83 | + scripts: |
| 84 | + gwl_exceedance_calculation: |
| 85 | + <<: *gwl_exceedance_script |
| 86 | + additional_datasets: &gwl_datasets |
| 87 | + - dataset: DUMMY-MODEL |
| 88 | + drs_specs: MIP-DRS7 |
| 89 | + project: CMIP7 |
| 90 | + exp: [historical, scen7-l] |
| 91 | + ensemble: r1i1p1f3 |
| 92 | + grid: g999 |
| 93 | + activity: [CMIP,ScenarioMIP] |
| 94 | + institute: MOHC |
| 95 | + mip: atmos |
| 96 | + frequency: mon |
| 97 | + region: glb |
| 98 | + |
| 99 | + #- dataset: DUMMY-MODEL, project: CMIP6, exp: [historical, ssp126], grid: gn, ensemble: r1i1p1f1} |
| 100 | + #- {project: CMIP6, dataset: CanESM5, ensemble: r1i1p1f1, exp: [historical, ssp126], grid: gn} |
| 101 | + #- {dataset: CNRM-CM6-1, project: CMIP6, exp: [historical, ssp126], grid: gr, ensemble: r1i1p1f2} |
| 102 | + #- {dataset: FGOALS-f3-L, project: CMIP6, exp: [historical, ssp126], grid: gr, ensemble: r1i1p1f1} |
| 103 | + #- {dataset: MIROC6, project: CMIP6, exp: [historical, ssp126], grid: gn, ensemble: r1i1p1f1} |
| 104 | + #- {project: CMIP6, dataset: UKESM1-0-LL, ensemble: r1i1p1f2, exp: [historical, ssp126], grid: gn} |
| 105 | + |
| 106 | + |
| 107 | + gwl_mean_plots_tas: |
| 108 | + description: Plot multimodel mean and standard deviation for surface temperature at specific Global Warming Levels. |
| 109 | + variables: |
| 110 | + tas: |
| 111 | + branding_suffix: tavg-h2m-hxy-u |
| 112 | + mip: atmos |
| 113 | + preprocessor: multi_model_gwl_stats |
| 114 | + scripts: |
| 115 | + plot_gwl_stats: |
| 116 | + <<: *plot_gwl_mm_stats_script |
| 117 | + ancestors: ['calculate_gwl_exceedance_years/gwl_exceedance_calculation', 'gwl_mean_plots_tas/tas'] |
| 118 | + quickplot: |
| 119 | + plot_type: map |
| 120 | + cmap_mean: RdBu_r |
| 121 | + cmap_stdev: YlOrRd |
| 122 | + title_var: 'Temperature' |
| 123 | + mean_level_params: [-60.0, 55.0, 5.0] |
| 124 | + stdev_level_params: [0.0, 11.0, 1.0] |
| 125 | + additional_datasets: *gwl_datasets |
| 126 | + |
| 127 | + gwl_mean_plots_pr: |
| 128 | + description: Plot multimodel mean and standard deviation for precipitation at specific Global Warming Levels. |
| 129 | + variables: |
| 130 | + pr: |
| 131 | + short_name: pr |
| 132 | + branding_suffix: tavg-u-hxy-u |
| 133 | + mip: atmos |
| 134 | + preprocessor: multi_model_gwl_stats |
| 135 | + scripts: |
| 136 | + plot_gwl_stats: |
| 137 | + <<: *plot_gwl_mm_stats_script |
| 138 | + ancestors: ['calculate_gwl_exceedance_years/gwl_exceedance_calculation', 'gwl_mean_plots_pr/pr'] |
| 139 | + quickplot: |
| 140 | + plot_type: map |
| 141 | + cmap_mean: YlGnBu |
| 142 | + cmap_stdev: YlGnBu |
| 143 | + title_var: 'Precipitation' |
| 144 | + mean_level_params: [0.0, 18.0, 2.0] |
| 145 | + stdev_level_params: [0.0, 11.0, 1.0] |
| 146 | + additional_datasets: *gwl_datasets |
0 commit comments