Deborah.Esther.QMomentCalculator
Deborah.Esther.QMomentCalculator.compute_Q_moments — Functioncompute_Q_moments(
trace_rscl::Dict{String, Vector{Any}},
Nf::Int,
jobid::Union{Nothing, String}=nothing
) -> Dict{String, Vector{Float64}}Compute the $Q$-moments ($Q_n \; (n=1,2,3,4)$) for each trace label in the rescaled trace data.
This function iterates over the keys of the input trace dictionary and calculates the 1st through 4th order $Q$-moments for each observable, storing them in a new dictionary with keys formatted as "Q1:label", "Q2:label", etc.
Arguments
trace_rscl::Dict{String, Vector{Any}}: Dictionary where each key corresponds to an observable label (e.g.,"Y_tr"), and each value is a vector of rescaled trace components. Expected to contain at least four elements per label:[trM1, trM2, trM3, trM4].Nf::Int: Number of fermion flavors (used in $Q$-moment calculations).jobid::Union{Nothing, String}: Optional job ID for logging.
Returns
Dict{String, Vector{Float64}}: A dictionary mapping Q-moment labels like"Q1:Y_tr"to their computed values as vectors.
Example
Q = compute_Q_moments(
trace_rscl,
4
)
q2_tr = Q["Q2:Y_tr"]Notes
- Each
Deborah.Esther.SingleQMoment.calc_Q1,Deborah.Esther.SingleQMoment.calc_Q2,Deborah.Esther.SingleQMoment.calc_Q3, andDeborah.Esther.SingleQMoment.calc_Q4must be defined separately and accept the required number of trace inputs and $N_\text{f}$. - Assumes all
trace_rscl[label]` vectors contain at least 4 elements.