Climate downscaling with likelihood functional flow matching
Authors: Zhi-Song Liu, Helmi Toropainen, Ammar Kheder, Michael Boy
Organizations: Department of Computational Engineering, LUT University, Lappeenranta, Finland. · Institute for Atmospheric and Earth System Research (INAR), University of Helsinki, Helsinki, Finland. · Atmospheric Modelling Center, Lahti (AMC-Lahti), Lahti, Finland.
Decisions about heat, frost and flooding are made locally, yet reanalyses and climate models resolve tens of kilometres. Generative downscalers add kilometre-scale detail with uncertainty, but are tied to a grid, costly to sample and lack a tractable likelihood. Here we introduce CD-FFM, a functional flow-matching model that treats the high-resolution field as a continuous random field that one model can query at any location and resolution. Its velocity acts pointwise, so spatial variability comes from a noise prior fitted to the observed spectrum and every observation has an exact likelihood. Downscaling ERA5 to 1 km daily temperature over Fennoscandia, CD-FFM lowers the continuous ranked probability score by 27-31% against regression and 12-18% against a forty-times larger neural operator in each of three test years, and outperforms a CorrDiff-style diffusion model while sampling about fifty times faster. The same model transfers to precipitation and makes large kilometre-scale ensembles affordable.
Figures & tables
Figure 1: CD-FFM downscales by querying a random function of location. a , The ERA5 fields of one day (TG, TX, TN and RR at 0.25 ∘ ) are encoded once into a coarse feature field. Any set of query locations s — a regular grid at any resolution, a finer grid or scattered points such as stations — is read from it by a continuous query that combines the four surrounding cells with the sub-cell offset, the static descriptors of the local climate at 1 km and the day of year, giving a condition c(s) . b , At each location, a small network vθ(x,c(s),t) transports the noise value z(s)∼N(0,1) at flow time t=0 into the predictive distribution p(y∣c(s)) at t=1 . Streamlines and light arrows show the exact flow-matching velocity for a one-dimensional predictive distribution shaped like that of the daily minimum temperature at a pixel near Tromsø on 15 January 2019, with the intermediate densities at t=1/3 and 2/3 in light colours; bold paths are three ensemble members. Integrating the same ordinary differential equation backwards from an observation y(s) (star) to x0 gives its exact likelihood. c , Each member m starts from its own draw z(m)(s) (coloured lines to t=0 in b ) of a Gaussian random field whose power spectrum is fitted to the observations (8–500 km). Because the velocity cannot move information between locations, this field sets the texture of the sample; i.i.d. noise would be too rough and a smooth radial-basis-function (RBF) field blotchy. d , Outputs for 28 July 2019: three 1 km samples of daily mean temperature (frames coloured as the members in b and c ), one sample queried at 8, 2, 1 and 0.25 km, and the exact negative log-likelihood of the observed (TG, TX, TN) at every pixel, obtained with the exact trace of a 3 × 3 Jacobian rather than a stochastic estimator. Thumbnails in a show the ERA5 input and static descriptors of the same day.
Figure 2: CD-FFM turns one coarse ERA5 day into an ensemble of plausible 1 km temperature fields. a – d , Daily mean temperature (TG) on 28 July 2019, a summer day of the test year, over Norway, Sweden and Finland: ERA5 input at 0.25 ∘ ( a ), the mean of 16 CD-FFM samples ( b ), NGCD observations at 1 km ( c ) and the ensemble standard deviation ( d ). The square marks the 128 × 128 km region in western Norway enlarged in e – h . e – h , ERA5 input ( e ), two individual CD-FFM samples ( f , g ) and NGCD observations ( h ) in that region, a landscape of fjords, valleys and high plateaus around Sogndal. Samples are drawn with the distilled flow map in two steps.
Figure 3: A noise prior fitted to the observed spectrum reproduces the texture of the observations; standard priors do not. a , One sample of daily mean temperature minus its box mean in a 128 × 128 km box of flat terrain in northern Finland on 15 January 2019 (top) and of mountainous terrain in western Norway on 28 July 2019 (bottom): NGCD, the regression network and CD-FFM trained with five noise priors that differ in nothing else (i.i.d., RBF, and power laws over 2–500, 8–500 and 20–500 km; blue frame, final configuration). The number in each panel is the pixel-scale roughness (mean absolute deviation from the 3 × 3 median). b – d , Power spectrum of one sample divided by that of NGCD for TG ( b ), TX ( c ) and TN ( d ), averaged over every seventh day of 2019 (53 days) in a 512 × 512 km box in southern Norway and Sweden; the shaded band marks agreement within a factor of two, and arrows mark the i.i.d. prior leaving the axis (13–47 times the observed power at 2 km). e , Pixel-scale roughness relative to NGCD in flat and mountainous terrain: dot, mean over 15 January, 28 July and 6 November 2019; bar, range over the three days. NGCD roughness on these days is 0.046, 0.031 and 0.030 ∘ C in flat terrain and 0.59, 0.40 and 0.32 ∘ C in the mountains.
Model
Params
CRPS ( ∘ C) ↓
RMSE ( ∘ C) ↓
Spread/skill ( → 1)
TG
TX
TN
TG
TX
TN
TG
TX
TN
Generative models, every day, 16 members
FNO flow
124M
1.195
0.639
0.837
1.90
1.08
1.49
0.17
0.28
0.27
CD-FFM, 10 Euler steps
3.2M
1.034
0.530
0.699
1.97
1.05
1.48
0.51
0.61
0.59
CD-FFM, flow map
3.2M
1.008
0.522
0.689
1.97
1.06
1.49
0.61
0.75
0.72
Deterministic models, every day
Table 1: CD-FFM is the most skilful model on every probabilistic score. Test year 2019, all 1.33 million pixels, best validation checkpoint (chosen on 2017). CRPS: fair ensemble CRPS (equal to the mean absolute error for deterministic models). RMSE of the ensemble mean. Spread/skill: ensemble spread over RMSE of the ensemble mean (1 indicates calibration); Brier scores of extremes are given in Extended Data Table 3 . † Every seventh day of 2019 (55 days) with 8 members, because of the sampling cost of the diffusion model; these two rows are compared only with each other. Bold: best value among the models evaluated on every day, and the better model in the † block. Green: final CD-FFM configuration; blue: other CD-FFM samplers.
Figure 4: CD-FFM has the lowest probabilistic error almost everywhere and in every test year. a , Annual-mean fair CRPS at each 1 km pixel (mean of TG, TX and TN), test year 2019; the label gives the domain mean. b , CRPS of each baseline minus that of CD-FFM on the same days (blue: CD-FFM better), with the share of pixels at which CD-FFM is better, on each map and per variable in the table. c , CRPS reduction of CD-FFM relative to each baseline, 2016, 2018 and 2019 pooled (1,096 days): dot, estimate; bar, 95% paired moving-block bootstrap interval (7-day blocks; may be hidden by the dot); ticks, single test years; right, percentage of days on which CD-FFM is better. d , Seasonal CRPS pooled over the three test years (dots), with the range of the single-year values (bars). CD-FFM: flow map, two steps, 16 members. † CorrDiff-style model: every seventh day of 2019 (55 days), 8 members, paired with CD-FFM on the same days and with the same number of members (CD-FFM domain mean on those days: 0.76 ∘ C).
Figure 5: CD-FFM reproduces the hot and heavy-precipitation tails most faithfully, but its ensembles are too narrow on the most extreme days. a – c , Daily values at the 1 km pixel of one of eleven Nordic cities around the most extreme day of 2019, selected from NGCD alone: the highest daily maximum temperature (Helsinki, a ), the lowest daily minimum temperature (Kiruna, b ) and the largest daily precipitation (Bergen, c ); windows cover ± 21 days, and c ends on 31 December. Black, NGCD; blue, median and 25–75% and 5–95% ranges of 200 CD-FFM samples; red, regression; dashed, ERA5 (enclosing 0.25 ∘ cell for temperature, bilinear for precipitation); dotted, BCSD-style baseline. The grey column marks the event day; labels give the percentile of the observation among the samples on that day, and boxes the fraction of days on which the observation lies inside the 5–95% range (90% if calibrated). d , e , Quantiles of one sample per pixel-day minus those of NGCD, for the upper tail of the daily maximum ( d ) and the lower tail of the daily minimum temperature ( e ), pooled over 20,000 fixed land pixels and every day of 2019; shading shows 95% moving-block bootstrap intervals over days. f , Fraction of the same pixel-days with daily precipitation of at least x ; the legend gives the dry fraction ( <0.1 mm) and the dotted line marks the 99.9th percentile. g , Brier score of the ensemble probability of hot (above the local 95th percentile) and cold (below the 5th) days relative to the regression network, all pixels and days of 2019. † CorrDiff-style model: every seventh day of 2019 only (55 days).
Figure 6: The exact likelihood shows how surprising each observation is, and where non-Gaussian local distributions matter. a , Observed daily mean temperature on 28 July 2019 as a standardized anomaly. b , c , Negative log-likelihood (NLL) of the observed (TG, TX, TN) at every pixel on that day under CD-FFM (exact) and under the regression network with its most favourable Gaussian (residual covariance fitted on the test days); boxes give the domain means. d , Likelihood gain of CD-FFM over the Gaussian (Gaussian NLL minus CD-FFM NLL), averaged over every day of 2019; positive values mean that the observations are more probable under CD-FFM. The star marks the pixel of g . e , Gain against the deviation of the local climatological minimum temperature from the mean of its ERA5 cell (negative: sites colder than their cell, such as valley floors): median and interquartile range in 0.4 ∘ C bins, with the medians of the two shaded classes. f , Daily domain-mean gain over 2019 (grey) and its 15-day running mean (blue); dashed, annual mean. g , h , Predictive distribution of the minimum temperature on 15 January 2019 at the climatologically coldest ( g ; −6.6 ∘ C relative to the cell mean) and warmest ( h ; +5.0 ∘ C) pixel of the ERA5 cell with the largest local contrast, near Tromsø: 4,000 CD-FFM samples (histogram), the regression Gaussian (red) and the observation (dashed), with the probability of values at least as warm as observed.
Appendix figures & tables16 assets
Supplementary material from the paper’s appendix.
Appendix
Extended Data Fig. 1: One input, many plausible 1 km fields. a , Daily mean temperature on 28 July 2019 over the Nordic domain: ERA5 input, NGCD observations, five CD-FFM samples (flow map, two steps) and the mean of 16 samples. b , The same in the 128 × 128 km region in western Norway. The samples share the large-scale pattern set by ERA5 and differ in the local detail.
Extended Data Fig. 2: One sample at any resolution over the whole domain. a , ERA5 input and one CD-FFM sample (fixed noise realization) queried separately at 16, 8, 4, 2 and 1 km over the Nordic domain, with the number of points and the GPU time of each query (encoding, query and two flow-map steps). b , A 64 × 64 km box in western Norway (outlined in a ) queried at 4, 2, 1, 0.5 and 0.25 km, and NGCD at 1 km. Values at shared points agree to 2×10−5 ∘ C. Coarse grids are point values, not area averages, which is why they alternate between valley and mountain in steep terrain.
Extended Data Fig. 3: Generated samples reproduce the fjord and mountain structure of NGCD. Daily mean temperature on 28 July 2019 in two 128 × 128 km regions, western Norway ( a ) and the northern Scandes ( b ): NGCD observations, the regression network, and one sample each of the FNO flow and of CD-FFM with i.i.d., RBF and spectrum-matched (8–500 km) noise (all CD-FFM samples from the learned ODE with ten Euler steps, so that only the noise prior differs). Each generative panel is a single sample, whose departure from the observations includes the ensemble spread and any error of the ERA5 input that all methods share; the panels compare spatial structure, whereas accuracy is compared in Fig. 4 and Table 1 .
Extended Data Fig. 4: A distilled flow map is as skilful in one network evaluation as the ODE in twenty. a – c , CRPS of TG, TX and TN against the number of network evaluations per sample, for Euler integration of the learned velocity (red) and for the distilled flow map (blue). d , Spread/skill ratio for TG (1 indicates calibration). Every seventh day of 2019, 8 members.
Extended Data Fig. 5: CD-FFM is better calibrated than the FNO flow but still under-dispersed. a – c , Rank histograms of the observed TG, TX and TN among 16 members, 2019; the dashed line is the calibrated level.
Extended Data Fig. 6: CD-FFM draws information from a compact, location-specific region and reproduces the observed spatial dependence. a – d , Four target locations (star). Columns 1–2, likelihood influence maps ∣∂logp(y(s∗)∣ERA5)/∂ERA5∣ , summed over the four input fields and averaged over every 14th day of 2019, for CD-FFM and the FNO flow, normalized by their maximum (log colour scale); the dashed circle and the label give the radius holding 50% of the gradient mass; white line, land. These gradients are local sensitivities, not causal effects. Columns 3–5, one-point correlation maps of the daily TG anomaly at the target with every 1 km pixel over 2019: NGCD observations, one CD-FFM sample per day, regression.
Extended Data Fig. 7: The zero-noise ODE gives a smooth best estimate. a , Daily mean temperature on 15 January 2019 over the Nordic domain: ERA5 input, NGCD observations, the BCSD-style baseline, the regression network with the same architecture, the UNet regression stage of the CorrDiff-style baseline (tile-wise inference) and the zero-noise CD-FFM estimate. b , The same in a 128 × 128 km region in northern Norway around Tromsø. The zero-noise estimate is as smooth as the regression outputs and, over the test year, more accurate than both (Table 1 ); on this single day the regression network is closer to NGCD.
Extended Data Fig. 8: More training data helps up to about ten years. Fair CRPS on 2019 for models trained on the last 5, 10 and 15 years of the training period (2011–2015, 2006–2015 and 2001–2015), with RBF noise and without static descriptors, otherwise identical. Going from 5 to 10 years lowers CRPS by 6 and 4% for TX and TN; going from 10 to 15 years lowers it by less than 1%.
Extended Data Fig. 9: Precipitation texture can be corrected at sampling time. Daily precipitation on 1 January 2019 over the Nordic domain ( a ) and in a 256 × 256 km box in western Norway ( b ), log colour scale (grey: dry): NGCD; one sample with the trained noise band (8–500 km) and with coarser bands (25–500 and 75–500 km) used only at sampling time; the 16-member ensemble mean; and probability-matched means Ebert (2001) over the whole domain and over 256 km tiles. Per-pixel CRPS and Brier scores are the same for all three bands (2019, every seventh day). The tile-wise matching leaves seams and is not recommended.
Baseline B
Var.
A − B [95% CI] ↓
Relative ↓
Days A better ↑
Regression, same inputs
TG
−0.396 [ −0.416 , −0.369 ]
−28.2 %
96%
TX
−0.232 [ −0.239 , −0.224 ]
−30.6 %
100%
TN
−0.296 [ −0.311 , −0.280 ]
−29.9 %
100%
FNO flow (124M)
TG
−0.169 [ −0.190 , −0.149 ]
−14.4 %
79%
TX
−0.109 [ −0.115 , −0.103 ]
−17.2 %
97%
TN
−0.143 [ −0.149 , −0.135 ]
−17.1 %
99%
Appendix
Extended Data Table 1: The gains are significant and consistent across years. Paired differences in daily domain-mean CRPS ( ∘ C; A − B, negative favours A), pooled over 2016, 2018 and 2019 (1,096 days), with 95% moving-block bootstrap intervals (7-day blocks within years) and the fraction of days on which A scores better. A is the CD-FFM flow map (2 steps, 16 members). Every interval excludes zero. Blue: comparison with another CD-FFM sampler. † 2019 only, every seventh day (55 days), 8 members for both models.
Noise prior
CRPS ( ∘ C) ↓
Spread/skill ( → 1)
Log score ↓
TG
TX
TN
TG
(nats)
i.i.d.
1.037
0.536
0.700
0.50
4.65
RBF, 0.5 ∘ , 64 features
1.074
0.538
0.705
0.45
4.90
Power law, 2–500 km
1.022
0.534
0.698
0.51
4.67
Power law, 20–500 km
0.992
0.534
0.702
0.61
4.57
Power law, 8–500 km (final)
1.034
0.530
0.699
0.51
4.71
Appendix
Extended Data Table 2: Noise prior ablation. Same setup, only the noise differs; 2019, 16 members, 10 Euler steps. Log score: exact negative log-likelihood per pixel, joint over TG, TX and TN (every seventh day). Bold: best value; green: final configuration; blue: other priors.
Model
Hot ↓
Cold ↓
TG
TX
TN
TG
TX
TN
BCSD-style
0.0588
0.0317
0.0322
0.0428
0.0291
0.0358
Regression
0.0432
0.0246
0.0234
0.0280
0.0159
0.0248
FNO flow (124M)
0.0382
0.0212
0.0205
0.0243
0.0146
0.0222
CD-FFM
0.0330
0.0185
0.0171
0.0214
0.0119
0.0188
Appendix
Extended Data Table 3: Extremes. Brier scores for hot (above the local 95th percentile) and cold (below the 5th) events, 2019, 10 Euler steps for CD-FFM. Bold: best value; green: CD-FFM.
Setting
CRPS ( ∘ C) ↓
TG cell means ( ∘ C)
TG
TX
TN
vs NGCD ↓
vs ERA5
Consistency with the coarse field (10 Euler steps)
Unconstrained (reference)
1.092
0.531
0.704
1.61
1.88
Exact ERA5 cell-mean constraint
1.743
0.533
0.706
1.98
0.00
Exact, monthly debiased
1.682
0.533
0.711
1.92
0.59
Sampler (unconstrained)
Appendix
Extended Data Table 4: Inference-time studies. Every seventh day of 2019, 8 members, CD-FFM with Euler sampling unless noted. Cell-mean columns: mean absolute difference ( ∘ C) between daily 28 km cell means of the generated TG and those of NGCD or ERA5; the ERA5 column is a diagnostic rather than a score. Bold: best value; green: sampler used for the main results; blue: other settings.
Model
Held-out region ↓
Rest of domain ↓
TG
TX
TN
TG
TX
TN
Region never sampled in training
1.272
0.606
0.965
0.969
0.528
0.682
Trained on all pixels
1.305
0.580
0.901
1.004
0.525
0.677
Appendix
Extended Data Table 5: Generalization to an unseen region. CRPS ( ∘ C) in 2019 inside the held-out region (northern Fennoscandia, latitude ≥66.5∘ N and longitude ≥24∘ E) and in the rest of the domain. Bold: better of the two models; green: model trained on all pixels; blue: model that never sampled the region.
Setting
CRPS ( ∘ C) ↓
Change vs reference (%)
TG
TX
TN
TG
TX
TN
Reference: final configuration
CD-FFM (final configuration)
1.034
0.530
0.699
reference
FNO encoder (124M) instead of Flower
1.195
0.639
0.837
+15.6
+20.6
+19.7
Reference: power law over 2–500 km, with static descriptors
Power law 2–500 km, static descriptors
1.022
0.534
0.698
reference
Appendix
Extended Data Table 6: Component ablation. One change at a time against the matching reference; 2019, every day, fair CRPS ( ∘ C), 10 Euler steps, 16 members unless noted. The static-descriptor and noise rows use a reference with power-law noise over 2–500 km, the prior with which the model without descriptors was trained. Bold: best value within each block; green: final configuration; blue: other variants. ∗ 8 members.
Freq. bias ( → 1)
Brier score ↓
Model
CRPS ↓
RMSE ↓
Bias ( → 0)
> 0.1
> 10
> 20
> 0.1
> 10
> 20
ERA5, bilinear
2.207
4.26
+ 0.42
1.27
1.10
0.83
0.270
0.074
0.018
Regression
1.651
3.52
− 0.42
1.50
0.52
0.29
0.309
0.053
0.013
CD-FFM, zero-noise ODE
1.589
3.52
− 0.57
1.13
0.50
0.24
0.219
0.052
0.013
CD-FFM
1.174
3.51
− 0.07
1.09
0.94
0.79
0.161
0.042
0.011
Appendix
Extended Data Table 7: The same configuration transfers to precipitation. Test year 2019, all pixels; CD-FFM with 16 members; the regression model uses the same network. CRPS, RMSE and bias in mm day -1 . Frequency bias (1 = correct number of events) and Brier score of the event probability for daily totals above 0.1 mm (wet days), 10 mm and 20 mm. Bold: best value; green: CD-FFM; blue: its zero-noise estimate.
Deutsches Zentrum für Luft- und Raumfahrt (DLR), Institut für Physik der Atmosphäre, Oberpfaffenhofen, Germany · School of Computation, Information and Technology, Technical University of Munich, Germany · LEAP Center, Columbia University, New York, NY, 10027, USA +1