utils.noise.from_param
utils.noise.from_param(
method='uar1',
noise_param=None,
length=50,
number=1,
time_pattern='even',
settings=None,
seed=None,
label=None,
)Generate surrogate series from a parametric noise model.
Parameters
method : str = 'uar1'-
Noise model. Supported values:
'ar1sim','uar1','CN'(colored noise). Default'uar1'. noise_param : list or None = None-
Model parameters: -
'ar1sim'/'uar1':[tau, sigma0]-'CN':[beta]Default[1, 1]. length : int = 50-
Length of each surrogate series. Default 50.
number : int = 1-
Number of surrogate realizations to generate. Default 1.
time_pattern : str = 'even'-
Time-axis generation pattern. One of: -
'even'— evenly spaced with spacingdelta_tfromsettings(default 1.0) -'random'— random spacing viadelta_t_distandparaminsettings-'specified'— explicittimearray passed insettings settings : dict or None = None-
Additional options forwarded to the surrogate generator. Default
None. seed : int or None = None-
Random seed for reproducibility. Default
None. label : str or None = None-
Label attached to the returned
SurrogateSeries. DefaultNone.
Returns
surr :pyleoclim.SurrogateSeries-
Surrogate series object;
surr.series_listcontainsnumberseries.
See also
pyleoclim.SurrogateSeries : Underlying surrogate generator.
Examples
import matplotlib.pyplot as plt
from climatecritters.utils.noise import from_param
# Ten AR(1) realizations with tau=5, sigma=0.5
surr = from_param(method='ar1sim', noise_param=[5, 0.5],
length=200, number=10, seed=0)
fig, ax = plt.subplots(figsize=(8, 3))
for s in surr.series_list:
ax.plot(s.time, s.value, lw=0.7, alpha=0.5)
ax.set_xlabel('time'); ax.set_ylabel('value')
ax.set_title('AR(1) surrogate realizations (τ=5, σ=0.5)')
plt.savefig('docs/reference/figures/from_param_example.png',
dpi=150, bbox_inches='tight')