Modifs de bases -> fonctionne

This commit is contained in:
Yann Damour 2020-05-22 23:32:54 +02:00
parent 25bde06f12
commit 1fcf7d2e98
3 changed files with 61 additions and 68 deletions

View File

@ -246,39 +246,6 @@
"5 0.2430767471E+00 0.4164915298E+00\n",
"6 0.1001124280E+00 0.1303340841E+00\n",
"\"\n",
"(*\n",
"CARBON\n",
"S 6\n",
"1 0.7427370491E+03 0.9163596281E-02\n",
"2 0.1361800249E+03 0.4936149294E-01\n",
"3 0.3809826352E+02 0.1685383049E+00\n",
"4 0.1308778177E+02 0.3705627997E+00\n",
"5 0.5082368648E+01 0.4164915298E+00\n",
"6 0.2093200076E+01 0.1303340841E+00\n",
"L 6\n",
"1 0.3049723950E+02 -0.1325278809E-01 0.3759696623E-02\n",
"2 0.6036199601E+01 -0.4699171014E-01 0.3767936984E-01\n",
"3 0.1876046337E+01 -0.3378537151E-01 0.1738967435E+00\n",
"4 0.7217826470E+00 0.2502417861E+00 0.4180364347E+00\n",
"5 0.3134706954E+00 0.5951172526E+00 0.4258595477E+00\n",
"6 0.1436865550E+00 0.2407061763E+00 0.1017082955E+00\n",
"\n",
"NITROGEN\n",
"S 6\n",
"1 0.1027828458E+04 0.9163596281E-02\n",
"2 0.1884512226E+03 0.4936149294E-01\n",
"3 0.5272186097E+02 0.1685383049E+00\n",
"4 0.1811138217E+02 0.3705627997E+00\n",
"5 0.7033179691E+01 0.4164915298E+00\n",
"6 0.2896651794E+01 0.1303340841E+00\n",
"L 6\n",
"1 0.3919880787E+02 -0.1325278809E-01 0.3759696623E-02\n",
"2 0.7758467071E+01 -0.4699171014E-01 0.3767936984E-01\n",
"3 0.2411325783E+01 -0.3378537151E-01 0.1738967435E+00\n",
"4 0.9277239437E+00 0.2502417861E+00 0.4180364347E+00\n",
"5 0.4029111410E+00 0.5951172526E+00 0.4258595477E+00\n",
"6 0.1846836552E+00 0.2407061763E+00 0.1017082955E+00\n",
"*)\n",
"\n",
"\n",
"(*\n",

View File

@ -96,8 +96,8 @@
"(* 2. Base atomique -> 6-31G *)\n",
"\n",
"let basis_string = \n",
"\n",
"\"HYDROGEN\n",
"\"\n",
"HYDROGEN\n",
"S 3\n",
"1 0.1873113696E+02 0.3349460434E-01\n",
"2 0.2825394365E+01 0.2347269535E+00\n",
@ -113,12 +113,18 @@
"4 0.2921015530E+02 0.2321844432E+00\n",
"5 0.9286662960E+01 0.4679413484E+00\n",
"6 0.3163926960E+01 0.3623119853E+00\n",
"L 3\n",
"1 0.7868272350E+01 -0.1193324198E+00 0.6899906659E-01\n",
"2 0.1881288540E+01 -0.1608541517E+00 0.3164239610E+00\n",
"3 0.5442492580E+00 0.1143456438E+01 0.7443082909E+00\n",
"L 1\n",
"1 0.1687144782E+00 0.1000000000E+01 0.1000000000E+01\n",
"S 3\n",
"1 0.7868272350E+01 -0.1193324198E+00\n",
"2 0.1881288540E+01 -0.1608541517E+00\n",
"3 0.5442492580E+00 0.1143456438E+01\n",
"S 1\n",
"1 0.1687144782E+00 0.1000000000E+01\n",
"P 3\n",
"1 0.7868272350E+01 0.6899906659E-01\n",
"2 0.1881288540E+01 0.3164239610E+00\n",
"3 0.5442492580E+00 0.7443082909E+00\n",
"P 1\n",
"1 0.1687144782E+00 0.1000000000E+01\n",
"\n",
"NITROGEN\n",
"S 6\n",
@ -128,13 +134,19 @@
"4 0.4023432930E+02 0.2322408730E+00\n",
"5 0.1282021290E+02 0.4690699481E+00\n",
"6 0.4390437010E+01 0.3604551991E+00\n",
"L 3\n",
"1 0.1162636186E+02 -0.1149611817E+00 0.6757974388E-01\n",
"2 0.2716279807E+01 -0.1691174786E+00 0.3239072959E+00\n",
"3 0.7722183966E+00 0.1145851947E+01 0.7408951398E+00\n",
"L 1\n",
"1 0.2120314975E+00 0.1000000000E+01 0.1000000000E+01\n",
"\"\n"
"S 3\n",
"1 0.1162636186E+02 -0.1149611817E+00\n",
"2 0.2716279807E+01 -0.1691174786E+00\n",
"3 0.7722183966E+00 0.1145851947E+01\n",
"S 1\n",
"1 0.2120314975E+00 0.1000000000E+01\n",
"P 3\n",
"1 0.1162636186E+02 0.6757974388E-01\n",
"2 0.2716279807E+01 0.3239072959E+00\n",
"3 0.7722183966E+00 0.7408951398E+00\n",
"P 1\n",
"1 0.2120314975E+00 0.1000000000E+01\n",
"\""
]
},
{

View File

@ -70,7 +70,7 @@
"(*I : Position et base atomique*)\n",
"\n",
"(* 1. Coordonnées *)\n",
"\n",
"let xyz_string =\n",
"\n"
]
},
@ -102,12 +102,18 @@
"4 0.2921015530E+02 0.2321844432E+00\n",
"5 0.9286662960E+01 0.4679413484E+00\n",
"6 0.3163926960E+01 0.3623119853E+00\n",
"L 3\n",
"1 0.7868272350E+01 -0.1193324198E+00 0.6899906659E-01\n",
"2 0.1881288540E+01 -0.1608541517E+00 0.3164239610E+00\n",
"3 0.5442492580E+00 0.1143456438E+01 0.7443082909E+00\n",
"L 1\n",
"1 0.1687144782E+00 0.1000000000E+01 0.1000000000E+01\n",
"S 3\n",
"1 0.7868272350E+01 -0.1193324198E+00\n",
"2 0.1881288540E+01 -0.1608541517E+00\n",
"3 0.5442492580E+00 0.1143456438E+01\n",
"S 1\n",
"1 0.1687144782E+00 0.1000000000E+01\n",
"P 3\n",
"1 0.7868272350E+01 0.6899906659E-01\n",
"2 0.1881288540E+01 0.3164239610E+00\n",
"3 0.5442492580E+00 0.7443082909E+00\n",
"P 1\n",
"1 0.1687144782E+00 0.1000000000E+01\n",
"\n",
"NITROGEN\n",
"S 6\n",
@ -117,12 +123,18 @@
"4 0.4023432930E+02 0.2322408730E+00\n",
"5 0.1282021290E+02 0.4690699481E+00\n",
"6 0.4390437010E+01 0.3604551991E+00\n",
"L 3\n",
"1 0.1162636186E+02 -0.1149611817E+00 0.6757974388E-01\n",
"2 0.2716279807E+01 -0.1691174786E+00 0.3239072959E+00\n",
"3 0.7722183966E+00 0.1145851947E+01 0.7408951398E+00\n",
"L 1\n",
"1 0.2120314975E+00 0.1000000000E+01 0.1000000000E+01\n",
"S 3\n",
"1 0.1162636186E+02 -0.1149611817E+00\n",
"2 0.2716279807E+01 -0.1691174786E+00\n",
"3 0.7722183966E+00 0.1145851947E+01\n",
"S 1\n",
"1 0.2120314975E+00 0.1000000000E+01\n",
"P 3\n",
"1 0.1162636186E+02 0.6757974388E-01\n",
"2 0.2716279807E+01 0.3239072959E+00\n",
"3 0.7722183966E+00 0.7408951398E+00\n",
"P 1\n",
"1 0.2120314975E+00 0.1000000000E+01\n",
"\""
]
},
@ -740,12 +752,10 @@
"\n",
"(* 5. Fonction de rassemblement de 2 matrices *)\n",
"let assemble m_occ m_vir =\n",
" let v_occ = Mat.to_col_vecs m_occ\n",
" in\n",
" let v_vir = Mat.to_col_vecs m_vir\n",
" in\n",
" let m = Array.append v_occ v_vir\n",
"in Mat.of_col_vecs m;;\n",
" let occ = Mat.to_col_vecs m_occ in\n",
" let vir = Mat.to_col_vecs m_vir in\n",
" Array.concat [ occ ; vir ]\n",
" |> Mat.of_col_vecs\n",
" \n",
"(* 6. Séparation des OMs -> m_occ : OMs occupées; m_vir : OMs vacantes *)\n",
"let m_occ , m_vir = split_mat m_C list_occ;;\n"
@ -773,9 +783,13 @@
"let loc_m_occ_boys = localise localisation m_occ \"Boys\" 1. 10000 10e-3;;\n",
"let loc_m_vir_boys = localise localisation m_vir \"boys\" 1. 10000 10e-3;;\n",
"let m_assemble_boys = assemble loc_m_occ_boys loc_m_vir_boys;;\n",
"Util.debug_matrix \"Nouvelle Matrice\" m_assemble_boys;;\n",
"\n",
"\n",
"Printf.printf \"[\\n\";;\n",
"Mat.as_vec m_assemble_boys\n",
"|> Vec.iter (fun x -> Printf.printf \"%20.15e,\\n\" x);;\n",
"Printf.printf \"]\\n\";;\n",
"\n",
"(*\n",
"let loc_m_occ_er = localise localisation m_occ \"ER\" 1. 100 10e-7;;\n",
"let loc_m_vir_er = localise localisation m_vir \"ER\" 1. 100 10e-7;;\n",