qupulse 0.5
-
General:
- Improve
TimeType
consistency by leveraging str(float) for rounding by default. - Add support for sympy==1.5
- Add volatile parameters. Repetition counts can now be changed at runtime in some cases (useful for DNP). See
volatile
kwarg ofcreate_program
- Improve
-
Hardware:
- Add a
measure_program
method to the DAC interface. This method is used by the QCoDeS integration. - Add a
set_measurement_mask
to DAC interface. This method is used by the QCoDeS integration. - Add a
get_sample_times
util method to share code for exact and fast sample time calculation - Add a driver for Tektronix AWG5000/7000
- Add a driver for Zurich Instruments HDAWG
- Warn the user if waveforms need to be concatenated to be compatible with hardware requirements.
- Add a
-
Pulse Templates:
- Add
__repr__
and__format__
for easier inspection MappingPulseTemplate
:allow_partial_parameter_mapping
is now True as a default. The default can be changed with the class variableMappingPulseTemplate.ALLOW_PARTIAL_PARAMETER_MAPPING
.- Add specializations for
map_parameters
because the auto-inference of the return type did not work for empty input. - Channels mapped to None are now dropped
- Add simple arithmetic operations for pulse templates
- offset and scaling with scalars
- addition with atomic pulse templates
- Add
-
Expressions:
- Expressions can now be formatted as floats if they do not have free variables
-
Parameters:
- Replace Parameter class with Scope
- Parameter class is now deprecated
-
Backward incompatible changes:
- Removed deprecated classes:
- Sequencer: Replaced by PulseTemplate.create_program method
- Condition: Never used
- InstructionBlock: Old representation of programs. Replaced by Loop
- MultiChannelProgram: Was required in the instruction block framework
- Removed deprecated classes: