← All 31 animations

Noise-assisted EMD

Noise-assisted EMD

Property Value
Method CEEMDAN
Input mode univariate
Trend shape (96,)
Notebook execution ran
Reconstruction RMSE 0.00000000

Notebook example metric: root mean square of input - (trend + season + residual) over all samples and channels. This checks additive bookkeeping; it is not a forecast error or a component-recovery score. The separate teaching input and intermediate arrays for the animation are linked below.

How it works

Method maturity: stable. Implementation: wrapper.

CEEMDAN repeatedly estimates components from perturbed signals and updates a shared residual. The noise modes and ensemble averages are algorithmic inputs, not decorative uncertainty bands.

CEEMDAN: Generate perturbations; Average first IMFs; Update adaptively; Retain the residue

Deterministic synthetic teaching signal; not a benchmark.

Open GIF · Static PNG · Source arrays (NPZ) · Trace metadata

Follow the four steps

1. Generate perturbations

Normalize the input, draw seeded noise, and decompose the noise realizations.

2. Average first IMFs

Apply EMD to each perturbed input and average its first IMF.

3. Update adaptively

Perturb the current residual with the next noise mode, average local means, and extract the next cIMF.

4. Retain the residue

Continue until the stopping criterion, then retain the remaining signal for additive reconstruction.

Parameters that change the result

Parameter Effect on the computation
trials Number of ensemble members; this small animation uses 8, while DeTime's default is 100.
epsilon Controls the perturbation scale; this visibility-oriented trace uses 0.04, not the default 0.005.
seed and n_jobs The trace uses seed 42 and serial execution. Preserve both for reproducibility.
primary_period Affects DeTime's grouping after the upstream component extraction.

What this animation computes

Trial inputs, first IMFs, and adaptive local means recorded from EMD-signal 1.10.0; max_imf=3 bounds this upstream teaching run. DeTime's example below exposes the public controls and does not set this internal trace cap.

Interpretation

  • Different CEEMDAN variants exist; PyEMD includes the later improved formulation documented by its authors.
  • An ensemble average does not establish that an IMF is a unique physical component.
  • Raw DeTime IMF arrays use (mode, time, channel), including a singleton channel for one series.

Try the method

Use this configuration with DecompositionConfig and decompose. The animation generator supplies the teaching input and records intermediate arrays.

{
  "method": "CEEMDAN",
  "params": {
    "trials": 8,
    "epsilon": 0.04,
    "primary_period": 24
  },
  "seed": 42,
  "n_jobs": 1,
  "backend": "python"
}

See the configuration reference for the full interface and optional dependencies.

Sources and reproduction

Regenerate this animation with python scripts/generate_method_animations.py --methods CEEMDAN. The reproduction guide explains the environment, numerical checks, coverage manifest, and how to inspect the stored arrays.

Code

case = CASES["CEEMDAN"]
run_gallery_case("CEEMDAN")

Output

Decomposition Plot

CEEMDAN decomposition