population Module

module for various kinds of popilation analysis



Subroutines

public subroutine mulliken_population_analysis(a, b, f, output, d_given)

Mulliken atomic population analysis Ref) Mulliken, JCP 23, 1833 (1955)

Read more…

Arguments

Type IntentOptional Attributes Name
type(atom_set), intent(in) :: a(:)
type(basis), intent(in) :: b
type(wf_data), intent(in) :: f
integer, intent(in) :: output
real(kind=long), optional :: d_given(b%n_basis,b%n_basis)

public subroutine bondorder_analysis(p, b, d, output, bondorder)

Calculates bond-order btw atoms. -diagonal elements- should be ignored (in practice they are juat the Mulliken charges) revised 13.09.2016 by Ludger: Bond order is See e.g. INTERNATIONAL JOURNAL OF QUANTUM CHEMISTRY, VOL. XXVI, I S 1-154 ( 1984)

Read more…

Arguments

Type IntentOptional Attributes Name
type(param) :: p
type(basis) :: b
real(kind=long), intent(in) :: d(b%n_basis,b%n_basis)
integer, intent(in) :: output
real(kind=long), intent(out), optional, target :: bondorder(p%n_nuc,p%n_nuc)

public subroutine fragment_analysis(p, b, f, output)

analysis possible fragments based on bond order values

Arguments

Type IntentOptional Attributes Name
type(param) :: p
type(basis) :: b
type(wf_data), intent(in) :: f
integer, intent(in) :: output

public subroutine gross_population_analysis(p, a, b, f, output, gross_pop, sym_l)

gross orbital population analysis

Arguments

Type IntentOptional Attributes Name
type(param), intent(in) :: p
type(atom_set), intent(in) :: a(:)
type(basis), intent(in) :: b
type(wf_data), intent(in) :: f
integer, intent(in) :: output
real(kind=long), intent(out), optional :: gross_pop(b%n_basis,size(a))
integer, intent(in), optional :: sym_l

public subroutine mulliken_population(a, b, f, pop, dmatrix)

mulliken population analysis

Arguments

Type IntentOptional Attributes Name
type(atom_set), intent(in) :: a(:)
type(basis), intent(in) :: b
type(wf_data), intent(in) :: f
real(kind=long), intent(out) :: pop(size(a,1))
real(kind=long), intent(in), optional :: dmatrix(b%n_basis,b%n_basis)

public subroutine loewdin_population(a, b, f, pop, dmatrix)

loewdin population analysis

Arguments

Type IntentOptional Attributes Name
type(atom_set), intent(in) :: a(:)
type(basis), intent(in) :: b
type(wf_data), intent(in) :: f
real(kind=long), intent(out) :: pop(size(a,1))
real(kind=long), intent(in), optional :: dmatrix(b%n_basis,b%n_basis)

public subroutine loewdin_population_analysis(a, b, f, output, d_given)

loewdin population analysis

Arguments

Type IntentOptional Attributes Name
type(atom_set), intent(in) :: a(:)
type(basis), intent(in) :: b
type(wf_data), intent(in) :: f
integer, intent(in) :: output
real(kind=long), optional :: d_given(b%n_basis,b%n_basis)

public subroutine dominant_subshell_mo(b, lc, max_atom, max_n, max_l, max_popnl)

for a given MO return the dominant atomic subshell

Arguments

Type IntentOptional Attributes Name
type(basis), intent(in) :: b
real(kind=long), intent(in) :: lc(:)
integer, intent(out) :: max_atom
integer, intent(out) :: max_n
integer, intent(out) :: max_l
real(kind=long), intent(out) :: max_popnl

public subroutine atomic_density_population_analysis(g, a, f, output)

population analysis based on the grid points

Arguments

Type IntentOptional Attributes Name
type(grid3d), intent(in) :: g
type(atom_set), intent(in) :: a(:)
type(wf_data), intent(inout) :: f
integer, intent(in) :: output

public subroutine spin_center_analysis(p, g, b, da, db, output)

performs analysis of the spin center

Arguments

Type IntentOptional Attributes Name
type(param) :: p
type(grid3d), intent(in) :: g
type(basis), intent(in) :: b
real(kind=long), intent(in) :: da(:,:)
real(kind=long), intent(in) :: db(:,:)
integer, intent(in) :: output