prsctrl.measurement.settings.MonochromatorSettings#
- class MonochromatorSettings(resolution_nm: float | None = 1.0, resolution_eV: float | None = None)[source]#
Bases:
SettingsClassMonochromator settings, to apply a bandwidth/resolution
Methods
Convenience wrapper for dataclasses.asdict(self)
Recursively construct a
SettingsClassfrom a dictionary.Attributes
- __annotations__ = {'resolution_eV': typing.Optional[float], 'resolution_nm': typing.Optional[float]}#
- __dataclass_fields__ = {'resolution_eV': Field(name='resolution_eV',type=typing.Optional[float],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'doc': 'Resolution in eV.', 'metadatas': {'float': {'decimals': 3, 'valid': (0.001, 1, 0.001), 'default': 0.01}}}),kw_only=False,_field_type=_FIELD), 'resolution_nm': Field(name='resolution_nm',type=typing.Optional[float],default=1.0,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'doc': 'Resolution in nm.', 'metadatas': {'float': {'decimals': 3, 'valid': (0.001, 100, 0.1), 'default': 1.0}}}),kw_only=False,_field_type=_FIELD)}#
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False,match_args=True,kw_only=False,slots=False,weakref_slot=False)#
- __dict__ = mappingproxy({'__module__': 'prsctrl.measurement.settings', '__firstlineno__': 323, '__annotations__': {'resolution_nm': typing.Optional[float], 'resolution_eV': typing.Optional[float]}, '__doc__': '\nMonochromator settings, to apply a bandwidth/resolution\n', 'resolution_nm': 1.0, 'resolution_eV': None, 'apply': <function MonochromatorSettings.apply>, '__static_attributes__': (), '__dataclass_params__': _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False,match_args=True,kw_only=False,slots=False,weakref_slot=False), '__dataclass_fields__': {'resolution_nm': Field(name='resolution_nm',type=typing.Optional[float],default=1.0,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'doc': 'Resolution in nm.', 'metadatas': {'float': {'decimals': 3, 'valid': (0.001, 100, 0.1), 'default': 1.0}}}),kw_only=False,_field_type=_FIELD), 'resolution_eV': Field(name='resolution_eV',type=typing.Optional[float],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'doc': 'Resolution in eV.', 'metadatas': {'float': {'decimals': 3, 'valid': (0.001, 1, 0.001), 'default': 0.01}}}),kw_only=False,_field_type=_FIELD)}, '__replace__': <function _replace>, '__hash__': None, '__init__': <function MonochromatorSettings.__init__>, '__repr__': <function MonochromatorSettings.__repr__>, '__eq__': <function MonochromatorSettings.__eq__>, '__match_args__': ('resolution_nm', 'resolution_eV')})#
- __eq__(other)#
Return self==value.
- __firstlineno__ = 323#
- __hash__ = None#
- __init__(resolution_nm: float | None = 1.0, resolution_eV: float | None = None) None#
- __match_args__ = ('resolution_nm', 'resolution_eV')#
- __module__ = 'prsctrl.measurement.settings'#
- __or__(other)#
Merge with another settings class or a dictionary.
- __replace__(**changes)#
- __repr__()#
Return repr(self).
- __static_attributes__ = ()#
- __weakref__#
list of weak references to the object
- apply(device: Monochromator)[source]#
- as_dict() dict#
Convenience wrapper for dataclasses.asdict(self)
- classmethod from_dict(data: dict)#
Recursively construct a
SettingsClassfrom 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 (Union with
None)a Union with any handled types
- classmethod load_yaml(yaml_path: str, loader=<class 'yaml.loader.Loader'>)#
- resolution_eV: float | None = None#
- resolution_nm: float | None = 1.0#
- save_yaml(yaml_path: str)#