prsctrl.measurement.settings.PrsSettings#

class PrsSettings(modes: dict[str, ~prsctrl.measurement.settings.ModeSettings]=<factory>, general: MeasurementSettings = <factory>, laser: LaserSettings | None = None, led: LedSettings | None = None, monochromators: list[MonochromatorSettings] = <factory>)[source]#

Bases: SettingsClass

All settings for a photoreflectance or phototransmittance measurement.

Methods

as_dict

Convenience wrapper for dataclasses.asdict(self)

from_dict

Recursively construct a SettingsClass from a dictionary.

load_yaml

prepare

Apply pump power density setting.

save_yaml

Attributes

laser

led

modes

Mode key (ref/tra): mode settings

general

monochromators

A list of monochromator setting settings is supported to allow for dual monochromator setups.

as_dict() dict#

Convenience wrapper for dataclasses.asdict(self)

classmethod from_dict(data: dict)#

Recursively construct a SettingsClass from a dictionary. If the value of a field is another SettingsClass, from_dict will be called for that field as well. Handled are: - SettingsClass - list[SettingsClass] - dict[<any>, SettingsClass] - all of the above as Optional

Raises:
  • ValueError – If data contains a value that has the wrong type for the field of cls (ONLY if the type is a subclass of SettingsClass! Other types are not enforced)

  • KeyError – If data contains a key that is not a field name of cls

modes: dict[str, ModeSettings]#

Mode key (ref/tra): mode settings

monochromators: list[MonochromatorSettings]#

A list of monochromator setting settings is supported to allow for dual monochromator setups.

prepare(power_density_to_laser_power_mW: Callable[[float], float] | None = None, power_density_to_led_current_A: Callable[[float], float] | None = None)[source]#

Apply pump power density setting. :param power_density_to_laser_power_mW: Function to convert pump power density to laser power density. :param power_density_to_led_current_A: Function to convert pump power density to led current density.