1

What were the daily weather conditions for Remagen, Germany from April 28, 1945 to May 28, 1945?

3 Answers 3

1

Unfortunately there is not much in stations data at this period of time. Below a list of surrounding stations, which data is stored on NOAA server. And despite begin and end date given there are missing records for 1944, 1945. If you have access to (digital?) library with local press, it might be worth to check, as usually the weather conditions were printed in daily press.

t <- tidygeocoder::geo("Remagen, Germany", method = "arcgis")
#> Passing 1 address to the ArcGIS single address geocoder
#> Query completed in: 1 seconds

a <- worldmet::getMeta(lon = t$long, lat = t$lat)

a[, c(1, 3, 6, 9:11, 15)]
#> # A tibble: 10 × 7
#>    usaf   station         call  `elev(m)` begin      end         dist
#>    <chr>  <chr>           <chr>     <dbl> <date>     <date>     <dbl>
#>  1 105130 KOLN BONN       EDDK       92   1931-01-01 2024-02-18  32.3
#>  2 106130 BUCHEL          ETSB      478.  1973-01-01 2024-02-18  46.6
#>  3 105020 NORVENICH       ETNN      118.  1973-01-01 2024-02-18  48.7
#>  4 106162 SIEGERLAND      EDGS      599.  2004-05-10 2024-02-18  62.2
#>  5 106160 FRANKFURT HAHN  EDFH      503.  1953-07-22 2024-02-18  70.2
#>  6 064960 ELSENBORN (MIL) EBLB      570   1984-05-01 2024-02-18  74.7
#>  7 106070 SPANGDAHLEM AB  ETAD      365.  1953-05-18 2024-02-18  77.3
#>  8 064940 MONT-RIGI       <NA>      673   2008-01-15 2024-02-18  82.1
#>  9 104000 DUSSELDORF      EDDL       44.8 1931-01-02 2024-02-18  85.1
#> 10 104374 MONCHENGLADBACH EDLN       38.1 1996-07-15 2024-02-18  88.2

worldmet::importNOAA(code = "105130-99999",
                     year = 1945,
                     hourly = TRUE,
                     n.cores = 4,
                     path = "data")
#> [1] "site(s) do not exist."
#> NULL

The good news: there is ERA5 gridded data starting in 1940 (around 30 km spatial resolution, and hourly temporal resolution) which may be used to extract the data and calculate daily means. After downloading the data set of interest (in form of nc file) you can use {terra} package to extract the data.

Created on 2024-02-20 with reprex v2.1.0

Edit: I have played a bit with the data. Temperatures for Remagen in April and May 1945 in the chart below. The whole process/analysis you can find around https://gsapijaszko.github.io/open_data/environments.html#fig-remagen_plot

1

Just in order to show a different take on this, let's check if the German Weather Service has published something useful:

library(vg250)
#> 0.5.4

# get sf mask for Remscheid
gem <- vg250::get_geometry("Remscheid")

# get station inventory for daily measurements
stations <- timeseriesIO::get_cdc_stations(res = "daily",
                                           par = "kl",
                                           q = "historical")

# two stations located in Remscheid, operational since 2004 resp. 2011 :/
stations[gem, ]
#> Simple feature collection with 2 features and 7 fields
#> Geometry type: POINT
#> Dimension:     XY
#> Bounding box:  xmin: 7.2 ymin: 51.18 xmax: 7.2505 ymax: 51.2051
#> Geodetic CRS:  WGS 84
#> # A tibble: 2 × 8
#>   stations_id von_datum  bis_datum  Stationshoehe Stationsname     Bundesland   
#>   <chr>       <date>     <date>             <dbl> <chr>            <chr>        
#> 1 04154       2011-02-01 2018-06-30           345 Remscheid-Lennep Nordrhein-We…
#> 2 05719       2004-10-01 2009-12-10           235 Remscheid        Nordrhein-We…
#> # ℹ 2 more variables: element <chr>, geometry <POINT [°]>

# increasing search radius using a 5 km buffer around Remscheid
stations[sf::st_buffer(gem, 5000), ]
#> Simple feature collection with 5 features and 7 fields
#> Geometry type: POINT
#> Dimension:     XY
#> Bounding box:  xmin: 7.093 ymin: 51.14 xmax: 7.2505 ymax: 51.2531
#> Geodetic CRS:  WGS 84
#> # A tibble: 5 × 8
#>   stations_id von_datum  bis_datum  Stationshoehe Stationsname        Bundesland
#>   <chr>       <date>     <date>             <dbl> <chr>               <chr>     
#> 1 04154       2011-02-01 2018-06-30           345 Remscheid-Lennep    Nordrhein…
#> 2 04741       1936-01-01 2002-12-31           152 Solingen-Hohensche… Nordrhein…
#> 3 05717       1937-01-01 2024-03-24           134 Wuppertal-Buchenho… Nordrhein…
#> 4 05719       2004-10-01 2009-12-10           235 Remscheid           Nordrhein…
#> 5 15200       2013-06-01 2024-03-24           327 Wuppertal           Nordrhein…
#> # ℹ 2 more variables: element <chr>, geometry <POINT [°]>

