Learn R Programming

LambertW (version 0.6.4)

W_gamma: Inverse transformation for skewed Lambert W RVs

Description

Inverse transformation for skewed Lambert W RVs and its derivative.

Usage

W_gamma(z, gamma = 0, branch = 0)

deriv_W_gamma(z, gamma = 0, branch = 0)

Arguments

z

a numeric vector of real values; note that W(Inf, branch = 0) = Inf.

gamma

skewness parameter; by default gamma = 0, which implies W_gamma(z) = z.

branch

either 0 or -1 for the principal or non-principal branch solution.

Value

numeric; if \(z\) is a vector, so is the output.

Details

A skewed Lambert W\(\times\) F RV \(Z\) (for simplicity assume zero mean, unit variance input) is defined by the transformation (see H_gamma) $$ z = U \exp(\gamma U) =: H_{\gamma}(U), \quad \gamma \in \mathbf{R}, $$ where \(U\) is a zero-mean and/or unit-variance version of the distribution \(F\).

The inverse transformation is \(W_{\gamma}(z) := \frac{W(\gamma z)}{\gamma}\), where \(W\) is the Lambert W function.

W_gamma(z, gamma, branch = 0) (and W_gamma(z, gamma, branch = -1)) implement this inverse.

If \(\gamma = 0\), then \(z = u\) and the inverse also equals the identity.

If \(\gamma \neq 0\), the inverse transformation can be computed by $$ W_{\gamma}(z) = \frac{1}{\gamma} W(\gamma z). $$

Same holds for W_gamma(z, gamma, branch = -1).

The derivative of \(W_{\gamma}(z)\) with respect to \(z\) simplifies to $$ \frac{d}{dz} W_{\gamma}(z) = \frac{1}{\gamma} \cdot W'(\gamma z) \cdot \gamma = W'(\gamma z) $$ deriv_W_gamma implements this derivative (for both branches).

See Also

H_gamma