Reader
juobs.read_mesons — Functionread_mesons(path::String, g1::Union{String, Nothing}=nothing, g2::Union{String, Nothing}=nothing; id::Union{String, Nothing}=nothing, legacy::Bool=false)
read_mesons(path::Vector{String}, g1::Union{String, Nothing}=nothing, g2::Union{String, Nothing}=nothing; id::Union{String, Nothing}=nothing, legacy::Bool=false)This function read a mesons dat file at a given path and returns a vector of CData structures for different masses and Dirac structures. Dirac structures g1 and/or g2 can be passed as string arguments in order to filter correaltors. ADerrors id can be specified as argument. If is not specified, the id is fixed according to the ensemble name (example: "H400"-> id = "H400")
*For the old version (without smearing, distance preconditioning and theta) set legacy=true.
Examples:
read_mesons(path)
read_mesons(path, "G5")
read_mesons(path, nothing, "G5")
read_mesons(path, "G5", "G5")
read_mesons(path, "G5", "G5", id="H100")
read_mesons(path, "G5_d2", "G5_d2", legacy=true)juobs.read_ms — Functionread_ms(path::String; id::Union{String, Nothing}=nothing, dtr::Int64=1, obs::String="Y")Reads openQCD ms dat files at a given path. This method return YData:
t(t): flow time valuesobs(icfg, x0, t): the time-slice sums of the densities of the observable (Wsl, Ysl or Qsl)vtr: vector that contains trajectory numberid: ensmble id
dtr = dtr_cnfg / dtr_ms, where dtr_cnfg is the number of trajectories computed before saving the configuration. dtr_ms is the same but applied to the ms.dat file.
Examples:
Y = read_ms(path)juobs.read_ms1 — Functionread_ms1(path::String; v::String="1.2")Reads openQCD ms1 dat files at a given path. This method returns a matrix W[irw, icfg] that contains the reweighting factors, where irw is the rwf index and icfg the configuration number. The function is compatible with the output files of openQCD v=1.2, 1.4 and 1.6. Version can be specified as argument.
Examples:
read_ms1(path)
read_ms1(path, v="1.4")
read_ms1(path, v="1.6")juobs.read_md — Functionread_md(path::String)Reads openQCD pbp.dat files at a given path. This method returns a matrix md[irw, icfg] that contains the derivatives $dS/dm$, where $md[irw=1] = dS/dm_l$ and $md[irw=2] = dS/dm_s$
$Seff = -tr(log(D+m))$
$dSeff/ dm = -tr((D+m)^-1)$
Examples:
md = read_md(path)juobs.truncate_data! — Functiontruncate_data!(data::YData, nc::Int64)
truncate_data!(data::Vector{YData}, nc::Vector{Int64})
truncate_data!(data::Vector{CData}, nc::Int64)
truncate_data!(data::Vector{Vector{CData}}, nc::Vector{Int64})Truncates the output of read_mesons and read_ms taking the first nc configurations.
Examples:
#Single replica
dat = read_mesons(path, "G5", "G5")
Y = read_ms(path)
truncate_data!(dat, nc)
truncate_data!(Y, nc)
#Two replicas
dat = read_mesons([path1, path2], "G5", "G5")
Y = read_ms.([path1_ms, path2_ms])
truncate_data!(dat, [nc1, nc2])
truncate_data!(Y, [nc1, nc2])