psvd_filter: Create a filter to remove outlier PSVD bins

Description Usage Arguments Value References Examples

Description

Produces a matrix that is used as a mask in further calculations that involve using the PSVD matrix data. The purpose is to remove highly unlikely drop size and velocity combinations, which are typical in disdrometer records due to margin fallers, double drops, drop splashing, and other issues.

Usage

1
2
3
psvd_filter(type = "Thies", d = c(-Inf, Inf), v = c(-Inf, Inf),
  model = "Beard", tau = Inf, eta = 1.818e-05, P = 101.325,
  T = 288.15, rho = 1.225, alt = 0)

Arguments

type

Character vector designing the type of disdrometer, currently one of 'Thies' or 'Parsivel' Defaults to 'Thies'.

d

Numeric. A two-valued vector with the diameter limits (inferior, superior). Defaults to (-Inf, Inf), so no bins are removed.

v

Numeric. A two-valued vector with the velocity limits (inferior, superior). Defaults to (-Inf, Inf), so no bins are removed.

model

Character. Name of the terminal velocity model to use. See 'psvd_model()'.

tau

Numeric. A value between 0 and 1 that defines outlier bins. Defaults to 0.5 (i.e., velocities that are 50 off the theoretical model are removed). Defaults to Inf, in which case all the bins are accepted and no filtering is done according to a theoretical model.

eta

Numeric. Air dynamic viscosity, optional. See 'psvd_model()'.

P

Numeric. Air pressure, optional. See 'psvd_model()'.

T

Numeric. Air temperature, optional. See 'psvd_model()'.

rho

Numeric. Air density, optional. See 'psvd_model()'.

alt

Numeric. Elevation, optional. See 'psvd_model()'.

Value

A 22x20 (Thies) or 32x32 (Parsivel) logical matrix indicating which PSVD bins to consider (TRUE) and which to remove (FALSE). Diameters are stored as rows, and velocities as columns.

References

NA

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
# shown as images for easy visualization:

# filter only by drop size
image(psvd_filter(d=c(0.3,7), tau=Inf))

# filter only by theoretical velocity: low tolerance
image(psvd_filter(tau=0.5))
# higher tolerance
image(psvd_filter(tau=0.7))
# using other theoretical model
image(psvd_filter(model='Atlas', tau=0.5))

# filter by two criteria
image(psvd_filter(d=c(0.3,7), tau=0.5))

# filter for a Parsivel
image(psvd_filter(type='Parsivel', d=c(0.3,7), tau=0.5))

# used as input to `psvd_plot()`
 

sbegueria/disdRo documentation built on May 14, 2019, 2:39 p.m.