From 859f8653de5b64fce3bbf367ea3d96f54facf2ea Mon Sep 17 00:00:00 2001 From: Abdallah Ammar Date: Tue, 14 Mar 2023 21:18:19 +0100 Subject: [PATCH] tc_scf added var_tc option --- src/tc_scf/tc_scf.irp.f | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/src/tc_scf/tc_scf.irp.f b/src/tc_scf/tc_scf.irp.f index 187750ff..85389f30 100644 --- a/src/tc_scf/tc_scf.irp.f +++ b/src/tc_scf/tc_scf.irp.f @@ -8,7 +8,7 @@ program tc_scf implicit none - print *, 'starting ...' + print *, ' starting ...' my_grid_becke = .True. my_n_pt_r_grid = 30 @@ -27,17 +27,37 @@ program tc_scf !call orthonormalize_mos() PROVIDE tcscf_algorithm - if(tcscf_algorithm == 'DIIS') then - call rh_tcscf_diis() - elseif(tcscf_algorithm == 'Simple') then - call rh_tcscf_simple() + PROVIDE var_tc + + if(var_tc) then + + print *, ' VAR-TC' + + if(tcscf_algorithm == 'DIIS') then + print*, ' NOT implemented yet' + elseif(tcscf_algorithm == 'Simple') then + call rh_vartcscf_simple() + else + print *, ' not implemented yet', tcscf_algorithm + stop + endif + else - print *, ' not implemented yet', tcscf_algorithm - stop + + if(tcscf_algorithm == 'DIIS') then + call rh_tcscf_diis() + elseif(tcscf_algorithm == 'Simple') then + call rh_tcscf_simple() + else + print *, ' not implemented yet', tcscf_algorithm + stop + endif + + call minimize_tc_orb_angles() + call print_energy_and_mos() + endif - call minimize_tc_orb_angles() - call print_energy_and_mos() end