pchb_excitgen Module



Contents


Variables

Type Visibility Attributes Name Initial
type(FCI_PCHB_SinglesOptions_vals_t), private, parameter :: FCI_PCHB_singles_options_vals = FCI_PCHB_SinglesOptions_vals_t()
type(FCI_PCHB_Options_vals_t), public, parameter :: FCI_PCHB_options_vals = FCI_PCHB_Options_vals_t()
type(FCI_PCHB_OptionsUserInput_vals_t), public, parameter :: FCI_PCHB_user_input_vals = FCI_PCHB_OptionsUserInput_vals_t()
type(FCI_PCHB_OptionsUserInput_t), public, allocatable :: FCI_PCHB_user_input

Derived Types

Components

Type Visibility Attributes Name Initial
class(DoubleExcitationGenerator_t), public, allocatable :: doubles_generator
class(SingleExcitationGenerator_t), public, allocatable :: singles_generator

Type-Bound Procedures

procedure , public :: gen_exc => abinit_gen_exc Subroutine
procedure , public :: get_pgen => abinit_get_pgen Function
procedure , public :: gen_all_excits => abinit_gen_all_excits Subroutine
procedure , public :: finalize => abinit_finalize Subroutine
procedure , public :: init Subroutine

type, private, extends(EnumBase_t) ::  FCI_PCHB_singles_algorithm_t

Components

Type Visibility Attributes Name Initial
integer, public :: val

Type-Bound Procedures

generic, public :: operator(==) => eq_EnumBase_t
generic, public :: operator(/=) => neq_EnumBase_t

type, private ::  FCI_PCHB_singles_algorithm_vals_t

Components

Type Visibility Attributes Name Initial
type(FCI_PCHB_singles_algorithm_t), public :: ON_FLY_HEAT_BATH = FCI_PCHB_singles_algorithm_t(1)
type(FCI_PCHB_singles_algorithm_t), public :: UNIFORM = FCI_PCHB_singles_algorithm_t(2)
type(FCI_PCHB_singles_algorithm_t), public :: PC_WEIGHTED = FCI_PCHB_singles_algorithm_t(3)

type, private ::  FCI_PCHB_SinglesOptions_vals_t

Components

Type Visibility Attributes Name Initial
type(FCI_PCHB_singles_algorithm_vals_t), public :: algorithm = FCI_PCHB_singles_algorithm_vals_t()
type(PC_WeightedSinglesOptions_vals_t), public :: PC_weighted = PC_WeightedSinglesOptions_vals_t()

Type-Bound Procedures

procedure , public , nopass :: from_str => singles_from_keyword Function

type, public ::  FCI_PCHB_SinglesOptions_t

Components

Type Visibility Attributes Name Initial
type(FCI_PCHB_singles_algorithm_t), public :: algorithm
type(PC_WeightedSinglesOptions_t), public :: PC_weighted = PC_WeightedSinglesOptions_t(FCI_PCHB_singles_options_vals%PC_weighted%drawing%UNDEFINED)

Type-Bound Procedures

procedure , public , :: to_str => to_str_FCI_PCHB_SinglesOptions_t Function

type, public ::  FCI_PCHB_Options_t

Components

Type Visibility Attributes Name Initial
type(FCI_PCHB_SinglesOptions_t), public :: singles
type(PCHB_DoublesOptions_t), public :: doubles

Type-Bound Procedures

procedure , public , :: assert_validity Subroutine
procedure , public , :: to_str => to_str_FCI_PCHB_Options_t Function

type, public ::  FCI_PCHB_Options_vals_t

Components

Type Visibility Attributes Name Initial
type(FCI_PCHB_SinglesOptions_vals_t), public :: singles = FCI_PCHB_SinglesOptions_vals_t()
type(PCHB_DoublesOptions_vals_t), public :: doubles = PCHB_DoublesOptions_vals_t()

type, private ::  FCI_PCHB_OptionsUserInput_t

Components

Type Visibility Attributes Name Initial
type(PCHB_OptionSelection_t), public :: option_selection
type(FCI_PCHB_Options_t), public, allocatable :: options

type, private ::  FCI_PCHB_OptionsUserInput_vals_t

Components

Type Visibility Attributes Name Initial
type(PCHB_OptionSelection_vals_t), public :: option_selection = PCHB_OptionSelection_vals_t()
type(FCI_PCHB_Options_vals_t), public :: options = FCI_PCHB_options_vals_t()

Functions

private pure function singles_from_keyword(w) result(res)

Parse a given keyword into the possible weighting schemes

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: w

Return Value type(FCI_PCHB_SinglesOptions_t)

private pure function to_str_FCI_PCHB_SinglesOptions_t(options) result(res)

Arguments

Type IntentOptional Attributes Name
class(FCI_PCHB_SinglesOptions_t), intent(in) :: options

Return Value character(len=:), allocatable

private pure function CAS_spec(n_el, n_spat_orbs)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n_el
integer, intent(in) :: n_spat_orbs

Return Value type(LocalGASSpec_t)

public pure function decide_on_PCHB_options(FCI_PCHB_user_input, loc_nBasis, loc_nEl, loc_tUHF) result(res)

Arguments

Type IntentOptional Attributes Name
type(FCI_PCHB_OptionsUserInput_t), intent(in) :: FCI_PCHB_user_input
integer, intent(in) :: loc_nBasis
integer, intent(in) :: loc_nEl
logical, intent(in) :: loc_tUHF

Return Value type(FCI_PCHB_Options_t)

private function to_str_FCI_PCHB_Options_t(options) result(res)

Arguments

Type IntentOptional Attributes Name
class(FCI_PCHB_Options_t), intent(in) :: options

Return Value character(len=:), allocatable


Subroutines

private subroutine init(this, options)

Arguments

Type IntentOptional Attributes Name
class(PCHB_FCI_excit_generator_t), intent(inout) :: this
type(FCI_PCHB_Options_t), intent(in) :: options

private subroutine singles_allocate_and_init(options, generator)

Arguments

Type IntentOptional Attributes Name
type(FCI_PCHB_SinglesOptions_t), intent(in) :: options
class(SingleExcitationGenerator_t), intent(inout), allocatable :: generator

private subroutine assert_validity(this)

Arguments

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