Skip to content

Commit 249a5a9

Browse files
committed
Merge pull request #197 from connie/universalDatabase
Universal database progress. Looks good to me, and I merged the RMG-database commit too. (And after all that effort that went into preserving the history entries and detecting changes....)
2 parents 57fdfaa + 02e2203 commit 249a5a9

File tree

12 files changed

+14
-75
lines changed

12 files changed

+14
-75
lines changed

documentation/source/users/rmg/database/modification.rst

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ Modifying the Thermo Database
1111
=============================
1212

1313
Creating Thermo Libraries
14-
----------------------------------
14+
-------------------------
1515

1616

1717
Adding Thermo Groups
18-
----------------------------------
18+
--------------------
1919

2020

2121
Adding Thermo to the Depository
22-
----------------------------------
22+
-------------------------------
2323

2424
.. _kinetic-database-modification:
2525

@@ -42,7 +42,7 @@ Put kinetic parameters into the training set when:
4242
* You wish for the reaction to be generalized to similar reactions in your mechanism
4343

4444
Creating Kinetics Libraries
45-
----------------------------------
45+
---------------------------
4646

4747
Adding New Kinetic Groups and Rate Rules
4848
----------------------------------------
@@ -117,9 +117,6 @@ In the family's groups.py, you will need to add an entry of the format::
117117
referenceType = "",
118118
shortDesc = u"""""",
119119
longDesc = u"""""",
120-
history = [
121-
("Wed Dec 5 10:25:25 2012","Josh Allen <jwallen@mit.edu>","action","""Josh Allen <jwallen@mit.edu> imported this entry from the old RMG database."""),
122-
],
123120
)
124121

125122
* The index can be any number not already present in the set
@@ -142,7 +139,7 @@ example given in the previous section, the new group would be added under the C_
142139
.. _kinetic-rules:
143140

