Skip to content

Commit 73852ec

Browse files
allow dense errors from bad dense algorithms
1 parent b2b372f commit 73852ec

File tree

1 file changed

+7
-9
lines changed

1 file changed

+7
-9
lines changed

src/test_solution.jl

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,12 @@ function appxtrue(sol::AbstractODESolution,sol2::TestSolution)
4141
timeseries_analytic = _sol(sol.t)
4242
errors[:l∞] = maximum(vecvecapply((x)->abs.(x),sol-timeseries_analytic))
4343
errors[:l2] = sqrt(recursive_mean(vecvecapply((x)->float(x).^2,sol-timeseries_analytic)))
44-
if sol.dense
45-
densetimes = collect(linspace(sol.t[1],sol.t[end],100))
46-
interp_u = sol(densetimes)
47-
interp_analytic = _sol(densetimes)
48-
interp_errors = Dict(:L∞=>maximum(vecvecapply((x)->abs.(x),interp_u-interp_analytic)),
49-
:L2=>sqrt(recursive_mean(vecvecapply((x)->float(x).^2,interp_u-interp_analytic))))
50-
errors = merge(errors,interp_errors)
51-
end
44+
densetimes = collect(linspace(sol.t[1],sol.t[end],100))
45+
interp_u = sol(densetimes)
46+
interp_analytic = _sol(densetimes)
47+
interp_errors = Dict(:L∞=>maximum(vecvecapply((x)->abs.(x),interp_u-interp_analytic)),
48+
:L2=>sqrt(recursive_mean(vecvecapply((x)->float(x).^2,interp_u-interp_analytic))))
49+
errors = merge(errors,interp_errors)
5250
else
5351
timeseries_analytic = sol2.u
5452
if sol.t == sol2.t
@@ -78,7 +76,7 @@ function appxtrue(sol::AbstractODESolution,sol2::AbstractODESolution;timeseries_
7876
timeseries_analytic = sol2(sol.t)
7977
errors[:l∞] = maximum(vecvecapply((x)->abs.(x),sol-timeseries_analytic))
8078
errors[:l2] = sqrt(recursive_mean(vecvecapply((x)->float(x).^2,sol-timeseries_analytic)))
81-
if dense_errors && sol.dense
79+
if dense_errors
8280
densetimes = collect(linspace(sol.t[1],sol.t[end],100))
8381
interp_u = sol(densetimes)
8482
interp_analytic = sol2(densetimes)

0 commit comments

Comments
 (0)