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

DVR Initialization routines mostly from the Heidelberg MCTDH package. More...

Public Member Functions

subroutine get_operators
 Get the DVR representation of the Kinetic Energy Operator. More...
 
subroutine init_kineticenergy_dvr (xi, xf, igdim, hdvr, weight, ort, ort_p, DVRMETHOD)
 Subroutine that initializes the DVR of the Kinetic Energy. More...
 
subroutine dvrweights (trafo, ort, gdim1, ggdim, weight, basis, rpbaspar, ipbaspar, ipbaspar1, lsq, lnw)
 According to the selected DVR and its parameters – get the weights. More...
 
subroutine initho (trafo, ort, dif2mat, dif1mat, gdim, hofm, hoxeq, dx, hotyp)
 Initialize the harmonic oscillator DVR. More...
 
subroutine initrho (trafo, ort, dif2mat, dif1mat, gdim, hofm, hoxeq, xi, dx, hotyp, message)
 Initialize the real harmonic oscillator DVR. More...
 
subroutine initsin (trafo, ort, dif2mat, dif1mat, gdim, xi, xf)
 Initialize sine DVR. More...
 
subroutine initexp (trafo, ort, dif2mat, dif1mat, exphin, exprueck, gdim, xi, xf, kmin, kdim)
 
subroutine initfft (ort, fftp, gdim, xi, xf)
 Initialize the FFT collocation. More...
 
subroutine initsphfbr (gdim, kinsph, jzsph, jzzsph, jsph, msph, jmax, sphtyp, mmax, mincr, mmin, ilog)
 Initialize spherical harmonics DVR. More...
 
subroutine initlagu (trafo, ort, dif2mat, dif1mat, workr, gdim, x0, breite, xi, xf, typ, icut, message, basis)
 Initialize the laguerre DVR. More...
 
subroutine gengauss (psi, gdim, dim, weight, trafo, ort, basis, rpbaspar, ipbaspar, ipbaspar1, rsbaspar, isbaspar, ggdim)
 Generate gaussian in DVR. More...
 
subroutine genhigher (psi, gdim, dim, next, ort, basis, ipbaspar, power, gxeq, shift)
 Generate mode eigenfunctions. More...
 
subroutine getpos (xi, xf, gdim, pos)
 Position grid of an FFT collocation. More...
 
subroutine getmom (xi, xf, gdim, mom)
 Momentum grid of an FFT collocation. More...
 

Detailed Description

DVR Initialization routines mostly from the Heidelberg MCTDH package.

Member Function/Subroutine Documentation

subroutine dvr_initialization::dvrweights ( real*8, dimension(ggdim,gdim1)  trafo,
real*8, dimension(gdim1)  ort,
integer  gdim1,
integer  ggdim,
real*8, dimension(gdim1)  weight,
integer  basis,
real*8, dimension(*)  rpbaspar,
integer, dimension(*)  ipbaspar,
integer, dimension(*)  ipbaspar1,
logical  lsq,
logical  lnw 
)

According to the selected DVR and its parameters – get the weights.

Referenced by gengauss(), and init_kineticenergy_dvr().

Here is the caller graph for this function:

subroutine dvr_initialization::gengauss ( complex*16, dimension(gdim,dim)  psi,
integer  gdim,
integer  dim,
real*8, dimension(gdim)  weight,
real*8, dimension(ggdim,gdim)  trafo,
real*8, dimension(gdim)  ort,
integer  basis,
real*8, dimension(*)  rpbaspar,
integer, dimension(*)  ipbaspar,
integer, dimension(*)  ipbaspar1,
real*8, dimension(*)  rsbaspar,
integer, dimension(*)  isbaspar,
integer  ggdim 
)

Generate gaussian in DVR.

References dvrweights(), genhigher(), function_library::normvxz(), function_library::schmidtortho(), and function_library::xvixdzo().

Referenced by init_kineticenergy_dvr().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dvr_initialization::genhigher ( complex*16, dimension(gdim,dim)  psi,
integer  gdim,
integer  dim,
integer  next,
real*8, dimension(gdim)  ort,
integer  basis,
integer, dimension(*)  ipbaspar,
integer  power,
real*8  gxeq,
real*8  shift 
)

Generate mode eigenfunctions.

References function_library::normvxz(), function_library::vvaxzz(), function_library::xvixdzo(), and function_library::xvxxzzs().

Referenced by gengauss().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dvr_initialization::get_operators ( )

Get the DVR representation of the Kinetic Energy Operator.

References init_kineticenergy_dvr().

