What it is, and is not
A simulation program is in it
self no new knowledge. It is a powerful way tot structure and link loads
of detailed pieces of knowledge, perform calculations with the total of
this combined knowledge and see if the outcome matches the reality.
Where this way of packing
knowledge leads to realistic outcomes, it is a beautiful tool for
growers and advisers to improve their decisions in crop protection.
Where it doe not, these logical structures can makes us clear where the
gabs or critical points in our knowledge or reasoning are.
As the models that I present in
RIMpro are meant to be used by growers and advisors, I am concerned that
the user interface is friendly, and the presentation of the outcomes is
self explaining. And also that the data of simple on-farm weather
stations can be used as input.
The proper way to develop a model
In the development process models are structured, and variables are set according to the available
scientific explaining information on the individual processes, the
models and parameter settings are, where ever possible, not based on
correlative studies on field observations.
For validation purposes the
intermediate and end outcomes of the model are compared to field data.
The only valid adaptations to a model to these field data are the
setting of biofixes where the starting point is an outcome of a not
simulated processes (eg date of full bloom), and the relative dispersion
of processes that in the field situation may turn out tot be larger than
in populations studies under lab conditions.
All other deviations between
model outcomes and field observations should be solved by reinterpreting
of the underlying process information.
Climatic data
RIMpro reads ASCII files and
stores the weather data into an MDB database with a uninformed format.
Regardless the format or resolution of the original ASCII file, data are
stored in 30 min interval. For this the original files are interpreted
and data series are split (in case of hourly readings) or merged (in
case of shorter reading intervals then 30 min) according to logic rules.
For instance leaf wetness readings are presented in the datafiles in
many different ways, but are in RIMpro interpreted and stored as minutes
of wetness in 30 minutes.
In normal use, RIMpro looks for
new data in the ASCII file, and reads only the new data. That is the
data in the time interval that is not yet present in the MDB.
Calculations and recalculations in RIMpro are made with the interpreted
data in the MDB file, not with the original ASCII data. If for any
reason (for instance after corrections in the ASCII dataset) you want to
recalculate with the data in original ASCII file you must force RIMpro
to clear the MDB data file, and read the ASCII file again.
Structuring stages and processes
A simulation program is made up
of stages that are physically containers for the individuals in that
stage. These stages are connected by processes that let the individuals
in the population develop from one stage to the next.
The first step in developing a
simulation program is to structure the lifecycle into a chain of
biological stages. After that for each developmental process the process
speed is described as a mathematical function, in most case as a
temperature driven nonlinear relationship. I principally use here Logan
shaped curves. As we are simulating the development of a population not
only the average developmental time but also the variance to this
relationship is quite important. This variance is defined as the
relative dispersion (RD) in the process. RD is the standard deviation
/average process time).
Finally all kinds of triggers
and other provisional conditions for the process are defined.
The data to define the program
structure, processes and variables are mostly found by combining
literature data from very different sources.
RIMpro uses fractional
boxcartrain technique to mimic developmental processes and their
dispersion.
Runtime cycles
During runtime typically the
following happens at 15 minute data interval:
- Weather data are read and
interpreted
- Drivers ( e.g. temperature,
humidity) are set
- Values for trigger and
condition are set
- Process speed is calculated
for all processes
- Process development in 15
minutes is calculated form the above values
- With this the fractional
boxcar trains are updated
- Data are stored