Skip to content

jellewisse/probability-forecast

 
 

Repository files navigation

Ensemble pdf creation for temperature

Build Status Code Health

Dependencies

Dependencies are included in requirements.txt. Install with pip install -r requirements.txt.

Additionally, one of the dependencies is not yet included in the PyPI for Python 3. Install it through:

pip install git+https://github.com/vanife/pyfscache

Running the program.

The program and ensemble can be configured by modifying config.ini.

Verification

  • Rank histograms
  • Skill scores
  • CRPS
  • QQ plot

Algorithms for single forecast hour

Assumptions

  • Temperatures can be modeled by Normal distributions
  • Ensemble members are equally likely to represent the observation a priori
  • The ensemble set behaves as a randomly selected sample from the expected distribution of observations.

Pseudo code

function main() {
Input:
    Forecast hours F
    ensemble set S
Output:
    PDF for each forecast hour

For each forecast hour f in F:
    For each ensemble member m in set s:
        m.variance <- getVariance()
    f.pdf <- getPdf()

return F
}

Options for variance

  • Get control member variance
  • Derive member variance from ensemble mean variance

Options for model combination

  • Uniform distribution as prior

Data

The following data columns

  • Model name + Element name
  • Element observation value
  • Element value
  • Station id
  • Forecast hour
  • Issue date
  • Valid date

Ideas

Do something with covariance between model hours

  • Maybe Gaussian process fit on the ensemble members.
  • Or fit all hours together respecting their covariance
  • Maybe have a look into time series modeling to see if we can use autocorrelation

Relate variance between multiple issues for the same forecast hour

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.8%
  • Shell 9.2%