Reader

juobs.read_mesonsFunction
read_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)
source
juobs.read_msFunction
read_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 values

  • obs(icfg, x0, t): the time-slice sums of the densities of the observable (Wsl, Ysl or Qsl)

  • vtr: vector that contains trajectory number

  • id: 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)
source
juobs.read_ms1Function
read_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")
source
juobs.read_mdFunction
read_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)
source
juobs.truncate_data!Function
truncate_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])
source