SimComponents

Top  Previous  Next

As briefly mentioned, SimComponents are interchangeable software units containing the mathematical formulation about the functioning of one or more processes and can be considered sub-models. Thereby, a SimComponent is the smallest definable unit of a model. They can be declared as <simcomponent> objects within the <simmodel> section of a ModelSolution, where they are sequentially executed and can be linked to other SimComponents and <resource> objects.

 

Within the <simmodel> section, the SimComponents are declared where its necessary to specify the links of the input variable names with a data source (either a <resource>, <transform> or another SimComponent).

clip0019

clip0020

 

In SIMPLACE, SimComponents for the major crop growth and agroecosystem processes are available (simplace_modules), i.e. crop phenology and development, shoot growth, biomass accumulation, yield formation, crop nitrogen demand, crop water demand, root growth, soil temperature and water dynamics, root water uptake, soil carbon and nitrogen dynamics (list of SimComponents).

 

Many of these SimComponents were derived from widely tested models, which are also available in SIMPLACE as whole group components, including simple to quite detailed generic crop models such as LINTUL 2 and 5 (Van Oijen and Lefelaar 2008; Wolf 2012), GECROS (Xinyou and van Laar 2005) and SUCROS (Goudriaan and Van Laar 2012). Therefore, users can define and test various combinations of SimComponents that better represent the target system, conform with input data availability, as well as quantify the underlying uncertainties of model structure and detail.

 

 

fig5

Fig. Conceptual overview of the main set of sub-models (SimComponents) that are currently available for crop and agroecosystem modelling in the SIMPLACE platform (v5.0). Most of the SimComponents listed here are related to crop growth and development processes but are positioned next to their main driver within the soil and atmosphere boundaries. Model algorithms coded into these components are previously tested in the literature (Addiscott and Whitmore 1991; Bronstert and Plate 1997; Corbeels et al. 2005; Goudriaan and Van Laar 2012; Nguyen et al. 2022; Webber et al. 2016a; Wolf 2012; Xinyou and van Laar 2005). The full list of SimComponents can be found at: https://simplace.net/doc/simplace_modules/

 

 

Special cases of SimComponents are needed to accommodate the users' need for testing diverse modelling structures and crop management practices. For these purposes, two special cases of SimComponents are available in SIMPLACE, namely DefaultManagement and FWSimpleSimComponent. These generic SimComponents also make use of the JEXL Rule Engine implemented in SIMPLACE in order to minimise the need for modification/addition of custom source code and are mainly used to trigger management interventions or introduce intermediate calculations between SimComponents directly in the ModelSolution file.

 

Another special case is the GroupComponent, which is a predefined group of SimComponents that can represent a whole model structure, for example, the LINTUL5 model (Wolf 2012). In practice, it works as an appended XML file containing a fixed set of SimComponents and is mainly intended to encapsulate the complexity of a set of SimComponents for modularization purposes. Adding new SimComponents are also possible and requires a basic understanding of the modularization scheme of SIMPLACE and Java programming language (Developing new SimComponents).