Unary Operators¶
Class providing unary operators—invertible scalar mappings \(f: \mathbb{R} \to \mathbb{R}\) that transform a value and can be reversed. Common examples include the identity, logarithm, and various monotonic reparametrizations. These operators are used in parameter estimation and output analysis to transform model parameters or property values before comparison with observations (e.g.converting between linear and logarithmic scales).
Default implementation: operatorUnaryIdentity
Methods¶
operate→double precisionApply the unary operator to the scalar input
x, returning the transformed value \(f(x)\).double precision, intent(in ) :: x
unoperate→double precisionReverse the unary operation by applying the inverse mapping \(f^{-1}\) to the scalar input
f, returning the original value \(x\) such that operate\((x) = f\).double precision, intent(in ) :: f
jacobian→double precisionCompute the Jacobian of the operation.
double precision, intent(in ) :: x
operatorUnaryIdentity¶
A unary operator implementing the identity transformation \(f(x) = x\); applying this operator leaves the value unchanged, and its inverse is also the identity.
(Default implementation)
Parameters
[redshift](default0.0d0) — The redshift at which the transfer function is defined.
operatorUnaryInverse¶
A unary operator implementing the multiplicative inverse \(f(x) = 1/x\); applying this operator returns the reciprocal of the input value, and the operator is self-inverse.
operatorUnaryLogarithm¶
A unary operator implementing the natural logarithm \(f(x) = \ln(x)\); applying this operator transforms a positive scalar to log-space, and its inverse is the exponential \(f^{-1}(f) = \exp(f)\).