|
7 | 7 | [](https://okfn.org/opendata/) |
8 | 8 |
|
9 | 9 | # DWDWeatherTools |
10 | | -Java command line client to access weather data of the [ICON-EU](https://www.dwd.de/DE/leistungen/modellvorhersagedaten/modellvorhersagedaten.html) model from the Deutscher Wetterdienst ([DWD](https://www.dwd.de/EN/Home/home_node.html)), the federal meteorological service in Germany |
| 10 | +Java command line client to download and convert weather data of the |
| 11 | +[ICON-EU](https://www.dwd.de/DE/leistungen/modellvorhersagedaten/modellvorhersagedaten.html) |
| 12 | +model from the Deutscher Wetterdienst ([DWD](https://www.dwd.de/EN/Home/home_node.html)), |
| 13 | +the federal meteorological service in Germany. |
| 14 | + |
| 15 | +These tools are work in progress and although they are used in our institute to collect |
| 16 | +data from the DWD they might contain bugs. If find one, please consider handing in an issue. |
| 17 | + |
| 18 | +## Table of Contents |
| 19 | + |
| 20 | +- [Background Information](#background-information) |
| 21 | +- [Features](#features) |
| 22 | +- [Processed Data](#processed-data) |
| 23 | +- [Requirements](#requirements) |
| 24 | +- [Usage](#usage) |
| 25 | + |
| 26 | +### Background Information |
| 27 | +The DWD provides a free weather forecast on their server using the ICON model. |
| 28 | +The forecast consists of different forecast variables and parameters which may |
| 29 | +have one or more height levels. |
| 30 | + |
| 31 | +Every 3 hours the DWD starts a calculation for each parameter for the next |
| 32 | +12-76 hours (depending on the parameter). Afterwards the model run results are uploaded, |
| 33 | +which may take up to 5 hours after the start, but most times takes about 2-3 hours. |
| 34 | +The results are structured into GRIB2 (.grib2) files, one per calculated hour and parameter, |
| 35 | +that are compressed as .bz2-archives. The data normally is overwritten everytime new model run |
| 36 | +data is uploaded. To keep data permanently e.g. for research purposes, one has to store them |
| 37 | +locally and run the downloader recurring e.g by using a cron job every 3 hours. |
| 38 | +The path to each result is built logically: |
| 39 | + |
| 40 | +`https://opendata.dwd.de/weather/nwp/icon-eu/grib/<modelrun in HH-format>/<parameter_name>/icon-eu_europe_regular-lat-lon_[model/single]-level_<modelrun-date in YYYYMMDDHH-format>_<timestep in HHH-format>_<[height level in two-digit-format_]><parameter_name>.grib2.bz2` |
| 41 | + |
| 42 | +### Features |
| 43 | +- Downloader to collect the temporarily available ICON weather data from the |
| 44 | + DWD OpenData servers |
| 45 | +- Converter to extract the weather data from the downloaded files and persist |
| 46 | + them into a PostgreSQL database |
| 47 | + |
| 48 | +### Processed Data |
| 49 | + |
| 50 | +#### Parameter |
| 51 | +While in general the downloaded raw data might contain all values described in the model |
| 52 | +[documentation](https://isabel.dwd.de/DWD/forschung/nwv/fepub/icon_database_main.pdf), |
| 53 | +in our case we only need some specific variables and parameters, which are extracted |
| 54 | +during the conversion process. If you require additional parameters you might consider |
| 55 | +adapting the downloader and converter accordingly or hand in an issue. |
| 56 | + |
| 57 | +At the moment, the following parameters are converted: |
| 58 | + |
| 59 | +// todo parameters |
| 60 | + |
| 61 | +#### Grid Information |
| 62 | +The currently covered area by the DWD Icon model consists of the coordinates shown below. |
| 63 | +This whole area is covered by the downloader as well as all parameters are downloaded for |
| 64 | +the whole area. |
| 65 | + |
| 66 | +| | ICON-EU nest | |
| 67 | +|-------------------|---------------------------------------| |
| 68 | +|geogr. coordinates | 23.5° W – 62.5° E / 29.5° N – 70.5° N | |
| 69 | +|mesh size | ≈ 6.5 km (R3B08) / 659156 triangles | |
| 70 | +|vertical levels | 60 level | |
| 71 | +|upper boundary | 22.5km | |
| 72 | + |
| 73 | + |
| 74 | + |
| 75 | + |
| 76 | +In contrast, the converter area can be set in the code to the area of interest. |
| 77 | +Hence, as long as the raw icon data is available, it can always be filtered and |
| 78 | +converted into a specific area of interested. The current conversion area is set |
| 79 | +to the following coordinates. |
| 80 | + |
| 81 | +minLongitude = 4.29694 \ |
| 82 | +maxLongitude = 18.98635 \ |
| 83 | +minLatitude = 45.71457 \ |
| 84 | +maxLatitude = 57.65129 |
| 85 | + |
| 86 | +In the future it would make sense to provide the |
| 87 | +coordinates via a config file instead of hard-coding them into the binary. |
| 88 | +If you want to provide this future feel free to hand in an issue or a pull request. |
| 89 | + |
| 90 | + |
| 91 | + |
| 92 | + |
| 93 | +### Requirements |
| 94 | +* Unix based OS |
| 95 | +* [ecCodes](https://confluence.ecmwf.int//display/ECC/Releases) installed |
| 96 | +* JRE 1.8 installed |
| 97 | +* access to a postgresql database |
| 98 | +* internet access |
| 99 | +* write permission on download directory |
| 100 | +* full privileges to the .jar file of the tools |
0 commit comments