Skip to content
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 an internal implementation of UFF #1963

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

ghutchis
Copy link
Member

@ghutchis ghutchis commented Feb 5, 2025

Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.

@ghutchis ghutchis added the enhancement feature changes / API changes label Feb 5, 2025

// remaining elements, we want the coordination number
// and possibly formal charge
int charge = m_molecule->formalCharge(i);

Check notice

Code scanning / CodeQL

Unused local variable Note

Variable charge is not used.
avogadro/calc/uff.cpp Dismissed Show dismissed Hide dismissed
avogadro/calc/uff.cpp Fixed Show fixed Hide fixed
avogadro/calc/uff.cpp Fixed Show fixed Hide fixed
avogadro/calc/uff.cpp Fixed Show fixed Hide fixed
avogadro/calc/uff.cpp Fixed Show fixed Hide fixed
@ghutchis
Copy link
Member Author

ghutchis commented Feb 5, 2025

This code is still very experimental (e.g., no angle, torsion, OOP or vdW terms). It may turn your computer or molecule into a black hole. You have been warned.

I'm going to work through bit-by-bit until it's a full implementation with unit tests.

Core::Molecule::ElementMask elements() const override { return (m_elements); }

Real value(const Eigen::VectorXd& x) override;
// void gradient(const Eigen::VectorXd& x, Eigen::VectorXd& grad) override;

Check notice

Code scanning / CodeQL

Commented-out code Note

This comment appears to contain commented-out code.
avogadro/calc/uff.cpp Fixed Show fixed Hide fixed
@avo-bot
Copy link

avo-bot commented Feb 11, 2025

This pull request has been mentioned on Avogadro Discussion. There might be relevant details there:

https://discuss.avogadro.cc/t/february-2025-live-updates/6757/1

Signed-off-by: Geoff Hutchison <[email protected]>
@ghutchis ghutchis changed the title WIP: Add an internal implementation of UFF Add an internal implementation of UFF Feb 12, 2025
@ghutchis
Copy link
Member Author

  • Implement analytical gradients
  • Torsion special cases
  • Angle special cases (e.g., 5-coordinate, 7-coordinate, higher coordination)
  • Unit tests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement feature changes / API changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants