Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions app/src/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,17 @@ const toc = document.getElementsByClassName('toc')[0]
const tocDropdown = document.getElementsByClassName('toc-dropdown')[0]
tocDropdown.appendChild(toc.cloneNode(true))

// add table classes
const tables = document.getElementsByTagName('table')
for (let table of tables) {
table.classList.add('table')
table.classList.add('table-bordered')
table.classList.add('table-fixed')

const thead = document.getElementsByTagName('thead')[0]
thead.classList.add('thead-dark')
}

document.querySelectorAll('[data-component="title"]').forEach(el => {
createRoot(el).render(
<Provider store={store}>
Expand Down
2 changes: 1 addition & 1 deletion assets/app.js

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions assets/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,11 @@ caption {
caption-side: top;
padding-top: 0;
}
.caption {
margin-bottom: 0.75rem;
color: #6c757d;
font-size: small;
}
pre {
color: white;
background-color: #343a40;
Expand Down Expand Up @@ -230,10 +235,14 @@ code {
.show-component p:last-child,
.show-component ul:last-child,
.show-component pre:last-child,
.show-component table:last-child,
.show-component [data-component="table"]:last-child table,
.pattern-component pre:last-child {
margin-bottom: 0;
}
.show-component [data-component="table"] table {
margin-bottom: 1rem;
}
.show-component .badge {
margin-left: 3px;
margin-right: 0;
Expand Down
1 change: 1 addition & 0 deletions build/protocol.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ def main():
html = markdown(md, extensions=[
'fenced_code',
'attr_list',
'tables',
TocExtension(toc_depth='2-3', title='Table of Contents'),
CustomBlocksExtension(generators={
'config': config_generator,
Expand Down
34 changes: 34 additions & 0 deletions definitions/experiments/ISIMIP3b.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1086,3 +1086,37 @@
- ISIMIP3b
sectors:
- fire

- specifier: ssp585_ssp585soc-adapt_onlygrwseasonchange
title: Sensitivity to changes in growing season
subtitles:
- ssp585_ssp585soc-adapt_onlygrwseasonchange
priority: See Table 2.5 for Group III experiment priorities
pre-industrial: Identical to the similar **picontrol/1850soc** run above.
historical: Identical to the similar **historical/histsoc** run above.
future:
climate: ssp585
soc: ssp585soc-adapt
soc_sens: onlygrwseasonchange
simulation_rounds:
- ISIMIP3b
sectors:
- agriculture
group3: true

- specifier: ssp585_ssp585soc-adapt_onlyfertchange
title: Sensitivity to changes in fertilizer input
subtitles:
- ssp585_ssp585soc-adapt_onlyfertchange
priority: See Table 2.5 for Group III experiment priorities
pre-industrial: Identical to the similar **picontrol/1850soc** run above.
historical: Identical to the similar **historical/histsoc** run above.
future:
climate: ssp585
soc: ssp585soc-adapt
soc_sens: onlyfertchange
simulation_rounds:
- ISIMIP3b
sectors:
- agriculture
group3: true
2 changes: 0 additions & 2 deletions definitions/forcing_data/gcm.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@
simulation_rounds:
- ISIMIP3b
sectors:
- agriculture
- biodiversity
- biomes
- coastal
Expand Down Expand Up @@ -161,7 +160,6 @@
simulation_rounds:
- ISIMIP3b
sectors:
- agriculture
- biodiversity
- biomes
- coastal
Expand Down
20 changes: 17 additions & 3 deletions definitions/group3_requirements.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
- specifier: landuse
title: Land use
required:
- agriculture
- biomes
- fire
- forestry
Expand All @@ -61,6 +62,7 @@
- permafrost
- water_global
harmonized:
- agriculture
- biomes
- fire
- forestry
Expand All @@ -69,6 +71,7 @@
- permafrost
- water_global
sectors:
- agriculture
- biomes
- fire
- forestry
Expand All @@ -81,7 +84,8 @@

- specifier: n-deposition
title: Nitrogen Deposition
required: []
required:
- agriculture
harmonized:
- biomes
- fire
Expand All @@ -90,6 +94,7 @@
- peat
- permafrost
sectors:
- agriculture
- biomes
- fire
- forestry
Expand All @@ -101,21 +106,27 @@

- specifier: n-fetilizer
title: Fertilizer inputs
required: []
required:
- agriculture
harmonized:
- agriculture
- water_global
sectors:
- agriculture
- water_global
datasets:
- N-fertilizer inputs

- specifier: irrigation
title: Irrigation
required:
- agriculture
- water_global
harmonized:
- agriculture
- water_global
sectors:
- agriculture
- water_global
datasets:
- Irrigation
Expand Down Expand Up @@ -161,10 +172,13 @@

- specifier: growing-seasons
title: Growing seasons
required: []
required:
- agriculture
harmonized:
- agriculture
- water_global
sectors:
- agriculture
- water_global
datasets:
- Crop calendar
Expand Down
16 changes: 8 additions & 8 deletions definitions/sens_scenario.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -212,22 +212,22 @@
sectors:
- biomes

- specifier: 2015gs
- specifier: gsonly
description: >-
In this sensitivity scenario all climate-related forcings and DHF change as indicated
by the climate-related forcing or DHF specifier defined above while only growing
seasons are fixed at 2015 levels.
In this sensitivity scenario climate-related forcings change as indicated by the
climate specifier while only growing seasons change according to the DHF scenario
indicated by the default DHF specifie.
simulation_rounds:
- ISIMIP3b
sectors:
- agriculture
group3: true

- specifier: 2015fert
- specifier: fertonly
description: >-
In this sensitivity scenario all climate-related forcings and DHF change as
indicated by the climate-related forcing or DHF specifier defined above while only
fertilizer inputs are fixed at 2015 levels.
In this sensitivity scenario climate-related forcings change as indicated by the
climate specifier while only fertilizers change according to the DHF scenario
indicated by the default DHF specifier.
simulation_rounds:
- ISIMIP3b
sectors:
Expand Down
31 changes: 31 additions & 0 deletions protocol/04.output.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,37 @@ Many variables are defined per area (unit m-2). Typically, and unless otherwise

Cumulative growing season variables such as, e.g., actual evapotranspiration or precipitation are to be accumulated over the growing season. The first season in the file (level=0) is then the first complete growing season of the time period provided by the input data without any assumed spin-up data, which equates to the growing season with the first planting after this date. To ensure that data can be matched to individual years in post-processing, it is essential to also provide the actual planting dates (as day of the year), actual planting years (year), anthesis dates (as day of the year), year of anthesis (year), maturity dates (day of the year), and year of maturity (year). This procedure is identical to the GGCMI convention (Elliott et al., 2015, <https://doi.org/10.5194/gmd-8-261-2015>).

::: show simulation_round=ISIMIP3b sector=agriculture

#### Special crop instructions for ISIMIP3b Group3

For those models that require land use information as an input, the columns **Pref 1** to **Pref 4** indicate, in decreasing order of preference, what crops should actually be planted as a place holder (the corresponding fertilization, manure, and crop calendar information is to be used).

Table 4.10: Crop categories in the ISIMIP3b Group3 LUH2 land use input.
{: .caption}

| Crop category in LU file | Pref 1 | Pref 2 | Pref 3 | Pref 4 |
| ------------------------ | --------------------------- | ------------------- | ----------------- | ---------------------- |
| c3per | **mgr** (Managed grassland) | | | **swh** (Spring wheat) |
| c4per | **sgc** (Sugar cane) | **sor** (Sorghum) | **mil** (Millet) | **mai** (Maize) |
| maize | **mai** (Maize) | | | |
| oil_crops_groundnut | **nut** (Groundnut) | **soy** (Soybean) | **bea** (Beans) | **swh** (Spring wheat) |
| oil_crops_rapeseed | **rap** (Rapeseed) | **sun** (Sunflower) | | **swh** (Spring wheat) |
| oil_crops_soybean | **soy** (Soybean) | **bea** (Beans) | **pea** (Peas) | **swh** (Spring wheat) |
| oil_crops_sunflower | **sun** (Sunflower) | **rap** (Rapeseed) | | **swh** (Spring wheat) |
| others_c3ann | **swh** (Spring wheat) | | | |
| others_c3nfx | **bea** (Beans) | **pea** (Peas) | **soy** (Soybean) | **swh** (Spring wheat) |
| pulses | **pea** (Peas) | **bea** (Beans) | **soy** (Soybean) | **swh** (Spring wheat) |
| rice | **ri1** (Rice1) | | | **swh** (Spring wheat) |
| temperate_cereals | **swh** (Spring wheat) | | | |
| temperate_roots | **sgb** (Sugar beet) | **pot** (Potato) | | **swh** (Spring wheat) |
| tropical_cereals | **sor** (Sorghum) | **mil** (Millet) | | **mai** (Maize) |
| tropical_roots | **cas** (Cassava) | | | **swh** (Spring wheat) |

In case a model requires land use information as input, we propose the following procedure to comply with the all-crops-everywhere setup. On top of the spatially explicit land use input, we ask modeling groups to assign marginal grid cell fractions to each crop that the model can simulate in all grid cells in which we provide crop calendar information. This means that modeling groups have to generate their own land use input files depending on the crops they intend to simulate by simply adding a tiny fraction (0.000001, 1e-6) of the grid cell for each crop not otherwise simulated. If possible, take this area from the crop with the largest existing area. If there is no cropland in the grid cell, take it from pasture, or failing that, natural land. To simplify this pre-processing, it is also acceptable to simply assign a tiny grid cell fraction to every crop that can be simulated. For a group simulating 15 crops (30 including both rainfed and irrigated), adding 1e-6 of the grid cell fraction for each crop would be only about 9.3 ha in the largest half-degree grid cell — small enough to have a negligible effect on land use history, biogeochemical cycling, etc.

This preprocessing will mean that some crops will have their simulations duplicated. For example, if a group can't simulate groundnuts, beans, peas, or pulses, soybean would be simulated using the same fertilizer/manure/calendar on oil_crops_soybean, oil_crops_groundnut, others_c3nfx, pulses, and soy. In their preprocessing, that group can collapse the combined area of those types into simply soy. This allows for smaller input and output files, as well as reduced computational load. Note that groups should NOT upload model outputs for the ISIMIP crop types. Instead, only upload outputs for the GGCMI types (3-letter codes).

::: show sector=biomes,fire,permafrost,peat

#### Information about PFT-specific outputs
Expand Down