`notLog2`

and `notExp2`

are alternatives to `log`

and `exp`

or `notLog`

and `notExp`

for
re-parameterization of variance parameters. They are used by the
`pdTens`

and `pdIdnot`

classes which in turn implement
smooths for `gamm`

.

The functions are typically used to ensure that smoothing parameters are
positive, but the `notExp2`

is not monotonic: rather it cycles between
`effective zero' and `effective infinity' as its argument changes. The
`notLog2`

is the inverse function of the `notExp2`

only over an
interval centered on zero.

Parameterizations using these functions ensure that estimated smoothing
parameters remain positive, but also help to ensure that the likelihood is
never indefinite: once a working parameter pushes a smoothing parameter below
`effetive zero' or above `effective infinity' the cyclic nature of the
`notExp2`

causes the likelihood to decrease, where otherwise it might
simply have flattened.

This parameterization is really just a numerical trick, in order to get
`lme`

to fit `gamm`

models, without failing due to indefiniteness.
Note in particular that asymptotic results on the likelihood/REML criterion are
not invalidated by the trick,
unless parameter estimates end up close to the effective zero or effective
infinity: but if this is the case then the asymptotics would also have been invalid
for a conventional monotonic parameterization.

This reparameterization was made necessary by some modifications to the
underlying optimization method in `lme`

introduced in nlme 3.1-62. It is
possible that future releases will return to the `notExp`

parameterization.

Note that you can reset `effective zero' and `effective infinity': see below.