144141
Adding Kinetic Rules
145-
---------------------------------------------------
142+
--------------------
146143
Rules give generalized kinetic parameters for a specific node template. In most
147144
cases, your kinetic parameters describe a specific reaction in which case you
148145
will want to add your reaction to the training set.
@@ -186,9 +183,6 @@ The rule must be added into rules.py in the form::
186183
187184
Verified by Karma James
188185
""",
189-
history = [
190-
("Wed Jan 9 11:01:40 2013","Josh Allen <jwallen@mit.edu>","action","""Josh Allen <jwallen@mit.edu> imported this entry from the old RMG database."""),
191-
],
192186
)
193187

194188
* The index can be any number not already used in rules.py.
@@ -203,8 +197,8 @@ The rule must be added into rules.py in the form::
203197
204198
.. _kinetic-training-set:
205199

206-
Adding Training Reactions
207-
----------------------------------------
200+
Adding Training Reactions
201+
-------------------------
208202

209203
If you know the kinetics of a specific reaction, rather than a rate rule for a template, you can
210204
add the kinetics to the database training set. By default, RMG creates new rate rules from this

rmgpy/data/base.py

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ class Entry:
7777
`shortDesc` A brief (one-line) description of the data
7878
`longDesc` A long, verbose description of the data
7979
`rank` An integer indicating the degree of confidence in the entry data, or ``None`` if not used
80-
`history` A list of tuples containing the date/time of change, author, type of change, and a brief description of the change
8180
=================== ========================================================
8281
8382
"""
@@ -94,7 +93,6 @@ def __init__(self,
9493
shortDesc='',
9594
longDesc='',
9695
rank=None,
97-
history=None
9896
):
9997
self.index = index
10098
self.label = label
@@ -107,7 +105,6 @@ def __init__(self,
107105
self.shortDesc = shortDesc
108106
self.longDesc = longDesc
109107
self.rank = rank
110-
self.history = history or []
111108

112109
def __str__(self):
113110
return self.label
@@ -1258,7 +1255,7 @@ def saveOld(self, path):
12581255
"""
12591256
self.saveOldDictionary(path)
12601257

1261-
def loadEntry(self, label, molecule=None, group=None, shortDesc='', longDesc='', history=None):
1258+
def loadEntry(self, label, molecule=None, group=None, shortDesc='', longDesc=''):
12621259
"""
12631260
Load an entry from the forbidden structures database. This method is
12641261
automatically called during loading of the forbidden structures
@@ -1282,7 +1279,6 @@ def loadEntry(self, label, molecule=None, group=None, shortDesc='', longDesc='',
12821279
item = item,
12831280
shortDesc = shortDesc,
12841281
longDesc = longDesc.strip(),
1285-
history = history or [],
12861282
)
12871283

12881284
def saveEntry(self, f, entry, name='entry'):
@@ -1314,9 +1310,4 @@ def saveEntry(self, f, entry, name='entry'):
13141310
f.write(entry.longDesc.strip() + "\n")
13151311
f.write('""",\n')
13161312

1317-
f.write(' history = [\n')
1318-
for time, user, action, description in entry.history:
1319-
f.write(' ("{0}","{1}","{2}","""{3}"""),\n'.format(time, user, action, description))
1320-
f.write(' ],\n')
1321-
13221313
f.write(')\n\n')

rmgpy/data/kinetics/common.py

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -203,10 +203,9 @@ def sortEfficiencies(efficiencies0):
203203
for line in lines[1:-1]:
204204
f.write(' {0}\n'.format(line))
205205
f.write(' ),\n'.format(lines[0]))
206-
else:
207-
f.write(' reference = None,\n')
208206

209-
f.write(' referenceType = "{0}",\n'.format(entry.referenceType))
207+
if entry.referenceType != "":
208+
f.write(' referenceType = "{0}",\n'.format(entry.referenceType))
210209
if entry.rank is not None:
211210
f.write(' rank = {0},\n'.format(entry.rank))
212211
f.write(' shortDesc = u"""')
@@ -223,9 +222,4 @@ def sortEfficiencies(efficiencies0):
223222
f.write(entry.longDesc.strip().encode('ascii', 'ignore')+ "\n")
224223
f.write('""",\n')
225224

226-
f.write(' history = [\n')
227-
for time, user, action, description in entry.history:
228-
f.write(' ("{0}","{1}","{2}","""{3}"""),\n'.format(time, user, action, description))
229-
f.write(' ],\n')
230-
231225
f.write(')\n\n')

rmgpy/data/kinetics/depository.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,6 @@ def loadEntry(self,
135135
shortDesc='',
136136
longDesc='',
137137
rank=None,
138-
history=None
139138
):
140139

141140
reactants = [Molecule().fromAdjacencyList(reactant1)]
@@ -158,7 +157,6 @@ def loadEntry(self,
158157
shortDesc = shortDesc,
159158
longDesc = longDesc.strip(),
160159
rank = rank,
161-
history = history or [],
162160
)
163161
self.entries['{0:d}:{1}'.format(index,label)] = entry
164162
return entry

rmgpy/data/kinetics/family.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -619,13 +619,13 @@ def loadRecipe(self, actions):
619619
assert action[0] in ['CHANGE_BOND','FORM_BOND','BREAK_BOND','GAIN_RADICAL','LOSE_RADICAL','GAIN_PAIR','LOSE_PAIR']
620620
self.forwardRecipe.addAction(action)
621621

622-
def loadForbidden(self, label, group, shortDesc='', longDesc='', history=None):
622+
def loadForbidden(self, label, group, shortDesc='', longDesc=''):
623623
"""
624624
Load information about a forbidden structure.
625625
"""
626626
if not self.forbidden:
627627
self.forbidden = ForbiddenStructures()
628-
self.forbidden.loadEntry(label=label, group=group, shortDesc=shortDesc, longDesc=longDesc, history=history)
628+
self.forbidden.loadEntry(label=label, group=group, shortDesc=shortDesc, longDesc=longDesc)
629629

630630
def saveEntry(self, f, entry):
631631
"""
@@ -863,7 +863,6 @@ def addKineticsRulesFromTrainingSet(self, thermoDatabase=None):
863863
reference=entry.reference,
864864
shortDesc="Rate rule generated from training reaction {0}. ".format(entry.index) + entry.shortDesc,
865865
longDesc="Rate rule generated from training reaction {0}. ".format(entry.index) + entry.longDesc,
866-
history=entry.history,
867866
)
868867
new_entry.data.A.value_si /= entry.item.degeneracy
869868
try:
@@ -915,7 +914,6 @@ def addKineticsRulesFromTrainingSet(self, thermoDatabase=None):
915914
reference=entry.reference,
916915
shortDesc="Rate rule generated from training reaction {0}. ".format(entry.index) + entry.shortDesc,
917916
longDesc="Rate rule generated from training reaction {0}. ".format(entry.index) + entry.longDesc,
918-
history=entry.history,
919917
)
920918
new_entry.data.A.value_si /= item.degeneracy
921919
try:

rmgpy/data/kinetics/groups.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ def __init__(self,
8181
def __repr__(self):
8282
return '<KineticsGroups "{0}">'.format(self.label)
8383

84-
def loadEntry(self, index, label, group, kinetics, reference=None, referenceType='', shortDesc='', longDesc='', history=None):
84+
def loadEntry(self, index, label, group, kinetics, reference=None, referenceType='', shortDesc='', longDesc=''):
8585
if group[0:3].upper() == 'OR{' or group[0:4].upper() == 'AND{' or group[0:7].upper() == 'NOT OR{' or group[0:8].upper() == 'NOT AND{':
8686
item = makeLogicNode(group)
8787
else:
@@ -95,7 +95,6 @@ def loadEntry(self, index, label, group, kinetics, reference=None, referenceType
9595
referenceType = referenceType,
9696
shortDesc = shortDesc,
9797
longDesc = longDesc.strip(),
98-
history = history or [],
9998
)
10099

101100
def getReactionTemplate(self, reaction):

rmgpy/data/kinetics/library.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,6 @@ def loadEntry(self,
272272
referenceType='',
273273
shortDesc='',
274274
longDesc='',
275-
history=None
276275
):
277276

278277
reactants = [Species(label=reactant1.strip().splitlines()[0].strip(), molecule=[Molecule().fromAdjacencyList(reactant1)])]
@@ -305,7 +304,6 @@ def loadEntry(self,
305304
referenceType = referenceType,
306305
shortDesc = shortDesc,
307306
longDesc = longDesc.strip(),
308-
history = history or [],
309307
)
310308

311309
# Convert SMILES to Molecule objects in collision efficiencies

rmgpy/data/kinetics/rules.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,6 @@ def loadEntry(self,
8282
shortDesc='',
8383
longDesc='',
8484
rank=None,
85-
history=None
8685
):
8786

8887
reactants = []
@@ -119,7 +118,6 @@ def loadEntry(self,
119118
shortDesc = shortDesc,
120119
longDesc = longDesc.strip(),
121120
rank = rank,
122-
history = history or [],
123121
)
124122
try:
125123
self.entries[label].append(entry)

rmgpy/data/solvation.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,6 @@ def loadEntry(self,
228228
referenceType='',
229229
shortDesc='',
230230
longDesc='',
231-
history=None
232231
):
233232
self.entries[label] = Entry(
234233
index = index,
@@ -238,7 +237,6 @@ def loadEntry(self,
238237
referenceType = referenceType,
239238
shortDesc = shortDesc,
240239
longDesc = longDesc.strip(),
241-
history = history or [],
242240
)
243241

244242
def load(self, path):
@@ -276,7 +274,6 @@ def loadEntry(self,
276274
referenceType='',
277275
shortDesc='',
278276
longDesc='',
279-
history=None
280277
):
281278
self.entries[label] = Entry(
282279
index = index,
@@ -287,7 +284,6 @@ def loadEntry(self,
287284
referenceType = referenceType,
288285
shortDesc = shortDesc,
289286
longDesc = longDesc.strip(),
290-
history = history or [],
291287
)
292288

293289
def load(self, path):
@@ -332,7 +328,6 @@ def loadEntry(self,
332328
referenceType='',
333329
shortDesc='',
334330
longDesc='',
335-
history=None
336331
):
337332
if group[0:3].upper() == 'OR{' or group[0:4].upper() == 'AND{' or group[0:7].upper() == 'NOT OR{' or group[0:8].upper() == 'NOT AND{':
338333
item = makeLogicNode(group)
@@ -347,7 +342,6 @@ def loadEntry(self,
347342
referenceType = referenceType,
348343
shortDesc = shortDesc,
349344
longDesc = longDesc.strip(),
350-
history = history or [],
351345
)
352346

353347
def saveEntry(self, f, entry):

rmgpy/data/statmech.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -83,11 +83,6 @@ def saveEntry(f, entry):
8383
f.write(entry.longDesc.strip() + "\n")
8484
f.write('\n""",\n')
8585

86-
f.write(' history = [\n')
87-
for time, user, action, description in entry.history:
88-
f.write(' ("{0}","{1}","{2}","""{3}"""),\n'.format(time, user, action, description))
89-
f.write(' ],\n')
90-
9186
f.write(')\n\n')
9287

9388
def generateOldLibraryEntry(data):
@@ -135,7 +130,6 @@ def loadEntry(self,
135130
referenceType='',
136131
shortDesc='',
137132
longDesc='',
138-
history=None
139133
):
140134
self.entries[label] = Entry(
141135
index = index,
@@ -146,7 +140,6 @@ def loadEntry(self,
146140
referenceType = referenceType,
147141
shortDesc = shortDesc,
148142
longDesc = longDesc.strip(),
149-
history = history or [],
150143
)
151144

152145
def saveEntry(self, f, entry):
@@ -174,7 +167,6 @@ def loadEntry(self,
174167
referenceType='',
175168
shortDesc='',
176169
longDesc='',
177-
history=None
178170
):
179171
self.entries[label] = Entry(
180172
index = index,
@@ -185,7 +177,6 @@ def loadEntry(self,
185177
referenceType = referenceType,
186178
shortDesc = shortDesc,
187179
longDesc = longDesc.strip(),
188-
history = history or [],
189180
)
190181

191182
def saveEntry(self, f, entry):
@@ -228,7 +219,6 @@ def loadEntry(self,
228219
referenceType='',
229220
shortDesc='',
230221
longDesc='',
231-
history=None
232222
):
233223
if ( group[0:3].upper() == 'OR{' or
234224
group[0:4].upper() == 'AND{' or
@@ -247,7 +237,6 @@ def loadEntry(self,
247237
referenceType = referenceType,
248238
shortDesc = shortDesc,
249239
longDesc = longDesc.strip(),
250-
history = history or [],
251240
)
252241

253242
def saveEntry(self, f, entry):

0 commit comments

Comments
 (0)