pyepr.classes.Parameter¶
- class pyepr.classes.Parameter(name, value, unit='', description='', virtual=False, **kwargs)¶
Represents a sequence or pulse parameter.
A general parameter.
- Parameters:
- namestr
The parameter name
- valuefloat or int
The parameter value, eithe initial or static
- unitstr, optional
The unit of parameter, by default None. Leave as None if unitless.
- descriptionstr, optional
A brief description of the parameter, by default None
- axisnp.ndarray, optional
The difference from the intial value for each position in a dynamic axis. Can be n-dimensional, by default None.
- ax_idlist, optional
- virtual: bool, optional
A virtual paramter is only used to vary other parameters, it is not varied itself and will not be directly passed to a spectrometer. This parameter is never inherited. By default, False
- Attributes:
- progressivebool
Is the parameter used in any progression or is it constant
- progdict
A dict containing progressive programs for this parameter. This list has two elements. 1) The axis_id”s and 2) the “axis” of values.
Examples
Creating a static parameter ``` Par1 = Parameter(
name=”Par1”, value=10, unit=”us”, description=”The first parameter”)
` Creating a dynamic parameter `
Par1 = Parameter(name=”Par1”, value=10, unit=”us”, description=”The first parameter”, axis=np.arange(0,10,1), axis_id=0)
Adding a parameter and a number: ``` Par1 = Parameter(
name=”Par1”, value=10, unit=”us”, description=”The first parameter”)
Par2 = Par1 + 2
- name¶
- unit¶
- description¶
- virtual¶
- axis = []¶
- ax_id = []¶
- add_axis(axis_id, axis)¶
- get_axis()¶
- adjust_step(waveform_precision, keep_dim=True)¶
Adjust the step size of the axis to be an integer multiple of the waveform precision. Additionally, the value is adjusted to the nearest step. This is only applied if the units are in [ns,us,ms]
Only has an affect on parmater with units of [ns,us,ms]
- Parameters:
- waveform_precisionfloat
The precision of the waveform in ns
- keep_dimbool, optional
If True, the dimension of the axis is kept the same. If False, the maximum value is perserved and the dim is extended, by default True
- property dim¶
- remove_dynamic()¶
- is_static()¶
- Return type:
bool
- __eq__(__o)¶
- Parameters:
__o (object)
- Return type:
bool
- __add__(__o)¶
- Parameters:
__o (object)
- __sub__(__o)¶
- Parameters:
__o (object)
- __mul__(__o)¶
- Parameters:
__o (object)
- __rmul__(__o)¶
- Parameters:
__o (object)
- copy()¶
- _to_dict()¶
- _to_json()¶
- save(filename)¶
Save the parameter to a JSON file.
- Parameters:
- filenamestr
Path to the JSON file.
- Returns:
- None
- Raises:
- TypeError
If the object cannot be serialized to JSON.
- static _from_dict(dict)¶
- classmethod _from_json(JSONstring)¶
- classmethod load(filename)¶
Load a Parameter object from a JSON file.
- Parameters:
- filenamestr
Path to the JSON file.
- Returns:
- objParameter
The Pulse loaded from the JSON file.
- Raises:
- FileNotFoundError
If the file does not exist.