OpenMCTDHB v2.3

Todo List

Module moduleallocatables
document variables of this module

Subprogram moduleallocatables::allocate_systemArrays (NDX, NDY, NDZ, MOrb, nConf, nSuperDiags)
maybe get rid of the use association

Module modulecomputationcore
variable documentation

Subprogram modulecomputationcore::evaluate_error (Delta_CVec, Delta_Psi, rho_jk_zero, CVecError, PsiError, nConf)
make MOrb an inputvariable and get rid of the use association

Subprogram modulecomputationcore::FuncCVecBandMat (AbsTime, CVec, DtCVec, BandMat, RData, IData, LData)
put all use associated variables into IDATA,RDATA CDATA and LDATA

Subprogram modulecomputationcore::FuncOrbs (AbsTime, Psi_WORK, DtPsi_WORK, CData, RData, IData, LData)
put all use associated variables into IDATA,RDATA CDATA and LDATA

Subprogram modulecomputationcore::get_FullHamiltonianBandMatrix (NPar, MOrb, NDX, NDY, NDZ, Dims, nConf, nSuperDiags, lambda0, Psi, BandMat)
for more than 2 orbitals this is not a good idea because the matrix will no longer be a simple band matrix. Use, e.g. the mapping fo rmore orbitals.

Subprogram modulecomputationcore::get_rho_ijkl (nConf, MOrb, NPar, CVec, rho_ijkl)
write it for MOrb=arbitrary orbitals

Subprogram modulecomputationcore::get_rho_jk (nConf, MOrb, NPar, CVec, rho_jk)
write it for MOrb=arbitrary orbitals

Subprogram modulecomputationcore::get_Wijkl (Wijkl, i, j, k, l, Psi)
get rid of use associations, all variables as arguments.

Subprogram modulecomputationcore::get_Wsl (Wsl, s, l, Psi)
get rid of use associations, all variables as arguments. reduce module dependencies. currently

Subprogram modulecomputationcore::get_Wsl_IMEST (Wsl, psi_s, psi_l)
documentation still missing

Subprogram modulecomputationcore::get_Wsl_phi_q (Wsl, phi_q, Wsl_phi_q)
get rid of use associations, all variables as arguments.

Subprogram modulecomputationcore::projector_MCTDHB (Chi, projectedChi, Psi)
get rid of the use association

Subprogram modulecorrelationfunctions::FT_SORTED (PSI, FTPSI)
Probably move this routine to the FFT module

Subprogram modulecorrelationfunctions::get_corr_slice (time, PSI, mode, rho_jk, rho_ijkl, x1const, x1slice, y1const, y1slice, x2const, x2slice, y2const, y2slice)
variable documentation, variable cleaning

Subprogram modulecorrelationfunctions::get_correlations (time, Psi, mode, dilation, rho_jk, rho_ijkl)
: reduce use associations, variable documentation

Subprogram modulecorrelationfunctions::get_densityNonescape (xstart, xstop, rho_jk, time, PSI)
generalize to more than 1D

Subprogram modulecorrelationfunctions::get_dilation (dilation, Psi, rho_jk)
get rid of use associations, variable documentation

Subprogram modulecorrelationfunctions::get_maximum (Psi, rho_jk, maximum)
make all use associated variables arguments of the routine, variable documentation

Subprogram modulecorrelationfunctions::get_oneBodyRDMDiagonal (time, Psi, rho_jk, mode, dilation)
reduce the use associations as much as possible, variable documentation

Subprogram modulecorrelationfunctions::getsliceAsString (d, x, doubleString)
Probably move this routine to the Input/Output module

Subprogram modulecorrelationfunctions::pedestrian_FT (Psi, FTPsi, dilation)
variable documentation

Subprogram modulecorrelationfunctions::sort_FFT_to_ascending_2d (FFT, NDX, NDY)
Probably move this routine to the FFT module

Subprogram moduleextensions::Wint_IMEST (x, y, z)
This is not fully implemented yet, input file option, pass lambda0

Subprogram modulegrid::check_grid (Dims, NDX, NDY, NDZ)
there should be a check to see whether the DFT is an accurate enough approximation to the Fourier transform.

Module moduleinputoutput
many routines still need variable documentation

Subprogram moduleinputoutput::get_cumulativeProbability (Psi, rho_jk, x, cumulativeProbability)
make all use associatied variables input variables, 2d, 3d

Subprogram moduleinputoutput::get_energy (CVec, BandMat, energy, nConf)
make nSuperDiags an inputvariable and get rid of the use association

Subprogram moduleinputoutput::get_meanDensity (Psi, rho_jk, meanDensity)
get rid of the use association, make weight an input parameter, 2d,3d

Subprogram moduleinputoutput::read_potentialFromFile (V_ext, NDX, NDY, NDZ)
: make the name of the file an option in input.nml

Subprogram moduleinputoutput::write_CVecFile (AbsTime, CVec, fileID, identifier)
: get rid of the use association

Subprogram moduleinputoutput::write_norbsToFile (AbsTime, norbs, NDX, NDY, NDZ, MOrb, identifier)
: get rid of the use association

Subprogram moduleinputoutput::write_probabilityLeft (AbsTime, cumulativeProbability, MOrb, NPar, identifier)
this routine was written for 1D only. Generalize it.

Module moduleintegration
Sort out which variables are IN,INOUT,OUT

Module moduleparameters
ABMIntorder and restartABM can be moved and made variable

Subprogram OpenMCTDHB
Some of the output functions are currently working for 1D only, make it 2d. search for 'Dims==1'
 All Namespaces Files Functions Variables