70 lines
3.5 KiB
Plaintext
70 lines
3.5 KiB
Plaintext
---
|
||
title: GaussianSquare
|
||
description: API reference for qiskit.pulse.library.GaussianSquare
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: class
|
||
python_api_name: qiskit.pulse.library.GaussianSquare
|
||
---
|
||
|
||
# GaussianSquare
|
||
|
||
<Class id="qiskit.pulse.library.GaussianSquare" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.23/qiskit/pulse/library/symbolic_pulses.py" signature="GaussianSquare(duration: Union[int, qiskit.circuit.parameterexpression.ParameterExpression], amp: Union[complex, float, qiskit.circuit.parameterexpression.ParameterExpression], sigma: Union[float, qiskit.circuit.parameterexpression.ParameterExpression], width: Optional[Union[float, qiskit.circuit.parameterexpression.ParameterExpression]] = None, angle: Optional[Union[float, qiskit.circuit.parameterexpression.ParameterExpression]] = None, risefall_sigma_ratio: Optional[Union[float, qiskit.circuit.parameterexpression.ParameterExpression]] = None, name: Optional[str] = None, limit_amplitude: Optional[bool] = None)" modifiers="class">
|
||
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{A} \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, and $\text{A} = \text{amp} \times \exp\left(i\times\text{angle}\right)$.
|
||
|
||
Create new pulse instance.
|
||
|
||
**Parameters**
|
||
|
||
* **duration** – Pulse length in terms of the sampling period dt.
|
||
* **amp** – The magnitude of the amplitude of the Gaussian and square pulse. Complex amp support will be deprecated.
|
||
* **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.
|
||
* **angle** – The angle of the complex amplitude of the pulse. Default value 0.
|
||
* **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**
|
||
|
||
ScalableSymbolicPulse instance.
|
||
|
||
**Raises**
|
||
|
||
[**PulseError**](pulse#qiskit.pulse.PulseError "qiskit.pulse.PulseError") – When width and risefall\_sigma\_ratio are both empty or both non-empty.
|
||
|
||
## Attributes
|
||
|
||
### alias
|
||
|
||
<Attribute id="qiskit.pulse.library.GaussianSquare.alias" attributeValue="'GaussianSquare'" />
|
||
</Class>
|
||
|