Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion openff/toolkit/topology/molecule.py
Original file line number Diff line number Diff line change
Expand Up @@ -2573,6 +2573,7 @@ def assign_partial_charges(
Supported charge methods vary from toolkit to toolkit, but some
supported methods are:

- ``"openff-gnn-am1bcc-1.0.0.pt"``, codename "AshGC"
- ``"am1bcc"``
- ``"am1bccelf10"`` (requires OpenEye Toolkits)
- ``"am1-mulliken"``
Expand All @@ -2583,7 +2584,9 @@ def assign_partial_charges(
in the charge calculation. Instead, any conformers needed for
the charge calculation are generated by this method. If this
behavior is undesired, specific conformers can be provided via the
``use_conformers`` argument.
``use_conformers`` argument. These options do not apply to charges
generated from graph-convolutional neural networks (GCNNs) like
AshGC, which do not use conformers at all.

ELF10 methods will neither fail nor warn when fewer than the
expected number of conformers could be generated, as many small
Expand All @@ -2597,6 +2600,8 @@ def assign_partial_charges(
For more supported charge methods and their details, see the
corresponding methods in each toolkit wrapper:

- :meth:`NAGLToolkitWrapper.assign_partial_charges \
<openff.toolkit.utils.toolkits.NAGLToolkitWrapper.assign_partial_charges>`
- :meth:`OpenEyeToolkitWrapper.assign_partial_charges \
<openff.toolkit.utils.toolkits.OpenEyeToolkitWrapper.assign_partial_charges>`
- :meth:`RDKitToolkitWrapper.assign_partial_charges \
Expand All @@ -2606,6 +2611,11 @@ def assign_partial_charges(
- :meth:`BuiltInToolkitWrapper.assign_partial_charges \
<openff.toolkit.utils.toolkits.BuiltInToolkitWrapper.assign_partial_charges>`

For more on some charge methods supported by SMIRNOFF force fields such as Sage,
see the following sections of the SMIRNOFF specification:

.. _NAGLCharges: https://openforcefield.github.io/standards/standards/smirnoff/\
#naglcharges-use-a-specified-nagl-model-file-for-charge-assignment
.. _ToolkitAM1BCC: https://openforcefield.github.io/standards/standards/smirnoff/\
#toolkitam1bcc-temporary-support-for-toolkit-based-am1-bcc-partial-charges

Expand Down Expand Up @@ -2633,6 +2643,11 @@ def assign_partial_charges(
Examples
--------

Assign AshGC charges to a long alkane:

>>> c200 = Molecule.from_smiles(200 * "C")
>>> c200.assign_partial_charges("openff-gnn-am1bcc-1.0.0.pt")

Generate AM1 Mulliken partial charges. Conformers for the AM1
calculation are generated automatically:

Expand Down
Loading