hqs_nmr.solver.implementations.complete_solver
A NMR solver that takes into account the full initial density matrix.
Functions
| 
 | A complete NMR solver without approximations. | 
- hqs_nmr.solver.implementations.complete_solver.complete_nmr_solver(hamiltonian: PauliHamiltonian, normalized_gyromagnetic_ratios: ndarray, omegas: ndarray, eta: ndarray, spin_contribution_indices: list[int], calculation_parameters: NMRCalculationParameters, **kwargs: dict[str, Any]) ndarray
- A complete NMR solver without approximations. - Evaluates a correlator function of the form: - \sum_n \frac{\bra{n} \gamma_l I^x_l \ket{m} \bra{m} P \rho P^\dagger \ket{n}}{ {\omega + E_n - E_m + i \eta} - Where P is a pi / 2 pulse and rho a density matrix given by the Boltzmann distribution. - Parameters:
- hamiltonian – Struqture spin Hamiltonian. 
- normalized_gyromagnetic_ratios – Array of the gyromagnetic factors per site, normalized with respect to the reference isotope. 
- omegas – Desired frequencies. 
- eta – Explicit spin-dependent broadening of the peaks. 
- spin_contribution_indices – List of indices l of I^+_l for which to evaluate the correlator. 
- calculation_parameters – Object storing all calculation parameters including solver-specific settings. 
- kwargs – Catch all for general interface. 
 
- Returns:
- The spectrum. First index = spin #,
- second index = time index. 
 
- Return type:
- np.ndarray[tuple[Any, Any], np.dtype[np.floating]]