Closed marcadella closed 1 month ago
Yes, I don't know what that is about in BiomeE. Ideally, the way it's done for P-model runs is adopted also for BiomeE runs.
The three parameters recycle
, spinupyears
, and firstyeartrend
determine what simulation year to start the spinup with. The clue is to recycle a certain sequence, say recycle = 5
. Then, the first 5 years of the forcing are taken and recycled during the spinup such that in the last spinup year, the last year of that sequence is used. Makes sense?
Is it intended that the user can set firstyeartrend
to a different year than the first one found in the forcings? For instance the data in the forcings could be 2009 -> 2012, and the user chooses to set firstyeartrend=2010
to skip year 2009?
In addition, why would p-model use forcing with different years for CO2 and climate?? (forcingyear
vs climateyear
)
EDIT: the difference between the two is that forcingyear_idx=1
during the spinup, while climateyear_forcing
follows the cycling. Its seems fishy that all th forcings follow different indexes...
firstyeartrend
is set at the level of R. Can also be avoided at R level, but added at Fortran level. But that's not worth the effort IMO.
forcingyear and climateyear distinguished is intentional. you can just adopt as it's done for P-model runs.
Just so we are at the same page: as it is implemented in p-model, a recycle of 3 years looks like this:
correct. The purpose recycling a sequence of >1 year of climate data is to have inter-annual variability in the climate and to have this interannual variability to be perfectly stationary. The variability matters for the dynamics and steady-state of the system. therefore it's very different from spining up to a single year repeated N times. CO2 has no interannual variability, just a long-term trend. The spinup assumes that CO2 is constant.
Changes in
get_steering
inparams_siml_biomee
by @lauramarques are bypassingget_cycleyear
. It is unclear if it is the right behavior or if it was a mistake or just a quick hack for testing something. Confirmation of the intended behavior is needed as well as code clean-up in this case.