GaussNewtonModel.gn_hessian#
- t3toolbox.fitting.GaussNewtonModel.gn_hessian(p)#
def gn_hessian(self, p: t3m.T3Tangent) -> t3m.T3Tangent:
The Gauss-Newton Hessian action
H p = Π 𝒥ᵀ 𝒥 Π p(H = JᵀJ, not the full Hessian), plus the regularizer termH_R pwhen set.Projects
p(so the caller need not), applies the bare forward then transpose, and projects the result – a tangent at frame. Symmetric. (Corewise:Πis the identity, soH p = 𝒥ᵀ 𝒥 p, which is gauge-singular – fine for first-order methods, needs regularization for Newton.) For the scalar quadratic formpᵀHpalone, prefer the cheapergn_quadratic().