conatus.expert.symmetry_breaking_check¶
- conatus.expert.symmetry_breaking_check(solver, sol, *, dense_max=2000, unstable_tol, coupling_tol, symmetry_tol=1e-10)[source]¶
Stability of a reflection-symmetric equilibrium (R u = u) in each isotypic component of the reflection R: the Jacobian commutes with R, so its spectrum splits into the symmetric block (R v = v, what a subspace computation sees) and the antisymmetric block (R v = −v, invisible there). Both blocks are computed (dense, size ≤
dense_max, explicit). The cross blocks (sym → anti and anti → sym) are measured; the check is refused if their norm relative to the diagonal blocks exceedscoupling_tol. An eigenvalue counts as unstable if Re λ >unstable_tol(explicit, reported). The antisymmetric block holds the marginal translation mode ∂x u (λ ≈ 0): it is not identified and removed; it stays out of the count only because its Re λ is belowunstable_tol(sounstable_tolmust exceed its numerical |Re λ|). The solution must satisfy max|R u − u| <=symmetry_tol· max|u| (declared, returned).- Parameters:
sol (ECSSolution)
dense_max (int)
unstable_tol (float)
coupling_tol (float)
symmetry_tol (float)
- Return type:
dict