Skip to content

Commit b5e6425

Browse files
Implemented suggest changes
1 parent 82eb067 commit b5e6425

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/sipmfit.jl

+9-8
Original file line numberDiff line numberDiff line change
@@ -109,16 +109,17 @@ function fit_sipm_spectrum(pe_cal::Vector{<:Real}, min_pe::Real=0.5, max_pe::Rea
109109
# get pe resolution (FWHM)
110110
get_pe_res = pe -> let sel = in.(μ, (-Δpe_peak_assignment..Δpe_peak_assignment) .+ pe)
111111
model_parameters = [
112-
view(μ_ml, sel),
113-
view(σ_ml, sel),
114-
view(w_ml, sel)
115-
]
112+
Vector(view(μ_ml, sel)),
113+
Vector(view(σ_ml, sel)),
114+
Vector(view(w_ml, sel))
115+
]
116116

117117
# Find maximum of PDF in the expected range, step size depends on the maximum variance of the single gaussians
118-
range_steps = maximum([μ[i].err for i in size(μ)]) / 100
118+
range_steps = maximum(getfield.(view(μ, sel), :err)) / 100
119119
x_max = 0.0
120120
f_max = 0.0
121-
for x_i in 0.8:range_steps:1.2
121+
# Main.@infiltrate
122+
for x_i in minimum(view(μ_ml, sel)):range_steps:maximum(view(μ_ml, sel))
122123
if _gmm_pdf(x_i, model_parameters) > f_max
123124
x_max = x_i
124125
f_max = _gmm_pdf(x_i, model_parameters)
@@ -196,7 +197,7 @@ function _gmm_binned_loglike_func(
196197
end
197198

198199
function _gmm_pdf(x::Real, μ::Vector{<:Real}, σ::Vector{<:Real}, w::Vector{<:Real})
199-
return sum(w .* exp.(-0.5 .* ((x .- μ) ./ σ).^2) ./.* sqrt(2π)))
200+
return sum(@. w * exp(-0.5 * ((x - μ) / σ)^2) /* sqrt(2π)))
200201
end
201202

202-
_gmm_pdf(x::Real, V::Vector{<:Vector{<:Real}}) = _gmm_pdf(x, V[1], V[2], V[3])
203+
_gmm_pdf(x::Real, V::Vector{<:Vector{<:Real}}) = _gmm_pdf(x, V...)

0 commit comments

Comments
 (0)