-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reinventing SiteRDF #1778
Reinventing SiteRDF #1778
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent. This looks really good - I'm already fully convinced of this new way of writing analysis routines!
Some small comments in the review, and I'll address your questions. I'd like to do some local testing of the module before we merge, particularly the instantaneous option.
Answers to your questions above:
|
Co-authored-by: Tristan Youngs <[email protected]>
I'm a tad confused! Do we not still calculate coordination numbers in this module? |
Hah. Not as confused as me apparently! The CN calculation is still there, of course! Incidentally we have been talking about recombining |
Further to this, I just did a crude benchmark of the old vs new versions of the module and the gains are...... modest to say the least, with the old version clocking at 0.007 s/iter on my machine vs 0.0068 (at best) for the new. We can take positives in the fact that the old node-base system wasn't a complete overhead penalty, and the fact that we can easily go back in after all the modules are refactored and implement true parallelism. |
Co-authored-by: Tristan Youngs <[email protected]>
This PR implements the
SiteRDF
module outside of theProcedure
framework (similarly to #1747), and works towards #1769. I believe this is working as intended, but will need a more scientific eye to confirm!As a side, this PR also implements a
DataNormaliser1D
class for future analysis, with intentions of performing similarly to theoperate...Normalise
family of nodes.Some questions before merging can be performed:
instantaneous_
flag is not actually used - is this intentional? If not, then I can update the new analysis code to utilise it.DataNormaliser1D
methods that operate onSite
-based statistics just take the site population as input - which seems OK for now, but is there a better solution that would be more useful in the long term? Also, would it be better to have aDataNormaliserBase
, whichDataNormaliser1D
inherits from, or should we wait until 2/3D variants are needed?SiteRDF
test input files to enable theexcludeSameMolecule
flag, as it felt like it should be set in some places - is this correct? If not, there is a bigger problem at hand as disabling it causes the tests to fail!