Deborah.jl Project Documentation
Welcome to the documentation for the Deborah.jl!
Deborah.Deborah — Module module DeborahDeborah.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:
Deborah.DeborahCore— ML-based (supervised-learning) trace estimation with bias correction (build features, runRidge/Lasso/LightGBM, write summaries). Although designed primarily for trace estimation used byDeborah.EstherandDeborah.Miriam,Deborah.DeborahCorecan in fact handle any configuration-indexed observables with the same data layout, enabling a general supervised-learning and bias-correction workflow beyond traces.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).Deborah.Miriam— multi-ensemble reweighting & interpolation ($\kappa$-reweighting,OG/P1/P2estimators for reweighted observables, transition $\kappa$ determination).Deborah.DeborahThreads/Deborah.EstherThreads/Deborah.MiriamThreads— batch/threaded dispatchers for each stage.Deborah.DeborahDocument/Deborah.EstherDocument/Deborah.MiriamDocument— prepareJLD2snapshots.Deborah.Rebekah/Deborah.RebekahMiriam— plotting & I/O helpers (heatmaps, reweighting curves).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).Deborah.Sarah— shared utilities (logging,TOMLhelpers, 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)
Deborah.Sarah— logging, config, naming, partitioning, resampling, summary utilsDeborah.DeborahCore— config → features/targets → ML sequences → bias-corrected outputsDeborah.Esther— traces → Q-moments → cumulants → resampled summaries (single-ensemble workflow)Deborah.Miriam— multi-ensemble $\kappa$-reweighting,OG/P1/P2, transition-point $\kappa$ findingDeborah.DeborahThreads/Deborah.EstherThreads/Deborah.MiriamThreads— threaded batch runnersDeborah.DeborahDocument/Deborah.EstherDocument/Deborah.MiriamDocument— document prep (JLD2dirs)Deborah.Rebekah/Deborah.RebekahMiriam— loaders, heatmaps, reweighting plots ($\LaTeX$-friendly)Deborah.Rahab— correlation matrices, histograms, histories/$\tau_\text{int}$, block/bin scans, $T=0$ scaling
Exported Entry Points
Core single-run
Deborah.DeborahCore.DeborahRunner.run_DeborahDeborah.Esther.EstherRunner.run_EstherDeborah.Miriam.MiriamRunner.run_Miriam
Bridged pipelines
Deborah.DeborahEsther.DeborahEstherRunner.run_Deborah_EstherDeborah.DeborahEstherMiriam.DeborahEstherMiriamRunner.run_Deborah_Esther_Miriam
Threaded/batch runners
Deborah.DeborahThreads.DeborahThreadsRunner.run_DeborahThreadsDeborah.EstherThreads.EstherThreadsRunner.run_EstherThreadsDeborah.MiriamThreads.MiriamThreadsRunner.run_MiriamThreadsDeborah.MiriamThreads.MiriamThreadsRunner.run_MiriamThreadsCheck
Document layers
Deborah.DeborahDocument.DeborahDocumentRunner.run_DeborahDocumentDeborah.EstherDocument.EstherDocumentRunner.run_EstherDocumentDeborah.MiriamDocument.MiriamDocumentRunner.run_MiriamDocument
Interactive wizards (REPL)
Deborah.Elijah.DeborahWizardRunner.run_DeborahWizardDeborah.Elijah.EstherWizardRunner.run_EstherWizardDeborah.Elijah.MiriamWizardRunner.run_MiriamWizardDeborah.Elijah.DeborahThreadsWizardRunner.run_DeborahThreadsWizardDeborah.Elijah.EstherThreadsWizardRunner.run_EstherThreadsWizardDeborah.Elijah.MiriamThreadsWizardRunner.run_MiriamThreadsWizard
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; setJULIA_NUM_THREADSto control width. - Artifacts: each stage writes structured text tables and
JLD2snapshots 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:
LightGBMis available viaJuliaAI/MLJ.jlorPyCall.jl(when configured).
See Also
Deborah.DeborahCore,Deborah.Esther,Deborah.Miriam,Deborah.DeborahEsther,Deborah.DeborahEstherMiriam,Deborah.DeborahThreads,Deborah.EstherThreads,Deborah.MiriamThreads,Deborah.DeborahDocument,Deborah.EstherDocument,Deborah.MiriamDocument,Deborah.Rebekah,Deborah.RebekahMiriam,Deborah.Rahab,Deborah.Elijah,Deborah.Sarah.