Skip to content

mcsolve in diagonal basis for time-independent Hamiltonians #341

Open
@labay11

Description

@labay11

Problem Description

For time-independent Hamiltonians it is possible to implement an exact Monte-Carlo solver which works on the diagonal basis of the effective Hamiltonian. In this way, the evolution of the wave function becomes exact and it is possible to calculate the next jump time deterministically. This makes the evolution much more efficient and exact than the default solver based on solving the ODE problem.

Proposed Solution

Together with @albertomercurio we did an implementation of the solve for a project we are working on. This is based on diagonalizing the effective Hamiltonian and expressing all quantities in the new basis. Our implementation does not use the SciML functions but can probably be adapted.

The calculation of the next jump time is obtained by finding the roots of the function $f(t, r, \psi) = |\hat{R} |\psi(t)\rangle|^2 - r$ where $r$ is the random number for the next jump time, $\psi(t)\rangle = \sum_j e^{-i \lambda_j t} |v_j\rangle$ and $\hat{R}$ is the change of basis matrix from the original basis to the diagonal basis of the Hamiltonian ($|v_j\rangle$). Note that this matrix is not unitary because the effective Hamiltonian is not Hermitian. Hence, in the new basis, the norm of a state needs to be expressed as $|\hat{R} |\psi(t)\rangle|$.

Alternate Solutions

No response

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions