function plat_av(obs::Vector{uwreal},plat::Vector{Int64},W::Matrix{Float64},wpm::Union{Dict{Int64,Vector{Float64}},Dict{String,Vector{Float64}},Nothing}=nothing)
@@ -1324,7 +1316,10 @@ function fit_routine(model::Function,
...
@@ -1324,7 +1316,10 @@ function fit_routine(model::Function,
uwerr.(par);
uwerr.(par);
println(logfile,"juobs.fit_routine output:")
println(logfile,"juobs.fit_routine output:")
println(logfile,"\t\tFit routine in [$(xdata[1]),...,$(xdata[end])]")
println(logfile,"\t\tFit routine in [$(xdata[1]),...,$(xdata[end])]")
println(logfile,"\t\tparameters :",par...)
println(logfile,"\t\tparameters :")
forpinpar
println(logfile,"\t\t\t",p)
end
println(logfile,"\t\tchi2: ",chi2)
println(logfile,"\t\tchi2: ",chi2)
println(logfile,"\t\tchiexp: ",chiexp)
println(logfile,"\t\tchiexp: ",chiexp)
println(logfile,"\t\tpvalue: ",pval)
println(logfile,"\t\tpvalue: ",pval)
...
@@ -1333,510 +1328,172 @@ function fit_routine(model::Function,
...
@@ -1333,510 +1328,172 @@ function fit_routine(model::Function,
return(par=par,chi2=chi2,chiexp=chiexp,pval=pval)
return(par=par,chi2=chi2,chiexp=chiexp,pval=pval)
end
end
#= function fit_routine(model::Vector{Function}, xdata::Vector{Array{Float64, N}} where N, ydata::Vector{Array{uwreal, N}} where N, param::Int64; wpm::Union{Dict{Int64,Vector{Float64}},Dict{String,Vector{Float64}}, Nothing}=nothing,
"""
correlated_fit::Bool=false)
check_size(M,n)
if !(length(model) == length(xdata) == length(ydata))
error("Dimension mismatch")
end
N = length(model)
dat = ydata[1]
Check if `M` has sizes all equal to n or, if is empty
idx = Vector{Vector{Int64}}(undef, N)
"""
e = Vector{Vector{Float64}}(undef, N)
function check_sizes(M,n)
j = 1
iflength(M)==0||all(size(M).==n)
for i = 1:N
returntrue
if isnothing(wpm)
uwerr.(ydata[i])
else
# println(yaux for yaux in ydata[i])
for yaux in ydata[i]
[uwerr(yaux[k], wpm) for k in 1:length(yaux)]
end
# [[uwerr(yaux[k], wpm) for k in eachindex(yaux)] for yaux in ydata[i]]