IrriGator
Irrigation optimizer for crops, focused on maize in the South-Western part of France.
Balthy Macchiadons
7/16/202629 min read


This project has been inspired by Edouard Truffaux, a french farmer who detailed the need for a tool supporting the day-to-day irrigation decision. The aim is to develop an optimizer, specific for the client, that exploits pedology, hydrogeology and meteorology.
We will only present two parcels in this article, but more can be discussed based on demand (who cares?).
To develop such pipeline, we used various tools/datasets, across several domains/scientific fields:
Aquacrop model from the FAO (add ref), used to follow the growth and hydraulic stress,
Hydrosoil data grids from the European Soil Data Centre (https://esdac.jrc.ec.europa.eu/content/3d-soil-hydraulic-database-europe-1-km-and-250-m-resolution - doi: 10.1002/hyp.11203), to approximately know the pedology of a given parcel,
ERA5 data from the Copernicus project (add link), for historical weather,
COMPEHORE data from MeteoFrance, for adjusting the precipitation,
AROME forecasts from MeteoFrance for short-term deterministic forecasts (0-2 days)
IFS forecasts from ECMWF for mid-term ensemble forecasts (2-15 days)
Parcel
We start by presenting the parcel that is core of our study, we name it "Billac" and "Guide" because it's their initial names. Both are located in Dordogne (24), near Périgueux or Bergerac:
We will consider two years, the current (2026) and previous (2025) ones. The same planting date is considered: 10/04/202X, with the same seed density.
The Maize variety is considered the same:
Billac: (DKC4728 from Bayer - Left table), it is a mid-late crop (G3), relatively easy to grow and with flowering at 970°, grain at 32% H20 at 1900°,
Guide: (P0710 - Right table), with flowering at 950°, grain at 32% H20 at 1940°.
Both have respective tables from Bayer official documentation, please refer to it for more information (https://agro.bayer.fr/d/mais-grain-dekalb-dkc4728-fr-fr and https://www.placedesagriculteurs.fr/produits/semences/p0710-aquamax.html).




Soil data
In AquaCrop, the Soil object represents the vertical soil profile through which rainfall, irrigation, drainage, evaporation, capillary rise and root water extraction are simulated. The profile is divided into vertical horizons and computational compartments, with each zone defined by its volumetric water contents at permanent wilting point (th_wp), field capacity (th_fc) and saturation (th_s), together with saturated hydraulic conductivity (Ksat).
The difference between field capacity and wilting point determines the plant-available water capacity, while Ksat controls how rapidly excess water can move through a saturated layer. For locations without field measurements, these properties can be initialized from the EU-SoilHydroGrids database distributed through the European Soil Data Centre. It provides estimates at seven depths down to 2 m at 250 m spatial resolution, derived from SoilGrids data using pedotransfer functions trained on the European Hydropedological Data Inventory. The database includes saturation, field capacity, wilting point, saturated conductivity and Mualem-van Genuchten parameters. Because these values are spatial predictions rather than parcel-level measurements, they are best regarded as physically consistent initial estimates that may require local calibration, particularly for hydraulic conductivity and restrictive subsurface layers.




The first figure compares that water-retention profiles of the Billac and Guide parcels. The blue, orange and green curves respectively represent permanent wilting point, field capacity and saturation, while the shaded areas distinguish water unavailable to plants, plant-available water between wilting point and field capacity, and water above field capacity. Both parcels exhibit broadly similar hydraulic limits, including decreasing saturation and field capacity through the upper metre and relatively homogeneous properties at greater depth.
Billac parcel however has a slightly wider separation between field capacity and wilting point over much of the deeper profile.
The second figure shows that the main distinction between the parcels concerns water transmission rather than water storage. Billac retains a relatively high Ksat throughout the profile, including below 1 m, whereas Guide displays a sharp decrease to approximately 1 mm/day below 1 m. In the model, this low conductivity can act as a hydraulic bottleneck: downard drainage frop the upper root zone becomes much slower, potentially increasing water retention and saturation above the layer after substantial rainfall or irrigation, while also limiting deep percolation.
By contract, Billac should evacuate excess water more readily through the complete profile. The right-hand plot confirms that Billac stores only modestly more plant-available water, so the large divergence in Ksat is likely to have a stronger effect on simulated infiltration, drainage and waterlogging risk than the relatively small difference in total available storage. The root-zone water storage is relatively similar also because of the spatial proximity between the two parcels (few kilometers).
Weather and climate data
We make the distinction between two types: base data and correction data. The first type is fundamental for building our pipeline, while the second helps to downscale and correct potential bias within observations.
For historical data, we consider ERA5-Land as the reference, it contains bias but is the optimal compromise (good quality, stable and reanalyzed).
AROME and IFS are both used as forecast sources for their reputation, AROME is France focused, which drastically reduces distributed bias spatially; and IFS is of good quality for Europe wide forecasts. AROME is deterministic whereas IFS is stochastic, the uncertainty related to weather forecasts is always important, but in our situation, the 0-48 window can be considered as "predictable" (which is obviously not exactly true, should be treated as a fundamental assumption) whereas beyond this scope, uncertainty still increases exponentially but becomes important.




The above scheme is presenting the daily updated dynamic archive, as ERA5 has a systemic lag of at least 5 days, a way to know what happened recently is to use past forecasts, for short horizons, and consider that it really happened. It is important to keep in mind that this is a good fix rather than the perfect solution, as model initialization can be biased, forecasts can be wrong, even for short term. We compared two modes:
Static - each day, the 00h UTC forecast is fetched, for up to 24 hours
Dynamic - each day, every 3 hours, the forecast is fetched for up to 3 hours, it builds dynamic days.
Therefore, every new day, new forecasts are fetched from MeteoFrance and IFS, the previous MeteoFrance forecast is moved to both the historical and forecast archives. If (day-5) is available from ERA5, the AROME (day-5) historical is removed from the archive and replaced by the ERA5-Land information.
Pipeline for raw data
Bias correction
As every dataset, about weather or climate, contains bias because it's not possible to know what happened, everywhere at all times, even with the most sophisticated tools. Considering this, the aim becomes to mitigate as much as possible the systematic error, to reduce the uncertainty and improve the confidence in the model output.
We differentiate two types of corrections:
those where the raw dataset is compared to a cleaner dataset with the same covariates (for example, comparing the cumulative density function of observed minimal temperatures at a given place),
those where the raw dataset is corrected using a covariate comparison between two other datasets (for example, adjusting the average temperature at a given point, by the difference between the elevation assumed by the source and the actual elevation).
We apply a precipitation correction to it by using COMEPHORE data (with a CDF-t quantile mapping).
Crop model
A fundamental when working on crop models is to consider the reference evapotranspiration. Commonly noted as ET_0, it represents the evapotranspiration that would occur from a standardized, extensive surface of short green grass that is actively growing, completely covers the soild and is not limited by water availability. It is primarly an indicator of the evaporative demand of the atmosphere rather than the actual water loss of a specific crop.
The FAO reference surface is defined using fixed characteristics: a crop height of 12 cm, an albedo of 0.23 and a bulk surface resistance of 70 s/m (the resistance of vapour flow through the transpiring crop and evaporating soil surface, here it represents the stomatal resistance of the upper half of dense clipped grass).
ET_0 is commonly expressed in mm/day, where 1 mm is equivalent to 1 litre of water per square metre. Because the reference surface is fixed, ET_0 can be widely compared consistently between locations and periods, while crop-specific evapotranspiration is subsequently estimated using crop coefficients.
The FAO recommends the sandardized Penman-Monteith equation, which combines an energy-balance component with an aerodynamic component:
Reference evapotranspiration (ET_0)
The Aquacrop model
AquaCrop is a crop water productivity model which describes interactions between the plant and the soil as the primary system.
From the root zone, the plant extracts water and nutrients, which allows the canopy to grow, the root zone to expand and the crop to produce biomass and yield. Field and irrigation management are considered in the model since they impact the soil-plant interaction.
There are several components of the models that are presented below, for more details, please refer to (https://openknowledge.fao.org/server/api/core/bitstreams/df220d26-2602-4203-ad95-77be4647e427/content).
Soil water balance
Simulation of crop development and production
A - Crop development
B - Crop transpiration
C - Above-ground biomass (B)
D - Crop yield (Y)
Biomass water productivity (wp) and yield water productivity (WPy)
To monitor the soil water content in the root zone (Wr) and the attached soil water stress, the soil water balance is updated at each time step. The root zone can be seen as a reservoir, with several thresholds. They represent when the canopy expansion growth slows down (1), when the transpiration decreases (stomata closure) (2) and when it triggers early canopy senescence. The lower the water content (Wr), the stronger the water stress.


Figure 2.4 (from the FAO presentation), describes a summarized overview of the water balance variation through different mechanisms. Capillary rise and Deep percolation are movements with the deeper zones, depending on the water level itself.
Surface runoff is dependent on the steepness of the field, it represents the water that slides along the surface rather than infiltrate the ground.
Finally, the field capacity (often noted theta_fc) is the maximum water volume a field can contain (in mm/m), and the wilting point is the minimum water volume required for allowing plants not to wilt.
To improve accuracy, the soil is not described as a single layer but rather in several sub-layers, each with different parameters (capacity, wilting point, porosity). As HydroSoil data provides information up to 2 meters, when the root is deeper, with extrapolate with the same value as the deepest data points.
The crop production is simulated across four steps, that run consecutively at each daily time step:
Development of the green Canopy Cover (CC)
Crop transpiration (Tr)
Above-ground biomass (B)
Crop yield (Y)
Each step is detailed below.
AquaCrop uses the green canopy cover (CC) to monitor the foliage development rather than the common Leaf Area Index (LAI). The green canopy cover represents the fraction of the soil surface covered by the canopy, from zero (0% of the soil covered by the canopy) to a maximum value (CCx) that represent the full canopy cover (can be 100% or lower).
Under non-limiting conditions (no stress, favorable weather, rich soil), the canopy development follows an exponential curve in the first half and then an exponential decay. At mid-season, the maximum canopy cover is reached and CC remains constant. In the end of the season, the green canopy cover decreases due to senescence.


When running a simulation under real conditions, the canopy development can differ due to limiting conditions. By adjusting the soil water content daily, when it drops below the canopy expansion threshold, the canopy growth will slow down and can stop completely when the water stress becomes too strong. If the stress is too strong, the early senescence can be triggered and might result in a smaller canopy size (never reach CCx).
At planting, the rooting depth is minimal, and then in a well-watered soil, the root zone will expand until the maximum effective rooting depth is reached (crop specific). If water stress affects stomatal closure, the root zone expansion will also slow down. Another limitation can also be the low penetrability or a sub-soil with dry conditions.
Both developments (green canopy and root system) are simulated as functions of time. In our case, the growing degree days (GDD) are used, they respresent the heat units (°C) accumulated during the day to adjust the expansion (resp. deepening) of the systems. It requires a crop base temperature, under which no heat units can be accumulated and, consequently, growth is stopped.
Under well-watered conditions, crop transpiration (Tr) is proportional to CC but with small adjustments. The adjusted green canopy cover (CC*) is used to compute the transpiration. The proportional factor is a basal crop coefficient (Kc_Trx) for full canopy cover (CC=1). When there is not stress-induced stomata closure, crop transpiration (Tr_pot) is calculated by multiplying the reference evapo-transpiration (ET_0) with the term [Kc_Trx CC*] - this term is proportional to the canopy cover and varies through life cycle of the crop. As a reminder, ET_0 is a measure of the evaporative demand of the atmosphere and determines the rate of crop transpiration and soil evaporation.
Water stress also affect crop transpiration through stomatal closure, resulting in reduction of the crop transpiration. Moreover, deficient aeration conditions in waterlogged root zones affect transpiration. These different events are simulated by multiplying Tr_pot with various stress coefficients (Ks). When a stress starts, the corresponding Ks becomes smaller than one (and can reach zero under extreme stress).


It is crucial to separate crop transpiration (Tr) and soil evaporation (E) from the merged evapo-transpiration (ET) when focusing on the crop growth.


It is crucial to separate crop transpiration (Tr) and soil evaporation (E) from the merged evapo-transpiration (ET) when focusing on the crop growth.
When the plant stomata are open, green plants take carbon dioxide (CO2) from the atmosphere, transport it internally from the stomata to the leaves. Meanwhile water vapour (H2O) is removed from the leaves by transpiration through the stomata. In the plant, C02 is converted to carbohydrates by photosynthesis in the presence of sunlight; those are essential for the plant biomass (root, leaves, flowers, fruits). In AquaCrop, the biomass production (B) is proportional to the cumulative amount of water transpired (\sum Tr). The proportional factor is the biomass water productivity (wp), which is then normalized (wp*) for variations in evaporative demand (ET_0).
AquaCrop simulates the above ground biomass (B), which integrates all photosynthetic products assimilated by the crop during the season. By adding a Harvest Index (HI), which represents the fraction of B harvestable, crop yield (Y) is obtained as the product [B HI]. Water and temperature stresses during the growing cycle can affect HI from its reference value (HI_0). This adjustment of HI will vary, depending on the timing within the crop cycle of the stress.


The reference harvest index (HI_0) can be adjusted, either upward or downward, depending on the phase when the stress happens. In any case, the stress will cause a decrease of the final production. A higher HI_adj will mean that the biomass converted into yield will be higher, but this biomass will be lower than the non-limiting conditions biomass.
The pollination plays a major role in this process, as it will strongly determine the yield that can be converted, no pollen implies no fruit/seed.
A distinction is also important between biomass water productivity (w_p) and yield water productivity (WP_y):
w_p refers to the amount of biomass that can be obtained with a certain quantity of water transpired (by the crop)
WP_y is the ratio of crop yield to evapo-transpiration.
Both are expressed in kg/m3, but the second ratio is the most relevant in our case as it is easier to monitor and to link directly water balance to expected returns of a parcel (so a good indicator of performance). AquaCrop effectively uses WP_y to identify environments and management strategies under which the yield per unit of water consumed can be maximized.
WP_y can also be optimized by reducing the soil evaporation, with mulches or by switching to a drip irrigation which avoids the soil surface.




Where:
ET_0 - reference evapotranspiration [mm/day]
R_n - net radiation at the crop surface [MJ/m²/day]
G - soil heat flux density [MJ/m²/day]
T - mean daily air temperature at 2 m height [°C]
\delta - slope vapour pressure curve [kPa/°C]
u_2 - wind speed at 2 m height [m/s]
e_s - saturation vapour pressure [kPa]
e_a - actual vapour pressure [kPa]
e_s - e_a - saturation vapour pressure deficit [kPa]
\gamma - psychrometric constant [kPa/°C]
ET_0 does not directly account for crop species, growth stage, rooting depth or soil-water stress: these effects are represented separately through crop and stress coefficients in AquaCrop detailed in the next sub-sections.
Irrigation
The irrigation is a key factor to optimize a crop culture, it helps sustain growth and crop health especially during long drought and hot summers. However, it became a precious ressource in our changing climate and restrictions are occurring more frequently with time. It is therefore essential to monitor the irrigation to minimize the amount of water necessary for maximizing the yield return, and to focus on optimal timing.
In France, irrigation is not systematic but rather a great tool for hot and dry regions. According to Agreste, more than 75% of the irrigation in France is dedicated to maize. Because it requires extensive humidity during the flowering, which occurs in June-July, and then for filling the grains.


Irrigation also requires tools to cover the fields, being able to irrigate when necessary, its cost is important and infrastructure is not always allowing for that.
We present several irrigation types, that are commonly used for the parcels in France:
Hose-reel irrigator / travelling gun (A)
Centre-pivot irrigation (B)
Linear-move irrigation (C)
Hose-reel boom irrigation (D)
Solid-set sprinkler irrigation (E)
Drip irrigation (F)




In our case, regarding Guide and Billac parcels, we are considering the following:
Billac:
Type: Pivot
Range: 20-40 mm
Frequency: 7 days
Guide:
Type: Sprinkler
Range: 0-30mm
Frequency: 3 days minimum
Note that we also structured our pipeline to register every irrigation log that happened previously (the past, for the current season represents what happened since planting date, and for past seasons is all the logs that occurred). To summarize this information, the plot below shows, across the 2025 season, the irrigation realized by the farmer for each system:


2025 season overview
The 2025 retrospective compares the irrigation recorded on each parcel with a counterfactual simulation in which the same crop was grown without irrigation. The non-irrigated scenarios do not represent observed fields; they are used to estimate how the season might have developed under rainfall alone. Differences between Billac and Guide should therefore be interpreted as the combined effects of planting date, cultivar, local weather, soil properties and irrigation management, rather than as a direct comparison of soil quality alone.
Guide was planted earlier and accumulated growing degree days slightly faster, resulting in earlier canopy development and maturity than at Billac. Irrigation had relatively little influence on the simulated rooting depth, particularly during the first part of the cycle. In AquaCrop, this variable represents the modeled effective rooting depth, which is driven mainly by thermal development and crop parameters; it should not be interpreted as a direct observation of root length or root density. The effect of irrigation is much clearer in the canopy trajectories. Both irrigated crops reached nearly complete canopy cover and maintained it until normal senescence, whereas the non-irrigated crops underwent rapid early senescence around the flowering and yield-formation period. AquaCrop represents water stress through separate effects on canopy expansion, senescence, root deepening, transpiration and harvest-index formation.






This difference in crop development translated into a major production response. At Billac, simulated dry yield increased from 1.21 t/ha without irrigation to 13.75 t/ha with irrigation, while at Guide it increased from 2.31 to 14.39 t/ha. Irrigation therefore contributed approximately 12.5 t/ha at Billac and 12.1 t/ha at Guide. The biomass response was substantial but less pronounced: final biomass increased from 13.2 to 29.2 t/ha at Billac and from 15.7 to 30.6 t/ha at Guide. The fact that yield declined much more strongly than biomass in the non-irrigated scenarios indicates that the shortage affected not only vegetative growth but also the conversion of biomass into harvested grain. This is consistent with severe water stress occurring during sensitive reproductive phases, when AquaCrop can reduce pollination and the adjusted harvest index.
Rainfall was concentrated mainly during the first part of the growing season and was insufficient to maintain favourable root-zone conditions through summer. Without irrigation, both parcels approached a root-zone depletion of 84% of total available water. Billac experienced 28 days with reduced transpiration and Guide 30 days, with minimum actual-to-potential transpiration ratios of approximately 0.46–0.47. Irrigation removed this simulated transpiration limitation entirely and increased seasonal transpiration by about 227 mm at Billac and 211 mm at Guide. The recorded irrigation schedules therefore made the difference between early crop failure and yields close to the simulated potential.
The two parcels nevertheless responded differently in terms of water use. Billac received 415 mm of irrigation and produced 13.75 t/ha, while Guide received 520 mm and produced 14.39 t/ha. Guide consequently used 105 mm more irrigation for an additional irrigated yield of only 0.64 t/ha. The difference is also visible in drainage: simulated deep percolation reached approximately 52 mm at Billac and 154 mm at Guide under irrigation. These results suggest that part of the additional water supplied to Guide was not converted into crop transpiration and instead drained below the modeled soil profile. This does not by itself prove that the parcel was over-irrigated, because drainage also depends on rainfall timing, initial soil water, hydraulic properties and changes in profile storage. It nevertheless indicates that Guide offers the greatest potential for improving irrigation timing or reducing individual applications while maintaining a yield close to its potential.
Overall, the 2025 simulations indicate that irrigation was essential for both parcels, but that eliminating all water stress did not require the same volume of water. Billac reached 99.3% of its potential yield with less irrigation and substantially less deep percolation, whereas Guide reached 99.7% of its potential yield with a larger water input. The next step is therefore not simply to reproduce the 2025 schedules, but to identify the lowest irrigation volume and the most effective application dates capable of preserving most of the attainable yield.
However, one should keep in mind that the model does not explicitly represent all field constraints, such as pest and disease pressure, nutrient limitations, soil compaction or within-parcel heterogeneity.






2026 partial season overview






We now move to the current year (2026) for two reasons:
to check the crop growth stage and the consistency of the results with the farmer,
to compare the season to recent years.
This year has been particularly hot in France, with several heatwaves installed for weeks, and the first one in May that broke the old records. Consequently, the water reserves have been considerably used, earlier than past year and to a larger extent, pushing some areas to experience severe wildfire and drought. We present similar plots to the 2025 retrospective with a comparison to the 2013-2025 climatology (better for percentiles).
Biomass production is correspondingly high despite relatively limited rainfall.
Earlier canopy closure has allowed both crops to intercept radiation and transpire efficiently for a longer accumulated period, resulting in biomass accumulation above the historical 25%-75% range, and close to the no-water-stress reference. At the current comparison date, simulated dry yield has reached approximately 8.0t/ha at Billac and 9.2 t/ha at Guide, compared with historical medians of 3.1 and 3.8 t/ha respectively at the same crop age. These values should be interpreted as yield accumulated by the current stage of development rather than as final harvest yields; part of the difference reflects how phenologically advanced the 2026 crops are. At the same time, cumulative rainfall has been below its historical benchmark since beginning of June. Irrigation has therefore played an important role in sustaining this accelerated development and the associated high transpiration demand rather than simply compensating the visible crop stress.
The root-zone water balance shows that irrigation has so far prevented physiological water stress, although the two parcels behave differently.
Billac repeatedly depleted around 40-50% of its available root-zone reserve during June and early July, making it substantially drier than the climatology at several points. This nevertheless remained well below the dynamic AquaCrop threshold at which stomatal closure would begin, so depletion of the reserve should not itself be interpreted as crop stress. Irrigation repeatedly restored the reserve before that physiological threshold was reached. Guide remained generally wetter after irrigation and moved above field capacity during the later part of the period, indicating some recent irrigation and precipitation. This is best interpreted as potential scope for reducing or delaying late applications, rather than evidence that the complete irrigation strategy was excessive: cumulative deep percolation remains well below its history, especially for Guide (remind that Guide has good deep percolation compared to Billac), while transpiration is substantially higher than usual. The 2026 management has therefore successfully supported an unusually demanding crop, with the main optimization opportunity appearing in the timing and volume of the latest Guide applications.


Crop development - 2026 is markedly ahead of the historical reference.
The 2026 season has accumulated thermal time (GDD) faster than the historical benchmark for both parcels, with Guide developing slightly earlier than Billac (due to seeding date). This translates directly into faster root development and substantially earlier canopy establishment: both crops reached near-maximum canopy cover almost 2 weeks earlier than the median scenario. The difference therefore appears primarly phenological rather than stress-driven. By the 3rd week of June, both parcels had already developed maximum canopy cover, while a typical year would still need canopy expansion. The same acceleration is visible in rooting depth, also ahead of the median for most of the season. Overall, the elapsed part of 2026 can be characterized as a rapid-development season, particularly for Guide, without evidence of meaningful water limitation during canopy establishment.




Forecast integration
Knowing the current water status of a crop is only the first part of the problem. Irrigation decision is necessarily forward-looking:the amount of water required today depends not only on what happened during the previous weeks, but also on what is expected to happen during the following days. Weather prediction, however, does not contain the same type of information at every forecast horizon. Predicting whether it will rai tomorrow is fundamentally different from estimating whether the coming August is likely to be warmer or drier than usual.
IrriGator therefore combines three forecasting systems, each used at the temporal scale for which its information is most useful:
AROME: deterministic short-range forecast, from today to approximately 48 hours;
IFS ENS: probabilistic medium-range forecast, from 48 hours to 15 days;
SEAS5: seasonal information used from the end of the medium-range forecast to several months ahead.
Because these forecast are introduced, AquaCrop has already reconstructed the crop and soil state from plating to the current day using the historical weather archive and the recorded irrigation history. Forecast trajectories are then appended to this common initial state and propagated through AquaCrop.
The objective is therefore not simply to produce weather forecasts. It is to translate meteorological uncertainty into possible future trajectories of soil water content, crop development, biomass and ultimately harvest dry yield.
AROME - 0 to 48 hours
For the first two days, IrriGator uses AROME, the high-resolution numerical weather prediction model developed by Météo-France for short-range forecasting over metropolitan France.
AROME operates at a horizontal resolution of approximately 1.3 km, allowing it to represent local effects associated with topography, convection and other small-scale meteorological processes more explicitly than larger-scale global forecasting systems.
A numerical weather prediction model starts from an estimate of the present atmospheric state, constructed using meteorological observations and data assimilation, and numerically solves equations describing the evolution of the atmosphere. In IrriGator, AROME provides the meteorological variables required to derive AquaCrop forcing, including temperature, precipitation, atmospheric humidity, solar radiation and wind.
This part of the pipeline is deterministic: one meteorological trajectory is used rather than an ensemble of possible futures. The 0-48 hour period is therefore treated as the most detailed part of the forecast horizon, but not as perfectly known. AROME can still misplace rainfall, over- or underestimate precipitation, or incorrectly represent local conditions. Its advantage is that forecasts close to the present contain enough temporal and spatial information for individual weather events to directly influence an irrigation decision.
For example, if significant rainfall is expected tomorrow, irrigation planned immediately before it may be reduced or delayed.
IFS ENS - 48 hours to 15 days
Beyond the first two days, forecast uncertainty becomes increasingly important. IrriGator therefore switches from a deterministic weather trajectory to the ECMWF Integrated Forecasting System ensemble (IFS ENS). An ensemble forecast does not attempt to describe the future using a single simulation. Instead, several simulations are performed from slightly different representations of the atmospheric initial conditions and model uncertainty.
The ECMWF medium-range ensemble currently consists of 51 forecasts: one initial control forecast and 50 perturbed members, with a horizontal resolution of approximately 32 km and a forecast horizon extending to 15 days.
If the atmospheric evolution is relatively predictable, the members tend to remain close to each other. When predictability decreases, they progressively diverge. The ensemble spread therefore contains useful information about forecast uncertainty. IrriGator keeps these meteorological trajectories separate. Each ensemble member is independently propagated through AquaCrop, for each ensemble member m:
This distinction is important because AquaCrop is nonlinear. Averaging precipitation, temperature and radiation across the 51 meteorological members before running AquaCrop would generally not produce the same result as running 51 crop simulations and then studying their distribution. For example, two scenarios containing the same total rainfall can produce very different crop responses if one contains several small rainfall events while the other contains one large storm followed by a dry period.
The output is therefore probabilistic. Instead of stating that the crop will experience a given water deficit ten days from now, IrriGator can estimate how frequently this situation occurs across plausible meteorological futures and whether it produces a meaningful difference in projected harvest yield.
SEAS5 - 15 days to several months
After approximately two weeks, interpreting forecasts as individual-day resolution becomes increasingly difficult. Seasonal forecasts are instead designed to provide information about larger-scale conditions averaged over weeks or months. For this horizon, IrriGator uses SEAS5, the ECMWF Seasonal Forecasting System.
SEAS5 is produced every month as a 51-member ensemble at 1°x1° resolution and extends several months into the future. Its purpose is not to predict the exact weather on a particular day several months ahead, but rather to estimate the probability of broader atmospheric and oceanic conditions. This creates a problem for a crop model: AquaCrop operates at daily resolution, whereas the information we trust from SEAS5 at these lead times is mainly monthly.
IrriGator therefore uses SEAS5 to condition plausible daily weather scenarios, rather than interpreting its long-range daily chronology literally.
Bias correction
Seasonal numerical models have systematic biases. Before searching for historical analogues, each SEAS5 forecast is therefore corrected using the difference between the historical climatology of SEAS5 retrospective forecasts and the corresponding ERA5 climatology. These retrospective forecasts, or hindcasts, consist of past forecasts produced with the same forecasting system. They allow systematic differences between the model climate and the observed/reanalysed climate to be estimated. C3S seasonal products provide a common reforecast period covering at least 1993-2016 for this purpose.
For temperature-like variables, the correction is approximately additive:
while positive accumulated variables such as precipitation are more naturally corrected multiplicatively. The result remains a SEAS5 forecast, but expressed relative to the ERA5 climatological reference used elsewhere in IrriGator.
France-wide climatic representation
The next step is to describe the complete meteorological state of each month. Several covariates are considered together, including temperature, precipitation, humidity, radiation and wind. Their France-wide spatial fields are first standardized so that variables measured in different units do not dominate the comparison simply because of their numerical scale.
The resulting information is still extremely high-dimensional: one month is represented by several variables over every grid point covering France. Principal Component Analysis (PCA) is therefore used to compress this information. Conceptually:
Each historical ERA5 month becomes one point in this reduced climatic space. The PCA is performed at France level, rather than independently for every parcel or grid cell. This allows the large-scale spatial configuration of a month to participate in the analogue section. For example, two Augusts with similar average rainfall over France may nevertheless be very different if rainfall was concentrated in the South-West during one year and in northern France during the other. Their positions in the multivariate PCA space can reflect these broader differences.
Historical analogue selection
Each bias-corrected SEAS5 ensemle member is transformed using exactly the same standardization and PCA projection. A forecast August therefore receives coordinates in the same climatic space as all historical ERA5 Augusts. Distances between the forecast and historical months can then be calculated:
where m represents a SEAS5 ensemble member, and y a historical year.
Rather than assuming that one historical month is the uniquely correct analogue, several of the closest months can be retained, with closer analogues receiving a larger sampling probabilities. This adds another useful source of uncertainty: SEAS5 constrains the expected monthly climate, while several plausible historical daily sequences can remain compatible with that same monthly state.
Reconstruction of daily weather
Once an analogue month has been selected, its historical daily ERA5 sequence provides a physically coherent chronology of weather. It determines, for example:
which days are wet or dry;
how rainfall events are clustered;
the succession of warm and cooler periods;
day-to-day changes in radiation and atmospheric evaporative demand.
However, the analogue month is not copied directly. Its daily sequence is adjusted so that its monthly characteristics reproduce the corresponding bias-corrected SEAS5 forecast. For precipitation, if an historical analogue contains daily precipitation (P_d), the sequence can be rescaled approximately with:
The analogue therefore determines when rainfall occurs, while corrected SEAS5 constrains how much rainfall the month contains overall. Temperature is treated differently: the daily variations of the analogue can be retained while an additive adjustment shifts its monthly mean toward the corrected SEAS5 target.
Equivalent variable-specific transformations are applied to the other meteorological covariates. There is one additional constraint at the transition between IFS and SEAS5. If the 15-day IFS forecast ends halfway through a calendar month, the seasonal reconstruction only receives the remaining monthly budget. Precipitation already predicted during the AROME/IFS part of the month is therefore not added a second time. The final result is not a deterministic daily weather forecast several months ahead. It is an ensemble of plausible daily meteorological scenarios conditioned on the seasonal forecast. These scenarios can then be propagated through AquaCrop exactly like the shorter-range forecasts







Irrigation optimizer
The purpose of IrriGator is not to maintin crop permanently free from water stress. A crop can experience soil-water depletion, or even limited physiological stress, without necessarily producing a meaningful reduction in final harvest yield. Conversely, systematically irrigating before every stress indicator appears would tend to maintain unnecessarily wet soil and can increase drainage losses.
Water stress is therefore treated as in intermediate physiological mechanism, not as the quantity to optimize. The final objective is crop production. For an irrigation strategy (\pi), composed of irrigation dates and amounts, IrriGator seeks approximately to solve:
while requiring simulated dry yield to remain sufficiently close to an attainable reference yield. For an ensemble forecast, this constraint becomes probabilistic:
where:
q_i is the amount of irrigation applied during event i;
Y_m(\pi) is final dry yield under weather scenario m;
Y_m^ref is the attainable yield under the same meteorological scenario when water is not limiting;
\epsilon is the acceptable relative yield loss;
p is the required proportion of meteorological scenarios satisfying the constraint.
Using a separate reference yield for every weather scenario is important. If a particular ensemble member contains severe heat or poor radiation conditions, irrigation should not be expected to compensate for yield losses that are unrelated to water availability. The question is therefore not: how much water is required to prevent stress? But rather: what is the smallest amount of irrigation required to preserve almost all of the attainable yield?
Retrospective optimization - how much water could have been saved?
The first application investigates irrigation that has already occurred. For a completed season such as 2025, the recorded irrigation dates are kept fixed. Only the quantity applied at each event is allowed to change:
where q_i = 0 means that an irrigation event could have been completely omitted. IrriGator first runs AquaCrop using the irrigation schedule that actually occurred and records the corresponding simulated final dry yield.
It then progressively reduces or removes individual irrigation amounts and reruns the crop simulation. A reduction is accepted only if the resulting final yield remains within the selected tolerance of the reference yield. This process continues until further water savings would create an unacceptable yield reduction. The resulting comparison directly answers: Given the irrigation dates that the farmer actually used, how much less water could have been applied while obtaining essentially the same simulated harvest?
Several yield tolerances can also be tested. Instead of reporting only one optimum, this produces a water(saving frontier showing, for example, the irrigation savings associated with tolerating 0%, 1% or 2% simulated yield loss. There is an important interpretation associated with this retrospective result. For a completed season, the optimizer already knows the weather that occurred after every irrigation decision. It therefore has perfect hindsight. The resulting water saving should consequently be interpreted as a best-case or perfect-information benchmark: it estimates the maximum saving that the model identifies retrospectively, not the exact saving that could necessarily have been achieved operationally using forecasts available at the time. This is precisely why comparing this result with the real-time optimizer described below is useful.
Operational optimization - what should be done next?
The second application is the real decision-support problem. Every day, IrriGator first reconstructs the current crop state using all weather and irrigation information available up to the present. The complete forecast pipeline is then attached:
These meteorological trajectories are propagated through AquaCrop to estimate the consequences of future irrigation decisions.


The ongoing 2026 season
The same idea can be applied before the season has finished, but final yield has not yet been observed or fully simulated from known weather. Past irrigation alternatives can still be compared by reconstructing the crop up to today and then continuing every counterfactual strategy with exactly the same future meteorological scenarios. For example: actual past irrigation + future scenario m can be compared with reduced past irrigation + the same future scenario m.
Differences in the resulting yield distribution can therefore be attributed to irrigation already applied rather than to different assumptions about future weather. Canopy cover, biomass, transpiration and soil-water status remain useful diagnostics, but final projected dry yield stays the optimization target.







Step 1 - simulate doing nothing
The optimizer first assumes that no additional irrigation occurs. This is important: irrigation is introduced only when the model provides evidence that it is needed. For each future weather scenario, AquaCrop simulates soil-water depletion, crop stress, biomass and final dry yield. If the yield constraint remains satisfied across a sufficiently large fraction of scenarios, the recommendation is simply: Do not irrigate yet.
Step 2 - locate the first relevant intervention window
If the no-irrigation simulation produces an unacceptable risk of yield loss, the optimizer examines the crop trajectory to determine when the problem begins. AquaCrop water-stress coefficients are useful at this stage, but only as event detectors. For example, they can identify when root-zone depletion begins to reduce transpiration, accelerate senescence or otherwise affect crop development.
The optimizer therefore uses physiological stress to locate a small region of the forecast horizon in which irrigation may become relevant, rather than blindly evaluating every possible irrigation day. The proposed irrigation is positioned shortly before this yield-relevant deterioration while respecting the technical constraints of the parcel:
earliest possible intervention;
minimum interval between irrigations;
available irrigation days;
irrigation-system capacity;
minimum and maximum practical doses.
Step 3 - determine the smallest necessary dose
Once a candidate date has been identified, the irrigation quantity becomes a one-dimensional optimization problem. Instead of evaluating many arbitrary combinations such as 10, 20, 30 and 40 mm across every possible date, IrriGator can search between:
for the smallest dose that restores the yield constraint. A water-balance calculation can provide an initial estimate, but the final quantity is determined by rerunning AquaCrop. Forecast precipitation therefore does not simply enter through a rule such as:
Its value depends on when rainfall occurs, current root-zone depletion, crop demand, soil storage capacity and potential drainage. Because all these processes are already represented in AquaCrop, the optimizer lets the crop model determine how much of the predicted rainfall actually substitutes for irrigation.
Step 4 - search for the next event
After the first irrigation has been added, the optimizer again simulates the future assuming no additional irrigation after that event. If yield remains protected for the rest of the relevant horizon, optimization stops. Otherwise, the next yield-relevant deterioration is identified and the same procedure is repeated. The algorithm therefore constructs the irrigation plan sequentially:
This is considerably more efficient than generating thousands of arbitrary combinations of irrigation dates and quantities.
Step 5 - repeat tomorrow
The resulting schedule is not considered definitive. Weather forecasts change, rain may occur at a different location or intensity than expected, and the simulated crop state evolves every day. IrriGator therefore follows a receding-horizon approach: the complete optimization is rerun every day using the newest observations and forecasts.
Only the nearest irrigation is considered as an operational recommendation. Later events are provisional indications of when additional water may become necessary. To avoid an impractical situation where an irrigation scheduled for tomorrow is repeatedly moved as forecasts fluctuate, a short commitment horizon can also be introduced. Within approximately two days of an already planned intervention, its date can remain fixed while its quantity is updated according to the latest forecast.
If newly expected rainfall makes the irrigation genuinely unnecessary, cancellation can still remain possible. The purpose is finally not to predict the complete irrigation calendar months in advance. It is to repeatedly answer a much simpler question: Given the crop state and all weather information available today, what is the smallest irrigation decision that safely preserves expected harvest yield?


