bmc.prior: BMC Prior

Description Usage Arguments Details Value References See Also Examples

Description

Define the prior model of the Bayesian Magnitude of Completeness (BMC) method (Mignan et al., 2011) by fitting a function of the form mc = c1d^c2+c3 the observed completeness magnitude per cell and d the distance from the cell center to the kth nearest seismic station.

Usage

1
2
bmc.prior(mc.obs, stations, kth = 4, support = "calibrated",
  dist.calc = "fast")

Arguments

mc.obs

a data frame of the observed mc map defined by the function mc.geogr

stations

the seismic network data frame of parameters:

  • lon the seismic station longitude

  • lat the seismic station latitude

  • ... other station attributes

kth

the kth nearest seismic station used for distance calculation (if not provided, kth = 4)

support

the information supporting the prior model: "calibrated" or "data" (if not provided, support = "calibrated" - see Details)

dist.calc

the method to be used to evaluate distances (if not provided, dist.calc = "fast"; read Details of function d.geogr2km)

Details

support = "calibrated" uses the default BMC prior model defined by the function bmc.prior.default and calibrates it to the mc.obs data by shifting the residual average to 0, substracting it from c3 (see e.g., Mignan et al., 2013; Mignan and Chouliaras, 2014).

support = "data" directly fits the prior function to the mc.obs data by using the Nonlinear Least Squares function stats::nls. If the estimation fails, support = "calibrated" is used instead.

Value

A list of:

the BMC prior model parameter list:

the input data frame:

References

Mignan, A., Werner, M.J., Wiemer, S., Chen, C.-C., Wu, Y.-M. (2011), Bayesian Estimation of the Spatially Varying Completeness Magnitude of Earthquake Catalogs, Bull. Seismol. Soc. Am., 101, 1371-1385, doi: 10.1785/0120100223

Mignan, A., Jiang, C., Zechar, J.D., Wiemer, S., Wu, Z., Huang, Z. (2013), Completeness of the Mainland China Earthquake Catalog and Implications for the Setup of the China Earthquake Forecast Texting Center, Bull. Seismol. Soc. Am., 103, 845-859, doi: 10.1785/0120120052

Mignan, A., Chouliaras, G. (2014), Fifty Years of Seismic Network Performance in Greece (1964-2013): Spatiotemporal Evolution of the Completeness Magnitude, Seismol. Res. Lett., 85, 657-667 doi: 10.1785/0220130209

See Also

bmc; bmc.prior.default; d.geogr2km; mc.geogr

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# download the Southern California relocated catalogue of Hauksson et al. (2012)
url <- "http://service.scedc.caltech.edu/ftp/catalogs/"
cat <- "hauksson/Socal_DD/hs_1981_2011_06_comb_K2_A.cat_so_SCSN_v01"
dat <- scan(paste(url, cat, sep = ""), what = "character", sep = "\n")
yr <- as.numeric(substr(dat, start=1, stop=4))
lat <- as.numeric(substr(dat, start=35, stop=42))
lon <- as.numeric(substr(dat, start=44, stop=53))
m <- as.numeric(substr(dat, start=63, stop=67))
seism <- data.frame(yr = yr, lon = lon,lat = lat, m = m)

# download the Southern California seismic network data
url <- "http://service.scedc.caltech.edu/station/weblist.php"
dat <- scan(url, what = "character", sep = "\n", skip = 7)
network <- substr(dat, start = 1, stop = 2)
sta.name <- substr(dat, start = 5, stop = 9)
sta.lat <- as.numeric(substr(dat, start = 52, stop = 59))
sta.lon <- as.numeric(substr(dat, start = 61, stop = 70))
sta.on <- as.numeric(substr(dat, start = 78, stop = 81))
sta.off <- as.numeric(substr(dat, start = 89, stop = 92))
stations <- data.frame(lon = sta.lon, lat = sta.lat, name = sta.name)
stations <- subset(stations, (network == "CI" & sta.off > min(seism$yr) & sta.on < max(seism$yr)))
stations <- subset(stations, (duplicated(name) == F))

# map the observed mc (this may take a few minutes)
mc.obs <- mc.geogr(seism, "mode", "grid", dbin = 0.1)

# test the two possible priors & plot
model.calibrated <- bmc.prior(mc.obs, stations, kth = 5)
model.fromdata <- bmc.prior(mc.obs, stations, kth = 5, support = "data")
data <- model.calibrated[[2]]
di <- seq(0, max(data$d.kth))
params.cal <- model.calibrated[[1]]
params.dat <- model.fromdata[[1]]
plot(data$d.kth, data$mc.obs)
lines(di, params.cal$c1*di^params.cal$c2+params.cal$c3, col="orange")
lines(di, params.dat$c1*di^params.dat$c2+params.dat$c3, col="red")

amignan/rseismNet documentation built on July 8, 2019, 6:53 p.m.