Factory
constant
constant(
duration: ScalarType, value: ScalarType
) -> Constant
Create a Constant waveform.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
duration
|
ScalarType
|
Duration of the Constant waveform. |
required |
value
|
ScalarType
|
Value of the Constant waveform.s |
required |
Returns:
Name | Type | Description |
---|---|---|
Constant |
Constant
|
A Constant waveform. |
Source code in .venv/lib/python3.12/site-packages/bloqade/analog/factory.py
59 60 61 62 63 64 65 66 67 68 69 70 |
|
get_capabilities
get_capabilities(
use_experimental: bool = False,
) -> QuEraCapabilities
Get the device capabilities for Aquila
Parameters:
Name | Type | Description | Default |
---|---|---|---|
use_experimental
|
bool
|
Get experimental capabilities instead of standard ones. By default value is False. |
False
|
Returns:
Name | Type | Description |
---|---|---|
QuEraCapabilities |
QuEraCapabilities
|
capabilities object for Aquila device. |
Note
Units of time, distance, and energy are microseconds (us), micrometers (um), and rad / us, respectively.
For a comprehensive list of capabilities, see the Hardware Reference page
Source code in .venv/lib/python3.12/site-packages/bloqade/analog/factory.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
|
linear
linear(
duration: ScalarType,
start: ScalarType,
stop: ScalarType,
) -> Linear
Create a Linear waveform.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
duration
|
ScalarType
|
Duration of linear waveform |
required |
start
|
ScalarType
|
Starting value of linear waveform |
required |
stop
|
ScalarType
|
Ending value of linear waveform |
required |
Returns:
Name | Type | Description |
---|---|---|
Linear |
Linear
|
Linear waveform |
Source code in .venv/lib/python3.12/site-packages/bloqade/analog/factory.py
44 45 46 47 48 49 50 51 52 53 54 55 56 |
|
piecewise_constant
piecewise_constant(
durations: List[ScalarType], values: List[ScalarType]
) -> Waveform
Create a piecewise linear waveform.
Create a piecewise constant waveform from a list of durations and values. The
value duration[i]
corresponds to the length of time for the i'th segment
with a value of values[i]
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
durations
|
List[ScalarType]
|
The duration of each segment |
required |
values
|
List[ScalarType]
|
The values for each segment |
required |
Raises:
Type | Description |
---|---|
ValueError
|
If the length of |
Returns:
Name | Type | Description |
---|---|---|
Waveform |
Waveform
|
The piecewise linear waveform. |
Source code in .venv/lib/python3.12/site-packages/bloqade/analog/factory.py
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |
|
piecewise_linear
piecewise_linear(
durations: List[ScalarType], values: List[ScalarType]
) -> Waveform
Create a piecewise linear waveform.
Create a piecewise linear waveform from a list of durations and values. The
value duration[i]
is of the linear segment between values[i]
and values[i+1]
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
durations
|
List[ScalarType]
|
The duration of each segment |
required |
values
|
List[ScalarType]
|
The values for each segment |
required |
Raises:
Type | Description |
---|---|
ValueError
|
If the length of |
Returns:
Name | Type | Description |
---|---|---|
Waveform |
Waveform
|
The piecewise linear waveform. |
Source code in .venv/lib/python3.12/site-packages/bloqade/analog/factory.py
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
|
rydberg_h
rydberg_h(
atoms_positions: Any,
detuning: Optional[Waveform] = None,
amplitude: Optional[Waveform] = None,
phase: Optional[Waveform] = None,
static_params: Dict[str, Any] = {},
batch_params: Union[
List[Dict[str, Any]], Dict[str, Any]
] = [],
args: List[str | Variable] = [],
) -> Routine
Create a rydberg program with uniform detuning, amplitude, and phase.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
atoms_positions
|
Any
|
Description of geometry of atoms in system. |
required |
detuning
|
Optional[Waveform]
|
Waveform for detuning. Defaults to None. |
None
|
amplitude
|
Optional[Waveform]
|
Waveform describing the amplitude of the rabi term. Defaults to None. |
None
|
phase
|
Optional[Waveform]
|
Waveform describing the phase of rabi term. Defaults to None. |
None
|
static_params
|
Dict[str, Any]
|
Define static parameters of your program. Defaults to {}. |
{}
|
batch_params
|
Union[List[Dict[str, Any]], Dict[str, Any]]
|
Parmaters for a batch of tasks. Defaults to []. |
[]
|
args
|
List[str]
|
List of arguments to leave till runtime. Defaults to []. |
[]
|
Returns:
Name | Type | Description |
---|---|---|
Routine |
Routine
|
An object that can be used to dispatch a rydberg program to multiple backends. |
Source code in .venv/lib/python3.12/site-packages/bloqade/analog/factory.py
143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 |
|