MCTDH-X  v2.22
 All Classes Files Functions Variables Pages
function_library Module Reference

This module collects useful functions and vector routines. More...

Public Member Functions

real *8 function factorial (N)
 Compute factorial. More...
 
real *8 function logfactorial (N)
 Compute logarithm of factorial. More...
 
real *8 function binomialcoefficient (N, K)
 Compute a Binomial coefficient. More...
 
real *8 function ddgamma (x)
 Compute the Gamma function. More...
 
double precision function dlgama (x)
 Compute the logarithm of the Gamma function. More...
 
double precision function beta (a, b)
 Compute the beta function. More...
 
subroutine normvxd (vec, norm, dim)
 Calculate the norm of a real vector vec of dimension dim. More...
 
subroutine normvxz (vec, norm, dim)
 Calculate the norm of a complex vector vec of dimension dim. More...
 
subroutine zeromxd (mat, dim1, dim2)
 Set matrix mat of dimension dim1 x dim2 to zero. More...
 
subroutine zerovxd (vec, dim)
 Set real vector vec of dimension dim to 0.d0. More...
 
subroutine tranqxd (a, dim)
 Transpose a real square dim x dim matrix a. More...
 
subroutine cpvxdz (v, w, dim)
 Copy the real vector v to the real part of the complex vector w. More...
 
subroutine cpvxd (v, w, dim)
 Copy the real vector v of dimension dim to the real vector w. More...
 
subroutine schmidtortho_nlevel (psi, gdim, dim, nlevel, ierr)
 Schmidt Orthonormalization of a set of dim complex vectors of dimension gdim stored in psi. More...
 
subroutine schmidtortho_nlevel2 (psi, gdim, dim, nlevel, ierr)
 Schmidt Orthonormalization of a set of dim complex vectors of dimension gdim stored in psi. More...
 
subroutine schmidtortho (psi, gdim, dim, ierr)
 Schmidt Orthonormalization of a set of dim complex vectors of dimension gdim stored in psi. More...
 
subroutine schmidtorthod (psi, dim)
 Schmidt Orthonormalization of a set of dim real vectors of dimension gdim stored in psi. More...
 
subroutine xvixddo (x, v, dim)
 Devides a real vector v of length dim by a real number x. Called by schmidtortho. More...
 
subroutine xvixdzo (x, v, dim)
 Devides a complex vector v of length dim by a real number x. More...
 
subroutine xvxxdds (x, v, w, dim)
 Subtract from a real vector w of dimension dim x (real) times the real vector v of dimension dim. More...
 
subroutine xvxxzzs (x, v, w, dim)
 Subtract from a complex vector w of dimension dim x (complex) times the complex vector v of dimension dim. More...
 
subroutine vvtxdd (u, v, s, dim)
 Calculate the scalar product s of the two real vectors u,v of dimension dim. More...
 
subroutine vvaxzz (u, v, s, dim)
 Calculate the scalar product s of the two complex vectors u,v of dimension dim. More...
 

Detailed Description

This module collects useful functions and vector routines.

Member Function/Subroutine Documentation

double precision function function_library::beta ( double precision  a,
double precision  b 
)
real*8 function function_library::binomialcoefficient ( integer  N,
integer  K 
)
subroutine function_library::cpvxd ( real*8, dimension(dim)  v,
real*8, dimension(dim)  w,
integer  dim 
)

Copy the real vector v of dimension dim to the real vector w.

Referenced by sil_integrators::sildiag(), and sil_integrators::silstep().

Here is the caller graph for this function:

subroutine function_library::cpvxdz ( real*8, dimension(dim)  v,
complex*16, dimension(dim)  w,
integer  dim 
)

Copy the real vector v to the real part of the complex vector w.

real*8 function function_library::ddgamma ( real*8  x)

Compute the Gamma function.

Referenced by get_initial_orbitals().

Here is the caller graph for this function:

double precision function function_library::dlgama ( double precision  x)

Compute the logarithm of the Gamma function.

Referenced by beta(), auxiliary_analysis_routines::loopy_permanent(), and auxiliary_analysis_routines::u_transform().

Here is the caller graph for this function:

real*8 function function_library::factorial ( integer  N)

Compute factorial.

Referenced by auxiliary_analysis_routines::u_trans().

Here is the caller graph for this function:

real*8 function function_library::logfactorial ( integer  N)

Compute logarithm of factorial.

subroutine function_library::normvxd ( real*8, dimension(dim)  vec,
real*8  norm,
integer  dim 
)

Calculate the norm of a real vector vec of dimension dim.

Referenced by schmidtorthod().

Here is the caller graph for this function:

subroutine function_library::normvxz ( complex*16, dimension(dim)  vec,
real*8  norm,
integer  dim 
)

Calculate the norm of a complex vector vec of dimension dim.

Referenced by dvr_initialization::gengauss(), dvr_initialization::genhigher(), analysis_routines_2d::get_lz(), auxiliary_fftroutines::get_sorted_fft(), and auxiliary_fftroutines::twod_zero_padding().

Here is the caller graph for this function:

subroutine function_library::schmidtortho ( complex*16, dimension(gdim,dim)  psi,
integer  gdim,
integer  dim,
integer  ierr 
)

Schmidt Orthonormalization of a set of dim complex vectors of dimension gdim stored in psi.

Referenced by orbital_equationofmotion::func(), dvr_initialization::gengauss(), get_initial_orbitals(), analysis_routines_manybody::get_loc_frag(), input_output::guess_read_orb(), dvr_initialization::init_kineticenergy_dvr(), and schmidtortho_nlevel2().

Here is the caller graph for this function:

subroutine function_library::schmidtortho_nlevel ( complex*16, dimension(gdim,dim,nlevel)  psi,
integer  gdim,
integer  dim,
integer  nlevel,
integer  ierr 
)

Schmidt Orthonormalization of a set of dim complex vectors of dimension gdim stored in psi.

Referenced by orbital_equationofmotion::func_nlevel(), and get_initial_nlevelorbitals().

Here is the caller graph for this function:

subroutine function_library::schmidtortho_nlevel2 ( complex*16, dimension(gdim,dim,nlevel)  psi,
integer  gdim,
integer  dim,
integer  nlevel,
integer  ierr 
)

Schmidt Orthonormalization of a set of dim complex vectors of dimension gdim stored in psi.

References schmidtortho().

Here is the call graph for this function:

subroutine function_library::schmidtorthod ( real*8, dimension(dim,dim)  psi,
integer  dim 
)

Schmidt Orthonormalization of a set of dim real vectors of dimension gdim stored in psi.

References normvxd(), tranqxd(), vvtxdd(), xvixddo(), and xvxxdds().

Here is the call graph for this function:

subroutine function_library::tranqxd ( real*8, dimension(dim,dim)  a,
integer  dim 
)

Transpose a real square dim x dim matrix a.

Referenced by schmidtorthod().

Here is the caller graph for this function:

subroutine function_library::vvaxzz ( complex*16, dimension(dim)  u,
complex*16, dimension(dim)  v,
complex*16  s,
integer  dim 
)

Calculate the scalar product s of the two complex vectors u,v of dimension dim.

Referenced by dvr_initialization::genhigher().

Here is the caller graph for this function:

subroutine function_library::vvtxdd ( real*8, dimension(dim)  u,
real*8, dimension(dim)  v,
real*8  s,
integer  dim 
)

Calculate the scalar product s of the two real vectors u,v of dimension dim.

Referenced by schmidtorthod().

Here is the caller graph for this function:

subroutine function_library::xvixddo ( real*8  x,
real*8, dimension(dim)  v,
integer  dim 
)

Devides a real vector v of length dim by a real number x. Called by schmidtortho.

Referenced by schmidtorthod().

Here is the caller graph for this function:

subroutine function_library::xvixdzo ( real*8  x,
complex*16, dimension(dim)  v,
integer  dim 
)

Devides a complex vector v of length dim by a real number x.

Referenced by dvr_initialization::gengauss(), dvr_initialization::genhigher(), auxiliary_fftroutines::get_sorted_fft(), and auxiliary_fftroutines::twod_zero_padding().

Here is the caller graph for this function:

subroutine function_library::xvxxdds ( real*8  x,
real*8, dimension(dim)  v,
real*8, dimension(dim)  w,
integer  dim 
)

Subtract from a real vector w of dimension dim x (real) times the real vector v of dimension dim.

Referenced by schmidtorthod().

Here is the caller graph for this function:

subroutine function_library::xvxxzzs ( complex*16  x,
complex*16, dimension(dim)  v,
complex*16, dimension(dim)  w,
integer  dim 
)

Subtract from a complex vector w of dimension dim x (complex) times the complex vector v of dimension dim.

Referenced by dvr_initialization::genhigher().

Here is the caller graph for this function:

subroutine function_library::zeromxd ( real*8, dimension(dim1,dim2)  mat,
integer  dim1,
integer  dim2 
)

Set matrix mat of dimension dim1 x dim2 to zero.

Referenced by dvr_initialization::initexp(), dvr_initialization::initho(), and dvr_initialization::initrho().

Here is the caller graph for this function:

subroutine function_library::zerovxd ( real*8, dimension(dim)  vec,
integer  dim 
)

Set real vector vec of dimension dim to 0.d0.

Referenced by dav_integrators::bdavstep(), and dvr_initialization::initho().

Here is the caller graph for this function:


The documentation for this module was generated from the following file: