3.5. qupulse.program¶
This package contains the means to construct a program from a pulse template.
A program is an un-parameterized multichannel time to voltage relation. They are constructed by sequencing playback commands which typically mean that an arbitrary waveform is played.
The arbitrary waveforms are defined in the waveforms module.
transformation contains useful transformations for waveforms which for example allow the
construction of virtual channels, i.e. linear combinations of channels from a set of other channes.
loop contains the legacy program representation with is an aribtrariliy nested sequence/repetition structure
of waveform playbacks.
linspace contains a more modern program representation to efficiently execute linearly spaced voltage sweeps
even if interleaved with constant segments.
volatile contains the machinery to declare quickly changable program parameters. This functionality is stale
and was not used by the library authors for a long term. It is very useful for dynamic nuclear polarization which is not
used/required/possible with (purified) silicon samples.
Functions
This function returns an instance of the default program builder class |
- default_program_builder() ProgramBuilder[source]¶
This function returns an instance of the default program builder class
LoopBuilderin the default configuration.- Returns:
A program builder instance.
Modules
Program builder implementation that creates the legacy |
|
Definition of the program builder protocol. |
|
Transformations to be applied to sampled waveform data (offset/scale/virtual gates). |
|
Runtime variable value implementations. |
|
This module contains all waveform classes |