(git:3add494)
semi_empirical_int_ana Module Reference

Analytical derivatives of Integrals for semi-empirical methods. More...

Data Types

interface  check_dssss_nucint_ana
 Check Numerical Vs Analytical NUCINT ssss. More...
 
interface  check_dcore_nucint_ana
 Check Numerical Vs Analytical NUCINT core. More...
 
interface  check_drotnuc_ana
 Check Numerical Vs Analytical ROTNUC. More...
 
interface  check_dcorecore_ana
 Check Numerical Vs Analytical CORECORE. More...
 
interface  rot_2el_2c_first_debug
 Check Numerical Vs Analytical rot_2el_2c_first. More...
 
interface  check_dterep_ana
 Check Numerical Vs Analytical check_dterep_ana. More...
 
interface  check_rotint_ana
 Check Numerical Vs Analytical check_rotint_ana. More...
 

Functions/Subroutines

recursive subroutine, public rotnuc_ana (sepi, sepj, rijv, itype, e1b, e2a, de1b, de2a, se_int_control, se_taper)
 Computes analytical gradients for semiempirical integrals. More...
 
recursive subroutine, public corecore_ana (sepi, sepj, rijv, itype, enuc, denuc, se_int_control, se_taper)
 Computes analytical gradients for semiempirical core-core interaction. More...
 
recursive subroutine, public corecore_el_ana (sepi, sepj, rijv, itype, enuc, denuc, se_int_control, se_taper)
 Computes analytical gradients for semiempirical core-core electrostatic interaction only. More...
 
recursive subroutine, public rotint_ana (sepi, sepj, rijv, w, dw, se_int_control, se_taper)
 calculates the derivative of the two-particle interactions More...
 

Detailed Description

Analytical derivatives of Integrals for semi-empirical methods.

Author
Teodoro Laino - Zurich University 04.2007 [tlaino]
History
23.11.2007 jhu short range version of integrals Teodoro Laino (04.2008) [tlaino] - University of Zurich : new driver for computing integrals Teodoro Laino (05.2008) [tlaino] - University of Zurich : analytical derivatives for d-orbitals

Function/Subroutine Documentation

◆ rotnuc_ana()

recursive subroutine, public semi_empirical_int_ana::rotnuc_ana ( type(semi_empirical_type), pointer  sepi,
type(semi_empirical_type), pointer  sepj,
real(dp), dimension(3), intent(in)  rijv,
integer, intent(in)  itype,
real(dp), dimension(45), intent(out), optional  e1b,
real(dp), dimension(45), intent(out), optional  e2a,
real(dp), dimension(3, 45), intent(out), optional  de1b,
real(dp), dimension(3, 45), intent(out), optional  de2a,
type(se_int_control_type), intent(in)  se_int_control,
type(se_taper_type), pointer  se_taper 
)

Computes analytical gradients for semiempirical integrals.

Parameters
sepiAtomic parameters of first atom
sepjAtomic parameters of second atom
rijvCoordinate vector i -> j
itype...
e1bArray of electron-nuclear attraction integrals, Electron on atom ni attracting nucleus of nj.
e2aArray of electron-nuclear attraction integrals, Electron on atom nj attracting nucleus of ni.
de1bderivative of e1b term
de2aderivative of e2a term
se_int_controlinput parameters that control the calculation of SE integrals (shortrange, R3 residual, screening type)
se_taper...
History
04.2007 created [tlaino] Teodoro Laino (04.2008) [tlaino] - University of Zurich : new driver for computing integrals Teodoro Laino [tlaino] - University of Zurich 04.2008 : removed the core-core part
Author
Teodoro Laino [tlaino] - Zurich University
Note
Analytical version of the MOPAC rotnuc routine

Definition at line 283 of file semi_empirical_int_ana.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ corecore_ana()

recursive subroutine, public semi_empirical_int_ana::corecore_ana ( type(semi_empirical_type), pointer  sepi,
type(semi_empirical_type), pointer  sepj,
real(dp), dimension(3), intent(in)  rijv,
integer, intent(in)  itype,
real(dp), intent(out), optional  enuc,
real(dp), dimension(3), intent(out), optional  denuc,
type(se_int_control_type), intent(in)  se_int_control,
type(se_taper_type), pointer  se_taper 
)

Computes analytical gradients for semiempirical core-core interaction.

Parameters
sepiAtomic parameters of first atom
sepjAtomic parameters of second atom
rijvCoordinate vector i -> j
itype...
enucnuclear-nuclear repulsion term.
denucderivative of nuclear-nuclear repulsion term.
se_int_controlinput parameters that control the calculation of SE integrals (shortrange, R3 residual, screening type)
se_taper...
History
04.2007 created [tlaino] Teodoro Laino (04.2008) [tlaino] - University of Zurich : new driver for computing integrals Teodoro Laino [tlaino] - University of Zurich 04.2008 : removed the core-core part
Author
Teodoro Laino [tlaino] - Zurich University
Note
Analytical version of the MOPAC rotnuc routine

Definition at line 541 of file semi_empirical_int_ana.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ corecore_el_ana()

recursive subroutine, public semi_empirical_int_ana::corecore_el_ana ( type(semi_empirical_type), pointer  sepi,
type(semi_empirical_type), pointer  sepj,
real(dp), dimension(3), intent(in)  rijv,
integer, intent(in)  itype,
real(dp), intent(out), optional  enuc,
real(dp), dimension(3), intent(out), optional  denuc,
type(se_int_control_type), intent(in)  se_int_control,
type(se_taper_type), pointer  se_taper 
)

Computes analytical gradients for semiempirical core-core electrostatic interaction only.

Parameters
sepiAtomic parameters of first atom
sepjAtomic parameters of second atom
rijvCoordinate vector i -> j
itype...
enucnuclear-nuclear electrostatic repulsion term.
denucderivative of nuclear-nuclear electrostatic repulsion term.
se_int_controlinput parameters that control the calculation of SE integrals (shortrange, R3 residual, screening type)
se_taper...
History
04.2007 created [tlaino] Teodoro Laino (04.2008) [tlaino] - University of Zurich : new driver for computing integrals Teodoro Laino [tlaino] - University of Zurich 04.2008 : removed the core-core part
Author
Teodoro Laino [tlaino] - Zurich University
Note
Analytical version of the MOPAC rotnuc routine

Definition at line 849 of file semi_empirical_int_ana.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ rotint_ana()

recursive subroutine, public semi_empirical_int_ana::rotint_ana ( type(semi_empirical_type), pointer  sepi,
type(semi_empirical_type), pointer  sepj,
real(dp), dimension(3), intent(in)  rijv,
real(dp), dimension(2025), intent(out), optional  w,
real(dp), dimension(3, 2025), intent(out), optional  dw,
type(se_int_control_type), intent(in)  se_int_control,
type(se_taper_type), pointer  se_taper 
)

calculates the derivative of the two-particle interactions

Parameters
sepiAtomic parameters of first atom
sepjAtomic parameters of second atom
rijvCoordinate vector i -> j
wArray of two-electron repulsion integrals.
dw...
se_int_control...
se_taper...
History
04.2007 created [tlaino] Teodoro Laino (04.2008) [tlaino] - University of Zurich : new driver for computing integrals
Author
Teodoro Laino - Zurich University
Note
Analytical version - Analytical evaluation of gradients Teodoro Laino - Zurich University 04.2007 routine adapted from mopac7 (repp) vector version written by Ernest R. Davidson, Indiana University

Definition at line 1422 of file semi_empirical_int_ana.F.

Here is the call graph for this function:
Here is the caller graph for this function: