# Vocabulary for Parallel Ensemble Forecast Package

## Vocabulary List

### Analog Ensemble (AnEn)

The AnEn is a technique to generate probabilistic forecasts from deterministic predictions and corresponding historical observations. It is an efficient method to produce uncertainty information without running weather prediction models multiple times.

In the `RAnEn` library, `AnEn` is also the class name of the returned value of the function `generateAnalogs`. You can use `print` function to analyze the members of the class.

In meteorology, FLT means the length of time between the issuance of a forecast and the occurrence of the phenomena that were predicted. For example, a forecast for surface temperature at the beginning (00Z) of the day January 1st, 2018, with a lead time of 6 hours will be the predicted surface temperature at 6 AM. Usually this interval is represented using the number of seconds from the initial time stamp, therefore 6 hours become 6 * 60 * 60 = 21600 seconds.

### Similarity Matrix

This is a multi-dimensional matrix with similarity values between test and search forecasts. Each test forecast at a given station/grid point, a given time stamp, and a given FLT, is compared with search forecasts for all search stations/grid points and all search times. Therefore, there are in total `# of test forecast stations/grid points X # of test forecast times X # of test forecast FLTs X # of search forecast stations X # of search forecast times` similairity values.

### Mapping Matrix

Forecast Times
0 24
FLTs 0 0 24
6 6 30
12 12 36
18 18 42
24 24 48
30 30 54

The table is a two-dimensional matrix that records the matching between forecast times/FLTs and observation times, with rows being FLTs, columns being forecast times, and cells being observation times. A particular observation time might be associated with multiple pairs of forecast times and FLTs. Since forecasts have times and FLTs information and observations only have times, how does the program know the correspondence of each forecast and observation? It relies on a mapping matrix. The ‘real time’ information of a given forecast is calculated of adding the FLT (think of it like a time offset) to the time (think of it like the initial time of the forecast). And then the ‘real time’ of forecasts is compared to the time of observations to find correspondence when they are the same.

Image the following mapping matrix calculated from the forecast times `(0, 24)` for the first and the second day, and the forecasts FLTs `(0, 6, 12, 18, 24, 30)` in hours (please note that in `RAnEn` package, the unit is second). The cell values are the ‘real time’ of each forecasts by adding FLTs to each forecast time. Note that there are two forecasts that have the same ‘real time’ which means that they are predicting events for the same time and they correspond to the same observation in time.

The program will try to find the observations with the same ‘real time’ as a forecast has. This is how the program knows which observation corresponds to which forecast.