gam.reparam: Finding stable orthogonal re-parameterization of the square...

View source: R/gam.fit3.r

gam.reparamR Documentation

Finding stable orthogonal re-parameterization of the square root penalty.


INTERNAL function for finding an orthogonal re-parameterization which avoids "dominant machine zero leakage" between components of the square root penalty.


gam.reparam(rS, lsp, deriv)



list of the square root penalties: last entry is root of fixed penalty, if fixed.penalty==TRUE (i.e. length(rS)>length(sp)). The assumption here is that rS[[i]] are in a null space of total penalty already; see e.g. totalPenaltySpace and mini.roots.


vector of log smoothing parameters.


if deriv==1 also the first derivative of the log-determinant of the penalty matrix is returned, if deriv>1 also the second derivative is returned.


A list containing

  • S: the total penalty matrix similarity transformed for stability.

  • rS: the component square roots, transformed in the same way.

  • Qs: the orthogonal transformation matrix S = t(Qs)%*%S0%*%Qs, where S0 is the untransformed total penalty implied by sp and rS on input.

  • det: log|S|.

  • det1: dlog|S|/dlog(sp) if deriv >0.

  • det2: hessian of log|S| wrt log(sp) if deriv>1.


Simon N. Wood <>.

mgcv documentation built on July 26, 2023, 5:38 p.m.