The parameters IDSL, DLO, DLC, and DVSEND in the DVS_Phenology class control when the simulation should stop. Depending on their values, DVS_Phenology sends a signal to the Engine to end the simulation. These parameters are closely related to AgroManagement settings such as crop_start_date, crop_start_type, crop_end_date, crop_end_type, crop_name, and max_duration.
The main issues are:
- The
Engine can currently run only one crop model at a time, as defined in AgroManagement. It executes the Euler loop day-by-day for a single crop.
- The dispatcher can handle only a single signal from a single crop.
As a result, the existing tests loop over different datasets one crop at a time. Ideally, we want to run all crops together with one Engine instance. Achieving this will mainly require changes to the Engine, and later the phenology module should also be revisited.