pyqpanda.Algorithm.hamiltonian_simulation
Simulating a specific hamitonian (PauliOperator)
Copyright (C) Origin Quantum 2017-2018
Licensed Under Apache Licence 2.0
Module Contents
Functions
|
QPanda Algorithm API |
|
Simulate a single term of Hamilonian like "X0 Y1 Z2" with |
|
Simulate hamiltonian consists of pauli-Z operators |
|
Simulate a general case of hamiltonian by Trotter-Suzuki |
|
simulate hamiltonian with configuration and return result. |
|
|
|
|
|
|
|
|
|
quantum approximate optimization algorithm |
|
|
|
|
|
- pyqpanda.Algorithm.hamiltonian_simulation.simulate_z_term(qubit_list, coef, t)[源代码]
QPanda Algorithm API
Simulating z-only term like H=coef * (Z0..Zn-1)
U=exp(-iHt)
list<Qubit>, float, float -> QCircuit
Note: Z-Hamiltonian spreads over the qubit_list
- pyqpanda.Algorithm.hamiltonian_simulation.simulate_one_term(qubit_list, hamiltonian_term, t)[源代码]
Simulate a single term of Hamilonian like "X0 Y1 Z2" with coefficient and time. U=exp(-it*coef*H) @param
qubit_list: qubit needed to simulate the hamiltonian hamiltonian_term: tuple like ("X0 Y1 Z2",2.3) t: time
@return: QCircuit
- pyqpanda.Algorithm.hamiltonian_simulation.simulate_pauliZ_hamiltonian(qubit_list, PauliOperator, t)[源代码]
Simulate hamiltonian consists of pauli-Z operators @param
qubit_list: qubit needed to simulate the hamiltonian PauliOperator: PauliOperator object from c++ t: time
@return: QCircuit
- pyqpanda.Algorithm.hamiltonian_simulation.simulate_hamiltonian(qubit_list, PauliOperator, t, slices=3)[源代码]
Simulate a general case of hamiltonian by Trotter-Suzuki approximation. U=exp(-iHt)=(exp(-i H1 t/n)*exp(-i H2 t/n))^n @param:
qubit_list: the qubit needed to simulate the Hamiltonian pauliOperator: the Hamiltonian (PauliOperator type) t: time slices: the approximate slices.
@return: QCircuit
- pyqpanda.Algorithm.hamiltonian_simulation.adiabatic_simulation_with_configuration(qn_, Hp_, Hd_, step_, slices_, t_, shots_=1000)[源代码]
simulate hamiltonian with configuration and return result. @param
- pyqpanda.Algorithm.hamiltonian_simulation.quantum_approximate_optimization_algorithm(graph, gamma_, beta_, use_prob_run=True, use_quick_measure=True, multiProcessing=False, shots_=100, dataType='list')[源代码]
quantum approximate optimization algorithm @param
graph: origin graph gamma_: problem hamiltonian parameter beta_: driver hamiltonian parameter use_prob_run : Use prob_run instead of repeatly measurement multiProcessing: no implemented yet shot_: execution times
(the following only enabled when "use_prob_run=True") use_quick_measure : use quick measure instead of output probabilites dataType : chosen data type for the prob_run