colour.models.exponent_function_monitor_curve

colour.models.exponent_function_monitor_curve(x, exponent=1, offset=0, style='monCurveFwd')[source]

Defines the Monitor Curve exponent transfer function.

Parameters
  • x (numeric or array_like) – Data to undergo the monitor curve exponential conversion.

  • exponent (numeric or array_like, optional) – Exponent value used for the conversion.

  • offset (numeric or array_like, optional) – Offset value used for the conversion.

  • style (str, optional) –

    {‘monCurveFwd’, ‘monCurveRev’, ‘monCurveMirrorFwd’, ‘monCurveMirrorRev’}, 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

numeric or ndarray

Raises

ValueError – If the style is not defined.

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...