GFZ: 3D Geological Model of Berlin
Source:vignettes/gfz_geological-model-berlin.Rmd
gfz_geological-model-berlin.Rmd
Cite as: Frick, Maximilian; Bott, Judith; Scheck-Wenderoth, Magdalena; Cacace, Mauro; Haacke, Nasrin; Schneider, Michael (2020): 3D geological model of Berlin - Germany. GFZ Data Services. https://doi.org/10.5880/GFZ.4.5.2020.005
Define Paths
library(kwb.impetus)
paths_list <- list(
base_url = "https://datapub.gfz-potsdam.de/download/10.5880.GFZ.4.5.2020.005nuirg",
dataset = "<base_url>/2020-005_Frick-et-al_Berlin-Model_data.zip",
metadata = "<base_url>/2020-005_Frick-et-al_Berlin-Model_data-description.pdf",
model_data = "model_gfz"
)
paths <- kwb.utils::resolve(paths_list)
Download
Download the GFZ Model Dataset (2020-005_Frick-et-al_Berlin-Model_data.zip).
Metadata is available here: (2020-005_Frick-et-al_Berlin-Model_data-description.pdf)
# archive::archive_extract(archive = paths$dataset,
# dir = paths$model_data)
kwb.impetus::download_gfz_model(target_dir = paths$model_data)
#> ⠙ 1 extracted | 3.5 MB (1.7 MB/s) | 2.1s
#> ⠹ 6 extracted | 53 MB ( 10 MB/s) | 5.2s
#> ⠸ 23 extracted | 214 MB ( 26 MB/s) | 8.2s
#> ⠼ 40 extracted | 382 MB ( 34 MB/s) | 11.3s
Import
elevation <- kwb.impetus::read_gfz_layers(paths$model_data, type = "elevation")
#> Reading (1/24): 'model_gfz/1_Holocene_elevation.dat' ... ok. (0.67 secs)
#> Reading (2/24): 'model_gfz/10_Lower_Cretaceous_elevation.dat' ... ok. (0.57 secs)
#> Reading (3/24): 'model_gfz/11_Jurassic_elevation.dat' ... ok. (0.64 secs)
#> Reading (4/24): 'model_gfz/12_Keuper_elevation.dat' ... ok. (0.44 secs)
#> Reading (5/24): 'model_gfz/13_Muschelkalk_elevation.dat' ... ok. (0.42 secs)
#> Reading (6/24): 'model_gfz/14_Upper_Buntsandstein_elevation.dat' ... ok. (0.58 secs)
#> Reading (7/24): 'model_gfz/15_Middle_Buntsandstein_elevation.dat' ... ok. (0.39 secs)
#> Reading (8/24): 'model_gfz/16_Lower_Buntsandstein_elevation.dat' ... ok. (0.55 secs)
#> Reading (9/24): 'model_gfz/17_Zechstein_elevation.dat' ... ok. (0.38 secs)
#> Reading (10/24): 'model_gfz/18_Rotliegend_elevation.dat' ... ok. (0.43 secs)
#> Reading (11/24): 'model_gfz/19_Permo-Carboniferous_elevation.dat' ... ok. (0.42 secs)
#> Reading (12/24): 'model_gfz/2_Saalian_elevation.dat' ... ok. (0.41 secs)
#> Reading (13/24): 'model_gfz/20_Pre-Permian_elevation.dat' ... ok. (0.61 secs)
#> Reading (14/24): 'model_gfz/21_Upper_Crust_elevation.dat' ... ok. (0.37 secs)
#> Reading (15/24): 'model_gfz/22_Lower_Crust_elevation.dat' ... ok. (0.52 secs)
#> Reading (16/24): 'model_gfz/23_Upper_Mantle_elevation.dat' ... ok. (0.36 secs)
#> Reading (17/24): 'model_gfz/24_LAB_elevation.dat' ... ok. (0.36 secs)
#> Reading (18/24): 'model_gfz/3_Holstein_elevation.dat' ... ok. (0.42 secs)
#> Reading (19/24): 'model_gfz/4_Elsterian_elevation.dat' ... ok. (0.37 secs)
#> Reading (20/24): 'model_gfz/5_Miocene_elevation.dat' ... ok. (0.43 secs)
#> Reading (21/24): 'model_gfz/6_Cottbus_elevation.dat' ... ok. (0.45 secs)
#> Reading (22/24): 'model_gfz/7_Rupelian_elevation.dat' ... ok. (0.42 secs)
#> Reading (23/24): 'model_gfz/8_Pre-Rupelian_elevation.dat' ... ok. (0.42 secs)
#> Reading (24/24): 'model_gfz/9_Upper_Cretaceous_elevation.dat' ... ok. (0.68 secs)
thickness <- kwb.impetus::read_gfz_layers(paths$model_data, type = "thickness")
#> Reading (1/23): 'model_gfz/1_Holocene_thickness.dat' ... ok. (0.39 secs)
#> Reading (2/23): 'model_gfz/10_Lower_Cretaceous_thickness.dat' ... ok. (0.57 secs)
#> Reading (3/23): 'model_gfz/11_Jurassic_thickness.dat' ... ok. (0.40 secs)
#> Reading (4/23): 'model_gfz/12_Keuper_thickness.dat' ... ok. (0.43 secs)
#> Reading (5/23): 'model_gfz/13_Muschelkalk_thickness.dat' ... ok. (0.45 secs)
#> Reading (6/23): 'model_gfz/14_Upper_Buntsandstein_thickness.dat' ... ok. (0.44 secs)
#> Reading (7/23): 'model_gfz/15_Middle_Buntsandstein_thickness.dat' ... ok. (0.40 secs)
#> Reading (8/23): 'model_gfz/16_Lower_Buntsandstein_thickness.dat' ... ok. (0.51 secs)
#> Reading (9/23): 'model_gfz/17_Zechstein_thickness.dat' ... ok. (0.61 secs)
#> Reading (10/23): 'model_gfz/18_Rotliegend_thickness.dat' ... ok. (0.42 secs)
#> Reading (11/23): 'model_gfz/19_Permo-Carboniferous_thickness.dat' ... ok. (0.38 secs)
#> Reading (12/23): 'model_gfz/2_Saalian_thickness.dat' ... ok. (0.47 secs)
#> Reading (13/23): 'model_gfz/20_Pre-Permian_thickness.dat' ... ok. (0.54 secs)
#> Reading (14/23): 'model_gfz/21_Upper_Crust_thickness.dat' ... ok. (0.36 secs)
#> Reading (15/23): 'model_gfz/22_Lower_Crust_thickness.dat' ... ok. (0.35 secs)
#> Reading (16/23): 'model_gfz/23_Upper_Mantle_thickness.dat' ... ok. (0.55 secs)
#> Reading (17/23): 'model_gfz/3_Holstein_thickness.dat' ... ok. (0.36 secs)
#> Reading (18/23): 'model_gfz/4_Elsterian_thickness.dat' ... ok. (0.38 secs)
#> Reading (19/23): 'model_gfz/5_Miocene_thickness.dat' ... ok. (0.36 secs)
#> Reading (20/23): 'model_gfz/6_Cottbus_thickness.dat' ... ok. (0.38 secs)
#> Reading (21/23): 'model_gfz/7_Rupelian_thickness.dat' ... ok. (0.38 secs)
#> Reading (22/23): 'model_gfz/8_Pre-Rupelian_thickness.dat' ... ok. (0.46 secs)
#> Reading (23/23): 'model_gfz/9_Upper_Cretaceous_thickness.dat' ... ok. (0.59 secs)
## Available Layers
names(elevation)
#> [1] "1_Holocene" "10_Lower_Cretaceous"
#> [3] "11_Jurassic" "12_Keuper"
#> [5] "13_Muschelkalk" "14_Upper_Buntsandstein"
#> [7] "15_Middle_Buntsandstein" "16_Lower_Buntsandstein"
#> [9] "17_Zechstein" "18_Rotliegend"
#> [11] "19_Permo-Carboniferous" "2_Saalian"
#> [13] "20_Pre-Permian" "21_Upper_Crust"
#> [15] "22_Lower_Crust" "23_Upper_Mantle"
#> [17] "24_LAB" "3_Holstein"
#> [19] "4_Elsterian" "5_Miocene"
#> [21] "6_Cottbus" "7_Rupelian"
#> [23] "8_Pre-Rupelian" "9_Upper_Cretaceous"
names(thickness)
#> [1] "1_Holocene" "10_Lower_Cretaceous"
#> [3] "11_Jurassic" "12_Keuper"
#> [5] "13_Muschelkalk" "14_Upper_Buntsandstein"
#> [7] "15_Middle_Buntsandstein" "16_Lower_Buntsandstein"
#> [9] "17_Zechstein" "18_Rotliegend"
#> [11] "19_Permo-Carboniferous" "2_Saalian"
#> [13] "20_Pre-Permian" "21_Upper_Crust"
#> [15] "22_Lower_Crust" "23_Upper_Mantle"
#> [17] "3_Holstein" "4_Elsterian"
#> [19] "5_Miocene" "6_Cottbus"
#> [21] "7_Rupelian" "8_Pre-Rupelian"
#> [23] "9_Upper_Cretaceous"
## Dataset Structure
#str(elevation)
#str(thickness)
Plot
Layer Thickness
t_01 <- kwb.impetus::plot_gfz_layer(thickness$`1_Holocene`)
#> Warning: cannot handle curvilinear or sheared stars images. Rendering regular
#> grid.
htmlwidgets::saveWidget(t_01, file = "thickness_01-holocene.html")
Layer Elevation
e_01 <- kwb.impetus::plot_gfz_layer(elevation$`1_Holocene`)
#> Warning: cannot handle curvilinear or sheared stars images. Rendering regular
#> grid.
htmlwidgets::saveWidget(e_01,
file = "elevation_01-holocene.html")