Files
rdkit/Code/GraphMol/MolStandardize/test_data/ferrocene.mol
David Cosgrove 5fe20d270f Improved handling of organometallics (#6139)
* First stab at disconnecting organometallics the Syngenta way.

* Add support for Li and Na compounds, with tests.

* Correct docstrings.

* Add -1 valence to sodium.

* Add changes from PR 5997.

* Move declaration of disconnectOrganometallics.

* Re-factor tests for disconnectOrganometallics to read V3000 files rather than hard-code in file.

* Add optional options to constructor.

* Python wrapping for disconnectOrganometallics.

* Python tests.

* Correct docString.

* Test using in place overload of disconnect free function.

* options_ should not be a reference.

* Re-work the wrappers.

* Added test MOL files.

* Correct charge on iron atoms.

* Fix tests for charged iron.

* Added some more test complexes.

* Port Marco's oxidation number Python to C++ Descriptor.

* Rename functions.

* Another test.

* Python wrappers.

* Comment in test.

* Throws exception if atom-based function called with non-kekulized parent.

* Fix typo.

* Allow potassium as well.

* Whole molecule calculations for oxidation number only.
Rename prop to OxidationNumber.

* Add OxidationNumber to common_properties.

* Extra comment.

* When deleting atom, update any ENDPTS props on bonds.
Copied in from stale PR ExtraDoc.

* Added hapticBondsToDative with python wrapper.

* Extra test.

* Re-factor endpts parsing.

* Typo.

* Add function for haptic end points inc. Python wrapper.

* Add dative bonds in separate step.

* C++ version of dativeBondstoHaptic.

* Update test mols.

* Python wrapper.

* Fix indents in Python test script.

* Corrected expected test result.

* Only do non-metal to metal conversion of single bond to dative if the explicit valence of the non-metal allows it.

* Fix test broken in a non-material way by previous change.

* Export for DLL.

* Remove redundant function declaration.

* Dave hates Windows.

* Move hapticBondEndpoints to Molops::details.

* And take it out of the Python wrappers.

* Run yapf on reformatted test script.

* Get the DLL builds going.

* addDativeBond -> addHapticBond.

* Batch edits.

* Position arithmetic.

* setQuery.

* Dummy positions for all confs.

* Fix tests for dummy positions for all confs.

* Move tests to catch_organometallics.cpp.

* Modern docString.

* Change member variable names.

* sProp length, bonus batchEdit.

* Add options object to disconnectOrganometallics.

* Tidied license.
Atom precondition.

* GetIntProp.

* Test opts aren't defaults.

* Python wrapper for disconnectOrganometallics with options.

* Minor edit.

* Slightly random attempt to fix Java build.

* Response to review.

* Another stab at the doc strings.

---------

Co-authored-by: David Cosgrove <david@cozchemix.co.uk>
Co-authored-by: Greg Landrum <greg.landrum@gmail.com>
2023-03-18 04:36:38 +01:00

39 lines
1.0 KiB
Plaintext

ferrocene
RDKit 2D
0 0 0 0 0 0 0 0 0 0999 V3000
M V30 BEGIN CTAB
M V30 COUNTS 13 12 0 0 0
M V30 BEGIN ATOM
M V30 1 C -34.237900 13.261800 0.000000 0 CHG=-1
M V30 2 C -35.057400 14.266900 0.000000 0
M V30 3 C -37.855700 14.284400 0.000000 0
M V30 4 C -38.759100 13.293300 0.000000 0
M V30 5 C -36.552000 12.683200 0.000000 0
M V30 6 C -34.152900 8.363300 0.000000 0 CHG=-1
M V30 7 C -34.972400 9.368400 0.000000 0
M V30 8 C -37.770600 9.385900 0.000000 0
M V30 9 C -38.674100 8.394800 0.000000 0
M V30 10 C -36.450300 7.767900 0.000000 0
M V30 11 Fe -36.435100 10.904500 0.000000 0 CHG=2
M V30 12 * -36.522400 13.604600 0.000000 0
M V30 13 * -36.404100 8.656100 0.000000 0
M V30 END ATOM
M V30 BEGIN BOND
M V30 1 9 12 11 ENDPTS=(5 2 3 4 5 1) ATTACH=ALL
M V30 2 1 1 5
M V30 3 2 4 5
M V30 4 1 4 3
M V30 5 2 2 3
M V30 6 1 1 2
M V30 7 1 6 10
M V30 8 2 9 10
M V30 9 1 9 8
M V30 10 2 7 8
M V30 11 1 6 7
M V30 12 9 13 11 ENDPTS=(5 7 8 9 10 6) ATTACH=ALL
M V30 END BOND
M V30 END CTAB
M END
$$$$