Small Julia package for generating random telegraph signals.
Author meese-wj
5 Stars
Updated Last
1 Year Ago
Started In
June 2022


Dev Build Status

A Julia package for generating random telegraph noise (RTN).

RTN, also known as burst noise or a random telegraph signal, have a set of useful analytical properties which can make them ideal for testing the statistical analyses of time series. For example, in the simplest cases, RTNs have two equally probable states and are characterized by a single time scale, known as the dwell time $T_D$, which represents the average time spent in either state before switching. The probability of the signal inhabiting either state for a time $t \in (t_0, t_0 + {\rm d}t)$ is given by $$ {\rm Pr}\left( t \in (t_0, t_0 + {\rm d} t) \right) = {\rm e}^{-t/T_D} \cdot \frac{{\rm d}t}{T_D}.$$

One can then show that the autocovariance $\mathcal{A}$ (autocorrelation for de-meaned signals) goes as $$ \mathcal{A}(t, t_0; T_D) = \exp\left( -2 \; \frac{\vert t - t_0 \vert}{T_D} \right),$$ showing the stationarity of these processes [1]. Furthermore, the autocorrelation time $\tau$ of such a signal then follows exactly as $\tau = T_D /2$.

Additional Information

[1] For an additional derivation, and a great overall introduction to the science of noise analysis in signals, check out D. K. C. MacDonald's Noise and Fluctuations (orig. 1962, Dover Publications 2006). The derivation is specifically in Appendix IV.

Used By Packages

No packages found.