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]#

Define the Monitor Curve exponent transfer function.

Parameters:
  • x (ArrayLike) – Data to undergo the monitor curve exponential conversion.

  • exponent (ArrayLike) – Exponent value used for the conversion.

  • offset (ArrayLike) – Offset value used for the conversion.

  • style (Literal['monCurveFwd', 'monCurveRev', 'monCurveMirrorFwd', 'monCurveMirrorRev'] | str) –

    Defines the behaviour for the transfer 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:

numpy.ndarray

Examples

>>> exponent_function_monitor_curve(0.18, 2.2, 0.001)  
0.0232240...
>>> exponent_function_monitor_curve(  
...     -0.18, 2.2, 0.001
... )
-0.0002054...
>>> exponent_function_monitor_curve(  
...     0.18, 2.2, 0.001, "monCurveRev"
... )
0.4581151...
>>> exponent_function_monitor_curve(  
...     -0.18, 2.2, 0.001, "monCurveRev"
... )
-157.7302795...
>>> exponent_function_monitor_curve(  
...     0.18, 2.2, 2, "monCurveMirrorFwd"
... )
0.1679399...
>>> exponent_function_monitor_curve(  
...     -0.18, 2.2, 0.001, "monCurveMirrorFwd"
... )
-0.0232240...
>>> exponent_function_monitor_curve(  
...     0.18, 2.2, 0.001, "monCurveMirrorRev"
... )
0.4581151...
>>> exponent_function_monitor_curve(  
...     -0.18, 2.2, 0.001, "monCurveMirrorRev"
... )
-0.4581151...