PRX_ModulatedDRAGCosineRiseFall#

class iqm.pulse.gates.prx.PRX_ModulatedDRAGCosineRiseFall(parent, name, locus, calibration_data, builder)#

Bases: PRX_ModulatedCustomWaveForms

Modulated PRX pulse with cosine rise fall waveform

Module: iqm.pulse.gates.prx

Attributes

dependent_waves

If set True, the Q channel waveform is considered to depend on the I channel's waveform so that they share the waveform parameters, (e.g. a DRAG PRX implementation).

excluded_parameters

Parameters names to be excluded from self.parameters.

parameters

Required calibration data, may be nested

Methods

Parameters:
dependent_waves: bool = True#

If set True, the Q channel waveform is considered to depend on the I channel’s waveform so that they share the waveform parameters, (e.g. a DRAG PRX implementation). If not provided, will be initialised as True.

parameters: NestedParams = {'amplitude_i': Parameter(name='', label='pi pulse amplitude of base band I waveform', unit='', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'amplitude_q': Parameter(name='', label='pi pulse amplitude of base band Q waveform', unit='', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'center_offset': Setting(parameter=Parameter(name='', label='center_offset of crf', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), value=0.0, read_only=False, path=''), 'duration': Parameter(name='', label='pi pulse duration', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'frequency': Parameter(name='', label='modulated pulse frequency', unit='Hz', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'full_width': Parameter(name='', label='full_width of crf', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None)}#

Required calibration data, may be nested

wave_i#

alias of CosineRiseFall

wave_q#

alias of CosineRiseFallDerivative

excluded_parameters: list[str] = ['rise_time']#

Parameters names to be excluded from self.parameters. Inheriting classes may override this if certain parameters are not wanted in that class (also parameters defined by the waveforms can be excluded).

classmethod _get_pulse(**kwargs)#

Return the IQPulse with modulated arbitrary waveform based on the calibration data.

Return type:

IQPulse