Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
e4655d5
add placeholder method for molecule from qcarchive
Dec 11, 2019
a00f878
Allowed RDKit to read PDBs only when combined with a valid smiles str…
Dec 17, 2019
fea5afd
Allowed RDKit to read PDBs only when combined with a valid smiles str…
Dec 18, 2019
22ebb1d
Allowed RDKit to read PDBs only when combined with a valid smiles str…
Dec 19, 2019
5e56a4d
fixed __eq__, added the is_ismorphic_with(other) function
Jan 3, 2020
50f06c5
Merge branch 'master' of https://github.com/openforcefield/openforcef…
Jan 3, 2020
73cc43c
added tests for hill formula, is_isomorphic_with and are_isomorphic, …
Jan 3, 2020
1d77151
added tests for hill formula, is_isomorphic_with and are_isomorphic, …
Jan 3, 2020
b7ac66f
tests clean up
Jan 6, 2020
0ea045d
topology clean up to use the new isomorphic methods in the Molecule c…
Jan 6, 2020
9793294
Added tests for the from pdb and smiles function for rdkit, and the f…
Jan 10, 2020
762c6c4
Merge branch 'master' of https://github.com/openforcefield/openforcef…
Jan 10, 2020
89cf839
Merge branch 'master' into mol_from_qca
Jan 10, 2020
446b49e
Added tests for the from pdb and smiles function for rdkit, and the f…
Jan 13, 2020
7e2fc38
Merge remote-tracking branch 'origin/mol_from_qca' into mol_from_qca
Jan 13, 2020
e836091
Added tests for the from pdb and smiles function for rdkit, and the f…
Jan 13, 2020
aa618a4
Added tests for the from pdb and smiles function for rdkit, and the f…
Jan 13, 2020
0fb8c13
added canonical order method using the toolkit back ends, updated doc…
Jan 23, 2020
a2fc77a
cleaned up type checking to avoid cyclic imports and added the from p…
Jan 28, 2020
7751350
Merge branch 'master' of https://github.com/openforcefield/openforcef…
Jan 28, 2020
b179c29
Merge branch 'master' into mol_from_qca
Jan 28, 2020
ada114d
Merge branch 'master' into mol_from_qca
Jan 29, 2020
f8508e9
Fixed #412 by hiding the atom map in the properties of the rdmol when…
Jan 31, 2020
9e46d61
Merge branch 'master' of https://github.com/openforcefield/openforcef…
Jan 31, 2020
e9ff584
Merge remote-tracking branch 'origin/mol_from_qca' into mol_from_qca
Jan 31, 2020
cb104da
updated tests to cover the main dataset types in the qcarchive.
Jan 31, 2020
930ec61
fixed the hill formula to construct in alphabetical order.
Jan 31, 2020
4d6d195
fixed the notebook example to use OFFTK, openmm and qcengine to compu…
Jan 31, 2020
8291506
Merge branch 'master' into mol_from_qca
j-wags Feb 2, 2020
11fd6f1
remove whitespace from notebook name
j-wags Feb 3, 2020
d5649b8
Exclude qcarchive example if no rdkit.
Feb 3, 2020
5ae3dbc
Fixed notebook energy example using qcengine, added spelling changes …
Feb 5, 2020
38d8022
Merge branch 'master' of https://github.com/openforcefield/openforcef…
Feb 5, 2020
65a1073
Merge remote-tracking branch 'origin/mol_from_qca' into mol_from_qca
Feb 5, 2020
83da5e5
Changelog updated.
Feb 5, 2020
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
7 changes: 5 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,14 +95,17 @@ script:
pytest --ignore=utilities --ignore=examples/deprecated --ignore=docs
--ignore=devtools --doctest-modules --nbval-lax --cov=openforcefield
--cov-config=setup.cfg;
elif [[ "$OPENEYE" == true ]];
elif [[ "$RDKIT" == false && "$OPENEYE" == true ]];
then
pytest --ignore=utilities --ignore=examples/deprecated --ignore=docs
--ignore=devtools --ignore=examples/check_dataset_parameter_coverage
--ignore=examples/QCArchive_interface
--nbval-lax --cov=openforcefield --cov-config=setup.cfg;
else
elif [[ "$RDKIT" == true && "$OPENEYE" == false ]];
then
pytest --ignore=utilities --ignore=examples/deprecated
--nbval-lax --cov=openforcefield --cov-config=setup.cfg;

fi

# Raise a fuss if cron jobs break
Expand Down
3 changes: 3 additions & 0 deletions devtools/conda-envs/test_env.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ dependencies:
- bson
- msgpack-python
- xmltodict
- qcelemental
- qcportal
- qcengine

# Pip-only installs
#- pip:
Expand Down
63 changes: 63 additions & 0 deletions docs/releasehistory.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,18 @@ New features
The :py:class:`Molecule <openforcefield.topology.Molecule>` adds
:py:meth:`Molecule.has_unique_atom_names <openforcefield.topology.Molecule.has_unique_atom_names>`
and :py:meth:`Molecule.has_unique_atom_names <openforcefield.topology.Molecule.generate_unique_atom_names>`.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_:
The :py:class:`Molecule <openforcefield.topology.Molecule>` adds
:py:meth:`Molecule.are_isomorphic <openforcefield.topology.Molecule.are_isomorphic>`
and :py:meth:`Molecule.is_isomorphic_with <openforcefield.topology.Molecule.is_isomorphic_with>`
and :py:meth:`Molecule.hill_formula <openforcefield.topology.Molecule.hill_formula>`
and :py:meth:`Molecule.to_hill_formula <openforcefield.topology.Molecule.to_hill_formula>`
and :py:meth:`Molecule.to_qcschema <openforcefield.topology.Molecule.to_qcschema>`
and :py:meth:`Molecule.from_qcschema <openforcefield.topology.Molecule.from_qcschema>`
and :py:meth:`Molecule.from_mapped_smiles <openforcefield.topology.Molecule.from_mapped_smiles>`
and :py:meth:`Molecule.from_pdb_and_smiles <openforcefield.topology.Molecule.from_pdb_and_smiles>`
and :py:meth:`Molecule.canonical_order_atoms <openforcefield.topology.Molecule.canonical_order_atoms>`
and :py:meth:`Molecule.remap <openforcefield.topology.Molecule.remap>`

Behavior changed
""""""""""""""""
Expand All @@ -24,6 +36,15 @@ Behavior changed
are generated (overriding any existing atom names) if the provided atom names are not unique. This
uniqueness extends only to atoms in the same molecule. To disable this behavior, set the kwarg
``ensure_unique_atom_names=False``.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_:
The :py:meth:`Molecule.__eq__ <openforcefield.topology.Molecule.__eq__>` now uses the new
:py:meth:`Molecule.are_isomorphic <openforcefield.topology.Molecule.are_isomorphic>` to perform the
similarity checking.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_:
The :py:meth:`Topology.from_openmm <openforcefield.topology.Topology.from_openmm>` and
:py:meth:`Topology.add_molecule <openforcefield.topology.Topology.add_molecule>` now use the
:py:meth:`Molecule.are_isomorphic <openforcefield.topology.Molecule.are_isomorphic>` to match
molecules.

Tests added
"""""""""""
Expand All @@ -32,13 +53,55 @@ Tests added
- `PR #469 <https://github.com/openforcefield/openforcefield/pull/469>`_: Added tests for unique atom
naming behavior in :py:meth:`Topology.to_openmm <openforcefield.topology.Topology.to_openmm>`, as
well as tests of the ``ensure_unique_atom_names=False`` kwarg disabling this behavior.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added tests for
:py:meth:`Molecule.hill_formula <openforcefield.topology.Molecule.hill_formula>` and
:py:meth:`Molecule.to_hill_formula <openforcefield.topology.Molecule.to_hill_formula>` for the
various supported input types.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added round-trip test for
:py:meth:`Molecule.from_qcschema <openforcefield.topology.Molecule.from_qcschema>` and
:py:meth:`Molecule.to_qcschema <openforcefield.topology.Molecule.to_qcschema>`.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added tests for
:py:meth:`Molecule.is_isomorphic_with <openforcefield.topology.Molecule.is_isomorphic_with>` and
:py:meth:`Molecule.are_isomorphic <openforcefield.topology.Molecule.are_isomorphic>`
with various levels of isomorphic graph matching.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added toolkit dependent tests
for :py:meth:`Molecule.canonical_order_atoms <openforcefield.topology.Molecule.canonical_order_atoms>`
due to differences in the algorithms used.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added a test for
:py:meth:`Molecule.from_mapped_smiles <openforcefield.topology.Molecule.from_mapped_smiles>` using
the molecule from issue #412 to ensure it is now fixed.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added a test for
:py:meth:`Molecule.remap <openforcefield.topology.Molecule.remap>`, this also checks for expected
error when the mapping is not complete.
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Added tests for
:py:meth:`Molecule.from_pdb_and_smiles <openforcefield.topology.Molecule.from_pdb_and_smiles>`
to check for a correct combination of smiles and PDB and incorrect combinations.

Bugfixes
""""""""
- `Issue #460 <https://github.com/openforcefield/openforcefield/issues/460>`_: Creates unique atom
names in :py:meth:`Topology.to_openmm <openforcefield.topology.Topology.to_openmm>` if the existing
ones are not unique. The lack of unique atom names caused problems in workflows involving
downstream tools that expect unique atom names.
- `Issue #448 <https://github.com/openforcefield/openforcefield/issues/448>`_: We can now make molecules
from mapped smiles using :py:meth:`Molecule.from_mapped_smiles <openforcefield.topology.Molecule.from_mapped_smiles>`
where the order will correspond to the indeing used in the smiles.
Molecules can also be re-indexed at any time using the
:py:meth:`Molecule.remap <openforcefield.topology.Molecule.remap>`.
- `Issue #462 <https://github.com/openforcefield/openforcefield/issues/462>`_: We can now instance the
:py:class:`Molecule <openforcefield.topology.Molecule>` from a QCArchive entry record instance or dictionary
representation.
- `Issue #412 <https://github.com/openforcefield/openforcefield/issues/412>`_: We can now instance the
:py:class:`Molecule <openforcefield.topology.Molecule>` using
:py:meth:`Molecule.from_mapped_smiles <openforcefield.topology.Molecule.from_mapped_smiles>` which allows
the creation of the problematic molecule in the issue with out the need to use the ``allow_undefined_stero`` kwarg.``

Example added
"""""""""""""
- `PR #472 <https://github.com/openforcefield/openforcefield/pull/472>`_: Adds an example notebook
`QCarchive_interface.ipynb <https://github.com/openforcefield/openforcefield/blob/master/examples/QCArchive_interface/QCarchive_interface.ipynb>`
which shows users how to instance the :py:class:`Molecule <openforcefield.topology.Molecule>` from
a QCArchive entry level record and calculate the energy using RDKit through QCEngine.

0.6.0 - Library Charges
-----------------------
Expand Down
Loading