From 22c5bea19881ffd20d99e0b499086803d0d3e785 Mon Sep 17 00:00:00 2001 From: Thomas Applencourt Date: Tue, 30 Jun 2015 10:10:38 +0200 Subject: [PATCH 1/2] Fix cleaning module bug --- plugins/CAS_SD/README.rst | 10 ++-- plugins/Full_CI/README.rst | 46 ++++++++--------- plugins/MRCC/README.rst | 22 ++++---- plugins/Molden/.gitignore | 26 +++++----- plugins/Molden/tree_dependency.png | Bin 32081 -> 34857 bytes plugins/Perturbation/README.rst | 20 ++++---- scripts/compilation/qp_create_ninja.py | 4 +- scripts/module/module_handler.py | 5 +- src/Determinants/.gitignore | 1 - src/Determinants/README.rst | 2 +- src/Ezfio_files/README.rst | 68 +++++-------------------- src/Integrals_Monoelec/.gitignore | 1 - src/MOGuess/.gitignore | 1 - 13 files changed, 80 insertions(+), 126 deletions(-) diff --git a/plugins/CAS_SD/README.rst b/plugins/CAS_SD/README.rst index 92a4572b..f0fbbd17 100644 --- a/plugins/CAS_SD/README.rst +++ b/plugins/CAS_SD/README.rst @@ -34,24 +34,24 @@ Documentation Assume N_int is already provided. -`h_apply_cas_sd_pt2 `_ +`h_apply_cas_sd_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_cas_sd_pt2_diexc `_ +`h_apply_cas_sd_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_cas_sd_pt2_monoexc `_ +`h_apply_cas_sd_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_cas_sd_selected `_ +`h_apply_cas_sd_selected `_ 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. @@ -62,7 +62,7 @@ Documentation Assume N_int is already provided. -`h_apply_cas_sd_selected_monoexc `_ +`h_apply_cas_sd_selected_monoexc `_ Generate all single excitations of key_in using the bit masks of holes and particles. Assume N_int is already provided. diff --git a/plugins/Full_CI/README.rst b/plugins/Full_CI/README.rst index 64e44609..396fbcd6 100644 --- a/plugins/Full_CI/README.rst +++ b/plugins/Full_CI/README.rst @@ -14,7 +14,7 @@ Documentation Undocumented -`h_apply_fci `_ +`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. @@ -25,126 +25,126 @@ Documentation Assume N_int is already provided. -`h_apply_fci_mono `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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 `_ +`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. diff --git a/plugins/MRCC/README.rst b/plugins/MRCC/README.rst index 608b8f86..52d7a316 100644 --- a/plugins/MRCC/README.rst +++ b/plugins/MRCC/README.rst @@ -20,19 +20,19 @@ Documentation .. Do not edit this section. It was auto-generated from the .. by the `update_README.py` script. -`ci_eigenvectors_dressed `_ +`ci_eigenvectors_dressed `_ Eigenvectors/values of the CI matrix -`ci_eigenvectors_s2_dressed `_ +`ci_eigenvectors_s2_dressed `_ Eigenvectors/values of the CI matrix -`ci_electronic_energy_dressed `_ +`ci_electronic_energy_dressed `_ Eigenvectors/values of the CI matrix -`ci_energy_dressed `_ +`ci_energy_dressed `_ N_states lowest eigenvalues of the dressed CI matrix @@ -76,20 +76,20 @@ Documentation Initial guess vectors are not necessarily orthonormal -`delta_ij `_ +`delta_ij `_ Dressing matrix in N_det basis -`delta_ij_non_cas `_ +`delta_ij_non_cas `_ Dressing matrix in SD basis -`diagonalize_ci_dressed `_ +`diagonalize_ci_dressed `_ Replace the coefficients of the CI states by the coefficients of the eigenstates of the CI matrix -`dressing_type `_ +`dressing_type `_ [ Simple | MRCC ] @@ -131,7 +131,7 @@ Documentation Assume N_int is already provided. -`h_matrix_dressed `_ +`h_matrix_dressed `_ Dressed H with Delta_ij @@ -147,6 +147,10 @@ Documentation cm/ +`lambda_pert `_ + cm/ + + `mrcc `_ Undocumented diff --git a/plugins/Molden/.gitignore b/plugins/Molden/.gitignore index 71247b95..0bc5ada9 100644 --- a/plugins/Molden/.gitignore +++ b/plugins/Molden/.gitignore @@ -1,20 +1,18 @@ -# -# Do not modify this file. Add your ignored files to the gitignore -# (without the dot at the beginning) file. -# +# Automatically created by /home/razoa/quantum_package/scripts/module/module_handler.py IRPF90_temp IRPF90_man -irpf90.make -tags -Makefile.depend irpf90_entities -build.ninja +tags +irpf90.make +Makefile +Makefile.depend .ninja_log .ninja_deps -AOs -MOs -Electrons -Utils -Nuclei +ezfio_interface.irp.f Ezfio_files -print_mo +MO_Basis +Utils +AO_Basis +Electrons +Nuclei +print_mo \ No newline at end of file diff --git a/plugins/Molden/tree_dependency.png b/plugins/Molden/tree_dependency.png index d34387e57242463efc38172ec9f239fba96de84d..2b9ffd86fe9565e42d0954a2b604cc8efb51fca0 100644 GIT binary patch literal 34857 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 Sk@FP%V{U3?a$@4#&Ho2hW?&!y literal 32081 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 WY@9dGi!;&{PWB^}dxuY6_x}K{mEvyz diff --git a/plugins/Perturbation/README.rst b/plugins/Perturbation/README.rst index aad453e8..9162e94b 100644 --- a/plugins/Perturbation/README.rst +++ b/plugins/Perturbation/README.rst @@ -85,7 +85,7 @@ Documentation Undocumented -`perturb_buffer_by_mono_delta_rho_one_point `_ +`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. @@ -95,12 +95,12 @@ Documentation routine. -`perturb_buffer_by_mono_epstein_nesbet `_ +`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 `_ +`perturb_buffer_by_mono_epstein_nesbet_2x2 `_ Applly pertubration ``epstein_nesbet_2x2`` to the buffer of determinants generated in the H_apply routine. @@ -120,17 +120,17 @@ Documentation routine. -`perturb_buffer_by_mono_h_core `_ +`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 `_ +`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 `_ +`perturb_buffer_delta_rho_one_point `_ Applly pertubration ``delta_rho_one_point`` to the buffer of determinants generated in the H_apply routine. @@ -140,12 +140,12 @@ Documentation routine. -`perturb_buffer_epstein_nesbet `_ +`perturb_buffer_epstein_nesbet `_ Applly pertubration ``epstein_nesbet`` to the buffer of determinants generated in the H_apply routine. -`perturb_buffer_epstein_nesbet_2x2 `_ +`perturb_buffer_epstein_nesbet_2x2 `_ Applly pertubration ``epstein_nesbet_2x2`` to the buffer of determinants generated in the H_apply routine. @@ -165,12 +165,12 @@ Documentation routine. -`perturb_buffer_h_core `_ +`perturb_buffer_h_core `_ Applly pertubration ``h_core`` to the buffer of determinants generated in the H_apply routine. -`perturb_buffer_moller_plesset `_ +`perturb_buffer_moller_plesset `_ Applly pertubration ``moller_plesset`` to the buffer of determinants generated in the H_apply routine. diff --git a/scripts/compilation/qp_create_ninja.py b/scripts/compilation/qp_create_ninja.py index d9707dfb..21d84b39 100755 --- a/scripts/compilation/qp_create_ninja.py +++ b/scripts/compilation/qp_create_ninja.py @@ -737,7 +737,7 @@ def create_build_ninja_module(path_module): l_string += ["build dummy_target: update_build_ninja_root", "", "build all: make_all_binaries dummy_target", "", - "build local: make_local_binaries dummy_target", + "build local: make_local_binaries dummy_target", "", "default local", "", "build clean: make_clean dummy_target", ""] @@ -767,7 +767,7 @@ def create_build_ninja_global(l_module): "build all: make_all_binaries dummy_target", "default all", "", - "build clean: make_clean", + "build clean: make_clean dummy_target", "", ] path_ninja_cur = join(QP_ROOT, "build.ninja") diff --git a/scripts/module/module_handler.py b/scripts/module/module_handler.py index 8301e0b1..9e9f9e54 100755 --- a/scripts/module/module_handler.py +++ b/scripts/module/module_handler.py @@ -219,7 +219,7 @@ if __name__ == '__main__': for module in l_module: if not is_module(module): - print "{0} is not a volide module. Abort".format(module) + print "{0} is not a valide module. Abort".format(module) print "No NEEDED_CHILDREN_MODULES in it" sys.exit(1) @@ -237,8 +237,7 @@ if __name__ == '__main__': l_dir = ['IRPF90_temp', 'IRPF90_man'] l_file = ["irpf90_entities", "tags", "irpf90.make", - "Makefile", "Makefile.depend", - "build.ninja", ".ninja_log", ".ninja_deps", + "Makefile", "Makefile.depend", ".ninja_log", ".ninja_deps", "ezfio_interface.irp.f"] for module in l_module: diff --git a/src/Determinants/.gitignore b/src/Determinants/.gitignore index 06120dcd..15afac51 100644 --- a/src/Determinants/.gitignore +++ b/src/Determinants/.gitignore @@ -6,7 +6,6 @@ tags irpf90.make Makefile Makefile.depend -build.ninja .ninja_log .ninja_deps ezfio_interface.irp.f diff --git a/src/Determinants/README.rst b/src/Determinants/README.rst index 5af5e170..e44c6fcf 100644 --- a/src/Determinants/README.rst +++ b/src/Determinants/README.rst @@ -241,7 +241,7 @@ Documentation Computes -`diagonalize_ci `_ +`diagonalize_ci `_ Replace the coefficients of the CI states by the coefficients of the eigenstates of the CI matrix diff --git a/src/Ezfio_files/README.rst b/src/Ezfio_files/README.rst index 65ccb7e8..737f6d79 100644 --- a/src/Ezfio_files/README.rst +++ b/src/Ezfio_files/README.rst @@ -38,95 +38,51 @@ Documentation Output file for Bitmask -`output_cas_sd `_ - Output file for CAS_SD - - -`output_cid `_ - Output file for CID - - -`output_cid_sc2_selected `_ - Output file for CID_SC2_selected - - -`output_cid_selected `_ - Output file for CID_selected - - `output_cpu_time_0 `_ Initial CPU and wall times when printing in the output files -`output_determinants `_ +`output_determinants `_ Output file for Determinants -`output_electrons `_ +`output_electrons `_ Output file for Electrons -`output_ezfio_files `_ +`output_ezfio_files `_ Output file for Ezfio_files -`output_generators_cas `_ - Output file for Generators_CAS - - -`output_generators_full `_ - Output file for Generators_full - - -`output_hartree_fock `_ - Output file for Hartree_Fock - - -`output_integrals_bielec `_ +`output_integrals_bielec `_ Output file for Integrals_Bielec -`output_integrals_monoelec `_ +`output_integrals_monoelec `_ Output file for Integrals_Monoelec -`output_mo_basis `_ +`output_mo_basis `_ Output file for MO_Basis -`output_moguess `_ +`output_moguess `_ Output file for MOGuess -`output_mrcc `_ - Output file for MRCC +`output_molden `_ + Output file for Molden -`output_nuclei `_ +`output_nuclei `_ Output file for Nuclei -`output_perturbation `_ - Output file for Perturbation - - -`output_properties `_ - Output file for Properties - - -`output_pseudo `_ +`output_pseudo `_ Output file for Pseudo -`output_selectors_full `_ - Output file for Selectors_full - - -`output_singlerefmethod `_ - Output file for SingleRefMethod - - -`output_utils `_ +`output_utils `_ Output file for Utils diff --git a/src/Integrals_Monoelec/.gitignore b/src/Integrals_Monoelec/.gitignore index 6a1ebe1f..c30e4619 100644 --- a/src/Integrals_Monoelec/.gitignore +++ b/src/Integrals_Monoelec/.gitignore @@ -6,7 +6,6 @@ tags irpf90.make Makefile Makefile.depend -build.ninja .ninja_log .ninja_deps ezfio_interface.irp.f diff --git a/src/MOGuess/.gitignore b/src/MOGuess/.gitignore index e57e3bac..105b5526 100644 --- a/src/MOGuess/.gitignore +++ b/src/MOGuess/.gitignore @@ -6,7 +6,6 @@ tags irpf90.make Makefile Makefile.depend -build.ninja .ninja_log .ninja_deps ezfio_interface.irp.f From 9a1f83d1b89d1dadff82fd01d173b575a5ef8e5f Mon Sep 17 00:00:00 2001 From: Thomas Applencourt Date: Tue, 30 Jun 2015 10:34:28 +0200 Subject: [PATCH 2/2] Simplify qp_create_ninja and beter debug in module_handler --- scripts/compilation/qp_create_ninja.py | 18 ++++++++++-------- scripts/module/module_handler.py | 10 +++++++--- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/scripts/compilation/qp_create_ninja.py b/scripts/compilation/qp_create_ninja.py index 21d84b39..ad421858 100755 --- a/scripts/compilation/qp_create_ninja.py +++ b/scripts/compilation/qp_create_ninja.py @@ -333,7 +333,7 @@ def ninja_gitignore_rule(): " description = Create gitignore for $module_rel", ""] -def ninja_gitignore_build(path_module, l_symlink, d_binaries): +def ninja_gitignore_build(path_module, d_binaries): """ """ @@ -342,9 +342,9 @@ def ninja_gitignore_build(path_module, l_symlink, d_binaries): l_b = [i.abs for i in d_binaries[path_module]] l_sym = [i.destination for i in l_symlink] - l_string = ["build {0}: build_gitignore {1} || {2}".format(path_gitignore, - " ".join(l_b), - " ".join(l_sym)), + l_string = ["build {0}: build_gitignore {1} || l_symlink_{2}".format(path_gitignore, + " ".join(l_b), + path_module.rel), " module_rel = {0}".format(path_module.rel), ""] @@ -519,10 +519,12 @@ def ninja_readme_build(path_module, d_irp, dict_root_path): path_readme = join(path_module.abs, "README.rst") root_module = dict_root_path[module] - l_depend = d_irp[path_module]["l_depend"] + [join(root_module.abs, "tags")] + tags = join(root_module.abs, "tags") + tree = join(root_module.abs, "tree_dependency.png") - l_string = ["build {0}: build_readme {1}".format(path_readme, - " ".join(l_depend)), + l_string = ["build {0}: build_readme {1} {2}".format(path_readme, + tags, + tree), " module_root = {0}".format(root_module.abs), " module_abs = {0}".format(path_module.abs), " module_rel = {0}".format(path_module.rel), ""] @@ -903,7 +905,7 @@ if __name__ == "__main__": l_string += ninja_binaries_build(module_to_compile, l_children, d_binaries) - l_string += ninja_gitignore_build(module_to_compile, l_symlink, d_binaries) + l_string += ninja_gitignore_build(module_to_compile, d_binaries) with open(join(QP_ROOT, "config", "build.ninja"), "w+") as f: f.write(header) diff --git a/scripts/module/module_handler.py b/scripts/module/module_handler.py index 9e9f9e54..10151a1f 100755 --- a/scripts/module/module_handler.py +++ b/scripts/module/module_handler.py @@ -85,7 +85,7 @@ def get_l_module_descendant(d_child, l_module): except KeyError: print >> sys.stderr, "`{0}` not submodule".format(module) print >> sys.stderr, "Check the corresponding NEEDED_CHILDREN_MODULES" - sys.exit(1) + raise return list(set(l)) @@ -123,8 +123,12 @@ class ModuleHandler(): d_child = self.dict_child for module_name in d_child: - d[module_name] = get_l_module_descendant(d_child, - d_child[module_name]) + try : + d[module_name] = get_l_module_descendant(d_child, + d_child[module_name]) + except KeyError: + print "Check NEEDED_CHILDREN_MODULES for {0}".format(module_name) + sys.exit(1) return d