Exemplo n.º 1
0
from __future__ import division, unicode_literals

from colour.utilities.documentation import DocstringFloat

__author__ = 'Colour Developers'
__copyright__ = 'Copyright (C) 2013-2018 - Colour Developers'
__license__ = 'New BSD License - http://opensource.org/licenses/BSD-3-Clause'
__maintainer__ = 'Colour Developers'
__email__ = '*****@*****.**'
__status__ = 'Production'

__all__ = ['CIE_E', 'CIE_K', 'K_M', 'KP_M']

CIE_E = DocstringFloat(216 / 24389)
CIE_E.__doc__ = """
*CIE* :math:`\\epsilon` constant.

CIE_E : numeric

Notes
-----
-   The original *CIE* value for :math:`\\epsilon` is
    :math:`\\epsilon=0.008856`, Lindbloom (2003) has shown that this value is
    causing a discontinuity at the junction point of the two functions grafted
    together to create the *Lightness* :math:`L^*` function.

    That discontinuity can be avoided by using the rational representation as
    follows: :math:`\\epsilon=216\\ /\\24389`.

References
Exemplo n.º 2
0
from __future__ import division, unicode_literals

from colour.utilities.documentation import DocstringFloat

__author__ = 'Colour Developers'
__copyright__ = 'Copyright (C) 2013-2019 - Colour Developers'
__license__ = 'New BSD License - https://opensource.org/licenses/BSD-3-Clause'
__maintainer__ = 'Colour Developers'
__email__ = '*****@*****.**'
__status__ = 'Production'

__all__ = ['K_M', 'KP_M']

K_M = DocstringFloat(683)
K_M.__doc__ = """
Rounded maximum photopic luminous efficiency :math:`K_m` value in
:math:`lm\\cdot W^{-1}`.

K_M : numeric

Notes
-----
-   To be adequate for all practical applications the :math:`K_m` value has
    been rounded from the original 683.002 value.

References
----------
:cite:`Wyszecki2000s`
"""
Exemplo n.º 3
0
from colour.utilities.documentation import DocstringFloat

__author__ = 'Colour Developers'
__copyright__ = 'Copyright (C) 2013-2019 - Colour Developers'
__license__ = 'New BSD License - http://opensource.org/licenses/BSD-3-Clause'
__maintainer__ = 'Colour Developers'
__email__ = '*****@*****.**'
__status__ = 'Production'

__all__ = [
    'AVOGADRO_CONSTANT', 'BOLTZMANN_CONSTANT', 'LIGHT_SPEED', 'PLANCK_CONSTANT'
]

AVOGADRO_CONSTANT = DocstringFloat(6.02214179e23)
AVOGADRO_CONSTANT.__doc__ = """
Avogadro constant.

AVOGADRO_CONSTANT : numeric
"""

BOLTZMANN_CONSTANT = DocstringFloat(1.38065e-23)
BOLTZMANN_CONSTANT.__doc__ = """
Boltzmann constant.

BOLTZMANN_CONSTANT : numeric
"""

LIGHT_SPEED = DocstringFloat(299792458)
LIGHT_SPEED.__doc__ = """
Speed of light in vacuum.
Exemplo n.º 4
0
__status__ = 'Production'

__all__ = [
    'FLOATING_POINT_NUMBER_PATTERN', 'INTEGER_THRESHOLD', 'EPSILON',
    'DEFAULT_FLOAT_DTYPE', 'DEFAULT_INT_DTYPE'
]

FLOATING_POINT_NUMBER_PATTERN = '[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?'
"""
Floating point number regex matching pattern.

FLOATING_POINT_NUMBER_PATTERN : unicode
"""

INTEGER_THRESHOLD = DocstringFloat(1e-3)
INTEGER_THRESHOLD.__doc__ = """
Integer threshold value.

INTEGER_THRESHOLD : numeric
"""

EPSILON = np.finfo(np.float_).eps
"""
Default epsilon value for tolerance and singularities avoidance in various
computations.

EPSILON : numeric
"""

DEFAULT_FLOAT_DTYPE = np.float_
"""
Exemplo n.º 5
0
__license__ = "New BSD License - https://opensource.org/licenses/BSD-3-Clause"
__maintainer__ = "Colour Developers"
__email__ = "*****@*****.**"
__status__ = "Production"

__all__ = [
    "CONSTANT_AVOGADRO",
    "CONSTANT_BOLTZMANN",
    "CONSTANT_LIGHT_SPEED",
    "CONSTANT_PLANCK",
]

CONSTANT_AVOGADRO: float = 6.02214179e23
if is_documentation_building():  # pragma: no cover
    CONSTANT_AVOGADRO = DocstringFloat(CONSTANT_AVOGADRO)
    CONSTANT_AVOGADRO.__doc__ = """
