コード例 #1
0
ファイル: bacTest.py プロジェクト: zhedian/RMG-Py
    def setUpClass(cls):
        cls.lot_get = LevelOfTheory(method='CCSD(T)-F12',
                                    basis='cc-pVTZ-F12',
                                    software='Molpro')
        cls.lot_fit = LevelOfTheory(method='wB97M-V',
                                    basis='def2-TZVPD',
                                    software='Q-Chem')
        cls.lot_nonexisting = LevelOfTheory('notamethod')

        cls.bac = BAC(cls.lot_get)

        cls.tmp_melius_params = {
            'atom_corr': {
                'H': 1.0,
                'C': 2.0,
                'N': 3.0,
                'O': 4.0,
                'S': 5.0,
                'F': 6.0,
                'Cl': 7.0,
                'Br': 8.0
            },
            'bond_corr_length': {
                'H': 1.0,
                'C': 2.0,
                'N': 3.0,
                'O': 4.0,
                'S': 5.0,
                'F': 6.0,
                'Cl': 7.0,
                'Br': 8.0
            },
            'bond_corr_neighbor': {
                'H': 1.0,
                'C': 2.0,
                'N': 3.0,
                'O': 4.0,
                'S': 5.0,
                'F': 6.0,
                'Cl': 7.0,
                'Br': 8.0
            },
            'mol_corr': 1.0
        }
        cls.tmp_petersson_params = {
            'C-H': 1.0,
            'C-C': 2.0,
            'C=C': 3.0,
            'C-O': 4.0
        }

        # Set molecule, bonds, nums, and coords for testing Petersson and Melius BACs
        cls.multiplicity = 1
        smi = 'C=C(OSC=S)C#CC1C(=O)N=CNC1SSC(O)C#N'

        mol = Molecule(smiles=smi, multiplicity=cls.multiplicity)
        cls.bonds = Counter(
            f'{b.atom1.element.symbol}{BOND_SYMBOLS[b.order]}{b.atom2.element.symbol}'
            for b in mol.get_all_edges())

        pybel_mol = pybel.readstring('smi', smi)
        pybel_mol.addh()
        pybel_mol.make3D()
        mol_3d = _pybel_to_rmg(pybel_mol)
        cls.nums = [atom.number for atom in mol_3d.atoms]
        cls.coords = np.array([atom.coords for atom in mol_3d.atoms])
コード例 #2
0
ファイル: bacTest.py プロジェクト: xiaoruiDong/RMG-Py
    def setUpClass(cls):
        cls.model_chem_get = 'ccsd(t)-f12/cc-pvtz-f12'
        cls.model_chem_fit = 'wb97m-v/def2-tzvpd'
        cls.model_chem_nonexisting = 'notamethod/notabasis'

        cls.bac = BAC(cls.model_chem_get)

        cls.tmp_melius_params = {
            'atom_corr': {'H': 1.0, 'C': 2.0, 'N': 3.0, 'O': 4.0, 'S': 5.0, 'F': 6.0, 'Cl': 7.0, 'Br': 8.0},
            'bond_corr_length': {'H': 1.0, 'C': 2.0, 'N': 3.0, 'O': 4.0, 'S': 5.0, 'F': 6.0, 'Cl': 7.0, 'Br': 8.0},
            'bond_corr_neighbor': {'H': 1.0, 'C': 2.0, 'N': 3.0, 'O': 4.0, 'S': 5.0, 'F': 6.0, 'Cl': 7.0, 'Br': 8.0},
            'mol_corr': 1.0
        }
        cls.tmp_petersson_params = {'C-H': 1.0, 'C-C': 2.0, 'C=C': 3.0, 'C-O': 4.0}

        # Set molecule, bonds, nums, and coords for testing Petersson and Melius BACs
        cls.multiplicity = 1
        smi = 'C=C(OSC=S)C#CC1C(=O)N=CNC1SSC(O)C#N'

        mol = Molecule(smiles=smi, multiplicity=cls.multiplicity)
        cls.bonds = Counter(
            f'{b.atom1.element.symbol}{BOND_SYMBOLS[b.order]}{b.atom2.element.symbol}' for b in mol.get_all_edges()
        )

        pybel_mol = pybel.readstring('smi', smi)
        pybel_mol.addh()
        pybel_mol.make3D()
        mol_3d = _pybel_to_rmg(pybel_mol)
        cls.nums = [atom.number for atom in mol_3d.atoms]
        cls.coords = np.array([atom.coords for atom in mol_3d.atoms])