TimeEvolutionProblem#

class TimeEvolutionProblem(hamiltonian, time, initial_state=None, aux_operators=None, truncation_threshold=1e-12, t_param=None, param_value_map=None)[source]#

Bases: object

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

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] | None

truncation_threshold#

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

Type:

float

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[Parameter, complex] | None

Parameters:
  • hamiltonian (BaseOperator) – The Hamiltonian under which to evolve the system.

  • time (float) – 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] | None) – Optional list of auxiliary operators to be evaluated with the evolved initial_state and their expectation values returned.

  • truncation_threshold (float) – 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] | 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 – If non-positive time of evolution is provided.

Attributes

time#

Returns time.