Unitary Coupled Cluster Linear Response
- class slowquant.unitary_coupled_cluster.linear_response.lr_baseclass.LinearResponseBaseClass(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = True)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
- calc_excitation_energies() None
Calculate excitation energies.
- get_excited_state_norm() ndarray
Calculate the norm of excited states.
- Returns:
Norm of excited states.
- get_formatted_oscillator_strength() str
Create table of excitation energies and oscillator strengths.
- Parameters:
dipole_integrals – Dipole integrals (x,y,z) in AO basis.
- Returns:
Nicely formatted table.
- get_oscillator_strength(dipole_integrals: Sequence[ndarray]) ndarray
Calculate oscillator strength.
\[f_n = \frac{2}{3}e_n\left|\left<0\left|\hat{\mu}\right|n\right>\right|^2\]- Parameters:
dipole_integrals – Dipole integrals (x,y,z) in AO basis.
- Rerturns:
Oscillator Strength.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals (x,y,z) in AO basis.
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.allprojected.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.allselfconsistent.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.allstatetransfer.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.generic.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, operator_type: str, do_transform_orbital_rotations: bool = False, is_spin_conserving: bool = True)
Initialize generic linear response.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.naive.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.projected.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.projected_statetransfer.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False, do_approximate_hermitification: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
do_approximate_hermitification – approximated method with BqG = 0 and AqG made Hermitian
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.selfconsistent.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False, do_approximate_hermitification: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
do_approximate_hermitification – approximated method with BqG = 0 and AqG made Hermitian
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.
- class slowquant.unitary_coupled_cluster.linear_response.statetransfer.LinearResponseUCC(wave_function: WaveFunctionUCC, excitations: str, is_spin_conserving: bool = False, do_approximate_hermitification: bool = False)
Initialize linear response by calculating the needed matrices.
- Parameters:
wave_function – Wave function object.
excitations – Which excitation orders to include in response.
is_spin_conserving – Use spin-conseving operators.
do_approximate_hermitification – approximated method with BqG = 0 and AqG made Hermitian
- get_transition_dipole(dipole_integrals: Sequence[ndarray]) ndarray
Calculate transition dipole moment.
- Parameters:
dipole_integrals – Dipole integrals ordered as (x,y,z).
- Returns:
Transition dipole moment.