Referenced by analysis_main_program(), and mctdhx::mctdhx_routine().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dvr_initialization::getmom ( double precision, intent(in)  xi,
double precision, intent(in)  xf,
integer, intent(in)  gdim,
double precision, dimension(gdim), intent(out)  mom 
)

Momentum grid of an FFT collocation.

Referenced by init_kineticenergy_dvr().

Here is the caller graph for this function:

subroutine dvr_initialization::getpos ( double precision, intent(in)  xi,
double precision, intent(in)  xf,
integer, intent(in)  gdim,
double precision, dimension(gdim), intent(out)  pos 
)

Position grid of an FFT collocation.

Referenced by init_kineticenergy_dvr().

Here is the caller graph for this function:

subroutine dvr_initialization::init_kineticenergy_dvr ( real*8  xi,
real*8  xf,
integer  igdim,
real*8, dimension(igdim,igdim)  hdvr,
real*8, dimension(igdim)  weight,
real*8, dimension(igdim)  ort,
real*8, dimension(igdim)  ort_p,
integer  DVRMETHOD 
)

Subroutine that initializes the DVR of the Kinetic Energy.

References dvrweights(), gengauss(), getmom(), getpos(), initexp(), initho(), initsin(), and function_library::schmidtortho().

Referenced by get_operators().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dvr_initialization::initexp ( real*8, dimension(gdim,gdim)  trafo,
real*8, dimension(gdim)  ort,
real*8, dimension(gdim,gdim)  dif2mat,
real*8, dimension(gdim,gdim)  dif1mat,
complex*16, dimension(gdim,kdim)  exphin,
complex*16, dimension(kdim,gdim)  exprueck,
integer  gdim,
real*8  xi,
real*8  xf,
integer  kmin,
integer  kdim 
)

References function_library::zeromxd().

Referenced by init_kineticenergy_dvr().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dvr_initialization::initfft ( real*8, dimension(0:gdim-1)  ort,
real*8, dimension(0:gdim-1)  fftp,
integer  gdim,
real*8  xi,
real*8  xf 
)

Initialize the FFT collocation.

subroutine dvr_initialization::initho ( real*8, dimension(gdim,gdim)  trafo,
real*8, dimension(gdim)  ort,
real*8, dimension(gdim,gdim)  dif2mat,
real*8, dimension(gdim,gdim)  dif1mat,
integer  gdim,
real*8  hofm,
real*8  hoxeq,
real*8  dx,
integer  hotyp 
)

Initialize the harmonic oscillator DVR.

References function_library::zeromxd(), and function_library::zerovxd().

Referenced by init_kineticenergy_dvr().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dvr_initialization::initlagu ( real*8, dimension(gdim,gdim)  trafo,
real*8, dimension(gdim)  ort,
real*8, dimension(gdim,gdim)  dif2mat,
real*8, dimension(gdim,gdim)  dif1mat,
real*8, dimension(gdim,gdim)  workr,
integer  gdim,
real*8  x0,
real*8  breite,
real*8  xi,
real*8  xf,
integer  typ,
integer  icut,
character*(*)  message,
integer  basis 
)

Initialize the laguerre DVR.

subroutine dvr_initialization::initrho ( real*8, dimension(gdim,gdim)  trafo,
real*8, dimension(gdim)  ort,
real*8, dimension(gdim,gdim)  dif2mat,
real*8, dimension(gdim,gdim)  dif1mat,
integer  gdim,
real*8  hofm,
real*8  hoxeq,
real*8  xi,
real*8  dx,
integer  hotyp,
character*(*)  message 
)

Initialize the real harmonic oscillator DVR.

References function_library::zeromxd().

Here is the call graph for this function:

subroutine dvr_initialization::initsin ( real*8, dimension(gdim,gdim)  trafo,
real*8, dimension(gdim)  ort,
real*8, dimension(gdim,gdim)  dif2mat,
real*8, dimension(gdim,gdim)  dif1mat,
integer  gdim,
real*8  xi,
real*8  xf 
)

Initialize sine DVR.

Referenced by init_kineticenergy_dvr().

Here is the caller graph for this function:

subroutine dvr_initialization::initsphfbr ( integer  gdim,
real*8, dimension(gdim)  kinsph,
real*8, dimension(gdim)  jzsph,
real*8, dimension(gdim)  jzzsph,
integer, dimension(gdim)  jsph,
integer, dimension(gdim)  msph,
integer  jmax,
integer  sphtyp,
integer  mmax,
integer  mincr,
integer  mmin,
integer  ilog 
)

Initialize spherical harmonics DVR.


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