From fd05fc124808194d435946f2e5e308b7feae1fd1 Mon Sep 17 00:00:00 2001 From: Felipe Noronha Date: Tue, 27 Aug 2024 19:42:41 -0300 Subject: [PATCH] splinefit: anotate types --- src/splines.jl | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/splines.jl b/src/splines.jl index 0c2cd2c..98a7a9a 100644 --- a/src/splines.jl +++ b/src/splines.jl @@ -62,19 +62,22 @@ function splinefit(x_in::Vector{T}, y_in::Vector{Float64}) :: Spline{T} where {T Y = y_in n = length(x_in) - @assert n == length(y_in) "x_in and y_in doesn't conform on sizes." + + if n != length(y_in) + error("x_in and y_in doesn't conform on sizes.") + end H = [X[i+1] - X[i] for i in 1:(n-1)] # i in [0,...,n-2] A = Y Alpha = [(3/H[i])*(A[i+1] - A[i]) - (3/H[i-1])*(A[i] - A[i-1]) for i in 2:(n-1)] Alpha = [0; Alpha] - L = ones(n) - Mu = zeros(n) - Z = zeros(n) - B = zeros(n) - C = zeros(n) - D = zeros(n) + L = ones(Float64, n) + Mu = zeros(Float64, n) + Z = zeros(Float64, n) + B = zeros(Float64, n) + C = zeros(Float64, n) + D = zeros(Float64, n) for i in 2:n-1 L[i] = 2 * (X[i+1] - X[i-1]) - H[i-1] * Mu[i-1]