Analog
Operations¶
oqd_core.interface.analog.operation
¶
AnalogCircuit
¶
Bases: AnalogOperation
Class representing a quantum information experiment represented in terms of analog operations.
Attributes:
Name | Type | Description |
---|---|---|
sequence |
List[Union[Measure, Evolve, Initialize]]
|
Sequence of statements, including initialize, evolve, measure |
Source code in oqd-core/src/oqd_core/interface/analog/operation.py
AnalogGate
¶
Bases: TypeReflectBaseModel
Class representing an analog gate composed of Hamiltonian terms and dissipation terms
Attributes:
Name | Type | Description |
---|---|---|
hamiltonian |
Operator
|
Hamiltonian terms of the gate |
Source code in oqd-core/src/oqd_core/interface/analog/operation.py
AnalogOperation
¶
Bases: VisitableBaseModel
Class representing an analog operation applied to the quantum system
Source code in oqd-core/src/oqd_core/interface/analog/operation.py
Evolve
¶
Bases: AnalogOperation
Class representing an evolution by an analog gate in the analog circuit
Attributes:
Name | Type | Description |
---|---|---|
duration |
float
|
Duration of the evolution |
gate |
AnalogGate
|
Analog gate to evolve by |
Source code in oqd-core/src/oqd_core/interface/analog/operation.py
Measure
¶
Initialize
¶
Bases: AnalogOperation
Class representing a initialization in the analog circuit
Source code in oqd-core/src/oqd_core/interface/analog/operation.py
Operators¶
oqd_core.interface.analog.operator
¶
OperatorSubtypes = Union[PauliI, PauliX, PauliY, PauliZ, Creation, Annihilation, Identity, OperatorAdd, OperatorSub, OperatorMul, OperatorScalarMul, OperatorKron]
module-attribute
¶
Alias for the union of concrete Operator subtypes
Operator
¶
Bases: TypeReflectBaseModel
Class representing the abstract syntax tree (AST) for a quantum operator
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
OperatorTerminal
¶
Pauli
¶
PauliI
¶
PauliX
¶
PauliY
¶
PauliZ
¶
Ladder
¶
Creation
¶
Annihilation
¶
Identity
¶
OperatorBinaryOp
¶
OperatorAdd
¶
Bases: OperatorBinaryOp
Class representing the addition of Operators
Attributes:
Name | Type | Description |
---|---|---|
op1 |
Operator
|
Left hand side |
op2 |
Operator
|
Right hand side |
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
OperatorSub
¶
Bases: OperatorBinaryOp
Class representing the subtraction of Operators
Attributes:
Name | Type | Description |
---|---|---|
op1 |
Operator
|
Left hand side |
op2 |
Operator
|
Right hand side |
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
OperatorMul
¶
Bases: OperatorBinaryOp
Class representing the multiplication of Operators
Attributes:
Name | Type | Description |
---|---|---|
op1 |
Operator
|
Left hand side |
op2 |
Operator
|
Right hand side |
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
OperatorScalarMul
¶
Bases: Operator
Class representing scalar multiplication of an Operator
and a
MathExpr
Attributes:
Name | Type | Description |
---|---|---|
op |
Operator
|
|
expr |
MathExpr
|
|
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
OperatorKron
¶
Bases: OperatorBinaryOp
Class representing the tensor product of Operators
Attributes:
Name | Type | Description |
---|---|---|
op1 |
Operator
|
Left hand side |
op2 |
Operator
|
Right hand side |
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
PauliPlus()
¶
Function that constructs the Pauli + operator
Source code in oqd-core/src/oqd_core/interface/analog/operator.py
PauliMinus()
¶
Function that constructs the Pauli - operator