Field Notes Journal

Seasonal Presence Model

This model is intended to represent species whose presence is seasonally constrained — those that are only observable during a particular phase of their life cycle or migration - and describes their rise into activity, the peak of the season, and the eventual collapse back toward absence.

It is therefore intended for species whose observable presence is strongly constrained in time, such as:

The model is deliberately simple in structure - closer to a minimal representation than a description of detailed ecological mechanisms — and is intended to explore whether the observed patterns can arise from a small number of underlying processes, not to predict observations.

It provides a minimal explanation for patterns seen in the seasonal analysis of observations, showing that a small number of simple processes are sufficient to produce:

The model does not attempt to describe the underlying biological mechanisms in detail. Instead, it offers a way of understanding how the observed patterns might arise from the interaction of seasonal forcing, constrained availability, persistence, and active seasonal suppression.

Concept

This model describes species that are only present for part of the year.

It answers the question:

When is the species present?

Unlike the resident model, presence is not continuous. Instead, activity is confined to a defined seasonal window.

The model combines four simple elements:

Together, these produce a dominant seasonal pulse with realistic asymmetry — allowing activity to rise gradually, peak, and then decline more abruptly after the season ends.

Model Parameters

A small number of parameters control the behaviour of the model:

Parameter Purpose
GROWTH Controls how strongly seasonal conditions drive the appearance of the species
DECAY Controls how quickly activity declines during the active period
OOS_DECAY Increases the rate of decline outside the seasonal window
POST_PEAK_DECAY Controls how strongly activity is suppressed after the season
POST_PEAK_SHARPNESS Controls how abruptly post-season suppression activates
SEASON_START Sets the onset of the active period
SEASON_END Sets the end of the active period
SHARPNESS Controls how abruptly the season begins and ends
FORCING_PEAK Sets the timing of the seasonal driver peak

Together, these parameters define:

The start and end parameters are expressed in months on a continuous scale, allowing the season to be positioned precisely within the year.

Mathematical form

The governing equation combines:

The effective decay rate increases:

This allows the model to reproduce species that decline rapidly after peak activity, reducing unrealistically persistent late-season tails.

Model behaviour

When applied over a full year, the model produces a characteristic seasonal pulse:

The resulting curves are often asymmetric, with relatively sharp post-peak decline. This better reflects many biological systems, where activity does not merely fade gradually, but undergoes active seasonal shutdown through senescence, migration, mortality, or behavioural change.

Normalisation

The model outputs are expressed as a relative, dimensionless measure of activity. As a result, different models — and different parameter choices — can produce values on different scales.

To allow comparison, the outputs are normalised so that the maximum value of y is set to 1, with all other values scaled proportionally.

This produces a simple index:

Normalisation is applied after simulation, and does not affect the underlying model behaviour. It allows comparison of the shape and timing of seasonal patterns, rather than absolute magnitude.

Parameter Interpretation

After parameter fitting, the parameters are broadly interpretable as follows:

Together, they describe the shape of the species’ seasonal behaviour.

As with all simple models:

In practice, each species can be described by both:

Together, these form a compact description of seasonal presence.

Tool

ODE Solver

A simple tool for exploring time-based models

The seasonal presence and detectability models were developed using a small, general-purpose ordinary differential equation solver, designed for experimentation and visualisation.

It allows simple systems to be defined and explored over time, making it possible to test how patterns might arise from underlying processes.

The application, the models, and instructions on how to run them are provided in the GitHub repository.

View on GitHub