Slide 1

Slide 1 text

bioRad biological analysis and visualization of weather radar data IRAC 2019, 22 Sep 2019, Zhengzhou Peter Desmet

Slide 2

Slide 2 text

Hi!

Slide 3

Slide 3 text

ENRAM

Slide 4

Slide 4 text

Bird migration on weather radars

Slide 5

Slide 5 text

Bird migration on weather radars

Slide 6

Slide 6 text

Bird migration on weather radars •  Reflectivity factor: how many animals?

Slide 7

Slide 7 text

Bird migration on weather radars •  Reflectivity factor: how many animals? •  Radial velocity: where are they going?

Slide 8

Slide 8 text

How to •  Read and inspect weather radar data •  Extract biological information: vertical profiling •  Analyze and integrate vertical profile data •  Standardize measures to compare studies

Slide 9

Slide 9 text

bioRad

Slide 10

Slide 10 text

bioRad •  R package for analysis and visualization of biological signals in weather radar data •  Open source •  Available on CRAN and GitHub adokter.github.io/bioRad

Slide 11

Slide 11 text

Dokter et al. 2019 Ecography

Slide 12

Slide 12 text

Authors Adriaan Dokter* Peter Desmet* Jurriaan Spaaks Stijn Van Hoey Lourens Veen Liesbeth Verlinden Cecilia Nilsson* Günther Haase Hidde Leijnse Andrew Farnsworth* Willem Bouten Judy Shamoun-Baranes*

Slide 13

Slide 13 text

Functionality

Slide 14

Slide 14 text

Installation # install bioRad from CRAN install.packages("bioRad") # load bioRad library("bioRad")

Slide 15

Slide 15 text

pvol Read polar volume data pvol <- read_pvolfile("KBRO20170514_055831_pvol.h5") radar file

Slide 16

Slide 16 text

pvol scan Read polar volume data pvol <- read_pvolfile("KBRO20170514_055831_pvol.h5") radar file

Slide 17

Slide 17 text

pvol scan param: VRADH radial velocity param: DBZH reflectivity factor Read polar volume data pvol <- read_pvolfile("KBRO20170514_055831_pvol.h5") radar file

Slide 18

Slide 18 text

pvol scan param: VRADH radial velocity param: DBZH reflectivity factor scan param: VRADH radial velocity param: DBZH reflectivity factor Read polar volume data pvol <- read_pvolfile("KBRO20170514_055831_pvol.h5") radar file

Slide 19

Slide 19 text

pvol scan param: VRADH radial velocity param: DBZH reflectivity factor scan param: VRADH radial velocity param: DBZH reflectivity factor Read polar volume data pvol <- read_pvolfile("KBRO20170514_055831_pvol.h5") scan param: VRADH radial velocity param: DBZH reflectivity factor radar file

Slide 20

Slide 20 text

Inspect scan scan <- get_scan(pvol, 1.5) # use get_elevation_angles(pvol) to know angles pvol scan param: VRADH radial velocity param: DBZH reflectivity factor scan param: VRADH radial velocity param: DBZH reflectivity factor scan param: VRADH radial velocity param: DBZH reflectivity factor

Slide 21

Slide 21 text

Inspect scan scan <- get_scan(pvol, 1.5) # use get_elevation_angles(pvol) to know angles pvol scan param: VRADH radial velocity param: DBZH reflectivity factor

Slide 22

Slide 22 text

Plot scan plot(scan, 
 param = "DBZH") pvol scan param: VRADH radial velocity param: DBZH reflectivity factor

Slide 23

Slide 23 text

x y Project scan ppi <- project_as_ppi(scan, range_max = 120000)
 # ppi: plan position indicator pvol scan param: VRADH radial velocity param: DBZH reflectivity factor

Slide 24

Slide 24 text

Project scan plot(ppi, 
 param = "DBZH") pvol scan param: VRADH radial velocity param: DBZH reflectivity factor

Slide 25

Slide 25 text

Project scan plot(ppi, 
 param = "VRADH") pvol scan param: VRADH radial velocity param: DBZH reflectivity factor

Slide 26

Slide 26 text

Vertical profiling calculate_vp(
 pvolfile = "KBRO20170514_055831_pvol.h5", 
 vpfile = "KBRO20170514_055831_vp.h5"
 ) # Makes use of vol2bird algorithm radar file

Slide 27

Slide 27 text

