Skip to content

jbbremnes/pangu-asr

Repository files navigation

Post-processing of Pangu-Weather and NWP models

The repository contains Julia source code for the arXiv article Evaluation of forecasts by a global data-driven weather model with and without probabilistic post-processing at Norwegian stations.

Installation

To setup the environment clone the repository, instantiate the julia project and download the data

git clone [email protected]:jbbremnes/pangu-asr.git
cd pangu-asr
mkdir data         # could also be symbolic link to a directory for the data
mkdir data/plots
julia --project=./ 'using Pkg; Pkg.instantiate()'
cd data
wget https://zenodo.org/records/10210204/files/nwp+obs.jld2?download=1

Data

The data is comprised of temperature (2m) and wind speed (10m) observations at 183 Norwegian synop stations and corresponding forecasts generated by the following models

  • Pangu-Weather
  • ECMWF HRES
  • ECMWF ENS reforecast
  • MEPS
  • ECMWF ENS reforecast control member
  • MEPS control member

The data is stored in a single JLD2 file and can be read in Julia by

julia> using JLD2, DataFrames

julia> JLD2.@load "data/nwp+obs.jld2"
2-element Vector{Symbol}:
 :data                      # vector of 6 data frames each with 1_223_264 cases
 :models                    # names of the 6 models

julia> models
6-element Vector{String}:
 "pangu"
 "hres"
 "ens"
 "meps"
 "ens0"
 "meps0"

For further processing the data file should be located in the ./data directory.

Training and forecast verification

BQN models can be trained separately for parameter and forecast model from the pangu-asr directory by

julia --project=./ train.jl t2 60 pangu
julia --project=./ train.jl t2 60 hres
julia --project=./ train.jl t2 60 ens
julia --project=./ train.jl t2 60 meps
julia --project=./ train.jl t2 60 ens0
julia --project=./ train.jl t2 60 meps0
julia --project=./ train.jl ws10 60 pangu
julia --project=./ train.jl ws10 60 hres
julia --project=./ train.jl ws10 60 ens
julia --project=./ train.jl ws10 60 meps
julia --project=./ train.jl ws10 60 ens0
julia --project=./ train.jl ws10 60 meps0

For each parameter/forecast model combination 3×3 BQN models are trained. The training takes about 4 hours in total.

Verification statistics can be computed by

julia --threads=auto --project=./ verification.jl

and plots by

julia --project=./ plots.jl

About

Post-processing of Pangu-Weather and NWP models

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages