guga_pchb_singles_weights_mod Module



Variables

Type Visibility Attributes Name Initial
type(PropVec_PCHB_SinglesWeighting_vals_t), private, parameter :: weighting_vals = PropVec_PCHB_SinglesWeighting_vals_t()

Abstract Interfaces

abstract interface

  • public function get_weight_t(i, a)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: i

    Spatial orbital index

    integer, intent(in) :: a

    Spatial orbital index

    Return Value real(kind=dp)


Derived Types

type, public, extends(EnumBase_t) ::  PropVec_PCHB_SinglesWeighting_t

Components

Type Visibility Attributes Name Initial
integer, public :: val
character(len=20), public :: str

Type-Bound Procedures

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

Components

Type Visibility Attributes Name Initial
type(PropVec_PCHB_SinglesWeighting_t), public :: UNIFORM = PropVec_PCHB_SinglesWeighting_t(1, 'UNIFORM')
type(PropVec_PCHB_SinglesWeighting_t), public :: ABS_INTEGRAL = PropVec_PCHB_SinglesWeighting_t(2, 'ABS-INTEGRAL')
type(PropVec_PCHB_SinglesWeighting_t), public :: RHF_EXPR = PropVec_PCHB_SinglesWeighting_t(3, 'RHF-EXPRESSION')

Type-Bound Procedures

procedure, public, nopass :: from_str => weight_from_str

Functions

private elemental function weight_from_str(str) result(res)

Arguments

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

Return Value type(PropVec_PCHB_SinglesWeighting_t)

private pure function get_weight_uniform(i, a) result(weight)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: i

Spatial orbital index

integer, intent(in) :: a

Spatial orbital index

Return Value real(kind=dp)

private pure function get_weight_abs_integral(i, a) result(weight)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: i

Spatial orbital index

integer, intent(in) :: a

Spatial orbital index

Return Value real(kind=dp)

private pure function get_weight_RHF_expr(i, a) result(weight)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: i

Spatial orbital index

integer, intent(in) :: a

Spatial orbital index

Return Value real(kind=dp)

private pure function to_str(weighting) result(res)

Arguments

Type IntentOptional Attributes Name
class(PropVec_PCHB_SinglesWeighting_t), intent(in) :: weighting

Return Value character(len=:), allocatable


Subroutines

public subroutine set_get_weight_pointer(weight_choice, ptr)

Arguments

Type IntentOptional Attributes Name
type(PropVec_PCHB_SinglesWeighting_t), intent(in) :: weight_choice
procedure(get_weight_t), intent(out), pointer :: ptr