Skip to content

Commit

Permalink
Additional if-statement to catch false degree 1 components.
Browse files Browse the repository at this point in the history
  • Loading branch information
PBrdng committed May 24, 2024
1 parent 79b0e38 commit 915d715
Showing 1 changed file with 8 additions and 5 deletions.
13 changes: 8 additions & 5 deletions src/numerical_irreducible_decomposition.jl
Original file line number Diff line number Diff line change
Expand Up @@ -734,7 +734,7 @@ function decompose_with_monodromy!(
threading = threading,
show_progress = show_monodromy_progress,
)

if warning && (trace(res) > options.trace_test_tol)
@warn "Trying to decompose non-complete set of witness points (trace test failed)"
end
Expand All @@ -746,7 +746,7 @@ function decompose_with_monodromy!(
)

complete_orbits = Vector{Set{Int}}()

for orbit in orbits
update_progress!(progress)

Expand All @@ -762,8 +762,11 @@ function decompose_with_monodromy!(

if trace(res_orbit) < options.trace_test_tol

push!(decomposition, WitnessSet(G, L, P_orbit))
push!(complete_orbits, orbit)
# We do not want to add orbits of length 1 in the beginning. Even if they are on an irreducible component of degree > 1, they tend to have small trace.
if length(orbit) > 1 || iter 5
push!(decomposition, WitnessSet(G, L, P_orbit))
push!(complete_orbits, orbit)

Check warning on line 768 in src/numerical_irreducible_decomposition.jl

View check run for this annotation

Codecov / codecov/patch

src/numerical_irreducible_decomposition.jl#L766-L768

Added lines #L766 - L768 were not covered by tests
end
end
end

Expand Down Expand Up @@ -829,7 +832,7 @@ function decompose_with_monodromy!(
setdiff(orbits, complete_orbits)
],
)
)
)
end
else
push!(decomposition, WitnessSet(G, L, P))
Expand Down

0 comments on commit 915d715

Please sign in to comment.