as_seh = [[3, 2, 16], [5, 3, 15], [7, 4, 14], [17, 9, 9], [23, 12, 6], [25, 13, 5]] # Generate basis name list basis_name_list = [] for s1 in ['cc-pV_Z', 'cc-pCV_Z']: for s2 in ['D', 'T', 'Q', '5']: basis_name_list.append(s1.replace('_', s2)) for molecule, active_spaces in [(mol_oh, as_oh), (mol_sh, as_sh)]: # , (mol_oh, as_seh)]: for calc_soc in [1]: for basis_name in basis_name_list: for active_space in active_spaces: basis_custom_repo = get_basis_from_ccRepo(molecule, basis_name, if_missing=basis_name.replace('cc-pC', 'cc-p')) basis_custom_repo = trucate_basis(basis_custom_repo, shells=['G', 'H', 'I', 'J', 'K']) qc_input = QchemInput(molecule, jobtype='sp', exchange='hf', correlation='rasci', purecart='1111', unrestricted='False', thresh=14, scf_convergence=8, max_cis_cycles=150, basis=basis_custom_repo,
for atom, active_spaces in [(atom_c, { 'singlet': as_c_singlet, 'triplet': as_c_triplet }), (atom_o, { 'singlet': as_o_singlet, 'triplet': as_o_triplet }), (atom_si, { 'singlet': as_si_singlet, 'triplet': as_si_triplet }), (atom_s, { 'singlet': as_s_singlet, 'triplet': as_s_triplet })]: for basis_name in ['cc-pCVTZ']: basis_custom_repo = get_basis_from_ccRepo(atom, basis_name) basis_custom_repo = trucate_basis(basis_custom_repo, shells=['G', 'H', 'I', 'J', 'K']) qc_input_s = QchemInput( atom, jobtype='sp', exchange='hf', correlation='rasci', unrestricted='False', thresh=14, scf_convergence=11, cis_convergence=9, max_cis_cycles=150, max_scf_cycles=100,
# Standard input using a custom basis obtained from previous calculation qc_input = QchemInput(molecule, jobtype='sp', exchange='hf', basis=basis_custom) output = get_output_from_qchem(qc_input, processors=4, force_recalculation=False, parser=basic_parser_qchem ) print('scf_energy (custom basis: 6-31G): ', output['scf_energy']) # Get custom basis from ccRepo online repository basis_custom_repo = get_basis_from_ccRepo(molecule, 'cc-pVTZ') qc_input = QchemInput(molecule, jobtype='sp', exchange='hf', basis=basis_custom_repo) output = get_output_from_qchem(qc_input, processors=4, force_recalculation=False, parser=basic_parser_qchem ) print('scf_energy (custom basis: cc-pVTZ): ', output['scf_energy'])