Contributions from Markus Kossner

Descriptions:

#-------------------------------
Frames.py:

Basically what the code does is a walk from every Atom that is the
neighbor of a ring away from that ring.  If we can not reach another
ring on the way, the atom chain will be deleted. However, as soon as
we reach another ring, the chain will become a connecting chain in the
scaffold. Ring Atoms [found by GetRingInfo()] as well as connecting
non-ring chains are stored in a Chem.EditableMol-Object representing
the Scaffold of the molecule.

There is a function, that can return this scaffold in two forms that
differ in the interpretation of what a 'Scaffold' is:

- with mode='RedScaff' a Scaffold will be the pure molecular core
  ignoring bond or atom types!  this is done by running over the
  Scaffold (...the editable mol from above) and changing any atom to
  carbon and any bond to a single bond

- with mode='Scaff' a Scaffold will be sensitive of element and bond
  type.  With mode='Scaff' Cyclohexyl-, phenyl or pyridyl- mojeties
  will be different ring species.  mode='RedScaff' will interpret them
  as six-membered rings and make all of them become a cyclohexane in
  the scaffold representation.

Usage of the script:
- simply supply a .sdf file after the script name.
- The program will generate a .sdf file called frames.sdf containing the
cluster ID of the frame it belongs to as a property tag.
- Additionally the raw frames are output to 'frames.smi'. This is a
simple enumeration of the frames detected.

Please note, that the data is preliminary stored in memory. This
means, that very large input files may cause the consumption of large
amounts of memory at runtime!

#-------------------------------
BaseFeatures_DIP2_NoMicrospecies.fdef

After I talked to Nik at the Sheffield Conference about the difficulty
of defining Positive/Negative ionizable features by SMARTS he asked me
to to send my approach towards the problem.  Attached you will find
the .fdef file I use. Hopefully there is something in there that might
help in setting up robust feature definitions.

