Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Clarification Needed on 'mxharvests' and 'mxsowings' Dimensions in the output History Files

Jyoti Singh

Jyoti Singh
Member
While analyzing the output from CTSM history, I came across the dimensions 'mxharvests' and 'mxsowings, ' which prove puzzling. The output files show that the value for 'mxharvests' is 2, and the value for 'mxsowings' is 1. I am trying to understand the implications of these values and how they might affect my analysis of crop outputs.

Could someone please explain:
  1. What do these dimensions specifically represent?
  2. Why is there a difference between the number of maximum harvests and maximum sowings?
  3. How could these values impact the analysis of crop-related outputs?
Any insights or references to documentation that could help clarify these questions would be greatly appreciated.
 

Jyoti Singh

Jyoti Singh
Member
I got the following description for the 'mxharvests' and 'mxsowings' dimension from CTSM ChangeLog file:
Tag name: ctsm5.1.dev088
Originator(s): samrabin (Sam Rabin)
Date: Mon Mar 28 10:13:22 MDT 2022
One-line Summary: Add outputs for annual crop sowing and harvest dates

Purpose and description of changes
----------------------------------

Added annual outputs of sowing and harvest dates (`SDATES` and `HDATES`,
respectively). This should simplify the determination of sowing and
harvest date for postprocessing.
- Sowing dates are on new dimension `mxgrowseas` (maximum number of
growing seasons allowed to begin in a year; currently hard-coded to 1).
- Harvest dates are on new dimension `mxharvests` (maximum number of
harvests allowed in a year), which is `mxgrowseas`+1. This is needed
because in year Y you might harvest a field that was planted in year
Y-1, then plant and harvest again.
- The lengths of these dimensions are public constants of `clm_varpar`.
Reading from the Log it explains why this change was needed:
- Non-winter-cereal patches that had live crops at the beginning of the
year did not get planted later that year.
- There was some odd behavior for rice patches at exactly 0 deg latitude
- Crop root depth had unexpected values outside the growing season; now
root depth is set to 0 outside the growing season

Reading from this document I assume, the second value of mxharvests will be useful for
non-winter-cereal patches that had live crops at the beginning of the year?
 

samrabin

Sam Rabin
Member
Hi Jyoti!

I actually introduced these dimensions for postprocessing purposes. I wanted to follow the GGCMI protocol for assigning growing seasons to particular years: If a crop is planted in November 2023 but harvested in May 2024, the yield should be associated with the 2023 "growing season."

With one sowing allowed per calendar year (i.e., mxsowings = 1), some gridcells can experience two harvests in a calendar year. That's why mxharvests (maximum number of harvests) is two. If a gridcell has two values for (e.g.)
GRAINC_TO_FOOD_PERHARV in a single calendar year's output file, the first one was planted in the previous calendar year. You can confirm this by looking at SDATES_PERHARV (day of year of planting, 1-366) and SYEARS_PERHARV (year of planting), which together tell you the sowing date associated with each harvest.

Before introducing mxharvest-dimensioned outputs, the only way to determine what year a crop was planted in would have been to look at daily outputs and trace backwards from harvest date to sowing date—no fun.

The mxsowings-dimensioned outputs are all related to sowing: start and end of sowing window, actual sowing date, and sowing reason. The latter two also have mxharvest-dimensioned equivalents, but it's nice to have mxsowings-dimensioned versions to use if you're interested in sowing per se.

How these affect your analyses depends on what variables you're looking at. Let me know and I can elaborate.

Thanks for pointing out the lack of documentation about this, by the way. I've filed an issue to remind myself to add some.
 

samrabin

Sam Rabin
Member
I should add—outputs with dimensions of mxsowings or mxharvests should only ever be saved annually. They don't really make sense otherwise.
 
Top