supergrad.time_evolution.pulseshape.PulseErf#
- class supergrad.time_evolution.pulseshape.PulseErf(length=None, amp=None, delay=0, modulate_wave=False, name: str = 'pulse_erf', **kwargs)[source]#
Creates error function up/down pulse, integral 1.
Both up and down parts are erf style, controlled by sigma. the erf function is truncated at sigma=-cutoff(as t=0) and sigma=+cutoff(as t=tmax) The pulse is nearly flat in the middle if sigma is small.
- Parameters:
length – the length of pulse
amp – the amplitude of pulse
delay – time delay for waiting other gate operations, unit in ns
modulate_wave (bool) – True for generate modulated sine wave
name – module name
- sigma#
the sigma of erf function
- cutoff#
the cutoff of erf function
- Returns:
an array of amplitudes
- __init__(length=None, amp=None, delay=0, modulate_wave=False, name: str = 'pulse_erf', **kwargs)[source]#
Initializes the current module with the given name.
Subclasses should call this constructor before creating other modules or variables such that those modules are named correctly.
- Parameters:
name – An optional string name for the class. Must be a valid Python identifier. If
nameis not provided then the class name for the current instance is converted tolower_snake_caseand used instead.
Methods
__init__([length, amp, delay, ...])Initializes the current module with the given name.
create_envelope_pulse(t[, args])Create envelope pulse shape for various gate operations.
create_pulse(t[, args])Create desired pulse shape for various gate operations.
params_dict()Returns parameters keyed by name for this module and submodules.
state_dict()Returns state keyed by name for this module and submodules.
Attributes
pulse_endtimeThe time of last pulse frame