jaxvacua.flux_utils.classify_solution#
- classify_solution(model, x, flux, noscale=True, min_tol=1e-06)#
Classify a converged critical-point candidate
(x, flux).Details
Computes the scalar potential \(V\), the F-term norm \(|DW|=\sum_i|D_iW|\), and the Hessian eigenvalues \(\mathrm{eig}(\partial^2 V)\), then labels the point as
SUSY iff \(|DW|<10^{-6}\) (fixed threshold);
minimum iff every Hessian eigenvalue exceeds
min_tol, otherwise saddle.
Eager-evaluation Python routine suitable for one-shot post-Newton classification; a JIT-vmapped batched variant lives on the finder for sample-time use.
- Parameters:
model (
Any) – Finder instance providing_convert_real_to_complex(),scalar_potential(),DW(),ddV_x()andtadpole(). Passed explicitly (rather than via implicitself) so the helper works with anyFluxEFTsubclass without inheritance assumptions.x (
Any) – Converged real-coord solution vector.flux (
Any) – Flux vector at the candidate point.noscale (
bool) – Pass-through toscalar_potential()andddV_x(). Defaults toTrue.min_tol (
float) – Minimum-classification threshold. A point is labelledis_minimum=Trueiff every Hessian eigenvalue exceedsmin_tol. Defaults to1e-6.
- Returns:
dict – Mapping with keys
'V'(float): Scalar potential at the point.'|DW|'(float): \(\sum_i |D_i W|\).'eigenvalues'(np.ndarray): Sorted real Hessian eigenvalues.'is_susy'(bool):|DW| < 1e-6.'is_minimum'(bool): All eigenvalues> min_tol.'Nflux'(float):|tadpole(flux)|.
- Return type:
dict