|
MCTDH-X
v2.22
|
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... | |
This module collects useful functions and vector routines.
| double precision function function_library::beta | ( | double precision | a, |
| double precision | b | ||
| ) |
Compute the beta function.
References dlgama().
Referenced by dav_integrators::bdavstep(), binomialcoefficient(), dav_integrators::davstep(), nr::brent::dbrent::dfpmin::mnbrak::modlnp(), runge_kutta::od85cr(), runge_kutta::odp5cr(), runge_kutta::rungekutta5(), runge_kutta::rungekutta8(), sil_integrators::sildiag(), sil_integrators::silstep(), and nr::brent::dbrent::dfpmin::mnbrak::ssbfgs().


| real*8 function function_library::binomialcoefficient | ( | integer | N, |
| integer | K | ||
| ) |
Compute a Binomial coefficient.
References beta().
Referenced by coefficients_parameters::coefficients_parameters_init(), analysis_routines_manybody::get_anyordercorrelations(), analysis_routines_manybody::get_singleshot(), input_output::guess_read_ci(), and hamiltonianaction_coefficients::initialize_coefficient_parameters().


| 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().

| 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().

| 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().

| real*8 function function_library::factorial | ( | integer | N | ) |
Compute factorial.
Referenced by auxiliary_analysis_routines::u_trans().

| 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().

| 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().

| 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().

| 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().

| 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().

| subroutine function_library::schmidtorthod | ( | real*8, dimension(dim,dim) | psi, |
| integer | dim | ||
| ) |
| subroutine function_library::tranqxd | ( | real*8, dimension(dim,dim) | a, |
| integer | dim | ||
| ) |
Transpose a real square dim x dim matrix a.
Referenced by schmidtorthod().

| 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().

| 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().

| 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().

| 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().

| 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().

| 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().

| 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().

| 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().
