verify_transform_derivative¶
- lsst.multiprofit.verify_transform_derivative(transform: TransformD, value_transformed: float, derivative: float | None = None, abs_max: float = 1000000.0, dx_ratios: Iterable[float] | None = None, **kwargs: Any) None¶
- Verify that the derivative of a transform class is correct. - Parameters:
- transform
- The transform to verify. 
- value_transformed
- The un-transformed value at which to verify the transform. 
- derivative
- The nominal derivative at value_transformed. Must equal transform.derivative(value_transformed). 
- abs_max
- The x value to skip verification if np.abs(derivative) > x. 
- dx_ratios
- Iterable of signed ratios to set dx for finite differencing, where dx = value*ratio (untransformed). 
- **kwargs
- Keyword arguments to pass to np.isclose when comparing derivatives to finite differences. 
 
- Raises:
- RuntimeError
- Raised if the transform derivative doesn’t match finite differences within the specified tolerances. 
 
 - Notes - derivative should only be specified if it has previously been computed for the exact value_transformed, to avoid re-computing it unnecessarily. - Default dx_ratios are [1e-4, 1e-6, 1e-8, 1e-10, 1e-12, 1e-14]. Verification will test all ratios until at least one passes.