NWChem new attributes/metadata#1215
Conversation
c5cf6ef to
480bffb
Compare
I don't think it's so bad as long as he's the author of the commit, which he still is. "Add more commits by pushing to the nwchem_fixes branch on jvalegre/cclib." means it should work. What I do is
No, because it can make the PR harder to review if they're intermingled with other new attributes that are used. That holds even if we don't have the previous problem of multiple PRs adding the same things, used or otherwise. It also means we'll be able to isolate discussions for them better and most changes are isolated to the parser(s). My vote is for 1, "Only add the attributes for metadata that is being parsed, and separate the other unparsed attributes to a draft PR". |
| self.append_attribute("dispersionenergies", dispersion) | ||
|
|
||
| # type of dispersion | ||
| if line.strip().find('disp vdw 3') > -1: |
There was a problem hiding this comment.
We need a test for this because these lines aren't present at all in our examples. From dvb_dispersion_bp86_d3zero.out,
Dispersion Parameters
---------------------
DFT-D3 Model
s8 scale factor : 1.000000000000
sr6 scale factor : 1.683000000000
sr8 scale factor : 1.139000000000
vdW contrib : 1.000000000000
DFT-D3 Model
s8 scale factor : -0.014719930985
sr6 scale factor :
This is D3 (D3(zero), no damping), I haven't tried D3(BJ) in NWChem yet.
There was a problem hiding this comment.
I see the disp vdw 3 in the input, but that is not repeated in the output from what I can tell. This might need to be changed in general. (mostly just a note to myself so i don't forget)
There was a problem hiding this comment.
There was a problem hiding this comment.
I've added a file to test this for D3BJ with the dvb molecule, but it wouldn't be used through the typical dispersion tests on D3, but instead just to check metadata parsing. Is this overkill?
There was a problem hiding this comment.
Sorry I missed this, I think it's ok since more people are doing D3(BJ) than D3(0).
793445f to
9918621
Compare
89a3eb4 to
d6570e4
Compare
| rotemp.append(float(split_line)[4]) | ||
| line=next(inputfile) | ||
| self.set_attribute('rotconsts', roconst) | ||
| self.set_attribute('rottemp', rotemp) |
There was a problem hiding this comment.
What do we think about rotational temperature? #1093 (comment) definitely a method in the future, but should we parse it too?
There was a problem hiding this comment.
Hm, if they are available, having them immediately available and not have to do extra work of a recalculation through a method seems like a benefit to me, but maybe I am not seeing a reason that this could be problematic?
d6570e4 to
8ab3867
Compare
|
It's dumb but if you apply 9f7dea1 until we remove this it'll solve the CI problem. |
f13b3ff to
06917b9
Compare
4d7b370 to
cdaacac
Compare
berquist
left a comment
There was a problem hiding this comment.
I haven't investigated but it hangs for me on parsing the vibrational frequency output.
| self.metadata['num_processors'] = line.split()[-1] | ||
| if "Memory information" in line: | ||
| self.skip_lines(inputfile,['d','b','heap','stack','global']) | ||
| self.metadata['memory'] = line.split()[-2:] |
There was a problem hiding this comment.
int, but we also want this in bytes. I don't know if Mbytes is actually megabytes. I guess it isn't, since the number of doubles should be the number of bytes.
| self.metadata['num_processors'] = int(line.split()[-1]) | ||
| if "Memory information" in line: | ||
| self.skip_lines(inputfile,['d','b','heap','stack','global']) | ||
| self.metadata['memory'] = int(line.split()[2:])*8 |
There was a problem hiding this comment.
| self.metadata['memory'] = int(line.split()[2:])*8 | |
| self.metadata['memory'] = int(line.split()[2])*8 | |
This is to move forward on (and will replace) #1143 .
Changes:
Questions/To Do:
Is it okay to introduced data attributes that are not yet parsed? (See
oniom_energyandnmr_anisas examples).Possible solutions:
Merge as is since the unparsed attributes do not introduce a breaking change and parsing can be implemented in a future PRKeep open until parsing of all attributes is incorporated.Notes:
Once the newly parsed metadata attributes are merged, the cjson writer additions for metadata (#1148) can be merged.