From 814613fe7b1bd9f1e5f846abb422903796b46451 Mon Sep 17 00:00:00 2001 From: Emmanuel Giner Date: Sat, 29 Dec 2018 15:24:35 +0100 Subject: [PATCH] added qp_e_conv_fci --- docs/source/_static/links.rst | 4 +- docs/source/intro/intro.rst | 17 +- docs/source/intro/selected_ci.rst | 2 + docs/source/modules/determinants.rst | 14 -- docs/source/modules/fci.rst | 14 -- docs/source/modules/generators_full.rst | 67 ------ docs/source/modules/hartree_fock.rst | 14 ++ docs/source/modules/kohn_sham.rst | 182 +++++++++++++++ docs/source/modules/kohn_sham_rs.rst | 182 --------------- docs/source/modules/single_ref_method.rst | 71 ++++++ docs/source/modules/slave.rst | 14 ++ .../programmers_guide/index_providers.rst | 213 ------------------ docs/source/users_guide/quickstart.rst | 51 ++++- .../mrcepa0/{mrcepa0.bats => test_mrcepa0} | 0 scripts/qp_e_conv_fci | 65 ++++++ 15 files changed, 410 insertions(+), 500 deletions(-) rename plugins/garniron/mrcepa0/{mrcepa0.bats => test_mrcepa0} (100%) create mode 100755 scripts/qp_e_conv_fci diff --git a/docs/source/_static/links.rst b/docs/source/_static/links.rst index f1a3a27d..147ad7b6 100644 --- a/docs/source/_static/links.rst +++ b/docs/source/_static/links.rst @@ -68,9 +68,11 @@ .. |QMC| replace:: :abbr:`QMC (Quantum Monte Carlo)` .. |rst| replace:: :abbr:`RST (ReStructured Text)` .. |SCF| replace:: :abbr:`SCF (Self Consistent Field)` -.. |RSH| replace:: :abbr:`RSH (Range-Separated-Hybrids)` +.. |RSH| replace:: :abbr:`RSH (Range Separated Hybrids)` +.. |RSDFT| replace:: :abbr:`RSDFT (Range Separated Density Functional Theory)` .. |KS-DFT| replace:: :abbr:`KS-DFT (Kohn-Sham Density Functional Theory)` .. |sCI| replace:: :abbr:`sCI (Selected-CI)` +.. |WFT| replace:: :abbr:`WFT (Wave Function Theory)` .. |CASSCF| replace:: |CAS| - |SCF| .. |FCIQMC| replace:: |FCI| - |QMC| diff --git a/docs/source/intro/intro.rst b/docs/source/intro/intro.rst index 45b2db2e..a0a76c05 100644 --- a/docs/source/intro/intro.rst +++ b/docs/source/intro/intro.rst @@ -12,15 +12,16 @@ What it is ========== The |qp| is an open-source programming environment for quantum chemistry, -especially for `wave function theory `_ (WFT). +especially for `wave function theory `_ (|WFT|). The main goal is the development of selected configuration interaction |sCI| methods and multi-reference perturbation theory |MRPT| in the determinant-driven paradigm. It also contains the very basics of Kohn-Sham `density functional theory `_ |KS-DFT| and `range-separated hybrids `_ |RSH|. -Regarding the The determinant-driven framework allows the programmer to include any arbitrary set of +The determinant-driven framework allows the programmer to include any arbitrary set of determinants in the variational space, and thus gives a complete freedom in the methodological -development. The basics of RSH together with the WFT framework also allow a simple coupling between DFT and WFT calculations (see the plugins of ``_) -All the programs are developed with the `IRPF90`_ code generator, which simplifies +development. The basic ingredients of |RSH| together with those of the |WFT| framework available in the |qp| library allows one to easily develop range-separated DFT (|RSDFT|) approaches (see for instance the plugins at ``_). + +All the programs are developed with the `IRPF90`_ code generator, which considerably simplifies the collaborative development, and the development of new features. @@ -29,13 +30,13 @@ What it is not ============== The |qp| is *not* a general purpose quantum chemistry program. -First of all, it is a library. The users of the |qp| should develop -their own programs. +First of all, it is a *library* to develop new theories and algorithms in quantum chemistry. +Therefore, beside the use of the programs of the core modules, the users of the |qp| should develop their own programs. -The |qp| has been designed specifically for sCI, so all the +The |qp| has been designed specifically for |sCI|, so all the algorithms which are programmed are not adapted to run SCF or DFT calculations on thousands of atoms. Currently, the systems targeted have less than 600 -molecular orbitals. +molecular orbitals. This limit is due to the memory bottleneck induced by the storring of the two-electron integrals (see ``mo_two_e_integrals`` and ``ao_two_e_integrals``). The |qp| is *not* a massive production code. For conventional methods such as Hartree-Fock, CISD or MP2, the users are recommended to use the diff --git a/docs/source/intro/selected_ci.rst b/docs/source/intro/selected_ci.rst index c77fb967..41ba8820 100644 --- a/docs/source/intro/selected_ci.rst +++ b/docs/source/intro/selected_ci.rst @@ -102,6 +102,8 @@ The determinants in |SetDI| will be characterized as **internal**. the wave function, low |EPT|, ...). +Of course, such a procedure can be applied on any state and therefore can allow to treat both ground and excited states. + Approximations to accelerate the selection ------------------------------------------ diff --git a/docs/source/modules/determinants.rst b/docs/source/modules/determinants.rst index aab901df..5c2ff86f 100644 --- a/docs/source/modules/determinants.rst +++ b/docs/source/modules/determinants.rst @@ -3149,20 +3149,6 @@ Subroutines / functions -.. c:function:: pouet - - .. code:: text - - subroutine pouet - - File: :file:`test.irp.f` - - - - - - - .. c:function:: pull_pt2 .. code:: text diff --git a/docs/source/modules/fci.rst b/docs/source/modules/fci.rst index 6f36b957..98b1f8f1 100644 --- a/docs/source/modules/fci.rst +++ b/docs/source/modules/fci.rst @@ -754,20 +754,6 @@ Subroutines / functions -.. c:function:: run - - .. code:: text - - subroutine run - - File: :file:`pt2.irp.f` - - - - - - - .. c:function:: run_pt2_slave .. code:: text diff --git a/docs/source/modules/generators_full.rst b/docs/source/modules/generators_full.rst index 90b32a98..012457c0 100644 --- a/docs/source/modules/generators_full.rst +++ b/docs/source/modules/generators_full.rst @@ -33,33 +33,6 @@ Providers -.. c:var:: n_det_generators - - .. code:: text - - integer :: n_det_generators - - File: :file:`generators.irp.f` - - For Single reference wave functions, the number of generators is 1 : the Hartree-Fock determinant - - - - -.. c:var:: psi_coef_generators - - .. code:: text - - integer(bit_kind), allocatable :: psi_det_generators (N_int,2,psi_det_size) - double precision, allocatable :: psi_coef_generators (psi_det_size,N_states) - - File: :file:`generators.irp.f` - - For Single reference wave functions, the generator is the Hartree-Fock determinant - - - - .. c:var:: psi_coef_sorted_gen .. code:: text @@ -75,20 +48,6 @@ Providers -.. c:var:: psi_det_generators - - .. code:: text - - integer(bit_kind), allocatable :: psi_det_generators (N_int,2,psi_det_size) - double precision, allocatable :: psi_coef_generators (psi_det_size,N_states) - - File: :file:`generators.irp.f` - - For Single reference wave functions, the generator is the Hartree-Fock determinant - - - - .. c:var:: psi_det_sorted_gen .. code:: text @@ -117,29 +76,3 @@ Providers For Single reference wave functions, the generator is the Hartree-Fock determinant - - -.. c:var:: select_max - - .. code:: text - - double precision, allocatable :: select_max (size_select_max) - - File: :file:`generators.irp.f` - - Memo to skip useless selectors - - - - -.. c:var:: size_select_max - - .. code:: text - - integer :: size_select_max - - File: :file:`generators.irp.f` - - Size of the select_max array - - diff --git a/docs/source/modules/hartree_fock.rst b/docs/source/modules/hartree_fock.rst index 0002b07e..46eee07c 100644 --- a/docs/source/modules/hartree_fock.rst +++ b/docs/source/modules/hartree_fock.rst @@ -197,6 +197,20 @@ Subroutines / functions +.. c:function:: run + + .. code:: text + + subroutine run + + File: :file:`scf_old.irp.f` + + Run SCF calculation + + + + + .. c:function:: scf .. code:: text diff --git a/docs/source/modules/kohn_sham.rst b/docs/source/modules/kohn_sham.rst index d497f7a4..7498b062 100644 --- a/docs/source/modules/kohn_sham.rst +++ b/docs/source/modules/kohn_sham.rst @@ -51,6 +51,105 @@ Providers --------- +.. c:var:: ao_potential_alpha_xc + + .. code:: text + + double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num) + double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num) + + File: :file:`pot_functionals.irp.f` + + + + + + +.. c:var:: ao_potential_beta_xc + + .. code:: text + + double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num) + double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num) + + File: :file:`pot_functionals.irp.f` + + + + + + +.. c:var:: e_correlation_dft + + .. code:: text + + double precision :: e_correlation_dft + + File: :file:`pot_functionals.irp.f` + + + + + + +.. c:var:: e_exchange_dft + + .. code:: text + + double precision :: e_exchange_dft + + File: :file:`pot_functionals.irp.f` + + + + + + +.. c:var:: fock_matrix_alpha_no_xc_ao + + .. code:: text + + double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num) + double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num) + + File: :file:`fock_matrix_ks.irp.f` + + Mono electronic an Coulomb matrix in ao basis set + + + + +.. c:var:: fock_matrix_beta_no_xc_ao + + .. code:: text + + double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num) + double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num) + + File: :file:`fock_matrix_ks.irp.f` + + Mono electronic an Coulomb matrix in ao basis set + + + + +.. c:var:: fock_matrix_energy + + .. code:: text + + double precision :: ks_energy + double precision :: two_electron_energy + double precision :: one_electron_energy + double precision :: fock_matrix_energy + double precision :: trace_potential_xc + + File: :file:`ks_enery.irp.f` + + Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. + + + + .. c:var:: ks_energy .. code:: text @@ -66,3 +165,86 @@ Providers Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. + + +.. c:var:: one_electron_energy + + .. code:: text + + double precision :: ks_energy + double precision :: two_electron_energy + double precision :: one_electron_energy + double precision :: fock_matrix_energy + double precision :: trace_potential_xc + + File: :file:`ks_enery.irp.f` + + Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. + + + + +.. c:var:: trace_potential_xc + + .. code:: text + + double precision :: ks_energy + double precision :: two_electron_energy + double precision :: one_electron_energy + double precision :: fock_matrix_energy + double precision :: trace_potential_xc + + File: :file:`ks_enery.irp.f` + + Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. + + + + +.. c:var:: two_electron_energy + + .. code:: text + + double precision :: ks_energy + double precision :: two_electron_energy + double precision :: one_electron_energy + double precision :: fock_matrix_energy + double precision :: trace_potential_xc + + File: :file:`ks_enery.irp.f` + + Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. + + + + +Subroutines / functions +----------------------- + + + +.. c:function:: check_coherence_functional + + .. code:: text + + subroutine check_coherence_functional + + File: :file:`ks_scf.irp.f` + + + + + + + +.. c:function:: srs_ks_cf + + .. code:: text + + subroutine srs_ks_cf + + File: :file:`ks_scf.irp.f` + + Produce `Kohn_Sham` 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: kohn_sham.energy optional: mo_basis.mo_coef + + diff --git a/docs/source/modules/kohn_sham_rs.rst b/docs/source/modules/kohn_sham_rs.rst index 58c89250..7eb3ec6e 100644 --- a/docs/source/modules/kohn_sham_rs.rst +++ b/docs/source/modules/kohn_sham_rs.rst @@ -51,122 +51,6 @@ Providers --------- -.. c:var:: ao_potential_alpha_xc - - .. code:: text - - double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num) - double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num) - - File: :file:`pot_functionals.irp.f` - - - - - - -.. c:var:: ao_potential_beta_xc - - .. code:: text - - double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num) - double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num) - - File: :file:`pot_functionals.irp.f` - - - - - - -.. c:var:: e_correlation_dft - - .. code:: text - - double precision :: e_correlation_dft - - File: :file:`pot_functionals.irp.f` - - - - - - -.. c:var:: e_exchange_dft - - .. code:: text - - double precision :: e_exchange_dft - - File: :file:`pot_functionals.irp.f` - - - - - - -.. c:var:: fock_matrix_alpha_no_xc_ao - - .. code:: text - - double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num) - double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num) - - File: :file:`fock_matrix_rs_ks.irp.f` - - Mono electronic an Coulomb matrix in AO basis set - - - - -.. c:var:: fock_matrix_beta_no_xc_ao - - .. code:: text - - double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num) - double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num) - - File: :file:`fock_matrix_rs_ks.irp.f` - - Mono electronic an Coulomb matrix in AO basis set - - - - -.. c:var:: fock_matrix_energy - - .. code:: text - - double precision :: rs_ks_energy - double precision :: two_electron_energy - double precision :: one_electron_energy - double precision :: fock_matrix_energy - double precision :: trace_potential_xc - - File: :file:`rs_ks_energy.irp.f` - - Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. - - - - -.. c:var:: one_electron_energy - - .. code:: text - - double precision :: rs_ks_energy - double precision :: two_electron_energy - double precision :: one_electron_energy - double precision :: fock_matrix_energy - double precision :: trace_potential_xc - - File: :file:`rs_ks_energy.irp.f` - - Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. - - - - .. c:var:: rs_ks_energy .. code:: text @@ -182,69 +66,3 @@ Providers Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. - - -.. c:var:: trace_potential_xc - - .. code:: text - - double precision :: rs_ks_energy - double precision :: two_electron_energy - double precision :: one_electron_energy - double precision :: fock_matrix_energy - double precision :: trace_potential_xc - - File: :file:`rs_ks_energy.irp.f` - - Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. - - - - -.. c:var:: two_electron_energy - - .. code:: text - - double precision :: rs_ks_energy - double precision :: two_electron_energy - double precision :: one_electron_energy - double precision :: fock_matrix_energy - double precision :: trace_potential_xc - - File: :file:`rs_ks_energy.irp.f` - - Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity. - - - - -Subroutines / functions ------------------------ - - - -.. c:function:: check_coherence_functional - - .. code:: text - - subroutine check_coherence_functional - - File: :file:`rs_ks_scf.irp.f` - - - - - - - -.. c:function:: srs_ks_cf - - .. code:: text - - subroutine srs_ks_cf - - File: :file:`rs_ks_scf.irp.f` - - Produce `Range_separated_Kohn_Sham` 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: kohn_sham.energy optional: mo_basis.mo_coef - - diff --git a/docs/source/modules/single_ref_method.rst b/docs/source/modules/single_ref_method.rst index ae80a401..c0a6f43e 100644 --- a/docs/source/modules/single_ref_method.rst +++ b/docs/source/modules/single_ref_method.rst @@ -12,3 +12,74 @@ Include this module for single reference methods. Using this module, the only generator determinant is the Hartree-Fock determinant. + + +Providers +--------- + + +.. c:var:: n_det_generators + + .. code:: text + + integer :: n_det_generators + + File: :file:`generators.irp.f` + + For Single reference wave functions, the number of generators is 1 : the Hartree-Fock determinant + + + + +.. c:var:: psi_coef_generators + + .. code:: text + + integer(bit_kind), allocatable :: psi_det_generators (N_int,2,psi_det_size) + double precision, allocatable :: psi_coef_generators (psi_det_size,N_states) + + File: :file:`generators.irp.f` + + For Single reference wave functions, the generator is the Hartree-Fock determinant + + + + +.. c:var:: psi_det_generators + + .. code:: text + + integer(bit_kind), allocatable :: psi_det_generators (N_int,2,psi_det_size) + double precision, allocatable :: psi_coef_generators (psi_det_size,N_states) + + File: :file:`generators.irp.f` + + For Single reference wave functions, the generator is the Hartree-Fock determinant + + + + +.. c:var:: select_max + + .. code:: text + + double precision, allocatable :: select_max (1) + + File: :file:`generators.irp.f` + + Memo to skip useless selectors + + + + +.. c:var:: size_select_max + + .. code:: text + + integer :: size_select_max + + File: :file:`generators.irp.f` + + Size of select_max + + diff --git a/docs/source/modules/slave.rst b/docs/source/modules/slave.rst index 31cbd7f1..74b75541 100644 --- a/docs/source/modules/slave.rst +++ b/docs/source/modules/slave.rst @@ -32,6 +32,20 @@ Subroutines / functions +.. c:function:: qp_ao_ints + + .. code:: text + + subroutine qp_ao_ints + + File: :file:`slave_eri.irp.f` + + Slave for electron repulsion integrals + + + + + .. c:function:: run_wf .. code:: text diff --git a/docs/source/programmers_guide/index_providers.rst b/docs/source/programmers_guide/index_providers.rst index 72baecef..00b03943 100644 --- a/docs/source/programmers_guide/index_providers.rst +++ b/docs/source/programmers_guide/index_providers.rst @@ -8,10 +8,8 @@ Index of Providers * :c:data:`ao_bi_elec_integral_alpha` * :c:data:`ao_bi_elec_integral_beta` * :c:data:`ao_bielec_integral_erf_schwartz` -* :c:data:`ao_bielec_integral_ijkl_r3_schwartz` * :c:data:`ao_bielec_integral_schwartz` * :c:data:`ao_bielec_integrals_erf_in_map` -* :c:data:`ao_bielec_integrals_ijkl_r3_in_map` * :c:data:`ao_bielec_integrals_in_map` * :c:data:`ao_cart_to_sphe_coef` * :c:data:`ao_cart_to_sphe_inv` @@ -45,10 +43,6 @@ Index of Providers * :c:data:`ao_integrals_erf_cache_max` * :c:data:`ao_integrals_erf_cache_min` * :c:data:`ao_integrals_erf_map` -* :c:data:`ao_integrals_ijkl_r3_cache` -* :c:data:`ao_integrals_ijkl_r3_cache_max` -* :c:data:`ao_integrals_ijkl_r3_cache_min` -* :c:data:`ao_integrals_ijkl_r3_map` * :c:data:`ao_integrals_map` * :c:data:`ao_integrals_threshold` * :c:data:`ao_kinetic_integral` @@ -118,17 +112,10 @@ Index of Providers * :c:data:`aos_vx_alpha_pbe_w` * :c:data:`aos_vx_beta_lda_w` * :c:data:`aos_vx_beta_pbe_w` -* :c:data:`approx_svd_two_dm` -* :c:data:`approx_svd_two_dm_correl` -* :c:data:`approx_two_dm_map` -* :c:data:`approx_two_dm_map_rev` * :c:data:`barycentric_electronic_energy` * :c:data:`bi_elec_ref_bitmask_energy` -* :c:data:`bi_elec_ref_bitmask_energy_erf` * :c:data:`big_array_coulomb_integrals` -* :c:data:`big_array_coulomb_integrals_ijkl_r3` * :c:data:`big_array_exchange_integrals` -* :c:data:`big_array_exchange_integrals_ijkl_r3` * :c:data:`binom` * :c:data:`binom_int` * :c:data:`binom_int_transp` @@ -178,11 +165,9 @@ Index of Providers * :c:data:`dft_type` * :c:data:`diag_algorithm` * :c:data:`diagonal_h_matrix_on_psi_det` -* :c:data:`disk_access_ao_ijkl_r3` * :c:data:`disk_access_ao_integrals` * :c:data:`disk_access_ao_integrals_erf` * :c:data:`disk_access_ao_one_integrals` -* :c:data:`disk_access_mo_ijkl_r3` * :c:data:`disk_access_mo_integrals` * :c:data:`disk_access_mo_integrals_erf` * :c:data:`disk_access_mo_one_integrals` @@ -213,15 +198,10 @@ Index of Providers * :c:data:`elec_beta_num` * :c:data:`elec_num` * :c:data:`elec_num_tab` -* :c:data:`electronic_energy_mr_dft` * :c:data:`element_mass` * :c:data:`element_name` * :c:data:`energy_c` * :c:data:`energy_c_lda` -* :c:data:`energy_c_md_lda` -* :c:data:`energy_c_md_on_top` -* :c:data:`energy_c_md_on_top_pbe_mu_ueg_vector` -* :c:data:`energy_c_md_on_top_pbe_mu_vector` * :c:data:`energy_c_pbe` * :c:data:`energy_iterations` * :c:data:`energy_sr_c_lda` @@ -314,13 +294,9 @@ Index of Providers * :c:data:`inertia_tensor_eigenvectors` * :c:data:`initialize_pt2_e0_denominator` * :c:data:`insert_into_mo_integrals_erf_map` -* :c:data:`insert_into_mo_integrals_ijkl_r3_map` * :c:data:`insert_into_mo_integrals_map` * :c:data:`int_erf_3_index` * :c:data:`int_erf_3_index_exc` -* :c:data:`int_on_top_of_r_approx_svd` -* :c:data:`int_on_top_of_r_approx_svd_correl` -* :c:data:`integral_on_top` * :c:data:`inv_int` * :c:data:`inv_selectors_coef_hf` * :c:data:`inv_selectors_coef_hf_squared` @@ -330,10 +306,6 @@ Index of Providers * :c:data:`ks_energy` * :c:data:`l3_weight` * :c:data:`l_to_charater` -* :c:data:`l_vec_approx_svd_two_dm` -* :c:data:`l_vec_approx_svd_two_dm_at_r` -* :c:data:`l_vec_approx_svd_two_dm_at_r_correl` -* :c:data:`l_vec_approx_svd_two_dm_correl` * :c:data:`level_shift` * :c:data:`list_act` * :c:data:`list_act_reverse` @@ -351,12 +323,6 @@ Index of Providers * :c:data:`max_degree_exc` * :c:data:`max_dim_diis` * :c:data:`max_exc_pert` -* :c:data:`mo_bielec_integral_ijkl_r3_jj` -* :c:data:`mo_bielec_integral_ijkl_r3_jj_anti` -* :c:data:`mo_bielec_integral_ijkl_r3_jj_anti_from_ao` -* :c:data:`mo_bielec_integral_ijkl_r3_jj_exchange` -* :c:data:`mo_bielec_integral_ijkl_r3_jj_exchange_from_ao` -* :c:data:`mo_bielec_integral_ijkl_r3_jj_from_ao` * :c:data:`mo_bielec_integral_jj` * :c:data:`mo_bielec_integral_jj_anti` * :c:data:`mo_bielec_integral_jj_anti_from_ao` @@ -367,7 +333,6 @@ Index of Providers * :c:data:`mo_bielec_integral_vv_exchange_from_ao` * :c:data:`mo_bielec_integral_vv_from_ao` * :c:data:`mo_bielec_integrals_erf_in_map` -* :c:data:`mo_bielec_integrals_ijkl_r3_in_map` * :c:data:`mo_bielec_integrals_in_map` * :c:data:`mo_class` * :c:data:`mo_coef` @@ -388,10 +353,6 @@ Index of Providers * :c:data:`mo_integrals_erf_cache_max` * :c:data:`mo_integrals_erf_cache_min` * :c:data:`mo_integrals_erf_map` -* :c:data:`mo_integrals_ijkl_r3_cache` -* :c:data:`mo_integrals_ijkl_r3_cache_max` -* :c:data:`mo_integrals_ijkl_r3_cache_min` -* :c:data:`mo_integrals_ijkl_r3_map` * :c:data:`mo_integrals_map` * :c:data:`mo_integrals_threshold` * :c:data:`mo_kinetic_integral` @@ -427,8 +388,6 @@ Index of Providers * :c:data:`mu_erf_dft` * :c:data:`n_act_orb` * :c:data:`n_aos_max` -* :c:data:`n_approx_svd_two_dm` -* :c:data:`n_approx_svd_two_dm_correl` * :c:data:`n_cas_bitmask` * :c:data:`n_core_inact_act_orb` * :c:data:`n_core_inact_orb` @@ -453,8 +412,6 @@ Index of Providers * :c:data:`n_int` * :c:data:`n_it_scf_max` * :c:data:`n_iter` -* :c:data:`n_max_approx_svd_two_dm` -* :c:data:`n_max_approx_svd_two_dm_correl` * :c:data:`n_occ_pattern` * :c:data:`n_points_final_grid` * :c:data:`n_points_grid_per_atom` @@ -493,11 +450,6 @@ Index of Providers * :c:data:`nucl_num` * :c:data:`nucl_num_shell_aos` * :c:data:`nuclear_repulsion` -* :c:data:`on_top_of_r` -* :c:data:`on_top_of_r_approx_svd` -* :c:data:`on_top_of_r_approx_svd_correl` -* :c:data:`on_top_of_r_exact` -* :c:data:`on_top_of_r_vector` * :c:data:`one_body_dm_alpha_ao_for_dft` * :c:data:`one_body_dm_alpha_at_r` * :c:data:`one_body_dm_ao_alpha` @@ -528,7 +480,6 @@ Index of Providers * :c:data:`one_dm_beta_in_r` * :c:data:`one_electron_energy` * :c:data:`only_expected_s2` -* :c:data:`ontop_approx` * :c:data:`output_cpu_time_0` * :c:data:`output_wall_time_0` * :c:data:`overlap_gaussian_xyz` @@ -621,9 +572,7 @@ Index of Providers * :c:data:`psi_dft_energy_nuclear_elec` * :c:data:`psi_energy` * :c:data:`psi_energy_bielec` -* :c:data:`psi_energy_erf` * :c:data:`psi_energy_h_core` -* :c:data:`psi_energy_h_core_and_sr_hartree` * :c:data:`psi_energy_with_nucl_rep` * :c:data:`psi_non_cas` * :c:data:`psi_non_cas_coef` @@ -656,17 +605,11 @@ Index of Providers * :c:data:`pt2_w_t` * :c:data:`qp_max_mem` * :c:data:`qp_run_address` -* :c:data:`r_vec_approx_svd_two_dm` -* :c:data:`r_vec_approx_svd_two_dm_at_r` -* :c:data:`r_vec_approx_svd_two_dm_at_r_correl` -* :c:data:`r_vec_approx_svd_two_dm_correl` * :c:data:`read_ao_integrals` * :c:data:`read_ao_integrals_erf` -* :c:data:`read_ao_integrals_ijkl_r3` * :c:data:`read_ao_one_integrals` * :c:data:`read_mo_integrals` * :c:data:`read_mo_integrals_erf` -* :c:data:`read_mo_integrals_ijkl_r3` * :c:data:`read_mo_one_integrals` * :c:data:`read_wf` * :c:data:`rec__quicksort` @@ -676,7 +619,6 @@ Index of Providers * :c:data:`rec_i_quicksort` * :c:data:`ref_bitmask` * :c:data:`ref_bitmask_energy` -* :c:data:`ref_bitmask_energy_erf` * :c:data:`ref_closed_shell_bitmask` * :c:data:`reunion_of_bitmask` * :c:data:`reunion_of_cas_inact_bitmask` @@ -719,7 +661,6 @@ Index of Providers * :c:data:`state_following` * :c:data:`target_energy` * :c:data:`theta_angular_integration_lebedev` -* :c:data:`thr_ontop_approx` * :c:data:`thresh_scf` * :c:data:`threshold_davidson` * :c:data:`threshold_diis` @@ -731,14 +672,10 @@ Index of Providers * :c:data:`trace_v_hxc` * :c:data:`trace_v_xc` * :c:data:`transpose` -* :c:data:`two_bod_alpha_beta_mo` -* :c:data:`two_bod_alpha_beta_mo_physicist` -* :c:data:`two_elec_energy_dft` * :c:data:`two_electron_energy` * :c:data:`unpaired_alpha_electrons` * :c:data:`used_weight` * :c:data:`var_pt2_ratio` -* :c:data:`var_rsdft_energy` * :c:data:`virt_bitmask` * :c:data:`virt_bitmask_4` * :c:data:`weight_at_r` @@ -747,11 +684,9 @@ Index of Providers * :c:data:`weights_angular_points` * :c:data:`write_ao_integrals` * :c:data:`write_ao_integrals_erf` -* :c:data:`write_ao_integrals_ijkl_r3` * :c:data:`write_ao_one_integrals` * :c:data:`write_mo_integrals` * :c:data:`write_mo_integrals_erf` -* :c:data:`write_mo_integrals_ijkl_r3` * :c:data:`write_mo_one_integrals` * :c:data:`zmq_context` * :c:data:`zmq_lock` @@ -774,7 +709,6 @@ Index of Subroutines/Functions * :c:func:`ac_operator_bielec` * :c:func:`add_integrals_to_map` * :c:func:`add_integrals_to_map_erf` -* :c:func:`add_integrals_to_map_ijkl_r3` * :c:func:`add_integrals_to_map_no_exit_34` * :c:func:`add_integrals_to_map_three_indices` * :c:func:`add_poly` @@ -783,17 +717,12 @@ Index of Subroutines/Functions * :c:func:`add_to_selection_buffer` * :c:func:`ao_bielec_integral` * :c:func:`ao_bielec_integral_erf` -* :c:func:`ao_bielec_integral_ijkl_r3` * :c:func:`ao_bielec_integral_schwartz_accel` * :c:func:`ao_bielec_integral_schwartz_accel_erf` * :c:func:`ao_bielec_integrals_erf_in_map_collector` * :c:func:`ao_bielec_integrals_erf_in_map_slave` * :c:func:`ao_bielec_integrals_erf_in_map_slave_inproc` * :c:func:`ao_bielec_integrals_erf_in_map_slave_tcp` -* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_collector` -* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_slave` -* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_slave_inproc` -* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_slave_tcp` * :c:func:`ao_bielec_integrals_in_map_collector` * :c:func:`ao_bielec_integrals_in_map_slave` * :c:func:`ao_bielec_integrals_in_map_slave_inproc` @@ -826,90 +755,31 @@ Index of Subroutines/Functions * :c:func:`broadcast_chunks_integer` * :c:func:`broadcast_chunks_integer8` * :c:func:`build_fock_tmp` -* :c:func:`c2_delta` -* :c:func:`c3t_delta` -* :c:func:`c4_delta` -* :c:func:`c5_delta` -* :c:func:`c5t_delta` -* :c:func:`capital_c4_delta` * :c:func:`cell_function_becke` * :c:func:`check_coherence_functional` * :c:func:`check_mem` * :c:func:`cis` * :c:func:`cisd` * :c:func:`clear_ao_erf_map` -* :c:func:`clear_ao_ijkl_r3_map` * :c:func:`clear_ao_map` * :c:func:`clear_bit_to_integer` * :c:func:`clear_mo_erf_map` -* :c:func:`clear_mo_ijkl_r3_map` * :c:func:`clear_mo_map` * :c:func:`compute_ao_bielec_integrals` * :c:func:`compute_ao_bielec_integrals_erf` -* :c:func:`compute_ao_bielec_integrals_ijkl_r3` * :c:func:`compute_ao_integrals_erf_jl` -* :c:func:`compute_ao_integrals_ijkl_r3_jl` * :c:func:`compute_ao_integrals_jl` * :c:func:`connect_to_taskserver` * :c:func:`connected_to_ref` * :c:func:`connected_to_ref_by_mono` * :c:func:`copy_h_apply_buffer_to_wf` * :c:func:`copy_psi_bilinear_to_psi` -* :c:func:`correction_to_on_top_from_ueg` * :c:func:`create_guess` * :c:func:`create_microlist` * :c:func:`create_minilist` * :c:func:`create_minilist_find_previous` * :c:func:`create_selection_buffer` * :c:func:`create_wf_of_psi_bilinear_matrix` -* :c:func:`d0delta` -* :c:func:`d2_delta` -* :c:func:`d3_delta` -* :c:func:`d_1st_deltaterm` -* :c:func:`d_2nd_deltaterm` -* :c:func:`d_3rd_deltaterm` -* :c:func:`d_4th_deltaterm` -* :c:func:`d_5th_deltaterm` -* :c:func:`d_c2_delta` -* :c:func:`d_c3t_delta` -* :c:func:`d_c4_delta` -* :c:func:`d_c5_delta` -* :c:func:`d_c5t_delta` -* :c:func:`d_capital_c4_delta` -* :c:func:`d_d0delta` -* :c:func:`d_d2_delta` -* :c:func:`d_d3_delta` -* :c:func:`d_delta_2` -* :c:func:`d_delta_3` -* :c:func:`d_delta_4` -* :c:func:`d_delta_5` -* :c:func:`d_delta_6` -* :c:func:`d_delta_barth` -* :c:func:`d_denominator_delta` -* :c:func:`d_total_deltarho_rhoa` -* :c:func:`d_total_deltarho_rhob` -* :c:func:`d_wignerseitz_radius` -* :c:func:`d_xi_1st_deltaterm` -* :c:func:`d_xi_2nd_deltaterm` -* :c:func:`d_xi_3rd_deltaterm` -* :c:func:`d_xi_4th_deltaterm` -* :c:func:`d_xi_5th_deltaterm` -* :c:func:`d_xi_c2_delta` -* :c:func:`d_xi_c3t_delta` -* :c:func:`d_xi_c4_delta` -* :c:func:`d_xi_c5_delta` -* :c:func:`d_xi_c5t_delta` -* :c:func:`d_xi_capital_c4_delta` -* :c:func:`d_xi_d0delta` -* :c:func:`d_xi_delta_3` -* :c:func:`d_xi_delta_4` -* :c:func:`d_xi_delta_5` -* :c:func:`d_xi_delta_6` -* :c:func:`d_xi_delta_barth` -* :c:func:`d_xi_denominator_delta` -* :c:func:`d_xi_phi_8_delta` -* :c:func:`d_xi_rhoa` -* :c:func:`d_xi_rhob` * :c:func:`damping_scf` * :c:func:`davidson_collector` * :c:func:`davidson_converged` @@ -932,31 +802,18 @@ Index of Subroutines/Functions * :c:func:`decode_exc` * :c:func:`decode_exc_spin` * :c:func:`delete_selection_buffer` -* :c:func:`delta_2` -* :c:func:`delta_3` -* :c:func:`delta_4` -* :c:func:`delta_5` -* :c:func:`delta_6` -* :c:func:`delta_barth` -* :c:func:`delta_lrsr_ldaerf` -* :c:func:`denominator_delta` * :c:func:`density_and_grad_alpha_beta_and_all_aos_and_grad_aos_at_r` * :c:func:`derivative_knowles_function` * :c:func:`det_inf` * :c:func:`det_search_key` * :c:func:`detcmp` * :c:func:`deteq` -* :c:func:`dft_utils_ecmd` -* :c:func:`dft_utils_two_body_main` * :c:func:`diag_h_mat_elem` * :c:func:`diag_h_mat_elem_au0_h_au0` -* :c:func:`diag_h_mat_elem_erf` * :c:func:`diag_h_mat_elem_fock` * :c:func:`diag_h_mat_elem_monoelec` * :c:func:`diag_s_mat_elem` * :c:func:`diag_wee_mat_elem` -* :c:func:`diagonal_contrib_to_all_two_body_dm` -* :c:func:`diagonal_contrib_to_two_body_ab_dm` * :c:func:`diagonalize_ci` * :c:func:`diagonalize_h` * :c:func:`disconnect_from_taskserver` @@ -972,9 +829,7 @@ Index of Subroutines/Functions * :c:func:`dsort` * :c:func:`dump_ao_integrals` * :c:func:`dump_ao_integrals_erf` -* :c:func:`dump_ao_integrals_ijkl_r3` * :c:func:`dump_mo_integrals` -* :c:func:`dump_mo_integrals_ijkl_r3` * :c:func:`ec_lda` * :c:func:`ec_lda_sr` * :c:func:`ec_only_lda_sr` @@ -991,8 +846,6 @@ Index of Subroutines/Functions * :c:func:`erf0` * :c:func:`eri` * :c:func:`eri_erf` -* :c:func:`esrc_md_ldaerf` -* :c:func:`esrc_md_ldaerf_barth` * :c:func:`ex_lda` * :c:func:`ex_lda_sr` * :c:func:`ex_pbe_sr` @@ -1014,12 +867,9 @@ Index of Subroutines/Functions * :c:func:`filter_not_connected` * :c:func:`find_rotation` * :c:func:`four_idx_transform` -* :c:func:`g0_ueg_mu` -* :c:func:`g0_ueg_mu_inf` * :c:func:`g0d` * :c:func:`g0dd` * :c:func:`g0f` -* :c:func:`g0s` * :c:func:`gammln` * :c:func:`gammp` * :c:func:`gauleg` @@ -1047,15 +897,11 @@ Index of Subroutines/Functions * :c:func:`get_all_spin_singles_n_int` * :c:func:`get_ao_bielec_integral` * :c:func:`get_ao_bielec_integral_erf` -* :c:func:`get_ao_bielec_integral_ijkl_r3` * :c:func:`get_ao_bielec_integrals` * :c:func:`get_ao_bielec_integrals_erf` * :c:func:`get_ao_bielec_integrals_erf_non_zero` -* :c:func:`get_ao_bielec_integrals_ijkl_r3` -* :c:func:`get_ao_bielec_integrals_ijkl_r3_non_zero` * :c:func:`get_ao_bielec_integrals_non_zero` * :c:func:`get_ao_erf_map_size` -* :c:func:`get_ao_ijkl_r3_map_size` * :c:func:`get_ao_map_size` * :c:func:`get_d0` * :c:func:`get_d1` @@ -1081,7 +927,6 @@ Index of Subroutines/Functions * :c:func:`get_mask_phase` * :c:func:`get_mo_bielec_integral` * :c:func:`get_mo_bielec_integral_erf` -* :c:func:`get_mo_bielec_integral_ijkl_r3` * :c:func:`get_mo_bielec_integrals` * :c:func:`get_mo_bielec_integrals_coulomb_ii` * :c:func:`get_mo_bielec_integrals_erf` @@ -1092,12 +937,7 @@ Index of Subroutines/Functions * :c:func:`get_mo_bielec_integrals_exch_ii` * :c:func:`get_mo_bielec_integrals_i1j1` * :c:func:`get_mo_bielec_integrals_ij` -* :c:func:`get_mo_bielec_integrals_ijkl_r3` -* :c:func:`get_mo_bielec_integrals_ijkl_r3_coulomb_ii` -* :c:func:`get_mo_bielec_integrals_ijkl_r3_exch_ii` -* :c:func:`get_mo_bielec_integrals_ijkl_r3_ij` * :c:func:`get_mo_erf_map_size` -* :c:func:`get_mo_ijkl_r3_map_size` * :c:func:`get_mo_map_size` * :c:func:`get_mono_excitation` * :c:func:`get_mono_excitation_from_fock` @@ -1120,8 +960,6 @@ Index of Subroutines/Functions * :c:func:`give_all_mos_and_grad_and_lapl_at_r` * :c:func:`give_all_mos_and_grad_at_r` * :c:func:`give_all_mos_at_r` -* :c:func:`give_epsilon_c_md_on_top_pbe_mu_corrected_from_two_dm` -* :c:func:`give_epsilon_c_md_on_top_pbe_mu_corrected_ueg_from_two_dm` * :c:func:`give_explicit_poly_and_gaussian` * :c:func:`give_explicit_poly_and_gaussian_double` * :c:func:`give_explicit_poly_and_gaussian_x` @@ -1132,7 +970,6 @@ Index of Subroutines/Functions * :c:func:`gpw` * :c:func:`grad_rho_ab_to_grad_rho_oc` * :c:func:`gser` -* :c:func:`h` * :c:func:`h_apply_cis` * :c:func:`h_apply_cis_diexc` * :c:func:`h_apply_cis_diexcorg` @@ -1150,13 +987,6 @@ Index of Subroutines/Functions * :c:func:`h_s2_u_0_bielec_nstates_openmp_work_3` * :c:func:`h_s2_u_0_bielec_nstates_openmp_work_4` * :c:func:`h_s2_u_0_bielec_nstates_openmp_work_n_int` -* :c:func:`h_s2_u_0_erf_nstates_openmp` -* :c:func:`h_s2_u_0_erf_nstates_openmp_work` -* :c:func:`h_s2_u_0_erf_nstates_openmp_work_1` -* :c:func:`h_s2_u_0_erf_nstates_openmp_work_2` -* :c:func:`h_s2_u_0_erf_nstates_openmp_work_3` -* :c:func:`h_s2_u_0_erf_nstates_openmp_work_4` -* :c:func:`h_s2_u_0_erf_nstates_openmp_work_n_int` * :c:func:`h_s2_u_0_nstates_openmp` * :c:func:`h_s2_u_0_nstates_openmp_work` * :c:func:`h_s2_u_0_nstates_openmp_work_1` @@ -1177,8 +1007,6 @@ Index of Subroutines/Functions * :c:func:`heap_sort` * :c:func:`heap_sort_big` * :c:func:`hermite` -* :c:func:`hf_two_body_dm_aa` -* :c:func:`hf_two_body_dm_aa_spherical_laplacian` * :c:func:`huckel_guess` * :c:func:`i2set_order` * :c:func:`i2set_order_big` @@ -1189,12 +1017,8 @@ Index of Subroutines/Functions * :c:func:`i_h_j` * :c:func:`i_h_j_bielec` * :c:func:`i_h_j_double_alpha_beta` -* :c:func:`i_h_j_double_alpha_beta_erf` * :c:func:`i_h_j_double_spin` -* :c:func:`i_h_j_double_spin_erf` -* :c:func:`i_h_j_erf` * :c:func:`i_h_j_mono_spin` -* :c:func:`i_h_j_mono_spin_erf` * :c:func:`i_h_j_mono_spin_monoelec` * :c:func:`i_h_j_monoelec` * :c:func:`i_h_j_s2` @@ -1207,7 +1031,6 @@ Index of Subroutines/Functions * :c:func:`initialize_bitmask_to_restart_ones` * :c:func:`initialize_mo_coef_begin_iteration` * :c:func:`insert_into_ao_integrals_erf_map` -* :c:func:`insert_into_ao_integrals_ijkl_r3_map` * :c:func:`insert_into_ao_integrals_map` * :c:func:`insertion_dsort` * :c:func:`insertion_dsort_big` @@ -1220,7 +1043,6 @@ Index of Subroutines/Functions * :c:func:`insertion_sort` * :c:func:`insertion_sort_big` * :c:func:`int_gaus_pol` -* :c:func:`integral_bourrin_mo` * :c:func:`integrale_new` * :c:func:`integrale_new_erf` * :c:func:`is_a_1h` @@ -1248,10 +1070,8 @@ Index of Subroutines/Functions * :c:func:`list_to_bitstring` * :c:func:`load_ao_integrals` * :c:func:`load_ao_integrals_erf` -* :c:func:`load_ao_integrals_ijkl_r3` * :c:func:`load_mo_integrals` * :c:func:`load_mo_integrals_erf` -* :c:func:`load_mo_integrals_ijkl_r3` * :c:func:`logfact` * :c:func:`lowercase` * :c:func:`make_s2_eigenfunction` @@ -1267,9 +1087,7 @@ Index of Subroutines/Functions * :c:func:`mo_as_svd_vectors_of_mo_matrix_eig` * :c:func:`mo_bielec_integral` * :c:func:`mo_bielec_integral_erf` -* :c:func:`mo_bielec_integral_ijkl_r3` * :c:func:`mo_bielec_integrals_erf_index` -* :c:func:`mo_bielec_integrals_ijkl_r3_index` * :c:func:`mo_bielec_integrals_index` * :c:func:`mo_to_ao` * :c:func:`modify_bitmasks_for_hole` @@ -1298,13 +1116,6 @@ Index of Subroutines/Functions * :c:func:`occ_pattern_search_key` * :c:func:`occ_pattern_to_dets` * :c:func:`occ_pattern_to_dets_size` -* :c:func:`off_diagonal_double_to_two_body_ab_dm` -* :c:func:`off_diagonal_single_to_two_body_ab_dm` -* :c:func:`on_top_of_r_approx_svd_correl_function` -* :c:func:`on_top_of_r_approx_svd_function` -* :c:func:`on_top_of_r_from_provider` -* :c:func:`on_top_two_dm_in_r_mu_corrected_from_two_dm` -* :c:func:`on_top_two_dm_in_r_mu_corrected_ueg_from_two_dm` * :c:func:`ortho_canonical` * :c:func:`ortho_lowdin` * :c:func:`ortho_qr` @@ -1336,11 +1147,8 @@ Index of Subroutines/Functions * :c:func:`perturb_buffer_moller_plesset` * :c:func:`perturb_buffer_moller_plesset_general` * :c:func:`perturb_buffer_qdpt` -* :c:func:`phi_8_delta` -* :c:func:`pouet` * :c:func:`primitive_value` * :c:func:`print_det` -* :c:func:`print_ecmd_var_energy` * :c:func:`print_extrapolated_energy` * :c:func:`print_generators_bitmasks_holes` * :c:func:`print_generators_bitmasks_holes_for_one_generator` @@ -1349,10 +1157,8 @@ Index of Subroutines/Functions * :c:func:`print_memory_usage` * :c:func:`print_spindet` * :c:func:`print_summary` -* :c:func:`print_variational_energy_dft` * :c:func:`print_wf` * :c:func:`provide_all_mo_integrals_erf` -* :c:func:`provide_all_mo_integrals_ijkl_r3` * :c:func:`provide_everything` * :c:func:`pt2` * :c:func:`pt2_collector` @@ -1404,9 +1210,6 @@ Index of Subroutines/Functions * :c:func:`roothaan_hall_scf` * :c:func:`routine` * :c:func:`routine_example_psi_det` -* :c:func:`routine_print` -* :c:func:`routines_compute_energy` -* :c:func:`routines_write_int` * :c:func:`run` * :c:func:`run_pt2_slave` * :c:func:`run_selection_slave` @@ -1424,7 +1227,6 @@ Index of Subroutines/Functions * :c:func:`save_natorb` * :c:func:`save_natural_mos` * :c:func:`save_one_body_dm` -* :c:func:`save_one_e_effective_potential` * :c:func:`save_ortho_mos` * :c:func:`save_ref_determinant` * :c:func:`save_wavefunction` @@ -1455,8 +1257,6 @@ Index of Subroutines/Functions * :c:func:`sorted_i8number` * :c:func:`sorted_inumber` * :c:func:`sorted_number` -* :c:func:`spherical_averaged_two_dm_at_second_order` -* :c:func:`spherical_averaged_two_dm_hf_at_second_order` * :c:func:`spin_det_search_key` * :c:func:`splash_pq` * :c:func:`spot_isinwf` @@ -1469,17 +1269,8 @@ Index of Subroutines/Functions * :c:func:`tasks_done_to_taskserver` * :c:func:`testteethbuilding` * :c:func:`total_memory` -* :c:func:`two_body_dm_nstates_openmp` -* :c:func:`two_body_dm_nstates_openmp_work` -* :c:func:`two_body_dm_nstates_openmp_work_1` -* :c:func:`two_body_dm_nstates_openmp_work_2` -* :c:func:`two_body_dm_nstates_openmp_work_3` -* :c:func:`two_body_dm_nstates_openmp_work_4` -* :c:func:`two_body_dm_nstates_openmp_work_n_int` -* :c:func:`two_dm_in_r` * :c:func:`u_0_h_u_0` * :c:func:`u_0_h_u_0_bielec` -* :c:func:`u_0_h_u_0_erf` * :c:func:`u_0_s2_u_0` * :c:func:`u_dot_u` * :c:func:`u_dot_v` @@ -1497,13 +1288,9 @@ Index of Subroutines/Functions * :c:func:`wall_time` * :c:func:`wallis` * :c:func:`wf_of_psi_bilinear_matrix` -* :c:func:`wignerseitz_radius` -* :c:func:`write_2_body_dm_fci_dump` -* :c:func:`write_all_integrals_for_mrdft` * :c:func:`write_ao_basis` * :c:func:`write_bool` * :c:func:`write_double` -* :c:func:`write_effective_rsdft_hamiltonian` * :c:func:`write_geometry` * :c:func:`write_git_log` * :c:func:`write_int` diff --git a/docs/source/users_guide/quickstart.rst b/docs/source/users_guide/quickstart.rst index afc0136e..8175d7db 100644 --- a/docs/source/users_guide/quickstart.rst +++ b/docs/source/users_guide/quickstart.rst @@ -75,19 +75,29 @@ The expected energy is ``-92.827856698`` au. The documentation of the :ref:`hartree_fock` module. +This creates the |MOs| in the |EZFIO| database that will be used to perform any other post-SCF method. +The |qp| does not handle symmetry and the |MOs| are stored by increasing order of Fock energies. Choose the target |MO| space ---------------------------- Now, modify to |EZFIO| database to make |CIPSI| calculation in the full set of valence |MOs|, keeping the core |MOs| frozen. The simple -command :command:`qp_set_frozen_core` does this automatically: +command :ref:`qp_set_frozen_core` does this automatically: .. code:: bash qp_set_frozen_core hcn +The general command to specify core and active orbitals is :ref:`qp_set_frozen_core`. In the case of HCN molecule in the 631G basis, one has 20 |MOs| in total and the two first orbitals to freeze: + +.. code:: + + qp_set_mo_class -core "[1-2]" -act "[3-20]" hcn + + + Run the |CIPSI| calculation ---------------------------- @@ -118,6 +128,45 @@ The estimated |FCI| energy of HCN is ``-93.0501`` au. The documentation of the :ref:`fci` module. +Extracting natural orbitals +--------------------------- + +Once obtained the near |FCI| wave function, one can obtain many quantities related to it. One of these quantities are the natural orbitals which have the properties of making diagonal the one-body density matrix: + + .. math:: + + \rho_{ij} = \delta_{ij} + +where the element of the one-body density matrix :math:`\rho_{ij}` is define as: + + + .. math:: + + \rho_{ij} = \langle \Psi | \left( a^{\dagger}_{j,\alpha} a_{i,\alpha} + a^{\dagger}_{j,\beta} a_{i,\beta} \right) | \Psi \rangle + + +These orbitals are in general known to be better than the usual |RHF| |MOs| as they are obtained from a correlated wave function. To use these orbitals for future calculations, one has to replace the current |MOs| by the natural orbitals. To do so, just run: + +.. code:: + + qp_run save_natorb hcn + + + +Printing the near |FCI| wave function +------------------------------------- + +Once obtained the near |FCI| energy, one can also take a closer look at the wave function stored in the |EZFIO| database. +If the wave function contains less than :math:`10^4` determinants, you can directly read it with the :ref:`qp_edit` command. Just run + + + + +The Range Separated Hybrids +--------------------------- + +One can also starts the |FCI| calculation with another type of |MOs|, for instance the + .. important:: TODO diff --git a/plugins/garniron/mrcepa0/mrcepa0.bats b/plugins/garniron/mrcepa0/test_mrcepa0 similarity index 100% rename from plugins/garniron/mrcepa0/mrcepa0.bats rename to plugins/garniron/mrcepa0/test_mrcepa0 diff --git a/scripts/qp_e_conv_fci b/scripts/qp_e_conv_fci new file mode 100755 index 00000000..dba4d782 --- /dev/null +++ b/scripts/qp_e_conv_fci @@ -0,0 +1,65 @@ +#!/bin/bash +file=$1 +out=${file}.conv + + Ndet=`grep "N_det =" $file | cut -d "=" -f 2` + Evar=`grep "E =" $file | cut -d "=" -f 2` + EPT2=`grep "E+rPT2 =" $file | cut -d "=" -f 2 | cut -d "+" -f 1` + err=`grep "E+rPT2 =" $file | cut -d "=" -f 2 | cut -d "+" -f 2 | cut -d "/" -f 2 | cut -d " " -f 5` + +Ndetarray=[] +j=0 +for i in $Ndet + do + Ndetarray[$j]=$i + let "j=j+1" +done +Nmax=${#Ndetarray[*]} +let "Nmax-=1" + + +Evararray=[] +j=0 +for i in $Evar + do + Evararray[$j]=$i + let "j=j+1" +done + + +EPT2array=[] +j=0 +for i in $EPT2 + do + EPT2array[$j]=$i + let "j=j+1" +done + + +errarray=[] +j=0 +for i in $err + do + errarray[$j]=$i + let "j=j+1" +done + + + + +echo "#Ndet E_var E+PT2 statistical error " > $out +for i in `seq 0 $Nmax` +do + echo ${Ndetarray[$i]} ${Evararray[$i]} ${EPT2array[$i]} ${errarray[$i]} >> $out +done + +cat << EOF > ${out}.plt +set term eps +set output "$out.eps" +set log x +set xlabel "Number of determinants" +set ylabel "Total Energy (a.u.)" + +plot "$out" w lp title "E_{var}", "$out" u 1:3:4 w errorlines title "E_{var} + PT2" + +EOF