Deborah.jl Project Documentation

Welcome to the documentation for the Deborah.jl!

Deborah.DeborahModule
   module Deborah

Deborah.jl — End-to-end $\text{Tr} \, M^{-n}$-driven analysis suite (ML → cumulants → reweighting → docs).

Deborah.jl is the top-level module that wires together the full workflow:

  1. Deborah.DeborahCore — ML-based (supervised-learning) trace estimation with bias correction (build features, run Ridge/Lasso/LightGBM, write summaries). Although designed primarily for trace estimation used by Deborah.Esther and Deborah.Miriam, Deborah.DeborahCore can in fact handle any configuration-indexed observables with the same data layout, enabling a general supervised-learning and bias-correction workflow beyond traces.
  2. Deborah.Esther — moment/cumulant analysis for a single ensemble based on $\text{Tr} \, M^{-n} \; (n=1,2,3,4)$ (load/scale traces, compute $Q_n \; (n=1,2,3,4)$ & cumulants, bootstrap/jackknife).
  3. Deborah.Miriam — multi-ensemble reweighting & interpolation ($\kappa$-reweighting, OG/P1/P2 estimators for reweighted observables, transition $\kappa$ determination).
  4. Deborah.DeborahThreads / Deborah.EstherThreads / Deborah.MiriamThreads — batch/threaded dispatchers for each stage.
  5. Deborah.DeborahDocument / Deborah.EstherDocument / Deborah.MiriamDocument — prepare JLD2 snapshots.
  6. Deborah.Rebekah / Deborah.RebekahMiriam — plotting & I/O helpers (heatmaps, reweighting curves).
  7. Deborah.Rahab — pre-analysis reconnaissance module (inter-observable correlation checks, block-size determination for block bootstrap, $T=0$ analysis for estimating lattice spacing and pseudo-scalar meson mass).
  8. Deborah.Sarah — shared utilities (logging, TOML helpers, naming/abbreviations, data I/O, bootstrap/jackknife, summaries).

The module re-exports convenient entry points so typical users can run pipelines with a single function call, or generate configs interactively via REPL "wizards".

Submodules (bird's-eye)

Exported Entry Points

Core single-run

Bridged pipelines

Threaded/batch runners

Document layers

Interactive wizards (REPL)

Minimal Usage (REPL)

julia> using Deborah

# Create configs via wizards
julia> run_DeborahWizard()
julia> run_EstherWizard()
julia> run_MiriamWizard()

# Run single pipelines
julia> run_Deborah("config_Deborah.toml")
julia> run_Esther("config_Esther.toml")
julia> run_Miriam("config_Miriam.toml")

# Run bridged variants
julia> run_Deborah_Esther("config_Esther.toml")
julia> run_Deborah_Esther_Miriam("config_Miriam.toml")

# Run threaded variants
julia> run_DeborahThreads("config_DeborahThreads.toml")
julia> run_EstherThreads("config_EstherThreads.toml")
julia> run_MiriamThreads("config_MiriamThreads.toml")

Notes

  • Indices: all column indices are $1$-based (files & arrays).
  • Abbreviations: optional maps shorten long feature/target tokens in filenames and paths; wizards & runners respect this consistently.
  • Threading: threaded runners dispatch up to Base.Threads.nthreads() jobs in parallel; set JULIA_NUM_THREADS to control width.
  • Artifacts: each stage writes structured text tables and JLD2 snapshots under a stable <location>/<analysis_header>_... layout.
  • Plots/docs: plotting helpers expect JLD2/text outputs; document runners prepare figure folders and $\LaTeX$ scaffolding for downstream PDF builds.
  • Backends: LightGBM is available via JuliaAI/MLJ.jl or PyCall.jl (when configured).

See Also

source