srm_gif {PtProcess} | R Documentation |
This function calculates the value of the conditional intensity of a Stress Release Model (SRM). Spatial coordinates of the events are not taken into account.
srm_gif(data, evalpts, params, tplus=FALSE) srm_gif(data, evalpts=NULL, params, TT)
data |
a data frame containing the event history, where each row represents one event. There must be columns named “time”, usually the number of days from some origin; and “magnitude” which is the event magnitude less the magnitude threshold, i.e. Mi - M0. |
evalpts |
a vector , matrix or data.frame . If a vector, the elements will be assumed to represent the required evaluation times. Other objects must include a column named "time" that can be referred to as evalpts[,"time"] , at which the intensity function will be evaluated.
|
params |
vector of parameters for the proposed SRM model in the order c (a, b, c).
|
TT |
vector of length 2, being the time interval over which the integral of the conditional intensity function is to be evaluated. |
tplus |
logical, lambda_g(t|Ht) is evaluated as lambda_g(t^+|Ht) if TRUE , else lambda_g(t^-|Ht).
|
Vere-Jones (1978) proposed the stress release model, being a stochastic version of elastic rebound theory (Reid, 1910). The SRM assumes a deterministic increase in stress over time, and a stochastic release through earthquake events. The conditional intensity function is
lambda_g(t) = exp{a + b[t - cS(t)]},
where
S(t) = sum{10^[0.75(M_i-M_0)]}
and the summation is taken over those i such that ti < t, where ti denotes the event times.
The first usage returns a vector containing the values of lambda_g(t) evaluated at the specified points. In the second usage, it returns the value of the integral.
rate
"increasing"
.type
"default"
.
Runs much slower than linksrm_gif
. Should set up matrices St1
and St2
as in linksrm_gif
.
General details about the structure of conditional intensity functions are given in the topic gif
.
# Treating North China as one region data(NthChina) p <- c(-2.46, 0.0113, 0.851) times <- seq(0, 517, 0.5) par.default <- par(mfrow=c(2,1), mar=c(4.1, 4.1, 0.5, 1)) plot(times+1480, srm_gif(NthChina, times, params=p), type="l", ylab=expression(lambda[g](t)), xlab="", xlim=c(1480, 2000)) plot(NthChina$time+1480, NthChina$magnitude+6, type="h", xlim=c(1480, 2000), ylim=c(5.8, 8.6), xlab="Year", ylab="Magnitude") par(par.default)