libera_utils.footprint_matching.aggregation.weighted_std#

libera_utils.footprint_matching.aggregation.weighted_std(values: ndarray, weights: ndarray, **_: Any) → dict[str, float]#

PSF-weighted standard deviation sqrt(sum(w*x^2)/sum(w) - xbar^2).

This is the within-footprint spread that pairs with weighted_mean(); it is the value stored in every <name>_Standard_Deviation companion variable (see libera_utils.footprint_matching.types.STANDARD_DEVIATION_SUFFIX). The variance is clipped at zero before the square root to absorb floating-point round-off that could otherwise make a near-zero variance slightly negative.