Tamil
மொழிகள்
English
Bengali
French
German
Japanese
Korean
Portuguese
Spanish
Tamil

GaussianSquare

class GaussianSquare(duration: Union[int, ParameterExpression], amp: Union[complex, ParameterExpression], sigma: Union[float, ParameterExpression], width: Optional[Union[float, ParameterExpression]] = None, risefall_sigma_ratio: Optional[Union[float, ParameterExpression]] = None, name: Optional[str] = None, limit_amplitude: Optional[bool] = None)[source]

Bases: object

A square pulse with a Gaussian shaped risefall on both sides lifted such that its first sample is zero.

Exactly one of the risefall_sigma_ratio and width parameters has to be specified.

If risefall_sigma_ratio is not None and width is None:

\[\begin{split}\text{risefall} &= \text{risefall_sigma_ratio} \times \text{sigma}\\ \text{width} &= \text{duration} - 2 \times \text{risefall}\end{split}\]

If width is not None and risefall_sigma_ratio is None:

\[\text{risefall} = \frac{\text{duration} - \text{width}}{2}\]

In both cases, the lifted gaussian square pulse \(f'(x)\) is defined as:

\[\begin{split}f'(x) &= \begin{cases} \exp\biggl(-\frac12 \frac{(x - \text{risefall})^2}{\text{sigma}^2}\biggr) & x < \text{risefall}\\ 1 & \text{risefall} \le x < \text{risefall} + \text{width}\\ \exp\biggl(-\frac12 \frac{{\bigl(x - (\text{risefall} + \text{width})\bigr)}^2} {\text{sigma}^2} \biggr) & \text{risefall} + \text{width} \le x \end{cases}\\ f(x) &= \text{amp} \times \frac{f'(x) - f'(-1)}{1-f'(-1)}, \quad 0 \le x < \text{duration}\end{split}\]

where \(f'(x)\) is the gaussian square waveform without lifting or amplitude scaling.

Create new pulse instance.

Parameters
  • duration -- Pulse length in terms of the sampling period dt.

  • amp -- The amplitude of the Gaussian and of the square pulse.

  • sigma -- A measure of how wide or narrow the Gaussian risefall is; see the class docstring for more details.

  • width -- The duration of the embedded square pulse.

  • risefall_sigma_ratio -- The ratio of each risefall duration to sigma.

  • name -- Display name for this pulse envelope.

  • limit_amplitude -- If True, then limit the amplitude of the waveform to 1. The default is True and the amplitude is constrained to 1.

Returns

SymbolicPulse instance.

Raises

PulseError -- When width and risefall_sigma_ratio are both empty or both non-empty.

Attributes

alias = 'GaussianSquare'