Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

TimeEvolutionProblem

class qiskit.algorithms.TimeEvolutionProblem(hamiltonian, time, initial_state=None, aux_operators=None, truncation_threshold=1e-12, t_param=None, param_value_map=None)

GitHub(opens in a new tab)

Bases: object(opens in a new tab)

Time evolution problem class.

This class is the input to time evolution algorithms and must contain information on the total evolution time, a quantum state to be evolved and under which Hamiltonian the state is evolved.

hamiltonian

The Hamiltonian under which to evolve the system.

Type

BaseOperator | PauliSumOp

initial_state

The quantum state to be evolved for methods like Trotterization. For variational time evolutions, where the evolution happens in an ansatz, this argument is not required.

Type

QuantumCircuit | Statevector | None

aux_operators

Optional list of auxiliary operators to be evaluated with the evolved initial_state and their expectation values returned.

Type

ListOrDict[BaseOperator | PauliSumOp] | None

truncation_threshold

Defines a threshold under which values can be assumed to be 0. Used when aux_operators is provided.

Type

float(opens in a new tab)

t_param

Time parameter in case of a time-dependent Hamiltonian. This free parameter must be within the hamiltonian.

Type

Parameter | None

param_value_map

Maps free parameters in the problem to values. Depending on the algorithm, it might refer to e.g. a Hamiltonian or an initial state.

Type

dict(opens in a new tab)[Parameter, complex(opens in a new tab)] | None

Parameters

  • hamiltonian (BaseOperator | PauliSumOp) – The Hamiltonian under which to evolve the system.
  • time (float(opens in a new tab)) – Total time of evolution.
  • initial_state (QuantumCircuit |Statevector | None) – The quantum state to be evolved for methods like Trotterization. For variational time evolutions, where the evolution happens in an ansatz, this argument is not required.
  • aux_operators (ListOrDict[BaseOperator | PauliSumOp] | None) – Optional list of auxiliary operators to be evaluated with the evolved initial_state and their expectation values returned.
  • truncation_threshold (float(opens in a new tab)) – Defines a threshold under which values can be assumed to be 0. Used when aux_operators is provided.
  • t_param (Parameter | None) – Time parameter in case of a time-dependent Hamiltonian. This free parameter must be within the hamiltonian.
  • param_value_map (Mapping[Parameter, complex(opens in a new tab)] | None) – Maps free parameters in the problem to values. Depending on the algorithm, it might refer to e.g. a Hamiltonian or an initial state.

Raises

ValueError(opens in a new tab) – If non-positive time of evolution is provided.


Attributes

time

Returns time.


Methods

validate_params

validate_params()

Checks if all parameters present in the Hamiltonian are also present in the dictionary that maps them to values.

Raises

ValueError(opens in a new tab) – If Hamiltonian parameters cannot be bound with data provided.

Was this page helpful?
Report a bug or request content on GitHub.