Skip to content

example_fgen_basic.get_wavelength#

Get wavelength of light given its frequency

This is what Python users use to access the Fortran. It is been written by hand here, but will be auto-generated in future (including docstrings).

Functions:

Name Description
get_wavelength

Get wavelength of light

get_wavelength_plain

Get wavelength of light using values without units (i.e. 'plain' values)

get_wavelength #

get_wavelength(frequency: Quantity) -> Quantity

Get wavelength of light

Parameters:

Name Type Description Default
frequency Quantity

Frequency for which to get the wavelength

required

Returns:

Type Description
Quantity

Wavelength of light for given frequency

Source code in src/example_fgen_basic/get_wavelength.py
def get_wavelength(
    frequency: pint.registry.UnitRegistry.Quantity,
) -> pint.registry.UnitRegistry.Quantity:
    """
    Get wavelength of light

    Parameters
    ----------
    frequency
        Frequency for which to get the wavelength

    Returns
    -------
    :
        Wavelength of light for given `frequency`
    """
    frequency_m = frequency.to("Hz").m

    res_m = get_wavelength_plain(frequency_m)

    # Could use frequency._REGISTRY, but private, not sure how risky that would be
    # Have asked here https://github.com/hgrecco/pint/issues/2207#issuecomment-3178361201
    res = frequency.__class__(res_m, "m")

    return res

get_wavelength_plain #

get_wavelength_plain(frequency: float) -> float

Get wavelength of light using values without units (i.e. 'plain' values)

Parameters:

Name Type Description Default
frequency float

Frequency for which to get the wavelength

required

Returns:

Type Description
float

Wavelength of light for given frequency

Source code in src/example_fgen_basic/get_wavelength.py
def get_wavelength_plain(frequency: float) -> float:
    """
    Get wavelength of light using values without units (i.e. 'plain' values)

    Parameters
    ----------
    frequency
        Frequency for which to get the wavelength

    Returns
    -------
    :
        Wavelength of light for given `frequency`
    """
    res: float = m_get_wavelength_w.get_wavelength(frequency)

    return res