From 97c0dcf40bb6300a00078765785aeb7c276f0487 Mon Sep 17 00:00:00 2001 From: Thomas Applencourt Date: Tue, 28 Jul 2015 17:02:00 +0200 Subject: [PATCH] Fix qp_install_module --- plugins/Full_CI/README.rst | 161 +++++ plugins/Generators_full/README.rst | 43 ++ plugins/Hartree_Fock/README.rst | 149 +++++ plugins/Perturbation/README.rst | 294 +++++++++ plugins/Properties/README.rst | 150 +++++ plugins/Selectors_full/README.rst | 184 ++++++ scripts/module/qp_install_module.py | 6 +- scripts/module/qp_update_readme.py | 16 +- src/AO_Basis/README.rst | 148 +++++ src/Bitmask/README.rst | 134 +++++ src/Determinants/README.rst | 887 ++++++++++++++++++++++++++++ src/Electrons/README.rst | 31 + src/Integrals_Bielec/README.rst | 292 +++++++++ src/Integrals_Monoelec/README.rst | 278 +++++++++ src/MOGuess/README.rst | 39 ++ src/MO_Basis/README.rst | 102 ++++ src/Nuclei/README.rst | 82 +++ src/Pseudo/README.rst | 63 ++ src/Utils/README.rst | 630 ++++++++++++++++++++ 19 files changed, 3676 insertions(+), 13 deletions(-) diff --git a/plugins/Full_CI/README.rst b/plugins/Full_CI/README.rst index 853b82e3..8debefdb 100644 --- a/plugins/Full_CI/README.rst +++ b/plugins/Full_CI/README.rst @@ -165,3 +165,164 @@ Documentation `var_pt2_ratio_run `_ Undocumented +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Perturbation `_ +* `Selectors_full `_ +* `Generators_full `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`full_ci `_ + Undocumented + + +`h_apply_fci `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_fci_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_mono `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_fci_mono_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_mono_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_no_skip `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_fci_no_skip_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_no_skip_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_pt2 `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_fci_pt2_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_fci_pt2_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_pt2_mono_delta_rho `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_pt2_mono_delta_rho_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_pt2_mono_delta_rho_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_pt2_mono_di_delta_rho `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_pt2_mono_di_delta_rho_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_pt2_mono_di_delta_rho_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_select_mono_delta_rho `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_select_mono_delta_rho_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_select_mono_delta_rho_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_select_mono_di_delta_rho `_ + Calls H_apply on the HF determinant and selects all connected single and double + excitations (of the same symmetry). Auto-generated by the ``generate_h_apply`` script. + + +`h_apply_select_mono_di_delta_rho_diexc `_ + Generate all double excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`h_apply_select_mono_di_delta_rho_monoexc `_ + Generate all single excitations of key_in using the bit masks of holes and + particles. + Assume N_int is already provided. + + +`var_pt2_ratio_run `_ + Undocumented + diff --git a/plugins/Generators_full/README.rst b/plugins/Generators_full/README.rst index 2a1d22df..6c5890c0 100644 --- a/plugins/Generators_full/README.rst +++ b/plugins/Generators_full/README.rst @@ -48,3 +48,46 @@ Documentation `size_select_max `_ Size of the select_max array +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Determinants `_ +* `Hartree_Fock `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`degree_max_generators `_ + Max degree of excitation (respect to HF) of the generators + + +`n_det_generators `_ + For Single reference wave functions, the number of generators is 1 : the + Hartree-Fock determinant + + +`psi_coef_generators `_ + For Single reference wave functions, the generator is the + Hartree-Fock determinant + + +`psi_det_generators `_ + For Single reference wave functions, the generator is the + Hartree-Fock determinant + + +`select_max `_ + Memo to skip useless selectors + + +`size_select_max `_ + Size of the select_max array + diff --git a/plugins/Hartree_Fock/README.rst b/plugins/Hartree_Fock/README.rst index 2fdb630a..18c0b3ec 100644 --- a/plugins/Hartree_Fock/README.rst +++ b/plugins/Hartree_Fock/README.rst @@ -153,3 +153,152 @@ Documentation `thresh_scf `_ Threshold on the convergence of the Hartree Fock energy +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Integrals_Bielec `_ +* `MOGuess `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`ao_bi_elec_integral_alpha `_ + Alpha Fock matrix in AO basis set + + +`ao_bi_elec_integral_beta `_ + Alpha Fock matrix in AO basis set + + +`create_guess `_ + Create an MO guess if no MOs are present in the EZFIO directory + + +`damping_scf `_ + Undocumented + + +`diagonal_fock_matrix_mo `_ + Diagonal Fock matrix in the MO basis + + +`diagonal_fock_matrix_mo_sum `_ + diagonal element of the fock matrix calculated as the sum over all the interactions + with all the electrons in the RHF determinant + diagonal_Fock_matrix_mo_sum(i) = sum_{j=1, N_elec} 2 J_ij -K_ij + + +`eigenvectors_fock_matrix_mo `_ + Diagonal Fock matrix in the MO basis + + +`fock_matrix_alpha_ao `_ + Alpha Fock matrix in AO basis set + + +`fock_matrix_alpha_mo `_ + Fock matrix on the MO basis + + +`fock_matrix_ao `_ + Fock matrix in AO basis set + + +`fock_matrix_beta_ao `_ + Alpha Fock matrix in AO basis set + + +`fock_matrix_beta_mo `_ + Fock matrix on the MO basis + + +`fock_matrix_diag_mo `_ + Fock matrix on the MO basis. + For open shells, the ROHF Fock Matrix is + .br + | F-K | F + K/2 | F | + |---------------------------------| + | F + K/2 | F | F - K/2 | + |---------------------------------| + | F | F - K/2 | F + K | + .br + F = 1/2 (Fa + Fb) + .br + K = Fb - Fa + .br + + +`fock_matrix_mo `_ + Fock matrix on the MO basis. + For open shells, the ROHF Fock Matrix is + .br + | F-K | F + K/2 | F | + |---------------------------------| + | F + K/2 | F | F - K/2 | + |---------------------------------| + | F | F - K/2 | F + K | + .br + F = 1/2 (Fa + Fb) + .br + K = Fb - Fa + .br + + +`fock_mo_to_ao `_ + Undocumented + + +`guess `_ + Undocumented + + +`hf_density_matrix_ao `_ + S^-1 Density matrix in the AO basis S^-1 + + +`hf_density_matrix_ao_alpha `_ + S^-1 x Alpha density matrix in the AO basis x S^-1 + + +`hf_density_matrix_ao_beta `_ + S^-1 Beta density matrix in the AO basis x S^-1 + + +`hf_energy `_ + Hartree-Fock energy + + +`huckel_guess `_ + Build the MOs using the extended Huckel model + + +`mo_guess_type `_ + Initial MO guess. Can be [ Huckel | HCore ] + + +`n_it_scf_max `_ + Maximum number of SCF iterations + + +`run `_ + Run SCF calculation + + +`scf `_ + Produce `Hartree_Fock` MO orbital + output: mo_basis.mo_tot_num mo_basis.mo_label mo_basis.ao_md5 mo_basis.mo_coef mo_basis.mo_occ + output: hartree_fock.energy + optional: mo_basis.mo_coef + + +`thresh_scf `_ + Threshold on the convergence of the Hartree Fock energy + diff --git a/plugins/Perturbation/README.rst b/plugins/Perturbation/README.rst index 7e468907..a23b8fe9 100644 --- a/plugins/Perturbation/README.rst +++ b/plugins/Perturbation/README.rst @@ -361,3 +361,297 @@ Documentation The selection process stops when the energy ratio variational/(variational+PT2) is equal to var_pt2_ratio +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Properties `_ +* `Hartree_Fock `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`do_pt2_end `_ + If true, compute the PT2 at the end of the selection + + +`fill_h_apply_buffer_selection `_ + Fill the H_apply buffer with determiants for the selection + + +`max_exc_pert `_ + Undocumented + + +`perturb_buffer_by_mono_delta_rho_one_point `_ + Applly pertubration ``delta_rho_one_point`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_dipole_moment_z `_ + Applly pertubration ``dipole_moment_z`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_epstein_nesbet `_ + Applly pertubration ``epstein_nesbet`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_epstein_nesbet_2x2 `_ + Applly pertubration ``epstein_nesbet_2x2`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_epstein_nesbet_sc2 `_ + Applly pertubration ``epstein_nesbet_sc2`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_epstein_nesbet_sc2_no_projected `_ + Applly pertubration ``epstein_nesbet_sc2_no_projected`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_epstein_nesbet_sc2_projected `_ + Applly pertubration ``epstein_nesbet_sc2_projected`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_h_core `_ + Applly pertubration ``h_core`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_by_mono_moller_plesset `_ + Applly pertubration ``moller_plesset`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_delta_rho_one_point `_ + Applly pertubration ``delta_rho_one_point`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_dipole_moment_z `_ + Applly pertubration ``dipole_moment_z`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_epstein_nesbet `_ + Applly pertubration ``epstein_nesbet`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_epstein_nesbet_2x2 `_ + Applly pertubration ``epstein_nesbet_2x2`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_epstein_nesbet_sc2 `_ + Applly pertubration ``epstein_nesbet_sc2`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_epstein_nesbet_sc2_no_projected `_ + Applly pertubration ``epstein_nesbet_sc2_no_projected`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_epstein_nesbet_sc2_projected `_ + Applly pertubration ``epstein_nesbet_sc2_projected`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_h_core `_ + Applly pertubration ``h_core`` to the buffer of determinants generated in the H_apply + routine. + + +`perturb_buffer_moller_plesset `_ + Applly pertubration ``moller_plesset`` to the buffer of determinants generated in the H_apply + routine. + + +`pt2_delta_rho_one_point `_ + compute the perturbatibe contribution to the Integrated Spin density at z = z_one point of one determinant + .br + for the various n_st states, at various level of theory. + .br + c_pert(i) = /( - ) + .br + e_2_pert(i) = c_pert(i) * + .br + H_pert_diag(i) = c_pert(i)^2 * + .br + To get the contribution of the first order : + .br + = sum(over i) e_2_pert(i) + .br + To get the contribution of the diagonal elements of the second order : + .br + [ + + sum(over i) H_pert_diag(i) ] / [1. + sum(over i) c_pert(i) **2] + .br + + +`pt2_dipole_moment_z `_ + compute the perturbatibe contribution to the dipole moment of one determinant + .br + for the various n_st states, at various level of theory. + .br + c_pert(i) = /( - ) + .br + e_2_pert(i) = c_pert(i) * + .br + H_pert_diag(i) = c_pert(i)^2 * + .br + To get the contribution of the first order : + .br + = sum(over i) e_2_pert(i) + .br + To get the contribution of the diagonal elements of the second order : + .br + [ + + sum(over i) H_pert_diag(i) ] / [1. + sum(over i) c_pert(i) **2] + .br + + +`pt2_epstein_nesbet `_ + compute the standard Epstein-Nesbet perturbative first order coefficient and second order energetic contribution + .br + for the various N_st states. + .br + c_pert(i) = /( E(i) - ) + .br + e_2_pert(i) = ^2/( E(i) - ) + .br + + +`pt2_epstein_nesbet_2x2 `_ + compute the Epstein-Nesbet 2x2 diagonalization coefficient and energetic contribution + .br + for the various N_st states. + .br + e_2_pert(i) = 0.5 * (( - E(i) ) - sqrt( ( - E(i)) ^2 + 4 ^2 ) + .br + c_pert(i) = e_2_pert(i)/ + .br + + +`pt2_epstein_nesbet_sc2 `_ + compute the standard Epstein-Nesbet perturbative first order coefficient and second order energetic contribution + .br + for the various N_st states, but with the CISD_SC2 energies and coefficients + .br + c_pert(i) = /( E(i) - ) + .br + e_2_pert(i) = ^2/( E(i) - ) + .br + + +`pt2_epstein_nesbet_sc2_no_projected `_ + compute the Epstein-Nesbet perturbative first order coefficient and second order energetic contribution + .br + for the various N_st states, + .br + but with the correction in the denominator + .br + comming from the interaction of that determinant with all the others determinants + .br + that can be repeated by repeating all the double excitations + .br + : you repeat all the correlation energy already taken into account in CI_electronic_energy(1) + .br + that could be repeated to this determinant. + .br + In addition, for the perturbative energetic contribution you have the standard second order + .br + e_2_pert = ^2/(Delta_E) + .br + and also the purely projected contribution + .br + H_pert_diag = c_pert + + +`pt2_epstein_nesbet_sc2_projected `_ + compute the Epstein-Nesbet perturbative first order coefficient and second order energetic contribution + .br + for the various N_st states, + .br + but with the correction in the denominator + .br + comming from the interaction of that determinant with all the others determinants + .br + that can be repeated by repeating all the double excitations + .br + : you repeat all the correlation energy already taken into account in CI_electronic_energy(1) + .br + that could be repeated to this determinant. + .br + In addition, for the perturbative energetic contribution you have the standard second order + .br + e_2_pert = ^2/(Delta_E) + .br + and also the purely projected contribution + .br + H_pert_diag = c_pert + + +`pt2_h_core `_ + compute the standard Epstein-Nesbet perturbative first order coefficient and second order energetic contribution + .br + for the various N_st states. + .br + c_pert(i) = /( E(i) - ) + .br + e_2_pert(i) = ^2/( E(i) - ) + .br + + +`pt2_max `_ + The selection process stops when the largest PT2 (for all the state) is lower + than pt2_max in absolute value + + +`pt2_moller_plesset `_ + compute the standard Moller-Plesset perturbative first order coefficient and second order energetic contribution + .br + for the various n_st states. + .br + c_pert(i) = /(difference of orbital energies) + .br + e_2_pert(i) = ^2/(difference of orbital energies) + .br + + +`remove_small_contributions `_ + Remove determinants with small contributions. N_states is assumed to be + provided. + + +`repeat_all_e_corr `_ + Undocumented + + +`selection_criterion `_ + Threshold to select determinants. Set by selection routines. + + +`selection_criterion_factor `_ + Threshold to select determinants. Set by selection routines. + + +`selection_criterion_min `_ + Threshold to select determinants. Set by selection routines. + + +`var_pt2_ratio `_ + The selection process stops when the energy ratio variational/(variational+PT2) + is equal to var_pt2_ratio + diff --git a/plugins/Properties/README.rst b/plugins/Properties/README.rst index ffe67574..7af3f5c7 100644 --- a/plugins/Properties/README.rst +++ b/plugins/Properties/README.rst @@ -152,3 +152,153 @@ Documentation `z_one_point `_ z point on which the integrated delta rho is calculated +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Determinants `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`ao_integrated_delta_rho_all_points `_ + array of the overlap in x,y between the AO function and integrated between [z,z+dz] in the z axis + for all the z points that are given (N_z_pts) + + +`ao_integrated_delta_rho_one_point `_ + array of the overlap in x,y between the AO function and integrated between [z,z+dz] in the z axis + for one specific z point + + +`average_position `_ + average_position(1) = + average_position(2) = + average_position(3) = + + +`average_spread `_ + average_spread(1) = + average_spread(2) = + average_spread(3) = + + +`delta_z `_ + Undocumented + + +`diag_o1_mat_elem `_ + Computes + + +`diag_o1_mat_elem_alpha_beta `_ + Computes + + +`filter_connected_mono `_ + Filters out the determinants that are not connected through PURE + .br + MONO EXCITATIONS OPERATORS (a^{\dagger}j a_i) + .br + returns the array idx which contains the index of the + .br + determinants in the array key1 that interact + .br + via some PURE MONO EXCITATIONS OPERATORS + .br + idx(0) is the number of determinants that interact with key1 + + +`get_average `_ + computes the average value of a pure MONO ELECTRONIC OPERATOR + whom integrals on the MO basis are stored in "array" + and with the density is stored in "density" + + +`i_o1_j `_ + Returns where i and j are determinants + and O1 is a ONE BODY OPERATOR + array is the array of the mono electronic operator + on the MO basis + + +`i_o1_j_alpha_beta `_ + Returns where i and j are determinants + and O1 is a ONE BODY OPERATOR + array is the array of the mono electronic operator + on the MO basis + + +`i_o1_psi `_ + for the various Nstates + and O1 is a ONE BODY OPERATOR + array is the array of the mono electronic operator + on the MO basis + + +`i_o1_psi_alpha_beta `_ + for the various Nstates + and O1 is a ONE BODY OPERATOR + array is the array of the mono electronic operator + on the MO basis + + +`i_unit_integrated_delta_rho `_ + fortran unit for the writing of the integrated delta_rho + + +`integrated_delta_rho_all_points `_ + .br + integrated_rho(alpha,z) - integrated_rho(beta,z) for all the z points + chosen + .br + + +`integrated_delta_rho_one_point `_ + .br + integral (x,y) and (z,z+delta_z) of rho(alpha) - rho(beta) + on the MO basis + .br + + +`mo_integrated_delta_rho_one_point `_ + .br + array of the integrals needed of integrated_rho(alpha,z) - integrated_rho(beta,z) for z = z_one_point + on the MO basis + .br + + +`n_z_pts `_ + Undocumented + + +`test_average_value `_ + Undocumented + + +`test_average_value_alpha_beta `_ + Undocumented + + +`test_dm `_ + Undocumented + + +`z_max `_ + Undocumented + + +`z_min `_ + Undocumented + + +`z_one_point `_ + z point on which the integrated delta rho is calculated + diff --git a/plugins/Selectors_full/README.rst b/plugins/Selectors_full/README.rst index 7d5cd0e8..1fe14576 100644 --- a/plugins/Selectors_full/README.rst +++ b/plugins/Selectors_full/README.rst @@ -186,3 +186,187 @@ Documentation `psi_selectors_size `_ Undocumented +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Determinants `_ +* `Hartree_Fock `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`coef_hf_selector `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`delta_e_per_selector `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`double_index_selectors `_ + degree of excitation respect to Hartree Fock for the wave function + .br + for the all the selectors determinants + .br + double_index_selectors = list of the index of the double excitations + .br + n_double_selectors = number of double excitations in the selectors determinants + + +`e_corr_double_only `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`e_corr_per_selectors `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`e_corr_second_order `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`exc_degree_per_selectors `_ + degree of excitation respect to Hartree Fock for the wave function + .br + for the all the selectors determinants + .br + double_index_selectors = list of the index of the double excitations + .br + n_double_selectors = number of double excitations in the selectors determinants + + +`i_h_hf_per_selectors `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`inv_selectors_coef_hf `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`inv_selectors_coef_hf_squared `_ + energy of correlation per determinant respect to the Hartree Fock determinant + .br + for the all the double excitations in the selectors determinants + .br + E_corr_per_selectors(i) = * c(D_i)/c(HF) if |D_i> is a double excitation + .br + E_corr_per_selectors(i) = -1000.d0 if it is not a double excitation + .br + coef_hf_selector = coefficient of the Hartree Fock determinant in the selectors determinants + + +`n_det_selectors `_ + For Single reference wave functions, the number of selectors is 1 : the + Hartree-Fock determinant + + +`n_double_selectors `_ + degree of excitation respect to Hartree Fock for the wave function + .br + for the all the selectors determinants + .br + double_index_selectors = list of the index of the double excitations + .br + n_double_selectors = number of double excitations in the selectors determinants + + +`psi_selectors `_ + Determinants on which we apply for perturbation. + + +`psi_selectors_ab `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`psi_selectors_coef `_ + Determinants on which we apply for perturbation. + + +`psi_selectors_coef_ab `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`psi_selectors_diag_h_mat `_ + Diagonal elements of the H matrix for each selectors + + +`psi_selectors_next_ab `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`psi_selectors_size `_ + Undocumented + diff --git a/scripts/module/qp_install_module.py b/scripts/module/qp_install_module.py index 80d418a6..99674e14 100755 --- a/scripts/module/qp_install_module.py +++ b/scripts/module/qp_install_module.py @@ -22,7 +22,7 @@ try: from docopt import docopt from module_handler import ModuleHandler, get_dict_child from module_handler import get_l_module_descendant - from update_README import Doc_key, Needed_key + from qp_update_readme import D_KEY from qp_path import QP_SRC, QP_PLUGINS, QP_ROOT except ImportError: print "Please check if you have sourced the .quantum_package.rc" @@ -56,8 +56,8 @@ def save_new_module(path, l_child): with open(os.path.join(path, "README.rst"), "w") as f: f.write(header + "\n") - f.write(Doc_key + "\n") - f.write(Needed_key + "\n") + f.write(D_KEY["needed_module"]) + f.write(D_KEY["documentation"]) if __name__ == '__main__': diff --git a/scripts/module/qp_update_readme.py b/scripts/module/qp_update_readme.py index df880bd9..4c681d82 100755 --- a/scripts/module/qp_update_readme.py +++ b/scripts/module/qp_update_readme.py @@ -25,20 +25,18 @@ import os from collections import namedtuple from collections import defaultdict - def header_format(str_): - return "{0}\n{1}\n".format(str_, "=" * len(str_)) + warning = "\n".join([".. Do not edit this section It was auto-generated", + ".. by the `update_README.py` script."]) + + return "{0}\n{1}\n{2}\n".format(str_, "=" * len(str_), warning) D_KEY = {"needed_module": header_format("Needed Modules"), "documentation": header_format("Documentation")} - URL = "http://github.com/LCPQ/quantum_package/tree/master/src" -HEADER = "\n".join([".. Do not edit this section It was auto-generated", - ".. by the `update_README.py` script."]) - # d[Path] ={humain, needed_module, documentation} d_readme = defaultdict(dict) @@ -80,8 +78,7 @@ def update_needed(d_readme): l_module = ['* `{0} <{1}>`_'.format(name, os.path.join(URL, name)) for name in modules.split()] - l_module_section = [D_KEY["needed_module"], - HEADER, '', + l_module_section = [D_KEY["needed_module"], '', header_image, '', '\n'.join(l_module), '', ''] else: @@ -156,8 +153,7 @@ def update_documentation(root_module, d_readme): doc, ""] - l_doc_section = [D_KEY["documentation"], - HEADER, '', + l_doc_section = [D_KEY["documentation"], '', "\n".join(l_doc)] d_readme[path]["documentation"] = "\n".join(l_doc_section) diff --git a/src/AO_Basis/README.rst b/src/AO_Basis/README.rst index b174f41c..6a8d0add 100644 --- a/src/AO_Basis/README.rst +++ b/src/AO_Basis/README.rst @@ -178,3 +178,151 @@ Documentation Per convention, for P,D,F and G AOs, we take the index of the AO with the the corresponding power in the "X" axis +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Nuclei `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`ao_coef `_ + AO Coefficients, read from input. Those should not be used directly, as the MOs are expressed on the basis of **normalized** AOs. + + +`ao_coef_normalized `_ + Coefficients including the AO normalization + + +`ao_coef_normalized_ordered `_ + Sorted primitives to accelerate 4 index MO transformation + + +`ao_coef_normalized_ordered_transp `_ + Transposed ao_coef_normalized_ordered + + +`ao_expo `_ + expo for each primitive of each ao_basis + + +`ao_expo_ordered `_ + Sorted primitives to accelerate 4 index MO transformation + + +`ao_expo_ordered_transp `_ + Transposed ao_expo_ordered + + +`ao_l `_ + ao_l = l value of the AO: a+b+c in x^a y^b z^c + + +`ao_l_char `_ + ao_l = l value of the AO: a+b+c in x^a y^b z^c + + +`ao_l_char_space `_ + Undocumented + + +`ao_md5 `_ + MD5 key characteristic of the AO basis + + +`ao_nucl `_ + Index of the nuclei on which the ao is centered + + +`ao_num `_ + number of ao + + +`ao_num_align `_ + Number of atomic orbitals align + + +`ao_overlap `_ + Overlap between atomic basis functions: + :math:`\int \chi_i(r) \chi_j(r) dr)` + + +`ao_overlap_abs `_ + Overlap between absolute value of atomic basis functions: + :math:`\int |\chi_i(r)| |\chi_j(r)| dr)` + + +`ao_overlap_x `_ + Overlap between atomic basis functions: + :math:`\int \chi_i(r) \chi_j(r) dr)` + + +`ao_overlap_y `_ + Overlap between atomic basis functions: + :math:`\int \chi_i(r) \chi_j(r) dr)` + + +`ao_overlap_z `_ + Overlap between atomic basis functions: + :math:`\int \chi_i(r) \chi_j(r) dr)` + + +`ao_power `_ + power for each dimension for each ao_basis + + +`ao_prim_num `_ + Number of primitives per atomic orbital + + +`ao_prim_num_max `_ + Undocumented + + +`ao_prim_num_max_align `_ + Number of primitives per atomic orbital aligned + + +`l_to_charater `_ + character corresponding to the "L" value of an AO orbital + + +`n_aos_max `_ + Number of AOs per atom + + +`n_pt_max_i_x `_ + Undocumented + + +`n_pt_max_integrals `_ + Undocumented + + +`nucl_aos `_ + List of AOs attached on each atom + + +`nucl_list_shell_aos `_ + Index of the shell type Aos and of the corresponding Aos + Per convention, for P,D,F and G AOs, we take the index + of the AO with the the corresponding power in the "X" axis + + +`nucl_n_aos `_ + Number of AOs per atom + + +`nucl_num_shell_aos `_ + Index of the shell type Aos and of the corresponding Aos + Per convention, for P,D,F and G AOs, we take the index + of the AO with the the corresponding power in the "X" axis + diff --git a/src/Bitmask/README.rst b/src/Bitmask/README.rst index d42457be..bf041e66 100644 --- a/src/Bitmask/README.rst +++ b/src/Bitmask/README.rst @@ -168,3 +168,137 @@ Documentation `virt_bitmask `_ Bitmasks for the inactive orbitals that are excited in post CAS method +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `MO_Basis `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`bitstring_to_hexa `_ + Transform a bit string to a string in hexadecimal format for printing + + +`bitstring_to_list `_ + Gives the inidices(+1) of the bits set to 1 in the bit string + + +`bitstring_to_str `_ + Transform a bit string to a string for printing + + +`cas_bitmask `_ + Bitmasks for CAS reference determinants. (N_int, alpha/beta, CAS reference) + + +`cis_ijkl_bitmask `_ + Bitmask to include all possible single excitations from Hartree-Fock + + +`debug_det `_ + Subroutine to print the content of a determinant in '+-' notation and + hexadecimal representation. + + +`debug_spindet `_ + Subroutine to print the content of a determinant in '+-' notation and + hexadecimal representation. + + +`full_ijkl_bitmask `_ + Bitmask to include all possible MOs + + +`generators_bitmask `_ + Bitmasks for generator determinants. + (N_int, alpha/beta, hole/particle, generator). + .br + 3rd index is : + .br + * 1 : hole for single exc + .br + * 2 : particle for single exc + .br + * 3 : hole for 1st exc of double + .br + * 4 : particle for 1st exc of double + .br + * 5 : hole for 2nd exc of double + .br + * 6 : particle for 2nd exc of double + .br + + +`hf_bitmask `_ + Hartree Fock bit mask + + +`i_bitmask_gen `_ + Current bitmask for the generators + + +`inact_bitmask `_ + Bitmasks for the inactive orbitals that are excited in post CAS method + + +`is_a_two_holes_two_particles `_ + Undocumented + + +`list_to_bitstring `_ + Returns the physical string "string(N_int,2)" from the array of + occupations "list(N_int*bit_kind_size,2) + + +`n_cas_bitmask `_ + Number of bitmasks for CAS + + +`n_generators_bitmask `_ + Number of bitmasks for generators + + +`n_int `_ + Number of 64-bit integers needed to represent determinants as binary strings + + +`number_of_holes `_ + Undocumented + + +`number_of_holes_verbose `_ + Undocumented + + +`number_of_particles `_ + Undocumented + + +`number_of_particles_verbose `_ + Undocumented + + +`print_det `_ + Subroutine to print the content of a determinant using the '+-' notation + + +`print_spindet `_ + Subroutine to print the content of a determinant using the '+-' notation + + +`ref_bitmask `_ + Reference bit mask, used in Slater rules, chosen as Hartree-Fock bitmask + + +`virt_bitmask `_ + Bitmasks for the inactive orbitals that are excited in post CAS method + diff --git a/src/Determinants/README.rst b/src/Determinants/README.rst index f3eb596f..ac97074c 100644 --- a/src/Determinants/README.rst +++ b/src/Determinants/README.rst @@ -913,3 +913,890 @@ Documentation `write_spindeterminants `_ Undocumented +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Integrals_Monoelec `_ +* `Integrals_Bielec `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`a_operator `_ + Needed for diag_H_mat_elem + + +`abs_psi_coef_max `_ + Max and min values of the coefficients + + +`abs_psi_coef_min `_ + Max and min values of the coefficients + + +`ac_operator `_ + Needed for diag_H_mat_elem + + +`apply_mono `_ + Undocumented + + +`bi_elec_ref_bitmask_energy `_ + Energy of the reference bitmask used in Slater rules + + +`ci_eigenvectors `_ + Eigenvectors/values of the CI matrix + + +`ci_eigenvectors_mono `_ + Eigenvectors/values of the CI matrix + + +`ci_eigenvectors_s2 `_ + Eigenvectors/values of the CI matrix + + +`ci_eigenvectors_s2_mono `_ + Eigenvectors/values of the CI matrix + + +`ci_electronic_energy `_ + Eigenvectors/values of the CI matrix + + +`ci_electronic_energy_mono `_ + Eigenvectors/values of the CI matrix + + +`ci_energy `_ + N_states lowest eigenvalues of the CI matrix + + +`ci_sc2_eigenvectors `_ + Eigenvectors/values of the CI matrix + + +`ci_sc2_electronic_energy `_ + Eigenvectors/values of the CI matrix + + +`ci_sc2_energy `_ + N_states_diag lowest eigenvalues of the CI matrix + + +`cisd `_ + Undocumented + + +`cisd_sc2 `_ + CISD+SC2 method :: take off all the disconnected terms of a CISD (selected or not) + .br + dets_in : bitmasks corresponding to determinants + .br + u_in : guess coefficients on the various states. Overwritten + on exit + .br + dim_in : leftmost dimension of u_in + .br + sze : Number of determinants + .br + N_st : Number of eigenstates + .br + Initial guess vectors are not necessarily orthonormal + + +`connected_to_ref `_ + Undocumented + + +`connected_to_ref_by_mono `_ + Undocumented + + +`copy_h_apply_buffer_to_wf `_ + Copies the H_apply buffer to psi_coef. + After calling this subroutine, N_det, psi_det and psi_coef need to be touched + + +`create_wf_of_psi_svd_matrix `_ + Matrix of wf coefficients. Outer product of alpha and beta determinants + + +`davidson_converged `_ + True if the Davidson algorithm is converged + + +`davidson_criterion `_ + Can be : [ energy | residual | both | wall_time | cpu_time | iterations ] + + +`davidson_diag `_ + Davidson diagonalization. + .br + dets_in : bitmasks corresponding to determinants + .br + u_in : guess coefficients on the various states. Overwritten + on exit + .br + dim_in : leftmost dimension of u_in + .br + sze : Number of determinants + .br + N_st : Number of eigenstates + .br + iunit : Unit number for the I/O + .br + Initial guess vectors are not necessarily orthonormal + + +`davidson_diag_hjj `_ + Davidson diagonalization with specific diagonal elements of the H matrix + .br + H_jj : specific diagonal H matrix elements to diagonalize de Davidson + .br + dets_in : bitmasks corresponding to determinants + .br + u_in : guess coefficients on the various states. Overwritten + on exit + .br + dim_in : leftmost dimension of u_in + .br + sze : Number of determinants + .br + N_st : Number of eigenstates + .br + iunit : Unit for the I/O + .br + Initial guess vectors are not necessarily orthonormal + + +`davidson_iter_max `_ + Max number of Davidson iterations + + +`davidson_sze_max `_ + Max number of Davidson sizes + + +`davidson_threshold `_ + Can be : [ energy | residual | both | wall_time | cpu_time | iterations ] + + +`decode_exc `_ + Decodes the exc arrays returned by get_excitation. + h1,h2 : Holes + p1,p2 : Particles + s1,s2 : Spins (1:alpha, 2:beta) + degree : Degree of excitation + + +`det_coef `_ + det_coef + + +`det_connections `_ + Build connection proxy between determinants + + +`det_num `_ + det_num + + +`det_occ `_ + det_occ + + +`det_search_key `_ + Return an integer*8 corresponding to a determinant index for searching + + +`det_svd `_ + Computes the SVD of the Alpha x Beta determinant coefficient matrix + + +`det_to_occ_pattern `_ + Transform a determinant to an occupation pattern + + +`diag_algorithm `_ + Diagonalization algorithm (Davidson or Lapack) + + +`diag_h_mat_elem `_ + Computes + + +`diagonalize_ci `_ + Replace the coefficients of the CI states by the coefficients of the + eigenstates of the CI matrix + + +`diagonalize_ci_mono `_ + Replace the coefficients of the CI states by the coefficients of the + eigenstates of the CI matrix + + +`diagonalize_ci_sc2 `_ + Replace the coefficients of the CI states_diag by the coefficients of the + eigenstates of the CI matrix + + +`do_mono_excitation `_ + Apply the mono excitation operator : a^{dager}_(i_particle) a_(i_hole) of spin = ispin + on key_in + ispin = 1 == alpha + ispin = 2 == beta + i_ok = 1 == the excitation is possible + i_ok = -1 == the excitation is not possible + + +`double_exc_bitmask `_ + double_exc_bitmask(:,1,i) is the bitmask for holes of excitation 1 + double_exc_bitmask(:,2,i) is the bitmask for particles of excitation 1 + double_exc_bitmask(:,3,i) is the bitmask for holes of excitation 2 + double_exc_bitmask(:,4,i) is the bitmask for particles of excitation 2 + for a given couple of hole/particle excitations i. + + +`expected_s2 `_ + Expected value of S2 : S*(S+1) + + +`fill_h_apply_buffer_no_selection `_ + Fill the H_apply buffer with determiants for CISD + + +`filter_3_highest_electrons `_ + Returns a determinant with only the 3 highest electrons + + +`filter_connected `_ + Filters out the determinants that are not connected by H + .br + returns the array idx which contains the index of the + .br + determinants in the array key1 that interact + .br + via the H operator with key2. + .br + idx(0) is the number of determinants that interact with key1 + + +`filter_connected_davidson `_ + Filters out the determinants that are not connected by H + returns the array idx which contains the index of the + determinants in the array key1 that interact + via the H operator with key2. + .br + idx(0) is the number of determinants that interact with key1 + key1 should come from psi_det_sorted_ab. + + +`filter_connected_i_h_psi0 `_ + returns the array idx which contains the index of the + .br + determinants in the array key1 that interact + .br + via the H operator with key2. + .br + idx(0) is the number of determinants that interact with key1 + + +`filter_connected_i_h_psi0_sc2 `_ + standard filter_connected_i_H_psi but returns in addition + .br + the array of the index of the non connected determinants to key1 + .br + in order to know what double excitation can be repeated on key1 + .br + idx_repeat(0) is the number of determinants that can be used + .br + to repeat the excitations + + +`filter_connected_sorted_ab `_ + Filters out the determinants that are not connected by H + returns the array idx which contains the index of the + determinants in the array key1 that interact + via the H operator with key2. + idx(0) is the number of determinants that interact with key1 + .br + Determinants are taken from the psi_det_sorted_ab array + + +`generate_all_alpha_beta_det_products `_ + Create a wave function from all possible alpha x beta determinants + + +`get_double_excitation `_ + Returns the two excitation operators between two doubly excited determinants and the phase + + +`get_excitation `_ + Returns the excitation operators between two determinants and the phase + + +`get_excitation_degree `_ + Returns the excitation degree between two determinants + + +`get_excitation_degree_vector `_ + Applies get_excitation_degree to an array of determinants + + +`get_index_in_psi_det_alpha_unique `_ + Returns the index of the determinant in the ``psi_det_alpha_unique`` array + + +`get_index_in_psi_det_beta_unique `_ + Returns the index of the determinant in the ``psi_det_beta_unique`` array + + +`get_index_in_psi_det_sorted_bit `_ + Returns the index of the determinant in the ``psi_det_sorted_bit`` array + + +`get_mono_excitation `_ + Returns the excitation operator between two singly excited determinants and the phase + + +`get_occ_from_key `_ + Returns a list of occupation numbers from a bitstring + + +`get_s2 `_ + Returns + + +`get_s2_u0 `_ + Undocumented + + +`get_s2_u0_old `_ + Undocumented + + +`h_apply_buffer_allocated `_ + Buffer of determinants/coefficients/perturbative energy for H_apply. + Uninitialized. Filled by H_apply subroutines. + + +`h_apply_buffer_lock `_ + Buffer of determinants/coefficients/perturbative energy for H_apply. + Uninitialized. Filled by H_apply subroutines. + + +`h_matrix_all_dets `_ + H matrix on the basis of the slater determinants defined by psi_det + + +`h_matrix_cas `_ + Undocumented + + +`h_u_0 `_ + Computes v_0 = H|u_0> + .br + n : number of determinants + .br + H_jj : array of + + +`i_h_j `_ + Returns where i and j are determinants + + +`i_h_j_verbose `_ + Returns where i and j are determinants + + +`i_h_psi `_ + for the various Nstates + + +`i_h_psi_sc2 `_ + for the various Nstate + .br + returns in addition + .br + the array of the index of the non connected determinants to key1 + .br + in order to know what double excitation can be repeated on key1 + .br + idx_repeat(0) is the number of determinants that can be used + .br + to repeat the excitations + + +`i_h_psi_sc2_verbose `_ + for the various Nstate + .br + returns in addition + .br + the array of the index of the non connected determinants to key1 + .br + in order to know what double excitation can be repeated on key1 + .br + idx_repeat(0) is the number of determinants that can be used + .br + to repeat the excitations + + +`i_h_psi_sec_ord `_ + for the various Nstates + + +`idx_cas `_ + CAS wave function, defined from the application of the CAS bitmask on the + determinants. idx_cas gives the indice of the CAS determinant in psi_det. + + +`idx_non_cas `_ + Set of determinants which are not part of the CAS, defined from the application + of the CAS bitmask on the determinants. + idx_non_cas gives the indice of the determinant in psi_det. + + +`int_of_3_highest_electrons `_ + Returns an integer*8 as : + .br + |_<--- 21 bits ---><--- 21 bits ---><--- 21 bits --->| + .br + |0<--- i1 ---><--- i2 ---><--- i3 --->| + .br + It encodes the value of the indices of the 3 highest MOs + in descending order + .br + + +`is_in_wavefunction `_ + True if the determinant ``det`` is in the wave function + + +`kinetic_ref_bitmask_energy `_ + Energy of the reference bitmask used in Slater rules + + +`make_s2_eigenfunction `_ + Undocumented + + +`max_degree_exc `_ + Maximum degree of excitation in the wf + + +`mono_elec_ref_bitmask_energy `_ + Energy of the reference bitmask used in Slater rules + + +`n_con_int `_ + Number of integers to represent the connections between determinants + + +`n_det `_ + Number of determinants in the wave function + + +`n_det_alpha_unique `_ + Unique alpha determinants + + +`n_det_beta_unique `_ + Unique beta determinants + + +`n_det_cas `_ + CAS wave function, defined from the application of the CAS bitmask on the + determinants. idx_cas gives the indice of the CAS determinant in psi_det. + + +`n_det_max `_ + Max number of determinants in the wave function + + +`n_det_max_jacobi `_ + Maximum number of determinants diagonalized by Jacobi + + +`n_det_max_property `_ + Max number of determinants in the wave function when you select for a given property + + +`n_det_non_cas `_ + Set of determinants which are not part of the CAS, defined from the application + of the CAS bitmask on the determinants. + idx_non_cas gives the indice of the determinant in psi_det. + + +`n_double_exc_bitmasks `_ + Number of double excitation bitmasks + + +`n_occ_pattern `_ + array of the occ_pattern present in the wf + psi_occ_pattern(:,1,j) = jth occ_pattern of the wave function : represent all the single occupation + psi_occ_pattern(:,2,j) = jth occ_pattern of the wave function : represent all the double occupation + + +`n_single_exc_bitmasks `_ + Number of single excitation bitmasks + + +`n_states `_ + Number of states to consider + + +`n_states_diag `_ + Number of states to consider for the diagonalization + + +`nucl_elec_ref_bitmask_energy `_ + Energy of the reference bitmask used in Slater rules + + +`occ_pattern_search_key `_ + Return an integer*8 corresponding to a determinant index for searching + + +`occ_pattern_to_dets `_ + Generate all possible determinants for a give occ_pattern + + +`occ_pattern_to_dets_size `_ + Number of possible determinants for a given occ_pattern + + +`one_body_dm_mo `_ + One-body density matrix + + +`one_body_dm_mo_alpha `_ + Alpha and beta one-body density matrix for each state + + +`one_body_dm_mo_beta `_ + Alpha and beta one-body density matrix for each state + + +`one_body_single_double_dm_mo_alpha `_ + Alpha and beta one-body density matrix for each state + + +`one_body_single_double_dm_mo_beta `_ + Alpha and beta one-body density matrix for each state + + +`one_body_spin_density_mo `_ + rho(alpha) - rho(beta) + + +`only_single_double_dm `_ + If true, The One body DM is calculated with ignoring the Double<->Doubles extra diag elements + + +`pouet `_ + Undocumented + + +`psi_average_norm_contrib `_ + Contribution of determinants to the state-averaged density + + +`psi_average_norm_contrib_sorted `_ + Wave function sorted by determinants contribution to the norm (state-averaged) + + +`psi_cas `_ + CAS wave function, defined from the application of the CAS bitmask on the + determinants. idx_cas gives the indice of the CAS determinant in psi_det. + + +`psi_cas_coef `_ + CAS wave function, defined from the application of the CAS bitmask on the + determinants. idx_cas gives the indice of the CAS determinant in psi_det. + + +`psi_cas_coef_sorted_bit `_ + CAS determinants sorted to accelerate the search of a random determinant in the wave + function. + + +`psi_cas_energy `_ + Undocumented + + +`psi_cas_energy_diagonalized `_ + Undocumented + + +`psi_cas_sorted_bit `_ + CAS determinants sorted to accelerate the search of a random determinant in the wave + function. + + +`psi_coef `_ + The wave function coefficients. Initialized with Hartree-Fock if the EZFIO file + is empty + + +`psi_coef_cas_diagonalized `_ + Undocumented + + +`psi_coef_max `_ + Max and min values of the coefficients + + +`psi_coef_min `_ + Max and min values of the coefficients + + +`psi_coef_sorted `_ + Wave function sorted by determinants contribution to the norm (state-averaged) + + +`psi_coef_sorted_ab `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`psi_coef_sorted_bit `_ + Determinants on which we apply for perturbation. + They are sorted by determinants interpreted as integers. Useful + to accelerate the search of a random determinant in the wave + function. + + +`psi_det `_ + The wave function determinants. Initialized with Hartree-Fock if the EZFIO file + is empty + + +`psi_det_alpha `_ + List of alpha determinants of psi_det + + +`psi_det_alpha_unique `_ + Unique alpha determinants + + +`psi_det_beta `_ + List of beta determinants of psi_det + + +`psi_det_beta_unique `_ + Unique beta determinants + + +`psi_det_size `_ + Size of the psi_det/psi_coef arrays + + +`psi_det_sorted `_ + Wave function sorted by determinants contribution to the norm (state-averaged) + + +`psi_det_sorted_ab `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`psi_det_sorted_bit `_ + Determinants on which we apply for perturbation. + They are sorted by determinants interpreted as integers. Useful + to accelerate the search of a random determinant in the wave + function. + + +`psi_det_sorted_next_ab `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`psi_non_cas `_ + Set of determinants which are not part of the CAS, defined from the application + of the CAS bitmask on the determinants. + idx_non_cas gives the indice of the determinant in psi_det. + + +`psi_non_cas_coef `_ + Set of determinants which are not part of the CAS, defined from the application + of the CAS bitmask on the determinants. + idx_non_cas gives the indice of the determinant in psi_det. + + +`psi_non_cas_coef_sorted_bit `_ + CAS determinants sorted to accelerate the search of a random determinant in the wave + function. + + +`psi_non_cas_sorted_bit `_ + CAS determinants sorted to accelerate the search of a random determinant in the wave + function. + + +`psi_occ_pattern `_ + array of the occ_pattern present in the wf + psi_occ_pattern(:,1,j) = jth occ_pattern of the wave function : represent all the single occupation + psi_occ_pattern(:,2,j) = jth occ_pattern of the wave function : represent all the double occupation + + +`psi_svd_alpha `_ + SVD wave function + + +`psi_svd_beta `_ + SVD wave function + + +`psi_svd_coefs `_ + SVD wave function + + +`psi_svd_matrix `_ + Matrix of wf coefficients. Outer product of alpha and beta determinants + + +`psi_svd_matrix_columns `_ + Matrix of wf coefficients. Outer product of alpha and beta determinants + + +`psi_svd_matrix_rows `_ + Matrix of wf coefficients. Outer product of alpha and beta determinants + + +`psi_svd_matrix_values `_ + Matrix of wf coefficients. Outer product of alpha and beta determinants + + +`put_gess `_ + Undocumented + + +`read_dets `_ + Reads the determinants from the EZFIO file + + +`read_wf `_ + If true, read the wave function from the EZFIO file + + +`rec_occ_pattern_to_dets `_ + Undocumented + + +`ref_bitmask_energy `_ + Energy of the reference bitmask used in Slater rules + + +`remove_duplicates_in_psi_det `_ + Removes duplicate determinants in the wave function. + + +`resize_h_apply_buffer `_ + Resizes the H_apply buffer of proc iproc. The buffer lock should + be set before calling this function. + + +`routine `_ + Undocumented + + +`s2_eig `_ + Force the wave function to be an eigenfunction of S^2 + + +`s2_values `_ + array of the averaged values of the S^2 operator on the various states + + +`s_z `_ + z component of the Spin + + +`s_z2_sz `_ + z component of the Spin + + +`save_natorb `_ + Undocumented + + +`save_natural_mos `_ + Save natural orbitals, obtained by diagonalization of the one-body density matrix in the MO basis + + +`save_wavefunction `_ + Save the wave function into the EZFIO file + + +`save_wavefunction_general `_ + Save the wave function into the EZFIO file + + +`save_wavefunction_unsorted `_ + Save the wave function into the EZFIO file + + +`set_natural_mos `_ + Set natural orbitals, obtained by diagonalization of the one-body density matrix in the MO basis + + +`single_exc_bitmask `_ + single_exc_bitmask(:,1,i) is the bitmask for holes + single_exc_bitmask(:,2,i) is the bitmask for particles + for a given couple of hole/particle excitations i. + + +`sort_dets_by_3_highest_electrons `_ + Determinants on which we apply . + They are sorted by the 3 highest electrons in the alpha part, + then by the 3 highest electrons in the beta part to accelerate + the research of connected determinants. + + +`sort_dets_by_det_search_key `_ + Determinants are sorted are sorted according to their det_search_key. + Useful to accelerate the search of a random determinant in the wave + function. + + +`spin_det_search_key `_ + Return an integer*8 corresponding to a determinant index for searching + + +`state_average_weight `_ + Weights in the state-average calculation of the density matrix + + +`threshold_convergence_sc2 `_ + convergence of the correlation energy of SC2 iterations + + +`threshold_generators `_ + Thresholds on generators (fraction of the norm) + + +`threshold_selectors `_ + Thresholds on selectors (fraction of the norm) + + +`write_spindeterminants `_ + Undocumented + diff --git a/src/Electrons/README.rst b/src/Electrons/README.rst index a087908d..2bc9f70d 100644 --- a/src/Electrons/README.rst +++ b/src/Electrons/README.rst @@ -49,3 +49,34 @@ Documentation `elec_num_tab `_ Numbers of alpha ("up") , beta ("down") and total electrons +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Ezfio_files `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`elec_alpha_num `_ + Numbers of electrons alpha ("up") + + +`elec_beta_num `_ + Numbers of electrons beta ("down") + + +`elec_num `_ + Numbers of alpha ("up") , beta ("down") and total electrons + + +`elec_num_tab `_ + Numbers of alpha ("up") , beta ("down") and total electrons + diff --git a/src/Integrals_Bielec/README.rst b/src/Integrals_Bielec/README.rst index 1fa66a1b..054a6720 100644 --- a/src/Integrals_Bielec/README.rst +++ b/src/Integrals_Bielec/README.rst @@ -302,3 +302,295 @@ Documentation `write_mo_integrals `_ One level of abstraction for disk_access_ao_integrals and disk_access_mo_integrals +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Pseudo `_ +* `Bitmask `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`add_integrals_to_map `_ + Adds integrals to tha MO map according to some bitmask + + +`ao_bielec_integral `_ + integral of the AO basis or (ij|kl) + i(r1) j(r1) 1/r12 k(r2) l(r2) + + +`ao_bielec_integral_schwartz `_ + Needed to compute Schwartz inequalities + + +`ao_bielec_integral_schwartz_accel `_ + integral of the AO basis or (ij|kl) + i(r1) j(r1) 1/r12 k(r2) l(r2) + + +`ao_bielec_integrals_in_map `_ + Map of Atomic integrals + i(r1) j(r2) 1/r12 k(r1) l(r2) + + +`ao_integrals_map `_ + AO integrals + + +`ao_integrals_threshold `_ + If || < ao_integrals_threshold then is zero + + +`ao_l4 `_ + Computes the product of l values of i,j,k,and l + + +`bielec_integrals_index `_ + Undocumented + + +`bielec_integrals_index_reverse `_ + Undocumented + + +`clear_ao_map `_ + Frees the memory of the AO map + + +`clear_mo_map `_ + Frees the memory of the MO map + + +`compute_ao_bielec_integrals `_ + Compute AO 1/r12 integrals for all i and fixed j,k,l + + +`disk_access_ao_integrals `_ + Read/Write AO integrals from/to disk [ Write | Read | None ] + + +`disk_access_mo_integrals `_ + Read/Write MO integrals from/to disk [ Write | Read | None ] + + +`do_direct_integrals `_ + Compute integrals on the fly + + +`dump_ao_integrals `_ + Save to disk the $ao integrals + + +`dump_mo_integrals `_ + Save to disk the $ao integrals + + +`eri `_ + ATOMIC PRIMTIVE bielectronic integral between the 4 primitives :: + primitive_1 = x1**(a_x) y1**(a_y) z1**(a_z) exp(-alpha * r1**2) + primitive_2 = x1**(b_x) y1**(b_y) z1**(b_z) exp(- beta * r1**2) + primitive_3 = x2**(c_x) y2**(c_y) z2**(c_z) exp(-delta * r2**2) + primitive_4 = x2**(d_x) y2**(d_y) z2**(d_z) exp(- gama * r2**2) + + +`gauleg `_ + Gauss-Legendre + + +`gauleg_t2 `_ + t_w(i,1,k) = w(i) + t_w(i,2,k) = t(i) + + +`gauleg_w `_ + t_w(i,1,k) = w(i) + t_w(i,2,k) = t(i) + + +`general_primitive_integral `_ + Computes the integral where p,q,r,s are Gaussian primitives + + +`get_ao_bielec_integral `_ + Gets one AO bi-electronic integral from the AO map + + +`get_ao_bielec_integrals `_ + Gets multiple AO bi-electronic integral from the AO map . + All i are retrieved for j,k,l fixed. + + +`get_ao_bielec_integrals_non_zero `_ + Gets multiple AO bi-electronic integral from the AO map . + All non-zero i are retrieved for j,k,l fixed. + + +`get_ao_map_size `_ + Returns the number of elements in the AO map + + +`get_mo_bielec_integral `_ + Returns one integral in the MO basis + + +`get_mo_bielec_integrals `_ + Returns multiple integrals in the MO basis, all + i for j,k,l fixed. + + +`get_mo_bielec_integrals_existing_ik `_ + Returns multiple integrals in the MO basis, all + i(1)j(1) 1/r12 k(2)l(2) + i for j,k,l fixed. + + +`get_mo_map_size `_ + Return the number of elements in the MO map + + +`give_polynom_mult_center_x `_ + subroutine that returns the explicit polynom in term of the "t" + variable of the following polynomw : + I_x1(a_x, d_x,p,q) * I_x1(a_y, d_y,p,q) * I_x1(a_z, d_z,p,q) + + +`i_x1_new `_ + recursive function involved in the bielectronic integral + + +`i_x1_pol_mult `_ + recursive function involved in the bielectronic integral + + +`i_x1_pol_mult_a1 `_ + recursive function involved in the bielectronic integral + + +`i_x1_pol_mult_a2 `_ + recursive function involved in the bielectronic integral + + +`i_x1_pol_mult_recurs `_ + recursive function involved in the bielectronic integral + + +`i_x2_new `_ + recursive function involved in the bielectronic integral + + +`i_x2_pol_mult `_ + recursive function involved in the bielectronic integral + + +`insert_into_ao_integrals_map `_ + Create new entry into AO map + + +`insert_into_mo_integrals_map `_ + Create new entry into MO map, or accumulate in an existing entry + + +`integrale_new `_ + calculate the integral of the polynom :: + I_x1(a_x+b_x, c_x+d_x,p,q) * I_x1(a_y+b_y, c_y+d_y,p,q) * I_x1(a_z+b_z, c_z+d_z,p,q) + between ( 0 ; 1) + + +`load_ao_integrals `_ + Read from disk the $ao integrals + + +`load_mo_integrals `_ + Read from disk the $ao integrals + + +`mo_bielec_integral `_ + Returns one integral in the MO basis + + +`mo_bielec_integral_jj `_ + mo_bielec_integral_jj(i,j) = J_ij + mo_bielec_integral_jj_exchange(i,j) = K_ij + mo_bielec_integral_jj_anti(i,j) = J_ij - K_ij + + +`mo_bielec_integral_jj_anti `_ + mo_bielec_integral_jj(i,j) = J_ij + mo_bielec_integral_jj_exchange(i,j) = K_ij + mo_bielec_integral_jj_anti(i,j) = J_ij - K_ij + + +`mo_bielec_integral_jj_anti_from_ao `_ + mo_bielec_integral_jj_from_ao(i,j) = J_ij + mo_bielec_integral_jj_exchange_from_ao(i,j) = J_ij + mo_bielec_integral_jj_anti_from_ao(i,j) = J_ij - K_ij + + +`mo_bielec_integral_jj_exchange `_ + mo_bielec_integral_jj(i,j) = J_ij + mo_bielec_integral_jj_exchange(i,j) = K_ij + mo_bielec_integral_jj_anti(i,j) = J_ij - K_ij + + +`mo_bielec_integral_jj_exchange_from_ao `_ + mo_bielec_integral_jj_from_ao(i,j) = J_ij + mo_bielec_integral_jj_exchange_from_ao(i,j) = J_ij + mo_bielec_integral_jj_anti_from_ao(i,j) = J_ij - K_ij + + +`mo_bielec_integral_jj_from_ao `_ + mo_bielec_integral_jj_from_ao(i,j) = J_ij + mo_bielec_integral_jj_exchange_from_ao(i,j) = J_ij + mo_bielec_integral_jj_anti_from_ao(i,j) = J_ij - K_ij + + +`mo_bielec_integrals_in_map `_ + If True, the map of MO bielectronic integrals is provided + + +`mo_bielec_integrals_index `_ + Computes an unique index for i,j,k,l integrals + + +`mo_integrals_map `_ + MO integrals + + +`mo_integrals_threshold `_ + If || < ao_integrals_threshold then is zero + + +`n_pt_max_integrals_16 `_ + Aligned n_pt_max_integrals + + +`n_pt_sup `_ + Returns the upper boundary of the degree of the polynomial involved in the + bielctronic integral : + Ix(a_x,b_x,c_x,d_x) * Iy(a_y,b_y,c_y,d_y) * Iz(a_z,b_z,c_z,d_z) + + +`read_ao_integrals `_ + One level of abstraction for disk_access_ao_integrals and disk_access_mo_integrals + + +`read_mo_integrals `_ + One level of abstraction for disk_access_ao_integrals and disk_access_mo_integrals + + +`write_ao_integrals `_ + One level of abstraction for disk_access_ao_integrals and disk_access_mo_integrals + + +`write_mo_integrals `_ + One level of abstraction for disk_access_ao_integrals and disk_access_mo_integrals + diff --git a/src/Integrals_Monoelec/README.rst b/src/Integrals_Monoelec/README.rst index ed7af931..dbdd753b 100644 --- a/src/Integrals_Monoelec/README.rst +++ b/src/Integrals_Monoelec/README.rst @@ -276,3 +276,281 @@ Documentation `wallis `_ Undocumented +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `MO_Basis `_ +* `Pseudo `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`ao_deriv2_x `_ + second derivatives matrix elements in the ao basis + .. math:: + .br + {\tt ao_deriv2_x} = \langle \chi_i(x,y,z) \frac{\partial^2}{\partial x^2} |\chi_j (x,y,z) \rangle + + +`ao_deriv2_y `_ + second derivatives matrix elements in the ao basis + .. math:: + .br + {\tt ao_deriv2_x} = \langle \chi_i(x,y,z) \frac{\partial^2}{\partial x^2} |\chi_j (x,y,z) \rangle + + +`ao_deriv2_z `_ + second derivatives matrix elements in the ao basis + .. math:: + .br + {\tt ao_deriv2_x} = \langle \chi_i(x,y,z) \frac{\partial^2}{\partial x^2} |\chi_j (x,y,z) \rangle + + +`ao_deriv_1_x `_ + array of the integrals of AO_i * d/dx AO_j + array of the integrals of AO_i * d/dy AO_j + array of the integrals of AO_i * d/dz AO_j + + +`ao_deriv_1_y `_ + array of the integrals of AO_i * d/dx AO_j + array of the integrals of AO_i * d/dy AO_j + array of the integrals of AO_i * d/dz AO_j + + +`ao_deriv_1_z `_ + array of the integrals of AO_i * d/dx AO_j + array of the integrals of AO_i * d/dy AO_j + array of the integrals of AO_i * d/dz AO_j + + +`ao_dipole_x `_ + array of the integrals of AO_i * x AO_j + array of the integrals of AO_i * y AO_j + array of the integrals of AO_i * z AO_j + + +`ao_dipole_y `_ + array of the integrals of AO_i * x AO_j + array of the integrals of AO_i * y AO_j + array of the integrals of AO_i * z AO_j + + +`ao_dipole_z `_ + array of the integrals of AO_i * x AO_j + array of the integrals of AO_i * y AO_j + array of the integrals of AO_i * z AO_j + + +`ao_kinetic_integral `_ + array of the priminitve basis kinetic integrals + \langle \chi_i |\hat{T}| \chi_j \rangle + + +`ao_mono_elec_integral `_ + array of the mono electronic hamiltonian on the AOs basis + : sum of the kinetic and nuclear electronic potential + + +`ao_nucl_elec_integral `_ + interaction nuclear electron + + +`ao_nucl_elec_integral_per_atom `_ + ao_nucl_elec_integral_per_atom(i,j,k) = - + where Rk is the geometry of the kth atom + + +`ao_pseudo_integral `_ + Pseudo-potential + + +`ao_pseudo_integral_local `_ + Local pseudo-potential + + +`ao_pseudo_integral_non_local `_ + Local pseudo-potential + + +`ao_spread_x `_ + array of the integrals of AO_i * x^2 AO_j + array of the integrals of AO_i * y^2 AO_j + array of the integrals of AO_i * z^2 AO_j + + +`ao_spread_y `_ + array of the integrals of AO_i * x^2 AO_j + array of the integrals of AO_i * y^2 AO_j + array of the integrals of AO_i * z^2 AO_j + + +`ao_spread_z `_ + array of the integrals of AO_i * x^2 AO_j + array of the integrals of AO_i * y^2 AO_j + array of the integrals of AO_i * z^2 AO_j + + +`check_ortho `_ + Undocumented + + +`do_print `_ + Undocumented + + +`give_polynom_mult_center_mono_elec `_ + Undocumented + + +`i_x1_pol_mult_mono_elec `_ + Undocumented + + +`i_x2_pol_mult_mono_elec `_ + Undocumented + + +`int_gaus_pol `_ + Undocumented + + +`mo_deriv_1_x `_ + array of the integrals of MO_i * d/dx MO_j + array of the integrals of MO_i * d/dy MO_j + array of the integrals of MO_i * d/dz MO_j + + +`mo_deriv_1_y `_ + array of the integrals of MO_i * d/dx MO_j + array of the integrals of MO_i * d/dy MO_j + array of the integrals of MO_i * d/dz MO_j + + +`mo_deriv_1_z `_ + array of the integrals of MO_i * d/dx MO_j + array of the integrals of MO_i * d/dy MO_j + array of the integrals of MO_i * d/dz MO_j + + +`mo_dipole_x `_ + array of the integrals of MO_i * x MO_j + array of the integrals of MO_i * y MO_j + array of the integrals of MO_i * z MO_j + + +`mo_dipole_y `_ + array of the integrals of MO_i * x MO_j + array of the integrals of MO_i * y MO_j + array of the integrals of MO_i * z MO_j + + +`mo_dipole_z `_ + array of the integrals of MO_i * x MO_j + array of the integrals of MO_i * y MO_j + array of the integrals of MO_i * z MO_j + + +`mo_kinetic_integral `_ + Undocumented + + +`mo_mono_elec_integral `_ + array of the mono electronic hamiltonian on the MOs basis + : sum of the kinetic and nuclear electronic potential + + +`mo_nucl_elec_integral `_ + interaction nuclear electron on the MO basis + + +`mo_nucl_elec_integral_per_atom `_ + mo_nucl_elec_integral_per_atom(i,j,k) = - + where Rk is the geometry of the kth atom + + +`mo_pseudo_integral `_ + interaction nuclear electron on the MO basis + + +`mo_spread_x `_ + array of the integrals of MO_i * x^2 MO_j + array of the integrals of MO_i * y^2 MO_j + array of the integrals of MO_i * z^2 MO_j + + +`mo_spread_y `_ + array of the integrals of MO_i * x^2 MO_j + array of the integrals of MO_i * y^2 MO_j + array of the integrals of MO_i * z^2 MO_j + + +`mo_spread_z `_ + array of the integrals of MO_i * x^2 MO_j + array of the integrals of MO_i * y^2 MO_j + array of the integrals of MO_i * z^2 MO_j + + +`nai_pol_mult `_ + Undocumented + + +`orthonormalize_mos `_ + Undocumented + + +`overlap_bourrin_deriv_x `_ + Undocumented + + +`overlap_bourrin_dipole `_ + Undocumented + + +`overlap_bourrin_spread `_ + Undocumented + + +`overlap_bourrin_x `_ + Undocumented + + +`overlap_bourrin_x_abs `_ + Undocumented + + +`power `_ + Undocumented + + +`save_ortho_mos `_ + Undocumented + + +`v_e_n `_ + Undocumented + + +`v_phi `_ + Undocumented + + +`v_r `_ + Undocumented + + +`v_theta `_ + Undocumented + + +`wallis `_ + Undocumented + diff --git a/src/MOGuess/README.rst b/src/MOGuess/README.rst index 643e8945..a2d58aec 100644 --- a/src/MOGuess/README.rst +++ b/src/MOGuess/README.rst @@ -41,3 +41,42 @@ Documentation `hcore_guess `_ Produce `H_core` MO orbital +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Integrals_Monoelec `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`ao_ortho_lowdin_coef `_ + matrix of the coefficients of the mos generated by the + orthonormalization by the S^{-1/2} canonical transformation of the aos + ao_ortho_lowdin_coef(i,j) = coefficient of the ith ao on the jth ao_ortho_lowdin orbital + + +`ao_ortho_lowdin_nucl_elec_integral `_ + Undocumented + + +`ao_ortho_lowdin_overlap `_ + overlap matrix of the ao_ortho_lowdin + supposed to be the Identity + + +`h_core_guess `_ + Produce `H_core` MO orbital + output: mo_basis.mo_tot_num mo_basis.mo_label mo_basis.ao_md5 mo_basis.mo_coef mo_basis.mo_occ + + +`hcore_guess `_ + Produce `H_core` MO orbital + diff --git a/src/MO_Basis/README.rst b/src/MO_Basis/README.rst index ee83de36..361ef96f 100644 --- a/src/MO_Basis/README.rst +++ b/src/MO_Basis/README.rst @@ -132,3 +132,105 @@ Documentation `save_mos `_ Undocumented +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `AO_Basis `_ +* `Electrons `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`ao_to_mo `_ + Transform A from the AO basis to the MO basis + + +`cholesky_mo `_ + Cholesky decomposition of AO Density matrix to + generate MOs + + +`mix_mo_jk `_ + subroutine that rotates the jth MO with the kth MO + to give two new MO's that are + '+' = 1/sqrt(2) (|j> + |k>) + '-' = 1/sqrt(2) (|j> - |k>) + by convention, the '+' MO is in the lower index (min(j,k)) + by convention, the '-' MO is in the greater index (max(j,k)) + + +`mo_as_eigvectors_of_mo_matrix `_ + Undocumented + + +`mo_as_eigvectors_of_mo_matrix_sort_by_observable `_ + Undocumented + + +`mo_coef `_ + Molecular orbital coefficients on AO basis set + mo_coef(i,j) = coefficient of the ith ao on the jth mo + mo_label : Label characterizing the MOS (local, canonical, natural, etc) + + +`mo_coef_transp `_ + Molecular orbital coefficients on AO basis set + + +`mo_density_matrix `_ + Density matrix in MO basis + + +`mo_density_matrix_virtual `_ + Density matrix in MO basis (virtual MOs) + + +`mo_label `_ + Molecular orbital coefficients on AO basis set + mo_coef(i,j) = coefficient of the ith ao on the jth mo + mo_label : Label characterizing the MOS (local, canonical, natural, etc) + + +`mo_occ `_ + MO occupation numbers + + +`mo_overlap `_ + Undocumented + + +`mo_sort_by_observable `_ + Undocumented + + +`mo_to_ao `_ + Transform A from the MO basis to the AO basis + + +`mo_to_ao_no_overlap `_ + Transform A from the MO basis to the S^-1 AO basis + + +`mo_tot_num `_ + Total number of molecular orbitals and the size of the keys corresponding + + +`mo_tot_num_align `_ + Aligned variable for dimensioning of arrays + + +`s_mo_coef `_ + Product S.C where S is the overlap matrix in the AO basis and C the mo_coef matrix. + + +`save_mos `_ + Undocumented + diff --git a/src/Nuclei/README.rst b/src/Nuclei/README.rst index 13058a7f..032c9963 100644 --- a/src/Nuclei/README.rst +++ b/src/Nuclei/README.rst @@ -88,3 +88,85 @@ Documentation `positive_charge_barycentre `_ Centroid of the positive charges +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Ezfio_files `_ +* `Utils `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`element_name `_ + Array of the name of element, sorted by nuclear charge (integer) + + +`nucl_charge `_ + Nuclear charges + + +`nucl_coord `_ + Nuclear coordinates in the format (:, {x,y,z}) + + +`nucl_coord_transp `_ + Transposed array of nucl_coord + + +`nucl_dist `_ + nucl_dist : Nucleus-nucleus distances + nucl_dist_2 : Nucleus-nucleus distances squared + nucl_dist_vec : Nucleus-nucleus distances vectors + + +`nucl_dist_2 `_ + nucl_dist : Nucleus-nucleus distances + nucl_dist_2 : Nucleus-nucleus distances squared + nucl_dist_vec : Nucleus-nucleus distances vectors + + +`nucl_dist_vec_x `_ + nucl_dist : Nucleus-nucleus distances + nucl_dist_2 : Nucleus-nucleus distances squared + nucl_dist_vec : Nucleus-nucleus distances vectors + + +`nucl_dist_vec_y `_ + nucl_dist : Nucleus-nucleus distances + nucl_dist_2 : Nucleus-nucleus distances squared + nucl_dist_vec : Nucleus-nucleus distances vectors + + +`nucl_dist_vec_z `_ + nucl_dist : Nucleus-nucleus distances + nucl_dist_2 : Nucleus-nucleus distances squared + nucl_dist_vec : Nucleus-nucleus distances vectors + + +`nucl_label `_ + Nuclear labels + + +`nucl_num `_ + Number of nuclei + + +`nucl_num_aligned `_ + Number of nuclei algined + + +`nuclear_repulsion `_ + Nuclear repulsion energy + + +`positive_charge_barycentre `_ + Centroid of the positive charges + diff --git a/src/Pseudo/README.rst b/src/Pseudo/README.rst index d6890929..60023235 100644 --- a/src/Pseudo/README.rst +++ b/src/Pseudo/README.rst @@ -65,3 +65,66 @@ Documentation `pseudo_v_kl `_ test +Needed Modules +============== +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +.. image:: tree_dependency.png + +* `Nuclei `_ + +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`do_pseudo `_ + Using pseudo potential integral of not + + +`pseudo_dz_k `_ + test + + +`pseudo_dz_kl `_ + test + + +`pseudo_grid_rmax `_ + R_maxof the QMC grid + + +`pseudo_grid_size `_ + Nb of points of the QMC grid + + +`pseudo_klocmax `_ + test + + +`pseudo_kmax `_ + test + + +`pseudo_lmax `_ + test + + +`pseudo_n_k `_ + test + + +`pseudo_n_kl `_ + test + + +`pseudo_v_k `_ + test + + +`pseudo_v_kl `_ + test + diff --git a/src/Utils/README.rst b/src/Utils/README.rst index 8ca88b1a..5c271c93 100644 --- a/src/Utils/README.rst +++ b/src/Utils/README.rst @@ -634,3 +634,633 @@ Documentation `write_git_log `_ Write the last git commit in file iunit. +Documentation +============= +.. Do not edit this section It was auto-generated +.. by the `update_README.py` script. + + +`a_coef `_ + Undocumented + + +`abort_all `_ + If True, all the calculation is aborted + + +`abort_here `_ + If True, all the calculation is aborted + + +`add_poly `_ + Add two polynomials + D(t) =! D(t) +( B(t)+C(t)) + + +`add_poly_multiply `_ + Add a polynomial multiplied by a constant + D(t) =! D(t) +( cst * B(t)) + + +`align_double `_ + Compute 1st dimension such that it is aligned for vectorization. + + +`apply_rotation `_ + Apply the rotation found by find_rotation + + +`approx_dble `_ + Undocumented + + +`b_coef `_ + Undocumented + + +`binom `_ + Binomial coefficients + + +`binom_func `_ + .. math :: + .br + \frac{i!}{j!(i-j)!} + .br + + +`binom_transp `_ + Binomial coefficients + + +`catch_signal `_ + What to do on Ctrl-C. If two Ctrl-C are pressed within 1 sec, the calculation if aborted. + + +`dble_fact `_ + Undocumented + + +`dble_fact_even `_ + n!! + + +`dble_fact_odd `_ + n!! + + +`dble_logfact `_ + n!! + + +`ddfact2 `_ + Undocumented + + +`dset_order `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + + +`dset_order_big `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`dsort `_ + Sort array x(isize). + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`erf0 `_ + Undocumented + + +`f_integral `_ + function that calculates the following integral + \int_{\-infty}^{+\infty} x^n \exp(-p x^2) dx + + +`fact `_ + n! + + +`fact_inv `_ + 1/n! + + +`find_rotation `_ + Find A.C = B + + +`gammln `_ + Undocumented + + +`gammp `_ + Undocumented + + +`gaussian_product `_ + Gaussian product in 1D. + e^{-a (x-x_A)^2} e^{-b (x-x_B)^2} = K_{ab}^x e^{-p (x-x_P)^2} + + +`gaussian_product_x `_ + Gaussian product in 1D. + e^{-a (x-x_A)^2} e^{-b (x-x_B)^2} = K_{ab}^x e^{-p (x-x_P)^2} + + +`gcf `_ + Undocumented + + +`get_pseudo_inverse `_ + Find C = A^-1 + + +`give_explicit_poly_and_gaussian `_ + Transforms the product of + (x-x_A)^a(1) (x-x_B)^b(1) (x-x_A)^a(2) (y-y_B)^b(2) (z-z_A)^a(3) (z-z_B)^b(3) exp(-(r-A)^2 alpha) exp(-(r-B)^2 beta) + into + fact_k * [ sum (l_x = 0,i_order(1)) P_new(l_x,1) * (x-P_center(1))^l_x ] exp (- p (x-P_center(1))^2 ) + * [ sum (l_y = 0,i_order(2)) P_new(l_y,2) * (y-P_center(2))^l_y ] exp (- p (y-P_center(2))^2 ) + * [ sum (l_z = 0,i_order(3)) P_new(l_z,3) * (z-P_center(3))^l_z ] exp (- p (z-P_center(3))^2 ) + + +`give_explicit_poly_and_gaussian_double `_ + Transforms the product of + (x-x_A)^a(1) (x-x_B)^b(1) (x-x_A)^a(2) (y-y_B)^b(2) (z-z_A)^a(3) (z-z_B)^b(3) + exp(-(r-A)^2 alpha) exp(-(r-B)^2 beta) exp(-(r-Nucl_center)^2 gama + .br + into + fact_k * [ sum (l_x = 0,i_order(1)) P_new(l_x,1) * (x-P_center(1))^l_x ] exp (- p (x-P_center(1))^2 ) + * [ sum (l_y = 0,i_order(2)) P_new(l_y,2) * (y-P_center(2))^l_y ] exp (- p (y-P_center(2))^2 ) + * [ sum (l_z = 0,i_order(3)) P_new(l_z,3) * (z-P_center(3))^l_z ] exp (- p (z-P_center(3))^2 ) + + +`give_explicit_poly_and_gaussian_x `_ + Transform the product of + (x-x_A)^a(1) (x-x_B)^b(1) (x-x_A)^a(2) (y-y_B)^b(2) (z-z_A)^a(3) (z-z_B)^b(3) exp(-(r-A)^2 alpha) exp(-(r-B)^2 beta) + into + fact_k (x-x_P)^iorder(1) (y-y_P)^iorder(2) (z-z_P)^iorder(3) exp(-p(r-P)^2) + + +`gser `_ + Undocumented + + +`heap_dsort `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`heap_dsort_big `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`heap_i2sort `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`heap_i2sort_big `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`heap_i8sort `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`heap_i8sort_big `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`heap_isort `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`heap_isort_big `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`heap_sort `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`heap_sort_big `_ + Sort array x(isize) using the heap sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`hermite `_ + Hermite polynomial + + +`i2radix_sort `_ + Sort integer array x(isize) using the radix sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + iradix should be -1 in input. + + +`i2set_order `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + + +`i2set_order_big `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`i2sort `_ + Sort array x(isize). + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`i8radix_sort `_ + Sort integer array x(isize) using the radix sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + iradix should be -1 in input. + + +`i8radix_sort_big `_ + Sort integer array x(isize) using the radix sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + iradix should be -1 in input. + + +`i8set_order `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + + +`i8set_order_big `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`i8sort `_ + Sort array x(isize). + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`insertion_dsort `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`insertion_dsort_big `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`insertion_i2sort `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`insertion_i2sort_big `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`insertion_i8sort `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`insertion_i8sort_big `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`insertion_isort `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`insertion_isort_big `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`insertion_sort `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`insertion_sort_big `_ + Sort array x(isize) using the insertion sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`inv_int `_ + 1/i + + +`iradix_sort `_ + Sort integer array x(isize) using the radix sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + iradix should be -1 in input. + + +`iradix_sort_big `_ + Sort integer array x(isize) using the radix sort algorithm. + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + iradix should be -1 in input. + + +`iset_order `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + + +`iset_order_big `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`isort `_ + Sort array x(isize). + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`lapack_diag `_ + Diagonalize matrix H + .br + H is untouched between input and ouptut + .br + eigevalues(i) = ith lowest eigenvalue of the H matrix + .br + eigvectors(i,j) = where i is the basis function and psi_j is the j th eigenvector + .br + + +`lapack_diag_s2 `_ + Diagonalize matrix H + .br + H is untouched between input and ouptut + .br + eigevalues(i) = ith lowest eigenvalue of the H matrix + .br + eigvectors(i,j) = where i is the basis function and psi_j is the j th eigenvector + .br + + +`lapack_diagd `_ + Diagonalize matrix H + .br + H is untouched between input and ouptut + .br + eigevalues(i) = ith lowest eigenvalue of the H matrix + .br + eigvectors(i,j) = where i is the basis function and psi_j is the j th eigenvector + .br + + +`lapack_partial_diag `_ + Diagonalize matrix H + .br + H is untouched between input and ouptut + .br + eigevalues(i) = ith lowest eigenvalue of the H matrix + .br + eigvectors(i,j) = where i is the basis function and psi_j is the j th eigenvector + .br + + +`logfact `_ + n! + + +`multiply_poly `_ + Multiply two polynomials + D(t) =! D(t) +( B(t)*C(t)) + + +`normalize `_ + Normalizes vector u + u is expected to be aligned in memory. + + +`nproc `_ + Number of current OpenMP threads + + +`ortho_lowdin `_ + Compute C_new=C_old.S^-1/2 canonical orthogonalization. + .br + overlap : overlap matrix + .br + LDA : leftmost dimension of overlap array + .br + N : Overlap matrix is NxN (array is (LDA,N) ) + .br + C : Coefficients of the vectors to orthogonalize. On exit, + orthogonal vectors + .br + LDC : leftmost dimension of C + .br + m : Coefficients matrix is MxN, ( array is (LDC,N) ) + .br + + +`overlap_a_b_c `_ + Undocumented + + +`overlap_gaussian_x `_ + .. math:: + .br + \sum_{-infty}^{+infty} (x-A_x)^ax (x-B_x)^bx exp(-alpha(x-A_x)^2) exp(-beta(x-B_X)^2) dx + .br + + +`overlap_gaussian_xyz `_ + .. math:: + .br + S_x = \int (x-A_x)^{a_x} exp(-\alpha(x-A_x)^2) (x-B_x)^{b_x} exp(-beta(x-B_x)^2) dx \\ + S = S_x S_y S_z + .br + + +`overlap_x_abs `_ + .. math :: + .br + \int_{-infty}^{+infty} (x-A_center)^(power_A) * (x-B_center)^power_B * exp(-alpha(x-A_center)^2) * exp(-beta(x-B_center)^2) dx + .br + + +`progress_active `_ + Current status for displaying progress bars. Global variable. + + +`progress_bar `_ + Current status for displaying progress bars. Global variable. + + +`progress_timeout `_ + Current status for displaying progress bars. Global variable. + + +`progress_title `_ + Current status for displaying progress bars. Global variable. + + +`progress_value `_ + Current status for displaying progress bars. Global variable. + + +`recentered_poly2 `_ + Recenter two polynomials + + +`rint `_ + .. math:: + .br + \int_0^1 dx \exp(-p x^2) x^n + .br + + +`rint1 `_ + Standard version of rint + + +`rint_large_n `_ + Version of rint for large values of n + + +`rint_sum `_ + Needed for the calculation of two-electron integrals. + + +`rinteg `_ + Undocumented + + +`rintgauss `_ + Undocumented + + +`run_progress `_ + Display a progress bar with documentation of what is happening + + +`sabpartial `_ + Undocumented + + +`set_order `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + + +`set_order_big `_ + array A has already been sorted, and iorder has contains the new order of + elements of A. This subroutine changes the order of x to match the new order of A. + This is a version for very large arrays where the indices need + to be in integer*8 format + + +`set_zero_extra_diag `_ + Undocumented + + +`sort `_ + Sort array x(isize). + iorder in input should be (1,2,3,...,isize), and in output + contains the new order of the elements. + + +`start_progress `_ + Starts the progress bar + + +`stop_progress `_ + Stop the progress bar + + +`trap_signals `_ + What to do when a signal is caught. Here, trap Ctrl-C and call the control_C subroutine. + + +`u_dot_u `_ + Compute + + +`u_dot_v `_ + Compute + + +`wall_time `_ + The equivalent of cpu_time, but for the wall time. + + +`write_git_log `_ + Write the last git commit in file iunit. +