Avogadro constant.
"""

CONSTANT_BOLTZMANN: float = 1.38065e-23
if is_documentation_building():  # pragma: no cover
    CONSTANT_BOLTZMANN = DocstringFloat(CONSTANT_BOLTZMANN)
    CONSTANT_BOLTZMANN.__doc__ = """
Boltzmann constant.
"""

CONSTANT_LIGHT_SPEED: float = 299792458
if is_documentation_building():  # pragma: no cover
    CONSTANT_LIGHT_SPEED = DocstringFloat(CONSTANT_LIGHT_SPEED)
    CONSTANT_LIGHT_SPEED.__doc__ = """
Speed of light in vacuum.
Exemplo n.º 6
0
from colour.utilities.documentation import DocstringFloat

__author__ = 'Colour Developers'
__copyright__ = 'Copyright (C) 2013-2019 - Colour Developers'
__license__ = 'New BSD License - https://opensource.org/licenses/BSD-3-Clause'
__maintainer__ = 'Colour Developers'
__email__ = '*****@*****.**'
__status__ = 'Production'

__all__ = [
    'AVOGADRO_CONSTANT', 'BOLTZMANN_CONSTANT', 'LIGHT_SPEED', 'PLANCK_CONSTANT'
]

AVOGADRO_CONSTANT = DocstringFloat(6.02214179e23)
AVOGADRO_CONSTANT.__doc__ = """
Avogadro constant.

AVOGADRO_CONSTANT : numeric
"""

BOLTZMANN_CONSTANT = DocstringFloat(1.38065e-23)
BOLTZMANN_CONSTANT.__doc__ = """
Boltzmann constant.

BOLTZMANN_CONSTANT : numeric
"""

LIGHT_SPEED = DocstringFloat(299792458)
LIGHT_SPEED.__doc__ = """
Speed of light in vacuum.
Exemplo n.º 7
0
from colour.utilities.documentation import (DocstringFloat,
                                            is_documentation_building)

__author__ = 'Colour Developers'
__copyright__ = 'Copyright (C) 2013-2020 - Colour Developers'
__license__ = 'New BSD License - https://opensource.org/licenses/BSD-3-Clause'
__maintainer__ = 'Colour Developers'
__email__ = '*****@*****.**'
__status__ = 'Production'

__all__ = ['CONSTANT_K_M', 'CONSTANT_KP_M']

CONSTANT_K_M = 683
if is_documentation_building():  # pragma: no cover
    CONSTANT_K_M = DocstringFloat(CONSTANT_K_M)
    CONSTANT_K_M.__doc__ = """
Rounded maximum photopic luminous efficiency :math:`K_m` value in
:math:`lm\\cdot W^{-1}`.

CONSTANT_K_M : numeric

Notes
-----
-   To be adequate for all practical applications the :math:`K_m` value has
    been rounded from the original 683.002 value.

References
----------
:cite:`Wyszecki2000s`
"""
Exemplo n.º 8
0
__author__ = 'Colour Developers'
__copyright__ = 'Copyright (C) 2013-2020 - Colour Developers'
__license__ = 'New BSD License - https://opensource.org/licenses/BSD-3-Clause'
__maintainer__ = 'Colour Developers'
__email__ = '*****@*****.**'
__status__ = 'Production'

__all__ = [
    'JND_CIE1976', 'delta_E_CIE1976', 'delta_E_CIE1994', 'delta_E_CIE2000',
    'delta_E_CMC'
]

JND_CIE1976 = 2.3
if is_documentation_building():  # pragma: no cover
    JND_CIE1976 = DocstringFloat(JND_CIE1976)
    JND_CIE1976.__doc__ = """
Just Noticeable Difference (JND) according to *CIE 1976* colour difference
formula, i.e. Euclidean distance in *CIE L\\*a\\*b\\** colourspace.

Notes
-----
A standard observer sees the difference in colour as follows:

-   0 < :math:`\\Delta E^*_{ab}` < 1 : Observer does not notice the difference.
-   1 < :math:`\\Delta E^*_{ab}` < 2 : Only experienced observer can notice the
    difference.
-   2 < :math:`\\Delta E^*_{ab}` < 3:5 : Unexperienced observer also notices
    the difference.
-   3:5 < :math:`\\Delta E^*_{ab}` < 5 : Clear difference in colour is noticed.
-   5 < :math:`\\Delta E^*_{ab}` : Observer notices two different colours.