Commit 28b0e3b8 authored by Alessandro 's avatar Alessandro

last updates from ift laptop

parent d1cf0981
......@@ -113,11 +113,14 @@ println("\n Matching Procedure \n")
ens.t0 = t0(ens.ensinfo.beta)
ens.a = a(ens.ensinfo.beta)
end
target = ens.a * (2/3*M[1] + 1/3* M[3])/ hc
#target = ens.a * (2/3*M[1] + 1/3* M[3])/ hc
target = ens.a * M[5] / hc
if !ens.ensinfo.deg
ens.muh_target = match_muc(muh, ens.m_lh, ens.m_sh, target)
#ens.muh_target = match_muc(muh, ens.m_lh, ens.m_sh, target)
ens.muh_target = match_muc_heavymass(muh, ens.m_hh, target)
else
ens.muh_target = match_muc(muh, ens.m_lh, ens.m_sh, target)
#ens.muh_target = match_muc(muh, ens.m_lh, ens.m_sh, target)
ens.muh_target = match_muc_heavymass(muh, ens.m_hh, target)
end
uwerr(ens.muh_target)
println(t0, "\n", a, "\n", ens.muh_target)
......@@ -583,31 +586,35 @@ end
phi2 = Vector{uwreal}(undef,length(ensembles))
sector["ll"] ? phi2 = 8 .* getfield.(ensobs,:t0) .* getfield.(ensobs,:m_ll).^2 : phi2 = 8 .* getfield.(ensobs,:t0) .* getfield.(getfield.(ensobs,:ensinfo),:mpi).^2
phih = Vector{uwreal}(undef, length(ensembles))
phih = sqrt.( 8 .* getfield.(ensobs, :t0)) .* (2/3 .* getfield.(ensobs, :m_lh_match) .+ 2/3 .* getfield.(ensobs, :m_sh_match))
phih = sqrt.( 8 .* getfield.(ensobs, :t0)) .*getfield.(ensobs, :m_hh_match)
phih_ph = M_values[5] * t0_ph[1] / hc
#phih = sqrt.( 8 .* getfield.(ensobs, :t0)) .*(2/3 .* getfield.(ensobs, :m_lh_match) .+ 1/3 .* getfield.(ensobs, :m_sh_match))
#phih_ph = (2/3 * M_values[1] + 1/3 * M_values[3]) * t0_ph[1] / hc
phi2_ph = (t0_ph[1] * 139.57039 / hc)^2
uwerr(phi2_ph)
#fit routine
x = [1 ./(8 .* getfield.(ensobs,:t0)) phi2 phih] #x[1] = a^2 / (8t0), x[2] = 8t0 mpi^2, x[3] = sqrt(8t0) m_flav_av
uwerr.(x)
#modify CL+chiral fit model
@. cl_chir_model(x, p) = (p[1] + p[2] * x[:, 1] + p[5] * x[:, 1].^2 ) + (p[3]) * x[:, 2] + p[4] * x[:,2].^2 #linear fits
@. cl_chir_model(x, p) = (p[1] + p[2] * x[:, 1] ) + (p[3]) * x[:, 2] + p[4] * x[:,1] * x[:,3].^2 #linear fits
test_charm = uwreal(0.0)
xarr = Float64.(range(0.0, stop=0.05, length=100))
for k = [1:1]
par = fit_routine(cl_chir_model, value.(x), muc, 5)
test_charm = par[1] + par[3] * phi2_ph + par[4] * phi2_ph^2
par = fit_routine(cl_chir_model, value.(x), muc, 4)
test_charm = par[1] + par[3] * phi2_ph # + par[4] * phih_ph^2
uwerr(test_charm)
y = Vector{uwreal}(undef, 100)
for j=1:100
y[j] = par[1] + par[2] * xarr[j] + par[3] * phi2_ph + par[4] * phi2_ph^2
y[j] = par[1] + par[2] * xarr[j] + par[3] * phi2_ph
end
uwerr.(y)
figure()
for b in unique(phi2) #select point with same beta
nn = findall(x-> x == b, phi2)
#lgnd = string(L"$m_\pi = $", Int32(round(sqrt(value(b))*hc/t0_ph_value[1], sigdigits=3)), " MeV")
errorbar(value.(x[nn,1]), value.(muc[nn]), err.(muc[nn]), ms=5, fmt="s", mfc="none", mew=0.8, elinewidth=0.8, capsize=2)#, label=lgnd)
lgnd = string(L"$m_\pi = $", Int32(round(sqrt(value(b))*hc/t0_ph_value[1], sigdigits=3)), " MeV")
errorbar(value.(x[nn,1]), value.(muc[nn]), err.(muc[nn]), ms=5, fmt="s", mfc="none", mew=0.8, elinewidth=0.8, capsize=2, label=lgnd)
end
fill_between(xarr, value.(y) .+ err.(y),value.(y) .- err.(y) , color="tomato", alpha=0.4)
lgnd=L"$\mathrm{CL}$"
......@@ -616,7 +623,7 @@ for k = [1:1]
xlabel(L"$a^2/8t_0$")
#ylabel(ylbl[k])
xlim(-0.002,0.05)
#ylim(2.8,3.4)
ylim(2.4,3.4)
legend(ncol=2)
display(gcf())
t = string("fit_phi2=0", ttl_obs[k], ".pdf")
......
......@@ -318,6 +318,11 @@ function match_muc(muh, m_lh, m_sh, target)
muh_target = x_lin_fit(par, target)
return muh_target
end
function match_muc_heavymass(muh, m_hh, target)
par, chi2exp = lin_fit(muh, m_hh)
muh_target = x_lin_fit(par, target)
return muh_target
end
function get_ll(mu_list, obs::Array{juobs.Corr}, deg::Bool)
mul, mus, muh = get_mu(mu_list, deg)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment