PerturbationTheoryHamiltonian

Represents the main Ha,o; used in the perturbation theory calculation

  • molecule: Molecule

    The molecule we’re doing the perturbation theory on _quanta: int | np.ndarray | Iterable[int] The numbers of quanta of excitation to use for every mode asis: RepresentationBasis | None The basis used for representing, e.g., pQp and QQQ

Properties and Methods

from_fchk: method

 

__init__(self, molecule=None, n_quanta=3, basis=None): 

 

@property
H0(self): 

 

@property
H1(self): 

 

@property
H2(self): 

 

get_state_indices(self, states): 

 

get_state_quantum_numbers(self, states): 

 

get_corrections(self, states=15, coupled_states=None, coeff_threshold=None, energy_threshold=None): 
  • states: Any

    No description…

  • coeff_threshold: float | Iterable[float]

    a hack for ditching near degeneracies

  • :returns: _

    No description…

 

get_wavefunctions(self, states=15, coupled_states=None, coeff_threshold=None, energy_threshold=None): 

Computes perturbation expansion of the wavefunctions and energies. We’re pushing all higher-level stuff into the wavefunctions, so this is usually the function we want

  • states: int | iterable[int] | None

    the states to target

  • :returns: np.ndarray

    coeffs

 

martin_test(self, states=15, coupled_states=None): 

Applies the Martin Test to all of the specified states and returns the resulting correlation matrix

  • states: Any

    No description…

  • :returns: _

    No description…

Examples


Edit Examples or Create New Examples
Edit Template or Create New Template
Edit Docstrings