sparse_pwc_operator

Graph.sparse_pwc_operator(signal, operator)

Create a sparse piecewise-constant operator (sparse-matrix-valued function of time).

Each of the piecewise-constant segments (time periods) is a scalar multiple of the operator.

Parameters:
  • signal (Pwc) – The scalar-valued piecewise-constant function of time \(a(t)\).

  • operator (numpy.ndarray or scipy.sparse.spmatrix or Tensor) – The sparse operator \(A\) to be scaled over time. If you pass a Tensor or NumPy array, it will be internally converted into a sparse representation.

Returns:

The piecewise-constant sparse operator \(a(t)A\).

Return type:

SparsePwc

See also

Graph.constant_sparse_pwc_operator

Create constant SparsePwcs.

Graph.density_matrix_evolution_pwc

Evolve a quantum state in an open system.

Graph.pwc_operator

Corresponding operation for Pwcs.

Graph.sparse_pwc_hermitian_part

Hermitian part of a SparsePwc operator.

Graph.sparse_pwc_sum

Sum multiple SparsePwcs.

Graph.state_evolution_pwc

Evolve a quantum state.

Examples

Create a sparse PWC operator.

>>> from scipy.sparse import coo_matrix
>>> sigma_x = np.array([[0, 1], [1, 0]])
>>> signal = graph.pwc_signal(values=np.array([1, 2, 3]), duration=0.1)
>>> graph.sparse_pwc_operator(signal=signal, operator=coo_matrix(sigma_x))
<SparsePwc: operation_name="sparse_pwc_operator", value_shape=(2, 2)>

See more examples in the How to simulate large open system dynamics user guide.