colour.models.exponent_function_monitor_curve#
- colour.models.exponent_function_monitor_curve(x: ArrayLike, exponent: ArrayLike = 1, offset: ArrayLike = 0, style: Literal['monCurveFwd', 'monCurveRev', 'monCurveMirrorFwd', 'monCurveMirrorRev'] | str = 'monCurveFwd') NDArrayFloat[source]#
Apply the Monitor Curve exponent transfer function to the specified array.
- Parameters:
x (ArrayLike) – Exponentially encoded data \(x\).
exponent (ArrayLike) – Exponent value used for the conversion.
offset (ArrayLike) – Offset value used for the conversion.
style (Literal['monCurveFwd', 'monCurveRev', 'monCurveMirrorFwd', 'monCurveMirrorRev'] | str) –
Specifies the behaviour for the exponentiation function to operate:
monCurveFwd: Monitor Curve Forward exponential behaviour where the definition applies a power law function with a linear segment near the origin.
monCurveRev: Monitor Curve Reverse exponential behaviour where the definition applies a power law function with a linear segment near the origin.
monCurveMirrorFwd: Monitor Curve Mirror Forward exponential behaviour where the definition applies a power law function with a linear segment near the origin and mirrors the function for values less than zero (i.e., rotationally symmetric around the origin).
monCurveMirrorRev: Monitor Curve Mirror Reverse exponential behaviour where the definition applies a power law function with a linear segment near the origin and mirrors the function for values less than zero (i.e., rotationally symmetric around the origin).
- Returns:
Exponentially converted data.
- Return type:
Examples
>>> exponent_function_monitor_curve(0.18, 2.2, 0.001) np.float64(0.0232240...) >>> exponent_function_monitor_curve( ... -0.18, 2.2, 0.001 ... ) np.float64(-0.0002054...) >>> exponent_function_monitor_curve( ... 0.18, 2.2, 0.001, "monCurveRev" ... ) np.float64(0.4581151...) >>> exponent_function_monitor_curve( ... -0.18, 2.2, 0.001, "monCurveRev" ... ) np.float64(-157.7302795...) >>> exponent_function_monitor_curve( ... 0.18, 2.2, 2, "monCurveMirrorFwd" ... ) np.float64(0.1679399...) >>> exponent_function_monitor_curve( ... -0.18, 2.2, 0.001, "monCurveMirrorFwd" ... ) np.float64(-0.0232240...) >>> exponent_function_monitor_curve( ... 0.18, 2.2, 0.001, "monCurveMirrorRev" ... ) np.float64(0.4581151...) >>> exponent_function_monitor_curve( ... -0.18, 2.2, 0.001, "monCurveMirrorRev" ... ) np.float64(-0.4581151...)