-
Notifications
You must be signed in to change notification settings - Fork 8
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
Add geometry optimisation #33
Conversation
a8bfc1d
to
b86c129
Compare
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.
Mostly stylistic, but some over-generalisations on type-hints which would be nice to address.
32a9962
to
56fffd8
Compare
This was actually already possible via As with single point calculations, we need to document this soon and add examples (#34), even more so now the tests are a little harder to read off. |
56fffd8
to
1c824cb
Compare
Thanks for the suggestions! I think I've addressed most of them, with a couple of slightly open questions/comments. One thing you may notice is that there's now a mix of However, this seemed to break linking to ASE's documentation via |
1c824cb
to
5da7bc3
Compare
One additional option I've realised that @alinelena included in lavello/md.py is to read the saved trajectory (a pickled file) and rewrite e.g. as an extxyz: x = read(traj, index=":")
write(opt_traj, x, format="extxyz")
try:
p = pathlib.Path(traj)
p.unlink()
except:
pass Do we want to add this in as well, or is the current option of saving the .traj binary file enough? |
Why is the |
I was mostly just quoting the code that was in md.py for the gist, but good points, I'll fix those if we decide it's worth adding. |
The way this is done isn't quite a neat as I'd like, as you specify both the .traj file and the .xyz file, but I thought it's probably safer to require both be specified since the former is deleted after creation of the latter. I also changed saving the optimised structure to act in the same way as I've implemented this - requiring |
Resolves #32
This will require rebasing once #31 is merged.
To do: