From cb8c823a2c098f7023d0e858f77ab5b88cf9f518 Mon Sep 17 00:00:00 2001 From: eginer Date: Fri, 15 Mar 2024 16:27:02 +0100 Subject: [PATCH] added script_tc_bh_h2o_gd_exc.sh in fci_tc_bi --- .../fci_tc_bi/script_tc_bh_h2o_gd_exc.sh | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100755 plugins/local/fci_tc_bi/script_tc_bh_h2o_gd_exc.sh diff --git a/plugins/local/fci_tc_bi/script_tc_bh_h2o_gd_exc.sh b/plugins/local/fci_tc_bi/script_tc_bh_h2o_gd_exc.sh new file mode 100755 index 00000000..0d655fdd --- /dev/null +++ b/plugins/local/fci_tc_bi/script_tc_bh_h2o_gd_exc.sh @@ -0,0 +1,85 @@ +#!/bin/bash + +source ~/qp2/quantum_package.rc + +## Define the system/basis/charge/mult and genric keywords +system=H2O +xyz=${system}.xyz +basis=6-31g +mult=1 +charge=0 +j2e_type="Boys_Handy" +thresh_tcscf=1e-10 +io_tc_integ="Write" +nstates=4 + + + +##################### Function to create the EZFIO +function create_ezfio (){ + qp create_ezfio -b $basis -m $mult -c $charge $xyz -o $ezfio + qp run scf | tee ${EZFIO_FILE}.scf.out +} + +##################### Function to set parameters for BH9 jastrow +function BH_9 (){ + j2e_type="Boys_Handy" # type of correlation factor: Boys Handy type + env_type="None" # Boys Handy J does not use our envelopes + j1e_type="None" # Boys Handy J does not use our J1body + tc_integ_type="numeric" # Boys Handy requires numerical integrals + jBH_size=9 # Number of parameters for the BH + +######## All parameters for the H2O and Boys Handy Jastrow + jBH_c=[[0.50000,-0.57070,0.49861,-0.78663,0.01990,0.13386,-0.60446,-1.67160,1.36590],[0.0,0.0,0.0,0.0,0.12063,-0.18527,0.12324,-0.11187,-0.06558],[0.0,0.0,0.0,0.0,0.12063,-0.18527,0.12324,-0.11187,-0.06558]] + jBH_m=[[0,0,0,0,2,3,4,2,2],[0,0,0,0,2,3,4,2,2],[0,0,0,0,2,3,4,2,2]] + jBH_n=[[0,0,0,0,0,0,0,2,0],[0,0,0,0,0,0,0,2,0],[0,0,0,0,0,0,0,2,0]] + jBH_o=[[1,2,3,4,0,0,0,0,2],[1,2,3,4,0,0,0,0,2],[1,2,3,4,0,0,0,0,2]] + jBH_ee=[1.0,1.0,1.0] + jBH_en=[1.0,1.0,1.0] + + set_BH_J_keywords +} + + +function set_BH_J_keywords (){ + qp set jastrow j2e_type $j2e_type # set the jastrow two-e type + qp set jastrow env_type $env_type + qp set jastrow j1e_type $j1e_type + qp set jastrow jBH_size $jBH_size # set the number of parameters in Boys-Handy jastrow + qp set jastrow jBH_c "$jBH_c" # set the parameters which are lists for Boys-Handy + qp set jastrow jBH_m "$jBH_m" # + qp set jastrow jBH_n "$jBH_n" # + qp set jastrow jBH_o "$jBH_o" # + qp set jastrow jBH_ee $jBH_ee # + qp set jastrow jBH_en $jBH_en # + qp set tc_keywords tc_integ_type $tc_integ_type # set the analytical or numerical integrals + qp set tc_keywords thresh_tcscf $thresh_tcscf + qp set tc_keywords io_tc_integ $io_tc_integ # set the io + rm ${EZFIO_FILE}/tc_bi_ortho/psi_* +} + +function run_ground_state (){ + qp set tc_keywords minimize_lr_angles True + qp run tc_scf | tee ${EZFIO_FILE}.tc_scf.out + qp set_frozen_core + qp set determinants n_det_max 1e6 + qp run fci_tc_bi_ortho | tee ${EZFIO_FILE}.fci_tc_bi.out +} + +function run_excited_state (){ + qp set determinants n_states $nstates + qp run cis | tee ${EZFIO_FILE}.cis.out + rm ${EZFIO_FILE}/tc_bi_ortho/psi_* + qp run tc_bi_ortho | tee ${EZFIO_FILE}.tc_cis_nst_${nstates}.out + qp set determinants read_wf True + qp run fci_tc_bi_ortho | tee ${EZFIO_FILE}.fci_tc_bi_nst_${nstates}.out + +} + + +## BH9 calculations +ezfio=${system}_${charge}_${basis}_${j2e_type} +create_ezfio +BH_9 +run_ground_state +run_excited_state