diff --git a/src/ReachSets/ContinuousPost/BFFPSV18/reach.jl b/src/ReachSets/ContinuousPost/BFFPSV18/reach.jl index e600ec22..f4482539 100644 --- a/src/ReachSets/ContinuousPost/BFFPSV18/reach.jl +++ b/src/ReachSets/ContinuousPost/BFFPSV18/reach.jl @@ -78,7 +78,8 @@ function reach(problem::Union{IVP{<:CLDS{NUM}, <:LazySet{NUM}}, if output_function == nothing res_type = SparseReachSet{CartesianProductArray{NUM, LazySet{NUM}}} else - res_type = SparseReachSet{Hyperrectangle{NUM}} + # by default, this algorithm uses box overapproximation + res_type = SparseReachSet{Hyperrectangle{NUM, Vector{NUM}, Vector{NUM}}} end res = (N == nothing) ? Vector{res_type}() : Vector{res_type}(undef, N) diff --git a/test/Reachability/solve_continuous.jl b/test/Reachability/solve_continuous.jl index 2fd24452..590b3bfc 100644 --- a/test/Reachability/solve_continuous.jl +++ b/test/Reachability/solve_continuous.jl @@ -72,6 +72,10 @@ s = solve(IVP(LCS(A), X0), # Test reachability options # =============================== +# projection matrix +M = [1.0 0.0 0.0 0.0; 0.0 1.0 0.0 0.0] +s = solve(IVP(LCS(A), X0), Options(:T=>1.0, :projection_matrix=>M), op=BFFPSV18(:δ=>0.1)) + # template directions s = solve(IVP(LCS(A), X0), Options(:T=>0.1, :ε_proj=>1e-5, :set_type_proj=>HPolygon),