From 220ab1ccbea2ac949615de6a484b7d5ebac4e65a Mon Sep 17 00:00:00 2001 From: Samarth Sandeep Date: Thu, 15 Sep 2022 17:58:11 -0700 Subject: [PATCH 1/6] basis set selector works for H,He,Li,Be,B,C,N,O,F,Ne,Na,Mg,Al,Si,P,S,Cl invididaul atoms for cc-pVTZ, aug-cc-pVDZ, and 6-31g basis sets with B3LYP as the DFT method --- BasisSetSelector/basissetselector.py | 22 ++++++++++++++++++++++ BasisSetSelector/cccbdb-calculation-parser | 1 + BasisSetSelector/groundstateenergies.csv | 18 ++++++++++++++++++ 3 files changed, 41 insertions(+) create mode 100644 BasisSetSelector/basissetselector.py create mode 160000 BasisSetSelector/cccbdb-calculation-parser create mode 100644 BasisSetSelector/groundstateenergies.csv diff --git a/BasisSetSelector/basissetselector.py b/BasisSetSelector/basissetselector.py new file mode 100644 index 00000000..3d59aabb --- /dev/null +++ b/BasisSetSelector/basissetselector.py @@ -0,0 +1,22 @@ +import pandas as pd + +def find_precision(theoretical, experimental): + return abs((theoretical-experimental)/experimental) + +def find_optimal_basis_sets(atoms, precisionInPercent): + bestBasisSets = [] + precisionDecimal = precisionInPercent / 100 + groundStateDF = pd.read_csv("groundstateenergies.csv",index_col=0) + groundStateEnergyForAtom = groundStateDF["Experimental Ground State Energy from AE17 UMN (Hartree)"][atoms] + if(find_precision(groundStateDF["cc-pVTZ + B3LYP"][atoms],groundStateEnergyForAtom) <= precisionDecimal): + bestBasisSets.append("cc-pVTZ + B3LYP") + if(find_precision(groundStateDF["6-31G + B3LYP"][atoms],groundStateEnergyForAtom) <= precisionDecimal): + bestBasisSets.append("6-31G + B3LYP") + if(find_precision(groundStateDF["aug-cc-pVDZ + B3LYP"][atoms],groundStateEnergyForAtom) <= precisionDecimal): + bestBasisSets.append("aug-cc-pVDZ + B3LYP") + if((find_precision(groundStateDF["aug-cc-pVDZ + B3LYP"][atoms],groundStateEnergyForAtom) > precisionDecimal) and (find_precision(groundStateDF["cc-pVTZ + B3LYP"][atoms],groundStateEnergyForAtom) > precisionDecimal) and (find_precision(groundStateDF["6-31G + B3LYP"][atoms],groundStateEnergyForAtom) > precisionDecimal)): + bestBasisSets.append("cc-pVTZ + B3LYP,6-31G + B3LYP, and aug-cc-pVDZ + B3LYP are too imprecise. Please try another basis set") + + return bestBasisSets + +print(find_optimal_basis_sets("Li", 0.14)) \ No newline at end of file diff --git a/BasisSetSelector/cccbdb-calculation-parser b/BasisSetSelector/cccbdb-calculation-parser new file mode 160000 index 00000000..a2734464 --- /dev/null +++ b/BasisSetSelector/cccbdb-calculation-parser @@ -0,0 +1 @@ +Subproject commit a2734464f33af65997225c22ca3faf8517833151 diff --git a/BasisSetSelector/groundstateenergies.csv b/BasisSetSelector/groundstateenergies.csv new file mode 100644 index 00000000..8c0cf0ae --- /dev/null +++ b/BasisSetSelector/groundstateenergies.csv @@ -0,0 +1,18 @@ +Experimental Ground State Energy from AE17 UMN (Hartree),cc-pVTZ + B3LYP,6-31G + B3LYP,aug-cc-pVDZ + B3LYP +H,-0.50000,-0.502156,-0.500273,-0.501657 +He,-2.90372,-2.914507,-2.907049,-2.909096 +Li,-7.47806,-7.492016,-7.490902,-7.491452 +Be,-14.66736,-14.672445,-14.668063,-14.671272 +B,-24.65391,-24.663753,-24.652810,-24.661583 +C,-37.84500,-37.858574,-37.843662,-37.854195 +N,-54.58920,-54.601781,-54.582875,-54.593843 +O,-75.06730,-75.091863,-75.058330,-75.077162 +F,-99.73390,-99.762866,-99.713650,-99.739495 +Ne,-128.93760,-128.961856,-128.894298,-128.927993 +Na,-162.25460,-162.296979,-162.279879,-162.290737 +Mg,-200.05300,-200.097698,-200.077941,-200.091270 +Al,-242.34600,-242.389511,-242.365764,-242.383457 +Si,-289.35900,-289.396332,-289.368888,-289.389841 +P,-341.25900,-341.285850,-341.255345,-341.278393 +S,-398.11000,-398.138716,-398.100687,-398.127993 +Cl,-460.14800,-460.174665,-460.131370,-460.161474 \ No newline at end of file From a62cb6423dd6c78dc6546e78e8e19ca987e2a863 Mon Sep 17 00:00:00 2001 From: Samarth Sandeep Date: Thu, 15 Sep 2022 18:44:09 -0700 Subject: [PATCH 2/6] multi-atom systems setup using addition of hartree energies --- BasisSetSelector/basissetselector.py | 27 ++++++++++++++++------ BasisSetSelector/cccbdb-calculation-parser | 1 - 2 files changed, 20 insertions(+), 8 deletions(-) delete mode 160000 BasisSetSelector/cccbdb-calculation-parser diff --git a/BasisSetSelector/basissetselector.py b/BasisSetSelector/basissetselector.py index 3d59aabb..01c1bcd4 100644 --- a/BasisSetSelector/basissetselector.py +++ b/BasisSetSelector/basissetselector.py @@ -1,22 +1,35 @@ import pandas as pd +from rdkit.Chem import AllChem as Chem + def find_precision(theoretical, experimental): return abs((theoretical-experimental)/experimental) -def find_optimal_basis_sets(atoms, precisionInPercent): +def find_optimal_basis_sets_SMILES(smile, precisionInPercent): bestBasisSets = [] precisionDecimal = precisionInPercent / 100 groundStateDF = pd.read_csv("groundstateenergies.csv",index_col=0) - groundStateEnergyForAtom = groundStateDF["Experimental Ground State Energy from AE17 UMN (Hartree)"][atoms] - if(find_precision(groundStateDF["cc-pVTZ + B3LYP"][atoms],groundStateEnergyForAtom) <= precisionDecimal): + mol = Chem.MolFromSmiles(smile) + arrayOfAtomsInSmile = [atom.GetSymbol() for atom in mol.GetAtoms()] + groundStateSum = 0 + ccpVTZb3lypSum = 0 + augccpDZb3lypSum = 0 + sixthreeoneb3lypsum = 0 + for atom in arrayOfAtomsInSmile: + groundStateSum += groundStateDF["Experimental Ground State Energy from AE17 UMN (Hartree)"][atom] + ccpVTZb3lypSum += groundStateDF["cc-pVTZ + B3LYP"][atom] + sixthreeoneb3lypsum += groundStateDF["6-31G + B3LYP"][atom] + augccpDZb3lypSum += groundStateDF["aug-cc-pVDZ + B3LYP"][atom] + print(sixthreeoneb3lypsum) + if(find_precision(ccpVTZb3lypSum,groundStateSum) <= precisionDecimal): bestBasisSets.append("cc-pVTZ + B3LYP") - if(find_precision(groundStateDF["6-31G + B3LYP"][atoms],groundStateEnergyForAtom) <= precisionDecimal): + if(find_precision(sixthreeoneb3lypsum,groundStateSum) <= precisionDecimal): bestBasisSets.append("6-31G + B3LYP") - if(find_precision(groundStateDF["aug-cc-pVDZ + B3LYP"][atoms],groundStateEnergyForAtom) <= precisionDecimal): + if(find_precision(augccpDZb3lypSum,groundStateSum) <= precisionDecimal): bestBasisSets.append("aug-cc-pVDZ + B3LYP") - if((find_precision(groundStateDF["aug-cc-pVDZ + B3LYP"][atoms],groundStateEnergyForAtom) > precisionDecimal) and (find_precision(groundStateDF["cc-pVTZ + B3LYP"][atoms],groundStateEnergyForAtom) > precisionDecimal) and (find_precision(groundStateDF["6-31G + B3LYP"][atoms],groundStateEnergyForAtom) > precisionDecimal)): + if((find_precision(ccpVTZb3lypSum,groundStateSum) > precisionDecimal) and (find_precision(sixthreeoneb3lypsum,groundStateSum) > precisionDecimal) and (find_precision(augccpDZb3lypSum,groundStateSum) > precisionDecimal)): bestBasisSets.append("cc-pVTZ + B3LYP,6-31G + B3LYP, and aug-cc-pVDZ + B3LYP are too imprecise. Please try another basis set") return bestBasisSets -print(find_optimal_basis_sets("Li", 0.14)) \ No newline at end of file +print(find_optimal_basis_sets_SMILES("CC", 0.01)) \ No newline at end of file diff --git a/BasisSetSelector/cccbdb-calculation-parser b/BasisSetSelector/cccbdb-calculation-parser deleted file mode 160000 index a2734464..00000000 --- a/BasisSetSelector/cccbdb-calculation-parser +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a2734464f33af65997225c22ca3faf8517833151 From 3230f0a376a7a5350c7eaeda7a192cfd591b63cc Mon Sep 17 00:00:00 2001 From: Samarth Sandeep Date: Thu, 15 Sep 2022 19:26:04 -0700 Subject: [PATCH 3/6] added pdb input capability --- BasisSetSelector/basissetselector.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/BasisSetSelector/basissetselector.py b/BasisSetSelector/basissetselector.py index 01c1bcd4..9eced0c8 100644 --- a/BasisSetSelector/basissetselector.py +++ b/BasisSetSelector/basissetselector.py @@ -1,15 +1,19 @@ import pandas as pd from rdkit.Chem import AllChem as Chem +# from rdkit.Chem.rdmolfiles import MolFromPDB def find_precision(theoretical, experimental): return abs((theoretical-experimental)/experimental) -def find_optimal_basis_sets_SMILES(smile, precisionInPercent): +def find_optimal_basis_sets(smile, precisionInPercent,): bestBasisSets = [] precisionDecimal = precisionInPercent / 100 groundStateDF = pd.read_csv("groundstateenergies.csv",index_col=0) - mol = Chem.MolFromSmiles(smile) + if(".pdb" in smile): + mol = Chem.MolFromPDBFile(smile) + else: + mol = Chem.MolFromSmiles(smile) arrayOfAtomsInSmile = [atom.GetSymbol() for atom in mol.GetAtoms()] groundStateSum = 0 ccpVTZb3lypSum = 0 @@ -32,4 +36,4 @@ def find_optimal_basis_sets_SMILES(smile, precisionInPercent): return bestBasisSets -print(find_optimal_basis_sets_SMILES("CC", 0.01)) \ No newline at end of file +print(find_optimal_basis_sets("proline.pdb", 0.01)) \ No newline at end of file From a1bee4811ec817175965706247713f8aeccc26f7 Mon Sep 17 00:00:00 2001 From: Samarth Sandeep Date: Thu, 15 Sep 2022 20:41:19 -0700 Subject: [PATCH 4/6] added additive homo-lumo to help pick basis sets that find the lowest homo-lumo convergence --- BasisSetSelector/basissetselector.py | 30 +++++++++++++++---- BasisSetSelector/groundstateenergies.csv | 36 +++++++++++----------- BasisSetSelector/proline.pdb | 38 ++++++++++++++++++++++++ 3 files changed, 81 insertions(+), 23 deletions(-) create mode 100644 BasisSetSelector/proline.pdb diff --git a/BasisSetSelector/basissetselector.py b/BasisSetSelector/basissetselector.py index 9eced0c8..a4e2bf8b 100644 --- a/BasisSetSelector/basissetselector.py +++ b/BasisSetSelector/basissetselector.py @@ -1,13 +1,13 @@ import pandas as pd from rdkit.Chem import AllChem as Chem -# from rdkit.Chem.rdmolfiles import MolFromPDB def find_precision(theoretical, experimental): return abs((theoretical-experimental)/experimental) -def find_optimal_basis_sets(smile, precisionInPercent,): +def find_optimal_basis_sets(smile, precisionInPercent=0.01, homoLumoConvergance=False): bestBasisSets = [] + bestHomoLumo = [] precisionDecimal = precisionInPercent / 100 groundStateDF = pd.read_csv("groundstateenergies.csv",index_col=0) if(".pdb" in smile): @@ -24,7 +24,7 @@ def find_optimal_basis_sets(smile, precisionInPercent,): ccpVTZb3lypSum += groundStateDF["cc-pVTZ + B3LYP"][atom] sixthreeoneb3lypsum += groundStateDF["6-31G + B3LYP"][atom] augccpDZb3lypSum += groundStateDF["aug-cc-pVDZ + B3LYP"][atom] - print(sixthreeoneb3lypsum) + if(find_precision(ccpVTZb3lypSum,groundStateSum) <= precisionDecimal): bestBasisSets.append("cc-pVTZ + B3LYP") if(find_precision(sixthreeoneb3lypsum,groundStateSum) <= precisionDecimal): @@ -34,6 +34,26 @@ def find_optimal_basis_sets(smile, precisionInPercent,): if((find_precision(ccpVTZb3lypSum,groundStateSum) > precisionDecimal) and (find_precision(sixthreeoneb3lypsum,groundStateSum) > precisionDecimal) and (find_precision(augccpDZb3lypSum,groundStateSum) > precisionDecimal)): bestBasisSets.append("cc-pVTZ + B3LYP,6-31G + B3LYP, and aug-cc-pVDZ + B3LYP are too imprecise. Please try another basis set") - return bestBasisSets + if homoLumoConvergance == True: + g3HomoLumoSum= 0 + ccpVTZb3lypHomoLumoSum = 0 + augccpDZb3lypHomoLumoSum = 0 + sixthreeoneb3lypHomoLumosum = 0 + for atom in arrayOfAtomsInSmile: + g3HomoLumoSum += groundStateDF["Gaussian3 (G3) HOMO-LUMO gap"][atom] + ccpVTZb3lypHomoLumoSum += groundStateDF["cc-pVTZ + B3LYP HOMO-LUMO gap"][atom] + sixthreeoneb3lypHomoLumosum += groundStateDF["6-31G + B3LYP HOMO-LUMO gap"][atom] + augccpDZb3lypHomoLumoSum += groundStateDF["aug-cc-pVDZ + B3LYP HOMO-LUMO gap"][atom] + minConvergance = min([g3HomoLumoSum,ccpVTZb3lypHomoLumoSum,augccpDZb3lypHomoLumoSum,sixthreeoneb3lypHomoLumosum]) + if g3HomoLumoSum == minConvergance: + bestHomoLumo.append("Gaussian3 (G3)") + if ccpVTZb3lypHomoLumoSum == minConvergance: + bestHomoLumo.append("cc-pVTZ + B3LYP") + if sixthreeoneb3lypHomoLumosum == minConvergance: + bestHomoLumo.append("6-31G + B3LYP") + if augccpDZb3lypHomoLumoSum == minConvergance: + bestHomoLumo.append("aug-cc-pVDZ + B3LYP") + outputJSON = {"Best Basis Sets Based on Ground State Precision": bestBasisSets, "Best Basis Sets Based on HOMO-LUMO Gap Convergance": bestHomoLumo} + return outputJSON -print(find_optimal_basis_sets("proline.pdb", 0.01)) \ No newline at end of file +print(find_optimal_basis_sets("CC", 0.01, homoLumoConvergance=True)) \ No newline at end of file diff --git a/BasisSetSelector/groundstateenergies.csv b/BasisSetSelector/groundstateenergies.csv index 8c0cf0ae..b4ce586b 100644 --- a/BasisSetSelector/groundstateenergies.csv +++ b/BasisSetSelector/groundstateenergies.csv @@ -1,18 +1,18 @@ -Experimental Ground State Energy from AE17 UMN (Hartree),cc-pVTZ + B3LYP,6-31G + B3LYP,aug-cc-pVDZ + B3LYP -H,-0.50000,-0.502156,-0.500273,-0.501657 -He,-2.90372,-2.914507,-2.907049,-2.909096 -Li,-7.47806,-7.492016,-7.490902,-7.491452 -Be,-14.66736,-14.672445,-14.668063,-14.671272 -B,-24.65391,-24.663753,-24.652810,-24.661583 -C,-37.84500,-37.858574,-37.843662,-37.854195 -N,-54.58920,-54.601781,-54.582875,-54.593843 -O,-75.06730,-75.091863,-75.058330,-75.077162 -F,-99.73390,-99.762866,-99.713650,-99.739495 -Ne,-128.93760,-128.961856,-128.894298,-128.927993 -Na,-162.25460,-162.296979,-162.279879,-162.290737 -Mg,-200.05300,-200.097698,-200.077941,-200.091270 -Al,-242.34600,-242.389511,-242.365764,-242.383457 -Si,-289.35900,-289.396332,-289.368888,-289.389841 -P,-341.25900,-341.285850,-341.255345,-341.278393 -S,-398.11000,-398.138716,-398.100687,-398.127993 -Cl,-460.14800,-460.174665,-460.131370,-460.161474 \ No newline at end of file +Element/Compound,Experimental Ground State Energy from AE17 UMN (Hartree),cc-pVTZ + B3LYP,6-31G + B3LYP,aug-cc-pVDZ + B3LYP,Gaussian3 (G3) HOMO-LUMO gap,cc-pVTZ + B3LYP HOMO-LUMO gap,6-31G + B3LYP HOMO-LUMO gap,aug-cc-pVDZ + B3LYP HOMO-LUMO gap +H,-0.50000,-0.502156,-0.500273,-0.501657,1.414,0.567,1.027,0.356 +He,-2.90372,-2.914507,-2.907049,-2.909096,1.100,1.023,1.631,0 +Li,-7.47806,-7.492016,-7.490902,-7.491452,0.207,0,0.108,0 +Be,-14.66736,-14.672445,-14.668063,-14.671272,0.331,0,0.188,0 +B,-24.65391,-24.663753,-24.652810,-24.661583,0.335,0.092,0.092,0.091 +C,-37.84500,-37.858574,-37.843662,-37.854195,0.446,0.113,0.111,0.111 +N,-54.58920,-54.601781,-54.582875,-54.593843,0.705,0.778,0.977,0.416 +O,-75.06730,-75.091863,-75.058330,-75.077162,1.482,0.899,1.163,0.469 +F,-99.73390,-99.762866,-99.713650,-99.739495,0.941,1.121,1.525,0.591 +Ne,-128.93760,-128.961856,-128.894298,-128.927993,0.664,1.419,1.950,0.724 +Na,-162.25460,-162.296979,-162.279879,-162.290737,0,0,0.109,0 +Mg,-200.05300,-200.097698,-200.077941,-200.091270,0.274,0,0.164,0 +Al,-242.34600,-242.389511,-242.365764,-242.383457,0.238,0.056,0.054,0.056 +Si,-289.35900,-289.396332,-289.368888,-289.389841,0.287,0.066,0.062,0.065 +P,-341.25900,-341.285850,-341.255345,-341.278393,0.461,0.494,0.475,0.283 +S,-398.11000,-398.138716,-398.100687,-398.127993,0.494,0.555,0.539,0.319 +Cl,-460.14800,-460.174665,-460.131370,-460.161474,0.992,0.663,0.681,0.401 \ No newline at end of file diff --git a/BasisSetSelector/proline.pdb b/BasisSetSelector/proline.pdb new file mode 100644 index 00000000..afba1610 --- /dev/null +++ b/BasisSetSelector/proline.pdb @@ -0,0 +1,38 @@ +COMPND 145742 +AUTHOR GENERATED BY OPEN BABEL 3.1.0 +ATOM 1 O PRO A 1 2.162 -0.951 -0.112 1.00 0.00 O +ATOM 2 OXT PRO A 1 1.569 1.216 -0.495 1.00 0.00 O +ATOM 3 N PRO A 1 -0.781 0.931 0.777 1.00 0.00 N +ATOM 4 CA PRO A 1 0.083 -0.248 0.725 1.00 0.00 C +ATOM 5 CB PRO A 1 -0.724 -1.317 -0.003 1.00 0.00 C +ATOM 6 CG PRO A 1 -1.989 -0.611 -0.475 1.00 0.00 C +ATOM 7 CD PRO A 1 -1.650 0.864 -0.393 1.00 0.00 C +ATOM 8 C PRO A 1 1.329 0.115 -0.024 1.00 0.00 C +ATOM 9 HA PRO A 1 0.362 -0.552 1.739 1.00 0.00 H +ATOM 10 HB1 PRO A 1 -0.987 -2.143 0.667 1.00 0.00 H +ATOM 11 HB2 PRO A 1 -0.192 -1.741 -0.862 1.00 0.00 H +ATOM 12 HG1 PRO A 1 -2.280 -0.916 -1.485 1.00 0.00 H +ATOM 13 HG2 PRO A 1 -2.819 -0.849 0.202 1.00 0.00 H +ATOM 14 HD1 PRO A 1 -1.120 1.193 -1.294 1.00 0.00 H +ATOM 15 HD2 PRO A 1 -2.542 1.483 -0.269 1.00 0.00 H +ATOM 16 H PRO A 1 -0.251 1.800 0.802 1.00 0.00 H +ATOM 17 H PRO A 1 2.984 -0.734 -0.601 1.00 0.00 H +CONECT 1 8 17 +CONECT 2 8 8 +CONECT 3 4 7 16 +CONECT 4 3 5 8 9 +CONECT 5 4 6 10 11 +CONECT 6 5 7 12 13 +CONECT 7 3 6 14 15 +CONECT 8 1 2 2 4 +CONECT 9 4 +CONECT 10 5 +CONECT 11 5 +CONECT 12 6 +CONECT 13 6 +CONECT 14 7 +CONECT 15 7 +CONECT 16 3 +CONECT 17 1 +MASTER 0 0 0 0 0 0 0 0 17 0 17 0 +END From 7c7a45e0edcf2e72e6c756247cd684ebc99ccf71 Mon Sep 17 00:00:00 2001 From: Samarth Sandeep Date: Thu, 15 Sep 2022 21:08:56 -0700 Subject: [PATCH 5/6] made the basis set selector command line usable --- BasisSetSelector/basissetselector.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/BasisSetSelector/basissetselector.py b/BasisSetSelector/basissetselector.py index a4e2bf8b..0ff95755 100644 --- a/BasisSetSelector/basissetselector.py +++ b/BasisSetSelector/basissetselector.py @@ -1,11 +1,12 @@ import pandas as pd from rdkit.Chem import AllChem as Chem - +import sys +from ast import literal_eval def find_precision(theoretical, experimental): return abs((theoretical-experimental)/experimental) -def find_optimal_basis_sets(smile, precisionInPercent=0.01, homoLumoConvergance=False): +def find_optimal_basis_sets(smile, precisionInPercent, homoLumoConvergance): bestBasisSets = [] bestHomoLumo = [] precisionDecimal = precisionInPercent / 100 @@ -34,7 +35,7 @@ def find_optimal_basis_sets(smile, precisionInPercent=0.01, homoLumoConvergance= if((find_precision(ccpVTZb3lypSum,groundStateSum) > precisionDecimal) and (find_precision(sixthreeoneb3lypsum,groundStateSum) > precisionDecimal) and (find_precision(augccpDZb3lypSum,groundStateSum) > precisionDecimal)): bestBasisSets.append("cc-pVTZ + B3LYP,6-31G + B3LYP, and aug-cc-pVDZ + B3LYP are too imprecise. Please try another basis set") - if homoLumoConvergance == True: + if homoLumoConvergance == "homoLumoConvergance": g3HomoLumoSum= 0 ccpVTZb3lypHomoLumoSum = 0 augccpDZb3lypHomoLumoSum = 0 @@ -56,4 +57,8 @@ def find_optimal_basis_sets(smile, precisionInPercent=0.01, homoLumoConvergance= outputJSON = {"Best Basis Sets Based on Ground State Precision": bestBasisSets, "Best Basis Sets Based on HOMO-LUMO Gap Convergance": bestHomoLumo} return outputJSON -print(find_optimal_basis_sets("CC", 0.01, homoLumoConvergance=True)) \ No newline at end of file +if __name__ == '__main__': + if len(sys.argv) < 2: + print("Syntax: python basissetselector.py [.pdb file name location or smiles string in quotes] [percetage of precision wihtout %] [homoLumoConverganceif you want check for the HOMO-LUMO convergance]") + else: + print(find_optimal_basis_sets(sys.argv[1], literal_eval(sys.argv[2]), sys.argv[3])) \ No newline at end of file From 3cdec87b5fec62f1871ce2c2221167ece97b8a9d Mon Sep 17 00:00:00 2001 From: Samarth Sandeep Date: Thu, 15 Sep 2022 21:17:23 -0700 Subject: [PATCH 6/6] made the basis set selector command line usable --- BasisSetSelector/basissetselector.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BasisSetSelector/basissetselector.py b/BasisSetSelector/basissetselector.py index 0ff95755..128d1175 100644 --- a/BasisSetSelector/basissetselector.py +++ b/BasisSetSelector/basissetselector.py @@ -59,6 +59,6 @@ def find_optimal_basis_sets(smile, precisionInPercent, homoLumoConvergance): if __name__ == '__main__': if len(sys.argv) < 2: - print("Syntax: python basissetselector.py [.pdb file name location or smiles string in quotes] [percetage of precision wihtout %] [homoLumoConverganceif you want check for the HOMO-LUMO convergance]") + print("Syntax: python basissetselector.py [.pdb file name location or smiles string] [percetage of precision wihtout %] [homoLumoConverganceif you want check for the HOMO-LUMO convergance]") else: print(find_optimal_basis_sets(sys.argv[1], literal_eval(sys.argv[2]), sys.argv[3])) \ No newline at end of file