@@ -2258,7 +2258,7 @@ def run_step3_sd_nacs_libint(params):
22582258 'apply_orthonormalization' : False , 'do_state_reordering' : 0 ,
22592259 'state_reordering_alpha' : 0 , 'is_many_body' : False , 'num_occ_states' : 1 ,
22602260 'num_occ_alpha' : 1 , 'num_unocc_alpha' : 1 ,
2261- 'num_occ_beta' : 1 , 'num_unocc_beta' : 1 ,
2261+ 'num_occ_beta' : 1 , 'num_unocc_beta' : 1 , 'active_space_num_occ_orbitals' : 0 ,
22622262 'num_unocc_states' : 1 , 'verbosity' : 0 , 'isUKS' : 0 , 'es_software' : 'cp2k' ,
22632263 'use_multiprocessing' : False , 'logfile_directory' : os .getcwd ()+ '/all_logfiles' , 'nac_algo' : 0
22642264 }
@@ -2440,10 +2440,12 @@ def run_step3_sd_nacs_libint(params):
24402440 if params ['isUKS' ]:
24412441 sd_states_reindexed = step2_many_body .reindex_cp2k_sd_states ( ks_homo_index_alpha , ks_orbital_indicies ,
24422442 sd_unique_basis , sd_format = 1 ,
2443- ks_beta_homo_index = ks_homo_index_beta )
2443+ ks_beta_homo_index = ks_homo_index_beta , active_space_num_occ_orbitals = params [ 'active_space_num_occ_orbitals' ] )
24442444 elif not params ['isUKS' ]:
24452445 sd_states_reindexed = step2_many_body .reindex_cp2k_sd_states ( ks_homo_index , ks_orbital_indicies ,
2446- sd_unique_basis , sd_format = 2 )
2446+ sd_unique_basis , sd_format = 2 , active_space_num_occ_orbitals = params ['active_space_num_occ_orbitals' ])
2447+
2448+
24472449 # Some printings
24482450 print ('sd_unique_basis is:' , sd_unique_basis )
24492451 print ('sd_states_reindexed is:' , sd_states_reindexed )
@@ -2452,6 +2454,21 @@ def run_step3_sd_nacs_libint(params):
24522454 params ['isnap' ] = start_time
24532455 params ['fsnap' ] = finish_time
24542456
2457+ if ks_homo_index - min (ks_active_space ) < params ['active_space_num_occ_orbitals' ]:
2458+ ks_active_space_ = []
2459+ for i in range (ks_homo_index - params ['active_space_num_occ_orbitals' ], ks_homo_index ):
2460+ ks_active_space_ .append (i )
2461+ ks_active_space_ .append (i + int (data_dim / 2 ))
2462+ for i in ks_active_space :
2463+ if i not in ks_active_space_ :
2464+ ks_active_space_ .append (i )
2465+ ks_active_space_ = np .sort (ks_active_space_ ).tolist ()
2466+ ks_active_space = ks_active_space_
2467+ params ['active_space' ] = ks_active_space_
2468+
2469+
2470+ print ('Flag ks_active_space:' , ks_active_space )
2471+
24552472 # The flag for phase-correction algorithm
24562473 apply_phase_correction = params ['apply_phase_correction' ]
24572474
0 commit comments