RedfieldRelaxationTensor#
Redfield Tensor
Class Details#
- class quantarhei.qm.liouvillespace.redfieldtensor.RedfieldRelaxationTensor(ham: Hamiltonian, sbi: SystemBathInteraction, initialize: bool = True, cutoff_time: float | None = None, as_operators: bool = False, name: str = '', secular: bool = False)[source]#
Bases:
RelaxationTensorRedfield Relaxation Tensor
Unlike Foerster or Lindblad tensors (which operate entirely in the site basis), the Redfield tensor is computed in the eigenbasis of the Hamiltonian. The constructor diagonalizes the Hamiltonian internally and stores the result in that eigenbasis.
If you obtain this tensor via
OpenSystem.get_RelaxationTensor(), it is automatically back-transformed to the site basis before being returned — no extra steps are needed.If you construct it directly, you must back-transform explicitly:
RRT = RedfieldRelaxationTensor(ham, sbi, secular=True) _, SS = numpy.linalg.eigh(ham._data) S1 = numpy.linalg.inv(SS) RRT.transform(S1, inv=SS)
- Parameters:
ham (Hamiltonian) – Hamiltonian of the system.
sbi (SystemBathInteraction) – Object specifying the system-bath interaction
initialize (bool) – If True, the tensor will be immediately calculated.
cutoff_time (float) – Time in femtoseconds after which the integral kernel in the definition of the relaxation tensor is assumed to be zero.
as_operators (bool) – If True the tensor will not be constructed. Instead a set of operators whose application is equal to the application of the tensor will be defined and stored.
secular (bool) – If True, the tensor is secularized after construction.
- property Km: Any#
- property Lm: Any#
- property Ld: Any#
- dim: int#
- cutoff_time: float | None#
- apply(oper: Any, target: Any = None, copy: bool = True) Any[source]#
Applies the relaxation tensor on a superoperator
- get_dephasing_rate(N: int, M: int) Any[source]#
Returns the dephasing rate of a coherence between states N and M
- transform(SS: ndarray, inv: ndarray | None = None) None[source]#
Transformation of the tensor by a given matrix
This function transforms the Operator into a different basis, using a given transformation matrix.
- Parameters:
SS (matrix, numpy.ndarray) – transformation matrix
inv (matrix, numpy.ndarray) – inverse of the transformation matrix