Solingen-Hohenscheid has daily records since 1936 and Wuppertal-Buchenhofen since 1937. This looks quite promising!

# filter to these two stations
stations_sub <- stations[sf::st_buffer(gem, 5000), ] |> 
  dplyr::filter(stations_id == "04741" | stations_id == "05717")

# download data for defined stations
# manual download from:
# https://opendata.dwd.de/climate_environment/CDC/observations_germany/climate/daily/kl/historical/
timeseriesIO::dwn_cdc_data(stations_sub, sub = "1945")

# read data
xts_solingen <- timeseriesIO::read_cdc_txt("produkt_klima_tag_19360101_20021231_04741.txt",
                                           stations_sub)

xts_wuppertal <- timeseriesIO::read_cdc_txt("produkt_klima_tag_19370101_20221231_05717.txt",
                                            stations_sub)

# subset to air temperature and check the stats
xts_solingen_ta <- xts_solingen[["TMK"]]
zoo::coredata(xts_solingen_ta["1945-04-28/1945-05-28"]) |> summary()
#>       TMK       
#>  Min.   : 1.70  
#>  1st Qu.: 8.10  
#>  Median :13.00  
#>  Mean   :13.25  
#>  3rd Qu.:18.10  
#>  Max.   :23.60
# Solingen-Hohenscheid looking good

xts_wuppertal_ta <- xts_wuppertal[["TMK"]]
zoo::coredata(xts_wuppertal_ta["1945-04-28/1945-05-28"]) |> summary()
#>       TMK     
#>  Min.   : NA  
#>  1st Qu.: NA  
#>  Median : NA  
#>  Mean   :NaN  
#>  3rd Qu.: NA  
#>  Max.   : NA
# Wuppertal-Buchenhofen was not operational between 1943-1947 :/

# inspect time series data
plot(xts_solingen_ta["1945-04-28/1945-05-28"], 
     main = "Solingen-Hohenscheid", 
     ylab = "daily mean air temperature [°C]",
     col = "red")

Created on 2024-03-25 with reprex v2.1.0

This was just a quick demo using air temperature only. In order to access "weather conditions", you might be interested in some additional parameters - but at least now we know that there actually was a weather station near Remscheid in 1945 with meteorological data publicly available.

Please note the differences to the gridded ERA5 dataset!

2
  • Nice. Would you mind to share the link to {timeseriesIO} package, please? Mar 26 at 9:14
  • 1
    @GrzegorzSapijaszko: Unfortunately, the package is work in progress and still quite messy. I haven't dared yet to make the repository public but I hope to be able to do so in the upcoming months... :/
    – dimfalk
    Mar 26 at 9:43
0

I think you should expand your map a little and maybe settle for values by the big cities nearby Remagen like Bonn and other and maybe then interpolate the values. It will also help if you search in German too as that will give you access to some German archived websites/ documents. This information won't be simple to find though, as in that period this is probably considered sensitive information as this website suggests:

Original-Wetterkarten aus der Zeit des Zweiten Weltkrieges sind als Sondersammlung in den Bestand der Deutschen Meteorologischen Bibliothek integriert worden. Diese handgezeichneten Karten wurden ab 1939 von der so genannten „Zentralen Wetterdienstgruppe“ (ZWG) angefertigt und unterlagen der Geheimhaltung. Denn die Informationen dienten dem Oberkommando der Wehrmacht und der Luftwaffe für die operationelle Kriegführung. Während des Krieges fertigte im Einflussbereich des Deutschen Reiches nur die ZWG routinemäßig synoptische Karten an und gab die Ergebnisse zur (internen) Veröffentlichung zum Beispiel an die Deutsche Seewarte in Hamburg weiter.

translated to English:

Original weather maps from the time of the Second World War have been integrated into the holdings of the German Meteorological Library as a special collection. These hand-drawn maps were produced by the so-called "Central Weather Service Group" (ZWG) from 1939 and were subject to secrecy. Because the information served the high command of the Wehrmacht and the Luftwaffe for operational warfare. During the war, in the sphere of influence of the German Reich, only the ZWG routinely prepared synoptic maps and passed on the results for (internal) publication, for example to the Deutsche Seewarte in Hamburg.

Luckily this data is probably archived somewhere so you should be able to find something somewhere. During my quick search, I came across these websites that might be useful for you:

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.