cc_energy_t Derived Type

type, public :: cc_energy_t

Container for coupled cluster energy components


Inherited by

type~~cc_energy_t~~InheritedByGraph type~cc_energy_t cc_energy_t type~energy_t energy_t type~energy_t->type~cc_energy_t cc type~calculation_result_t calculation_result_t type~calculation_result_t->type~energy_t energy

Components

Type Visibility Attributes Name Initial
real(kind=dp), public :: doubles = 0.0_dp

Doubles contribution (Hartree)

real(kind=dp), public :: singles = 0.0_dp

Singles contribution (Hartree)

real(kind=dp), public :: triples = 0.0_dp

Triples contribution (Hartree)


Type-Bound Procedures

procedure, public :: check_stability => cc_check_stability

Check for positive energies (instability)

  • private subroutine cc_check_stability(this)

    Check for positive CC correlation energies (instability warning) Correlation energies should be negative; positive values indicate instability

    Arguments

    Type IntentOptional Attributes Name
    class(cc_energy_t), intent(in) :: this

procedure, public :: reset => cc_reset

Reset all components to zero

  • private subroutine cc_reset(this)

    Reset all CC components to zero

    Arguments

    Type IntentOptional Attributes Name
    class(cc_energy_t), intent(inout) :: this

procedure, public :: total => cc_total

Compute total CC correlation

  • private pure function cc_total(this) result(total)

    Compute total CC correlation energy

    Arguments

    Type IntentOptional Attributes Name
    class(cc_energy_t), intent(in) :: this

    Return Value real(kind=dp)

Source Code

   type :: cc_energy_t
      !! Container for coupled cluster energy components
      real(dp) :: singles = 0.0_dp   !! Singles contribution (Hartree)
      real(dp) :: doubles = 0.0_dp   !! Doubles contribution (Hartree)
      real(dp) :: triples = 0.0_dp   !! Triples contribution (Hartree)
   contains
      procedure :: total => cc_total            !! Compute total CC correlation
      procedure :: reset => cc_reset            !! Reset all components to zero
      procedure :: check_stability => cc_check_stability  !! Check for positive energies (instability)
   end type cc_energy_t