extensions = ["csv", "ada", "bin", "gt3x"]

[epocher]
    ai.name = "Activity Index"
    ai.algorithm = "ActivityIndex"
    ai.desc = "Activity Index — Bai et al. (2013)"
    mvm.name = "Mean Vector Magnitude"
    mvm.algorithm = "MVM"
    mvm.desc = "Mean Vector Magnitude — GeneActiv-style'"
    mims.name = "MIMS"
    mims.algorithm = "MIMS"
    mims.desc = "MIMS — Dinesh et al. (2019)"
    downsampler.name = "Standard downsampling"
    downsampler.algorithm = "Downsampler"
    downsampler.desc = "Standard downsampling (anti-aliased)"

[scorer]
    ck.name = "Cole Kripke"
    ck.algorithm = "ColeKripke"
    ck.desc = "Cole-Kripke filter — Cole et al. (1992)"
    sazonov.name = "Sazonov"
    sazonov.algorithm = "Sazonov"
    sazonov.desc = "Sazonov algorithm — Sazonov et al. (2004)"
    webster.name = "Webster"
    webster.algorithm = "Webster"
    webster.desc = "Webster algorithm — Webster et al. (1989)"
    ucsd.name = "Ucsd"
    ucsd.algorithm = "Ucsd"
    ucsd.desc = "UCSD algorithm — Jean-Louis et al. (2001)"
    scripps.name = "Scripps"
    scripps.algorithm = "Scripps"
    scripps.desc = "Scripps Clinic algorithm — Kripke et al. (2012)"
    ufa.name = "Unified Filter"
    ufa.algorithm = "UFA"
    ufa.desc = "Unified Filter Algorithm — Biegański et al. (2026), auto-threshold"

[long]
    linear.name = "Linear Cosinor"
    linear.algorithm = "Linear"
    linear.desc = "Linear Cosinor — known period, linear fit"
    nonlinear.name = "Nonlinear Cosinor"
    nonlinear.algorithm = "Nonlinear"
    nonlinear.desc = "Nonlinear Cosinor — unknown period, nonlinear fit"
    antilogistic.name = "Antilogistic-transform Cosinor"
    antilogistic.algorithm = "Antilogistic"
    antilogistic.desc = "Antilogistic-transform Cosinor — asymmetric waveform"
    arctangent.name = "Arctangent-transform Cosinor"
    arctangent.algorithm = "Arctangent"
    arctangent.desc = "Arctangent-transform Cosinor — asymmetric waveform"
    hill.name = "Hill-transform Cosinor"
    hill.algorithm = "Hill"
    hill.desc = "Hill-transform Cosinor — asymmetric waveform"
    dfa.name = "DFA"
    dfa.algorithm = "DFA"
    dfa.desc = "Detrended Fluctuation Analysis — Hurst exponent"
    ar.name = "AR model spectrum"
    ar.algorithm = "Spectrum"
    ar.desc = "AR spectral analysis — circadian period estimation"
    simplenonparametric.name = "Simple Nonparametric"
    simplenonparametric.algorithm = "SimpleNonparametric"
    simplenonparametric.desc = "Nonparametric circadian metrics: IS, IV, M10, L5"

[presets.cole_kripke]
    abbreviation = false
    epocher.name = "Activity Index"
    epocher._epoch_length = 60
    scorer.name = "Cole Kripke"
    scorer.threshold = 0

[presets.unified_filter_60]
    abbreviation = false
    epocher.name = "Activity Index"
    epocher._epoch_length = 60
    scorer.name = "Unified Filter"
    scorer.threshold = 0

[presets.unified_filter_30]
    abbreviation = false
    epocher.name = "Activity Index"
    epocher._epoch_length = 30
    scorer.name = "Unified Filter"
    scorer.threshold = 0

[presets.simple_nonparametric]
    abbreviation = false
    epocher.name = "Activity Index"
    epocher._epoch_length = 60
    long.name = "Simple Nonparametric"

[presets.cosinor_linear]
    abbreviation = false
    epocher.name = "Activity Index"
    epocher._epoch_length = 60
    long.name = "Nonlinear Cosinor"
    long.use_bootstrap = false

[presets.cosinor_hill]
    abbreviation = false
    epocher.name = "Activity Index"
    epocher._epoch_length = 60
    long.name = "Hill-transform Cosinor"
    long.use_bootstrap = false

[presets.dfa]
    abbreviation = true
    epocher.name = "Activity Index"
    epocher._epoch_length = 60
    long.name = "DFA"

[presets.ar]
    abbreviation = true
    epocher.name = "Activity Index"
    epocher._epoch_length = 600
    long.name = "AR model spectrum"
    long.use_bootstrap = false