Vertical profiling calculate_vp(
 pvolfile = "KBRO20170514_055831_pvol.h5", 
 vpfile = "KBRO20170514_055831_vp.h5"
 ) # Makes use of vol2bird algorithm radar file vp: vertical profile Vertical profile (class vp) radar: KBRO source: RAD:KBRO,PLC:BROWNSVILLE,state:TX nominal time: 2017-05-14 05:58:32 generated by: vol2bird 0.3.18

Slide 28

Slide 28 text

Plot vertical profile vp <- read_vpfiles( "KBRO20170514_055831_vp.h 5") plot(vp, quantity = "dens")

Slide 29

Slide 29 text

Plot vertical profile plot(vp, quantity = "ff") # ff: ground speed

Slide 30

Slide 30 text

Time series of vertical profiles vpts <- bind_into_vpts(vp, vp, vp) # read file with: read_vpts("vpts_file.txt") # regularize with: regularize_vpts() vp: vertical profile

Slide 31

Slide 31 text

Time series of vertical profiles vpts <- bind_into_vpts(vp, vp, vp) # read file with: read_vpts("vpts_file.txt") # regularize with: regularize_vpts() vp: vertical profile vp: vertical profile vp: vertical profile vp: vertical profile

Slide 32

Slide 32 text

Time series of vertical profiles vpts <- bind_into_vpts(vp, vp, vp) # read file with: read_vpts("vpts_file.txt") # regularize with: regularize_vpts() vp: vertical profile Irregular time series of vertical 
 profiles (class vpts) radar: KBRO # profiles: 95 time range (UTC): 2017-05-14 00:09:00 – 2017-05-14 13:25:00 time step (s): min: 300 max: 1800 vpts: vertical profile time series vp: vertical profile vp: vertical profile vp: vertical profile

Slide 33

Slide 33 text

Time series of vertical profiles plot(vpts)

Slide 34

Slide 34 text

Integrated vertical profiles vpi <- integrate_profile(vpi) vpts: vertical profile time series

Slide 35

Slide 35 text

Integrated vertical profiles vpi <- integrate_profile(vpi) vpi: integrated vertical profile vpts: vertical profile time series

Slide 36

Slide 36 text

Integrated vertical profiles plot(vpts, 
 quantity = "mtr") # mtr: migration traffic rate (birds/km/hour)

Slide 37

Slide 37 text

Documentation

Slide 38

Slide 38 text

Help ?plot.vpts

Slide 39

Slide 39 text

adokter.github.io/bioRad

Slide 40

Slide 40 text

adokter.github.io/bioRad

Slide 41

Slide 41 text

bioRad software note

Slide 42

Slide 42 text

Supporting open reproducible science

Slide 43

Slide 43 text

Common measures

Slide 44

Slide 44 text

Common measures

Slide 45

Slide 45 text

Common measures RCS = 11 cm2 Dokter et al. 2011 J. R. Soc. Interface

Slide 46

Slide 46 text

Data standards •  Supported pvol formats: ODIM (Europe), NEXRAD (US), Vaisala Iris (e.g. Canada) radar file pvol: polar volume

Slide 47

Slide 47 text

Data standards •  Supported pvol formats: ODIM (Europe), NEXRAD (US), Vaisala Iris (e.g. Canada) •  Export vp format of vol2bird: ODIM bird profile radar file pvol: polar volume vp: vertical profile

Slide 48

Slide 48 text

vp: vertical profile vp: vertical profile Data standards •  Supported pvol formats: ODIM (Europe), NEXRAD (US), Vaisala Iris (e.g. Canada) •  Export vp format of vol2bird: ODIM bird profile •  Export vpts format: tabular format under discussion radar file pvol: polar volume vp: vertical profile vpts: vertical profile time series

Slide 49

Slide 49 text

Open source

Slide 50

Slide 50 text

Collaborative effort

Slide 51

Slide 51 text

Roadmap •  Range bias correction of PPIs •  Inclusion of the MistNet segmentation model (Lin et al. 2019 Methods Ecol. Evol.) •  Unit tests and continuous integration •  Submission for rOpenSci code review •  …

Slide 52

Slide 52 text

bioRad is currently used for projects in Europe, US, Canada and Colombia… … but we hope it can become the go-to tool in R for all biological studies using weather radar data.

Slide 53

Slide 53 text

Thank you! Desmet et al. (2019) Biological analysis and visualization of weather radar data. Presentation. http://bit.ly/biorad-irac2019 adokter.github.io/bioRad oscibio.inbo.be