Hop¶
- class Hop(num_modes, j, label=None)[source]¶
Hopping of particles to neighbouring wells due to tunneling.
The generating Hamiltonian of the hopping gate is
\(H = \sum_{i=1,\sigma}^{L-1} - J_i (f^\dagger_{i,\sigma} f_{i+1,\sigma} + f^\dagger_{i+1,\sigma} f_{i,\sigma})\)
where \(i\) indexes the mode, \(\sigma\) indexes the spin, \(L\) gives the total number of sites and \(J_i\) are the hopping strengths
Initialize hopping gate :type num_modes: :param num_modes: number of fermionic modes that are connected by the hopping :param (= 2* number of tweezers): :type j:
List
[float
] :param j: list of hopping strengths between the tweezer. j[0] gives the strength of hopping :param between wires 0 and 1: :param : :param j[1] gives the strength of hopping between wires 1 and 2: :type j[1] gives the strength of hopping between wires 1 and 2: j :param etc.: :type etc.: j :param so len: :type so len: j :param of length num_wires-1: :type label: :param label: optional- Raises:
QiskitColdAtomError – given num_modes not even integer
QiskitColdAtomError – length of j not num_modes/2 - 1
Attributes
Get Clbits in condition.
Get the decompositions of the instruction from the SessionEquivalenceLibrary.
Return definition in terms of other basic gates.
Get the duration.
The generating Hamiltonian of the hopping gate.
Return instruction label
Return the name.
Return the number of clbits.
Return the number of qubits.
return instruction params.
Get the time unit of duration.
Methods
Hop.add_decomposition
(decomposition)Add a decomposition of the instruction to the SessionEquivalenceLibrary.
Assemble a QasmQobjInstruction
Hop.broadcast_arguments
(qargs, cargs)Validation and handling of the arguments and its relationship.
Hop.c_if
(classical, val)Set a classical equality condition on this instruction between the register or cbit
classical
and valueval
.Hop.control
([num_ctrl_qubits, label, ctrl_state])Overwrite control method which is supposed to return a controlled version of the gate.
Hop.copy
([name])Copy of the instruction.
Get inverse gate by reversing the sign of all hopping strengths
Return True .IFF.
Hop.operator_to_mat
(generator, num_species)Compute the matrix representation of the fermion operator.
Hop.power
(exponent)Creates a fermionic gate as gate^exponent
Hop.qasm
()Return a default OpenQASM string for the instruction.
Hop.repeat
(n)Creates an instruction with gate repeated n amount of times.
For a composite instruction, reverse the order of sub-instructions.
Hop.soft_compare
(other)Soft comparison between gates.
Hop.to_matrix
([num_species, basis])Return a Numpy.array for the gate unitary matrix.
Hop.validate_parameter
(parameter)Gate parameters should be int, float, or ParameterExpression