three_channel_model {rhosa} | R Documentation |
A three-channel model of quadratic phase coupling
Description
Simulate observations by a three-channel model of quadratic phase coupling.
Usage
three_channel_model(
f1,
f2,
f3,
num_samples = 256,
num_observations = 100,
input_freq = c(1.2, 0.7, 0.8),
noise_sd = 1
)
Arguments
f1 |
A function of period |
f2 |
A function of period |
f3 |
A function of period |
num_samples |
The number of sampling points in an observation. |
num_observations |
The number of observations. |
input_freq |
The scaling factor for the frequencies of input periodic functions. It can be a scalar or a vector of length three. If a scalar is given, the same frequency is used for all of inputs. |
noise_sd |
The standard deviation of a Gaussian noise perturbing samples. It can be a scalar or a vector of length three. If a scalar is given, the same value is used for all of noises. Giving 0 is possible and specifies no noise. |
Details
Given three periodic functions, this function generates a list of three data
frames in which each column represents a simulated observation at a channel.
The phase is chosen at random from [0, 2 \pi]
for each
observation and each channel.
Value
A list of six data frames:
i1
, i2
, i3
, o1
, o2
, and o3
.
Each element has num_observations
columns and num_samples
rows.
i1
, i2
, and i3
are observations of input signals;
o1
, o2
, and o3
are of output.
Examples
sawtooth <- function(r) {
x <- r/(2*pi)
x - floor(x) - 0.5
}
data <- three_channel_model(cos, sin, sawtooth,
input_freq = c(0.2, 0.3, 0.4),
noise_sd = 0.9)