CAMP
The Cereal Apical Meristem Phenology (CAMP) model is a mechanistic framework for simulating the developmental progression of temperate cereals from germination through to reproductive initiation. CAMP integrates molecular-level vernalisation gene expression (Vrn1, Vrn2, Vrn3) with phyllochron-based leaf appearance to predict final leaf number and flowering time in response to temperature and photoperiod.
Overview
The CAMP model (Brown et al. 2013) is based on Kirby (1988)’s framework, which assumes that the timing of anthesis results from the timing of flag leaf appearance plus an additional thermal time period from flag leaf to heading and anthesis. The timing of flag leaf appearance is determined by the Final Leaf Number (FLN), which sets a developmental target, and the leaf appearance rate, which determines the rate of progress toward that target. Leaf appearance rate is a function of thermal time and a genotype-specific phyllochron that varies with Haun stage as described by Jamieson et al. (1998).
The CAMP model simulates molecular responses to temperature and photoperiod signals that regulate flowering transitions, including upregulation of Vrn1, Vrn2, and Vrn3 genes. These genes regulate the timing of key developmental transitions, particularly the completion of vernalisation and initiation of the reproductive phase.
Progress through the vernalising phase is determined by the apparent expression of Vrn1 and Vrn2 genes: Vrn1 is the gene that orchestrates cold temperature responses in development. To complete the vernalising stage, Vrn1 expression must first reach a threshold of at least 1.0. In warm temperatures (above 18 °C), Vrn1 is expressed at a genotype-dependent base rate. This base rate is lower for vernalisation-sensitive genotypes, which develop slower under warm conditions. However, exposure to cold temperatures accelerates Vrn1 expression, causing vernalisation-sensitive varieties to reach this stage at a lower Haun stage.
Vrn2 is upregulated by longer photoperiods and acts as a repressor of Vrn3, which is essential for progression to spikelet initiation. Vrn1 in turn represses Vrn2. Thus, higher photoperiod-induced Vrn2 expression raises the Vrn1 target above 1.0, extending the vernalisation phase. Conversely, shorter days reduce the Vrn1 target, a phenomenon known as short-day vernalisation. Vrn3 may also contribute to the acceleration of Vrn1 expression during vernalisation, a process represented by a composite parameter VrnX in the CAMP model.
The CAMP model integrates molecular and physiological representations to better capture genotype × environment × management (G×E×M) interactions and to provide a mechanistic bridge between genetic parameters and field-level crop behavior. All gene expressions are derived daily based on Haun stage increment, temperature, and photoperiod.
Genetic Control of Phenology
Three groups of genes are involved in cereal phenology:
- Vernalisation genes (VRN): These genes promote flowering in response to prolonged exposure to cold temperatures.
- Photoperiod sensitivity genes (PPD): These genes regulate flowering time based on day length.
- Earliness per se genes (EPS): These genes control the rate of development independently of environmental cues.
Four treatments are used to represent the major gene effects on phenology (Bloomfield et al. 2023; Zheng et al. 2013):
| Treatment | Description | VRN | PPD | EPS |
|---|---|---|---|---|
LV |
Long photoperiod with vernalisation | ✓ | ✓ | ✓ |
LN |
Long photoperiod without vernalisation | ✗ | ✓ | ✓ |
SV |
Short photoperiod with vernalisation | ✓ | ✗ | ✓ |
SN |
Short photoperiod without vernalisation | ✗ | ✗ | ✓ |
Vernalisation genes are activated by exposure to low temperatures following seed germination.
Model Structure
This section describes how this model is positioned within the APSIM framework. It outlines the broader structural and computational components that define its role and interactions in the simulation system.
This model inherits structural and functional behaviour from the following core APSIM components:
Connections to Other Components
This section describes how the model interacts with other components in the APSIM Next Generation framework.
These connections allow the model to exchange information—such as environmental conditions, developmental stage, or physiological responses—with other parts of the simulation system. For a general overview of how model components are connected in APSIM, see the Connections Overview.
| Component | Model | Connection Type | Description |
|---|---|---|---|
| Phenology | Phenology | Link, Ancestor | Parent phenology model coordinating developmental phases. |
| tt | IFunction | Link, Child By Name | Daily thermal time (°Cd). |
| ColdVrnResponse | IFunction | Link, Child By Name | Cold temperature response driving Vrn1 expression. |
| PpResponse | IFunction | Link, Child By Name | Relative photoperiod function (scaled 0–1). |
| haunStage | IFunction | Link, Child By Name | Daily Haun Stage value. |
| basePhyllochron | IFunction | Link, Child By Name | Phyllochron for pre-emergence growth. |
| deltaHaunStage | IFunction | Link, Child By Name | Haun stage increment post-emergence. |
| calcCAMPVrnRates | CalcCAMPVrnRates | Link, Child By Name | Calculates cultivar-specific rate parameters. |
| FLNparams | FinalLeafNumberSet | Link, Child By Name | Cultivar-specific final leaf number parameters. |
| EnvData | FLNParameterEnvironment | Link, Child By Name | Environmental inputs for parameterisation. |
Model Variables
This section lists the key variables that describe or control the behaviour of this component. Some variables can be adjusted by the user to modify how the model behaves (configurable), while others are calculated internally and can be viewed as model outputs (reportable). For a general explanation of variable types and how they are used within the APSIM Next Generation framework, see the Model Variables Overview.
Configurable and Reportable Properties
No configurable properties are available for this model.
Read-Only Reportable Properties
| Property | Type | Description |
|---|---|---|
IsGerminated |
bool | True if seed is imbibed |
IsEmerged |
bool | True if seed has emerged |
IsVernalised |
bool | True if vernalisation threshold reached (\(Vrn ≥ 1.0\)) |
IsReproductive |
bool | True if reproductive threshold reached (\(Vrn ≥ 2.0\)) |
BaseVrn |
double | Baseline upregulated Vrn1 expression |
Cold |
double | Cold-induced Vrn1 expression |
Vrn1 |
double | Methalated Vrn1 expression (persisting) |
Vrn2 |
double | Long-day induced repressor of flowering |
Vrn3 |
double | Photoperiod-dependent promoter of flowering |
Vrn |
double | Net vernalisation signal (Vrn1 + Vrn3 + BaseVrn - Vrn2) |
FLN |
double | Final leaf number |
TSHS |
double | Terminal spikelet Haun stage |
VSHS |
double | Vernalisation saturation Haun stage |
RelPp |
double | Relative photoperiod between 0 (short) and 1 (long) |
RelCold |
double | Cold effectiveness from ColdVrnResponse |
PpVrn3Fact |
double | Photoperiod factor for Vrn3 expression |
MaxVrn |
double | Maximum potential Vrn expression |
MaxVrn2 |
double | Maximum potential Vrn2 expression |
dVrn |
double | Daily delta vernalisation |
dBaseVrn |
double | Daily delta base Vrn |
dCold |
double | Daily delta cold-induced Vrn1 |
dVrn1 |
double | Daily delta methalated Vrn1 |
dVrn3 |
double | Daily delta Vrn3 |
dMaxVrn |
double | Daily delta maximum Vrn |
dHS |
double | Daily delta Haun stage |
Events
This section describes the events associated with this component. Events are signals or notifications that indicate when a particular process occurs within the simulation, or when a component needs to respond to a change in another part of the system. Some events are listened for by this component to trigger its processes, while others are raised to inform other components about changes. For a general overview of how APSIM Next Generation uses events to coordinate processes between components, see the Events Overview.
Events Listened For
These are signals or notifications that the model listens for from other parts of the simulation:
| Event | Purpose |
|---|---|
| SeedImbibed | Triggers start of imbibition and gene expression |
| PlantEmerged | Activates photoperiod sensitivity and post-emergence expression |
| PlantSowing | Resets all gene expression and loads cultivar-specific parameters |
| PrePhenology | Main daily update loop for gene expression and state transitions |
Events Raised to
No events are raised by this model.
Processes and Algorithms
This section describes the scientific processes and algorithms represented by this component. Each process corresponds to a biological, physical, or chemical mechanism simulated during a model time step. Where appropriate, equations or conceptual summaries are provided to explain how the process operates within the APSIM Next Generation framework.
Parameterisation
Genotype-specific rates of gene expression in CAMP are defined by FLNparams, which includes:
- MinLN: Base final leaf number under full vernalisation and long photoperiod.
- PpLN: Increase in FLN when grown under short photoperiod (e.g. 8h) after full vernalisation.
- VrnLN: Increase in FLN due to lack of vernalisation when grown under short photoperiod.
- VxPLN: Modification to FLN due to photoperiod interaction under unvernalised conditions.
Controlled environment conditions under which final leaf number (FinalLeafNumberSet) was observed and defined by EnvData:
- VrnTreatTemp: Temperature (°C) used during the vernalisation treatment.
- VrnTreatDuration: Number of days the plants were exposed to the vernalising temperature.
- TreatmentPp_L: Photoperiod (hours) during the long-day photoperiod treatment.
- TtEmerge: Measured thermal time (°Cd) from sowing to emergence.
On Plant Sowing
When the plant is sown, the CAMP model
- resets all vernalisation gene expressions,
- calculates vernalisation rate parameters using a set of final leaf number parameters and controlled environment data.
On Seed Imbibed
When the seed is imbibed after germination, the CAMP model set isImbibed to true, indicating that the seed has absorbed water and is ready for germination.
ON Plant Emerged
When the plant emerges, the CAMP model set IsEmerged to true, indicating that the plant has successfully emerged from the soil.
On Pre Phenology
In each day before phenology calculations, the CAMP model updates the expression of Vrn1, Vrn2, and Vrn3 based on current Haun stage, temperature, and photoperiod. The rate of gene expression is genotype-specific and internally derived from FLN parameters.
- Vrn1 is expressed at a base rate under warm conditions, increasing under colder temperatures. The total expression includes both base and cold-driven components. Once Vrn1 expression exceeds the threshold of 1.0, the plant is considered vernalised.
- Vrn2 is upregulated by long photoperiods. It inhibits Vrn3 expression and must be repressed (via increased Vrn1) before reproductive development can proceed.
- Vrn3 is upregulated after vernalisation is complete and is necessary for terminal spikelet initiation. Its expression accelerates phenological progression.
The following steps are performed on event PrePhenology:
Calculate daily Haun Stage changes
Whether the crop has emerged is determined by whether the current phase represents development above the soil surface — that is, the phase itself occurs above ground or comes after emergence in most plants.
If the crop has not emerged, the Haun Stage delta (\(\Delta HS\)) is estimated based on daily thermal time (\(TT\)) and a base phyllochron:
\[ \Delta HS = \frac{TT}{Ph_\text{base}} \times F_{\text{emgDur}} \]
Where:
- \(Ph_\text{base}\) is the base phyllochron (thermal time per leaf appearance) for the crop, is a factor that slows down leaf appearance
- \(F_{\text{emgDur}}\) is a factor that accounts for the duration of emergence, which is set to 1.0 if the accumulated thermal time since sowing does not exceed 90°C·d.
If the accumulated thermal time since sowing exceeds 90°C·d, a correction factor is applied to account for prolonged or delayed emergence conditions:
\[ F_{\text{emgDur}} = e^{-0.015 \times ( \sum_{t = t_{\text{sow}}}^{t_{\text{today}}} TT_t - 90)} \]
Where:
- \(\sum_{t = \text{sow}}^{\text{today}} TT_t\) is the cumulative thermal time from sowing to today.
If the crop has emerged, \(\Delta HS\) is calculated from the model input variable deltaHaunStage. In general, this variable is updated daily based on the daily thermal time and actual phyllochron.
Base and Maximum Vernalisation Expression
Gene expression is divided into:
\(Vrn_{\text{base}}\): Baseline vernalisation expression, which is the cumulative amount of Vrn1 expressed under baseline conditions,
\(Vrn_{\text{max}}\): Maximum vernalisation expression, which is the cumulative amount of Vrn1 expressed under maximum conditions (e.g. cold temperatures),
\(F_{\text{Pp, Vrn3}}\): Photoperiod factor for Vrn3 expression, which is the factor that modifies Vrn3 expression based on photoperiod
If not yet vernalised, e.g. from sowing to vernalisation saturation:
\[ \Delta Vrn_{\text{base}} = \Delta Vrn_{\text{base, veg}} \times \Delta HS \]
Where:
- \(\Delta Vrn_{\text{base, veg}}\) is the baseline rate of Vrn1 expression during the vegetative phase, which is derived from the calcCAMPVrnRates submodule at event PlantSowing,
- \(\Delta HS\) is the daily Haun stage increment.
\[ \Delta Vrn_{\text{max}} = \Delta Vrn_{\text{max, veg}} \times \Delta HS \]
Where:
- \(\Delta Vrn_{\text{max, veg}}\) is the maximum rate of Vrn1 expression during the vegetative phase, also derived from the calcCAMPVrnRates submodule at event PlantSowing,
- \(\Delta HS\) is the daily Haun stage increment.
\[ F_{\text{Pp, Vrn3}} = F_{\text{Pp, Vrn3, veg}} \]
Where:
\(F_{\text{Pp, Vrn3, veg}}\) is the photoperiod factor for Vrn3 expression during the vegetative phase, derived from the calcCAMPVrnRates submodule at event PlantSowing.
If vernalised but not reproductive, e.g. from vernalisation saturation to floral initiation:
\[ \Delta Vrn_{\text{base}} = \Delta Vrn_{\text{base, ER}} \times \Delta HS \]
Where:
- \(\Delta Vrn_{\text{base, ER}}\) is the baseline rate of Vrn1 expression during the early reproductive phase, derived from the calcCAMPVrnRates submodule at event PlantSowing,
- \(\Delta HS\) is the daily Haun stage increment.
\[ \Delta Vrn_{\text{max}} = \Delta Vrn_{\text{max, ER}} \times \Delta HS \]
Where:
- \(\Delta Vrn_{\text{max, ER}}\) is the maximum rate of Vrn1 expression during the early reproductive phase, derived from the calcCAMPVrnRates submodule at event PlantSowing,
- \(\Delta HS\) is the daily Haun stage increment.
\[ F_{\text{Pp, Vrn3}} = F_{\text{Pp, Vrn3, ER}} \]
Where:
- \(F_{\text{Pp, Vrn3, ER}}\) is the photoperiod factor for Vrn3 expression during the early reproductive phase, derived from the calcCAMPVrnRates submodule at event PlantSowing.
\(Vrn_{\text{base}}\) and \(Vrn _{\text{max}}\) are accumulated since isImbibed is true, in general starting from germination.
\[ Vrn_{\text{base}} = \sum_{t = \text{imbibed}}^{\text{today}} \Delta Vrn_{\text{base}} \]
\[ Vrn_{\text{max}} = \sum_{t = \text{imbibed}}^{\text{today}} \Delta Vrn_{\text{max}} \]
Cold Vernalisation (Vrn1)
Cold response affects Vrn1 expression:
\[ \Delta Cold = R_{\text{cold,\ vrn}} \times \Delta Vrn_{\text{base}} \times F_{\text{cold, vrn1}} \]
Where:
- \(R_{\text{cold,\ vrn}}\) is the cold upregulation response for Vrn1 expression, specified by the input child function
ColdVrnResponse, - \(F_{\text{cold, vrn1}}\) is the cold upregulation factor for Vrn1 expression, derived from the calcCAMPVrnRates submodule at event PlantSowing.
Then the total Cold exposure is accumulated since imbibition (i.g. germination):
\[ Cold = \sum_{t = \text{imbibed}}^{\text{today}} \Delta Cold \]
If cold exposure surpasses a methylation threshold \(\theta_{\text{meth}}\), which is derived from the calcCAMPVrnRates submodule at event PlantSowing. Changes of Vrn1 expression is equal to changes of cold exposure:
\[ \Delta Vrn1 = \Delta Cold \qquad \text{if}\ Cold\ \geq \theta_{\text{meth}} \]
Then the total Vrn1 expression is accumulated since imbibition (i.g. germination): \[ Vrn1 = \sum_{t = \text{imbibed}}^{\text{today}} \Delta Vrn1 \]
Photoperiod Response and Vrn2/Vrn3
Vrn2 expression is set as relative to the maximum vernalisation expression (\(Vrn_{\text{max}}\)) and photoperiod response before vernalisation saturation:
\[ Vrn2 = Vrn_{\text{max}} \times R_{\text{Pp}} \]
Where:
- \(R_{\text{PP}}\) is the photoperiod response for Vrn2 expression, specified by the input child function
PpResponse, - \(V_{\text{max}}\) is the maximum vernalisation expression, derived from the calcCAMPVrnRates submodule at event PlantSowing.
Photoperiod gene expression is active only if isEmerged is true, i.e. after emergence in general.
\[ \begin{align} \Delta Vrn3 = \left( F_{\text{Pp, Vrn3}} - 1\right) \times R_{\text{Pp}} \times \Delta V_{\text{base}} \\ \qquad \ \qquad if\quad Vrn_{\text{base}} + Vrn1 > Vrn2 \end{align} \]
Where:
- \(F_{\text{Pp, Vrn3}}\) is the photoperiod factor for Vrn3 expression, derived from the calcCAMPVrnRates submodule at event PlantSowing,
- \(R_{\text{PP}}\) is the photoperiod response for Vrn1 expression, specified by the input child function
PpResponse, - \(\Delta V_{\text{base}}\) is the baseline rate of Vrn1 expression.
Then the total Vrn3 expression is accumulated since imbibition (i.g. germination): \[ Vrn3 = \sum_{t = \text{imbibed}}^{\text{today}} \Delta Vrn3 \]
Final Vernalisation Level (Vrn)
The total vernalisation expression (\(Vrn\)) is accumulated from imbibition (i.e. germination) as follows:
- If not vernalised:
\[ Vrn = Vrn_{\text{base}} + Vrn1 + Vrn3 - Vrn2 \]
Where:
- \(Vrn_{\text{base}}\) is the baseline vernalisation expression,
- \(Vrn1\) is the cold-induced vernalisation expression,
- \(Vrn2\) is the photoperiod-induced repressor of flowering,
- \(Vrn3\) is the photoperiod-dependent promoter of flowering.
\(Vrn\) is bounded from 0 to \(Vrn_{\text{max}}\).
- If vernalised:
\[ Vrn = \sum_{t = \text{imbibed}}^{\text{today}} \left( \Delta Vrn_{\text{base}} + \Delta Vrn3 \right) \]
Delta change of \(Vrn\) is calculated through the difference between the current and previous day’s vernalisation level:
\[ \Delta Vrn = Vrn_{\text{today}} - Vrn_{\text{yesterday}} \]
Phase Transitions
The plant is
- fully vernalised when the total vernalisation (\(Vrn\)) reaches a threshold of 1.0,
- transitioning to the reproductive phase when the total vernalisation (\(Vrn\)) reaches a threshold of 2.0.
The Haun Stage at vernalisation saturation (\(HS_{VS}\)) and terminal spikelet (\(HS_{TS}\)) are recorded from child function HaunStage.
Final Leaf Number (FLN)
The Final Leaf Number is calculated at terminal spikelet following the method of Brown et al. (2013): \[ FLN = 2.85 + 1.1 \times HS_{TS} \]
User Interface
CAMP can be added as a child of a Phenology node in the model tree. Right-click the Phenology node, select “Add Model…”, and search for CAMP in the Filter Box.
Practical Example
No practical example is available for this model.
See Also
- Source code: CAMP.cs on GitHub
- Related models: