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

Low crop yield issue in CLM5 BgcCrop simulations

Yiqing Liu

Yiqing Liu
New Member
Dear all,

I’m new to using CLM and currently trying to simulate historical crop yields to investigate the impacts of climate change. The model version I used is 2.1.5 and created a newcase as following:
/create_newcase --case I2000Clm50BgcCrop --compset I2000Clm50BgcCrop --res f19_g17 --machine local

I only ran a one-year simulation for testing purposes and output the PFT-based GRAINC variable.
./xmlchange NTASKS=32,STOP_OPTION=nyears,STOP_N=1

vim user_nl_clm
hist_mfilt = 1,1
hist_nhtfrq = 0,0
hist_fincl2 = 'GRAINC_TO_FOOD'
hist_dov2xy = .true.,.false.

The model runs successfully, and I calculated the annual sum of GRAINC by multiplying each monthly value by 30×24×3600, and then converted it to yield exactly following the instructions in the tech note (2.26. Crops and Irrigation — ctsm release-clm5.0 documentation).

However, I noticed that the simulated crop yields are very low compared to my expectations. I’ve attached the global rainfed and irrigated corn yield results (unit: t/ha). Surprisingly, I found that the yield for irrigated corn is even lower than that of rainfed corn, which I didn’t expect.I wonder if this is due to an issue with my choice of compset, or if such low yields are a normal outcome. I have seen literature mentioning that CLM crop yields tend to be underestimated, but I’m not sure if the magnitude of underestimation I’m seeing is reasonable or if there might be something wrong with my setup.

Additionally, I performed a 20-year test simulation with the same configuration (except changing STOP_N=20), but I encountered a problem (please see the attached log file). From the log, it seems that the issue is related to CH4 concentration anomalies. However, I did not modify any CH4-related settings, and I don't understand why this issue occurred or how to fix it.

This brings me to my third question. I wonder: could this be related to the fact that I did not perform a full spin-up? I checked my "lnd_in" file and noticed that a default "finidat" file is already provided as below.
finidat = '/home/test/cesm/inputdata/lnd/clm2/initdata_map/clmi.I2000Clm50BgcCrop.2011-01-01.1.9x2.5_gx1v7_gl4_simyr2000_c190312.nc'

So I would like to confirm: Is this initial file already a spin-up result that has reached equilibrium, provided by CESM developers?
If so, can I safely skip the long spin-up simulation as suggested for CLM5.0-BGC-Crop in the CLM5.0 User’s Guide (1.5.5. Spinup of CLM5.0-BGC-Crop — ctsm release-clm5.0 documentation) if I just want to run a simple simulation without significantly modifying the default configuration?

Many thanks in advance!!

Cheers,
Yiqing
 

Attachments

  • global_corn_yield.png
    global_corn_yield.png
    135 KB · Views: 2
  • cesm.log.zip
    10.7 KB · Views: 1

oleson

Keith Oleson
CSEG and Liaisons
Staff member
Regarding your question about crop yield, my suggestion would be to look at this paper, if you haven't done so already, which discusses the CLM5 crop model:

Lombardozzi, D.L., Y. Lu, P. Lawrence, D.M. Lawrence, S. Swenson, K.W. Oleson, W.R. Wieder, and E.A. Ainsworth, 2020: Simulating transient crop management in the Community Land Model version 5, J. Geophys. Res., doi: 10.1029/2019JG005529.

Figure 3 does seem to show underestimated yields for corn in several regions. Pinging @samrabin in case he has any insights.

I don't think the ch4 messages you are getting are necesarily related to the model stopping, these are generally informational. The model is likely stopping because it is trying to write out a NaN for some variable to the history file. If you compile and run the model in debug mode you might be able to get a better traceback of where the problem is starting.

The finidat file should be sufficiently spunup for that model configuration, if you don't change anything in the model code or input files.
 
Vote Upvote 0 Downvote

samrabin

Sam Rabin
Member
That's strange about irrigated yields being lower than rainfed yields. Also, it does look like your yields are lower than Fig. 3b from Lombardozzi et al. (2020):
1753379543471.png

The version of CTSM in CESM 2.1.5 is pretty old. If you're just running CTSM standalone, you might try our latest release (ctsm5.3) instead. That includes changes to crop calendars described in Rabin et al. (2023). It also includes a new variable, GRAINC_TO_FOOD_ANN, that simplifies the process of getting useful crop yields. Just save it annually and then you can skip the step about converting per-second to per-year values.
 
Vote Upvote 0 Downvote
Top