MCTDH-X
v2.22
|
This module collects the routines necessary for the indexing of the one-body and two-body matrix elements as well as the coefficients and configurations. More...
Public Member Functions | |
subroutine | get_configurationfromindex (Ind0, N, M, Ivec, Nvec) |
This subroutine computes the Number state Nvec corresponding to the index Ind0 of the CI-vector. More... | |
subroutine | get_indexfromconfiguration (N, M, Nvec, Ind) |
This routine computes the index Ind of the CI-Vector that corresponds to a given number state Nvec. It's basically an implementation of Eq.20 of the mapping paper, PRA 81 022124. More... | |
complex *16 function | rhoall (K, S, L, Q) |
This function extracts a two-body matrix element with indices K,S,Q,L from the array Rho2_Elements. More... | |
integer function | nadr (K, S, L, Q, Morb) |
This function computes the address of a matrix element in the 1d arrays used with the indices K, S, Q, L for Morb orbitals. More... | |
integer function | symmexp (K, S, L, Q, Morb) |
This function computes the address of a matrix element in the 1d arrays used with the indices K, S, Q, L for Morb orbitals. More... | |
integer function | nadrw (K, S, Q, L, Morb) |
This function computes the address of a matrix element of the two-body interaction W with indices K,S,Q,L. More... | |
This module collects the routines necessary for the indexing of the one-body and two-body matrix elements as well as the coefficients and configurations.
subroutine addresses::get_configurationfromindex | ( | integer | Ind0, |
integer | N, | ||
integer | M, | ||
integer, dimension(morb) | Ivec, | ||
integer, dimension(morb) | Nvec | ||
) |
This subroutine computes the Number state Nvec corresponding to the index Ind0 of the CI-vector.
Referenced by auxiliary_analysis_routines::get_reduced_coefficients(), input_output::guess_read_ci(), auxiliary_analysis_routines::u_trans(), auxiliary_analysis_routines::u_transform(), input_output::write_coefficients(), and input_output::write_coefficients_bdav().
subroutine addresses::get_indexfromconfiguration | ( | integer | N, |
integer | M, | ||
integer, dimension(morb) | Nvec, | ||
integer | Ind | ||
) |
This routine computes the index Ind of the CI-Vector that corresponds to a given number state Nvec. It's basically an implementation of Eq.20 of the mapping paper, PRA 81 022124.
Referenced by auxiliary_analysis_routines::get_reduced_coefficients(), input_output::guess_read_ci(), auxiliary_analysis_routines::loopy_permanent(), and auxiliary_analysis_routines::u_trans().
integer function addresses::nadr | ( | integer, intent(in) | K, |
integer, intent(in) | S, | ||
integer, intent(in) | L, | ||
integer, intent(in) | Q, | ||
integer, intent(in) | Morb | ||
) |
This function computes the address of a matrix element in the 1d arrays used with the indices K, S, Q, L for Morb orbitals.
Referenced by localinteractionpotential::compute_interactionelements(), localinteractionpotential::compute_multilevelinteractionelements(), auxiliary_analysis_routines::diag_dns(), orbital_equationofmotion::func(), orbital_equationofmotion::func_bh(), orbital_equationofmotion::func_nlevel(), twobody_mapconstruction_fermions::get_2body_mapping_fermions(), orbital_equationofmotion::get_rho_rho_inv(), rhoall(), and analysis_routines_manybody::write_hamiltonianelementsanalysis().
integer function addresses::nadrw | ( | integer, intent(in) | K, |
integer, intent(in) | S, | ||
integer, intent(in) | Q, | ||
integer, intent(in) | L, | ||
integer, intent(in) | Morb | ||
) |
This function computes the address of a matrix element of the two-body interaction W with indices K,S,Q,L.
complex*16 function addresses::rhoall | ( | integer, intent(in) | K, |
integer, intent(in) | S, | ||
integer, intent(in) | L, | ||
integer, intent(in) | Q | ||
) |
This function extracts a two-body matrix element with indices K,S,Q,L from the array Rho2_Elements.
References nadr(), and symmexp().
Referenced by localinteractionpotential::apply_interactionoperator(), and localinteractionpotential::apply_multilevelinteractionoperator().
integer function addresses::symmexp | ( | integer, intent(in) | K, |
integer, intent(in) | S, | ||
integer, intent(in) | L, | ||
integer, intent(in) | Q, | ||
integer, intent(in) | Morb | ||
) |
This function computes the address of a matrix element in the 1d arrays used with the indices K, S, Q, L for Morb orbitals.
Referenced by localinteractionpotential::compute_interactionelements(), and rhoall().