| ps_ouss {peacots} | R Documentation |
Expected periodogram of the OUSS process
Description
Returns the expected periodogram power of the Ornstein-Uhlenbeck state space (OUSS) process at a particular frequency, when sampled at regular time intervals for a finite time.
Usage
ps_ouss(freq, power_o, sigma,
rho, lambda,
power_e, epsilon,
time_step, series_size)
Arguments
freq |
Single number or numeric vector. The frequency for which to the power spectrum is to be calculated. |
power_o |
Single non-negative number. Power at zero-frequency generated by the underlying OU process, when sampled at the given |
sigma |
Single number. Standard deviation of OU fluctuations around equilibrium. Either |
rho |
Single number between 0 (exclusive) and 1 (inclusive). Correlation of the OU process between two subsequent time points. Either |
lambda |
Single non-negative number. Resilience (or relaxation rate) of the OU process. This is also the inverse correlation time of the OU process. Either |
power_e |
Single non-negative number. Asymptotic power at large frequencies due to the random measurement errors. Setting this to zero corresponds to the classical OU process. Either |
epsilon |
Single number. Standard deviation of Gaussian measurement error. Setting this to zero corresponds to the classical OU process. Either |
time_step |
Positive number. The time step of the time series that was (or will be) used for periodogram generation. |
series_size |
Positive integer. The number of sampled time points. |
Details
The OUSS parameters power_o, lambda and power_e will typically be maximum-likelihood fitted values returned by evaluate.pm. The value of time_step is also returned by evaluate.pm and is inferred from the analysed time series. More generally, power_o and power_e are proportional to the OUSS parameters sigma^2 and epsilon^2 (see generate_ouss), respectively, but the exact scaling depends on the normalization used for the periodogram.
In the limit where series_size becomes very large, ps_ouss becomes the same as ps_ouss_asymptotic.
Value
Returns a numeric vector of the same size as freq, containing the corresponding expected periodogram powers of the OUSS process.
Author(s)
Stilianos Louca
References
Louca, S., Doebeli, M. (2015) Detecting cyclicity in ecological time series, Ecology 96: 1724–1732
See Also
Examples
# generate OUSS time series
times = seq(0,20,0.25);
signal = generate_ouss(times, mu=0, sigma=1, lambda=1, epsilon=0.5);
# calculate periodogram and fit OUSS model
report = evaluate.pm(times=times, signal=signal, startRadius=2);
# plot periodogram
plot(report$frequencies, report$periodogram,
type="l", ylab="power", xlab="frequency", main="periodogram & fitted OUSS power spectrum");
# plot expected OUSS periodogram
lines(report$frequencies,
ps_ouss(freq=report$frequencies,
power_o=report$power_o,
lambda=report$lambda,
power_e=report$power_e,
time_step=report$time_step,
series_size=length(times)),
col="red");