This function allows us to generate a non-stationary AR(1) block process.

gen_ar1blocks(phi, sigma2, n_total, n_block, scale = 10, 
title = NULL, seed = 135, ...)

Arguments

phi

A double value for the autocorrection parameter \(\phi\).

sigma2

A double value for the variance parameter \(\sigma ^2\).

n_total

An integer indicating the length of the simulated AR(1) block process.

n_block

An integer indicating the length of each block of the AR(1) block process.

scale

An integer indicating the number of levels of decomposition. The default value is 10.

title

A string indicating the name of the time series data.

seed

An integer defined for simulation replication purposes.

...

Additional parameters.

Value

A vector containing the AR(1) block process.

Note

This function generates a non-stationary AR(1) block process whose theoretical maximum overlapping allan variance (MOAV) is different from the theoretical MOAV of a stationary AR(1) process. This difference in the value of the allan variance between stationary and non-stationary processes has been shown through the calculation of the theoretical allan variance given in "A Study of the Allan Variance for Constant-Mean Non-Stationary Processes" by Xu et al. (IEEE Signal Processing Letters, 2017), preprint available: https://arxiv.org/abs/1702.07795.

Author

Yuming Zhang and Haotian Xu

Examples

Xt = gen_ar1blocks(phi = 0.9, sigma2 = 1, 
n_total = 1000, n_block = 10, scale = 100)
plot(Xt)


Yt = gen_ar1blocks(phi = 0.5, sigma2 = 5, n_total = 800, 
n_block = 20, scale = 50)
plot(Yt)