LibMCS API

User 6f5b13c404

22-02-2010 18:57:36

The following questions refer to JChem 5.2 and the current website.


I'm a bit confused about discrepancies between the MCS API, the LibraryMCS API, the libmcs GUI app, and the documentation.


I note that


MCS has setIgnoreHybridization and setIgnoreIsotope in its matching options, but the LibraryMCS API does not.


However the libmcs 0.7 GUI has them in its Cluster>Options dialog


Am I right in thinking these used to be in the LibraryMCS class in older versions? Do they have any effect in the GUI app?


I also note that LibraryMCS has several methods relating to similarity thresholds, that are all marked as deprecated


 
void

setDissimCutoff(float dissimCutoff)



          Deprecated. This method has no affect from version 0.7 of LibraryMCS (JChem version 5.0.1) due to internal
incompatibilities.

















 void
setMCSSimilarityThreshold(float mcsSimilarityThreshold)



          Deprecated. The similarity threshold is not used from version 0.7 of LibraryMCS

 void
setMinimalSimilarityMeasurement(float minSimilarity)



          Deprecated. Minimal similarity measurement is not used from version 0.7



 


The help file under http://www.chemaxon.com/jchem/doc/user/LibMCS.html


however refers to a similarity command-line option -n, even though if you run LibraryMCS.main -n is mapped to the -minMCS option.

ChemAxon efa1591b5a

03-03-2010 23:34:31

Hi there,


Thank you for the accurate observations, I admit that the discrepancies between the API, GUI and the batch command line do exists. Namely, the charge, isotope and hybridization options do not work properly (i.e. have no effect on MCS search).


We will fix these problems and make the new version available for trial using java webstart. You will be notified when these hot-fixes are available.


Regarding the deprecated methods related to similarity thresholds: these have no effect any longer, and there aren't any other methods that provide the same or similar functionality. The reason for that is that similarity measures aren't directly used to control/terminate the clustering process as those were used in older versions of libmcs.


I have not found any ambiguous explanation in the user's documentation about these options or the -n flag. May I ask you to quote the part of the text which refers to the 'similarity command line option'? 


Thank you for the valuable feedback and please accept our apologies for the inconvenience these problems might cause.


Regards,


Miklos

User 6f5b13c404

03-03-2010 23:41:44

Hi,


thanks for looking into this.


If you see:


http://www.chemaxon.com/jchem/doc/user/LibMCS.html


Under "Comments on Some Parameters", you have (about 3 paragraphs down):


 


A more sophisticated termination condition can be specified by the
-n (--minSimilarity) option which sets the
minimal similarity measurement parameter. If this value is set, clustering stops
if there are no more compounds (on the current top level of the hierarchy) that
are more similar to each other than this threshold. This option has no default
value, however, when it is set, other options that affect the termination condition
(-c, -l and -e) are ignored.

ChemAxon efa1591b5a

05-03-2010 11:10:57

Hi,


That's tricky, since the text you refer to has been commented out. Ie. it's still there in the HTML source, but should be be displayed by your browser. You may need to clear your browser's cache to make sure that the new content downloads. It should appear like this:


 



Comments on Some Parameters


Parameters can be set in the Options dialog in the Cluster pull down menu.


There are a few tunable parameters involved in the detection of maximum common substructures of a set of compounds. Some of these are important in everyday use of libmcs while others remain interesting for experienced users only.


A typical way of usage is to define the maximum allowed levels of hierarchy. For instance, there are cases when only first level clusters are interesting, that is, the common substructures of the input molecule set is sought for, but these common structures are not clustered further. In such case there is no point to generate higher levels of hierarchy, this shortens the execution time. In order to stoplibmcs after the first level is created (ie. all input structures are clustered), has to be defined in the parameters dialog.


other options provide control the behaviour of the algorithm and are mainly intended for advanced users. 
The minimum allowed size of any MCS found can be set by Minimal MCS size. When set, for instance to 5, possible common structures smaller than 5 atoms are abandoned.


By default, the heap size in some Java runtime environments is limited to 64MB, so you may run out of memory easily. See FAQ on how to increase the heap size.


User 6f5b13c404

05-03-2010 18:45:32

Ha, yes - it sorted itself out when I cleared the browser caches. Something weird from when the website got updated, maybe.


Thanks very much for your responsiveness.

ChemAxon efa1591b5a

11-03-2010 11:58:46

Yes, website update might have affected that....


Anyway, those part are commented out at the moment, but those functionality should return soon in LibMCS. 


All suggestions to make the API clear, intuitive and easy to use are welcome.


 


Miklos

User 6f5b13c404

24-05-2010 14:51:16

Hi Miklos,


Just for your information, I figured out what was going on with the --minSimilarity option in the discussion above.


Appears to be a firefox bug. I'm using 3.6.3/Windows 32/XP. If I view the page in IE (6!) the commented-out text does not get rendered.


Might be an artifact of the way various browsers attempt to fix broken HTML.


So not your fault, and nothing to do with page caching, but probably worth being aware of for when users get mystified by a different version of the documentation than the one you think you have published!


 


Regards,


 


Ahmed

ChemAxon efa1591b5a

27-05-2010 13:20:05

Dear Ahmed,


Thank you for investigating this problem. I'm sure that this will be useful for other users. We will update the documentation accordingly.


Best regards


Miklos

User 6f5b13c404

02-02-2011 14:28:47

Hi,


I note that the LibraryMCS options setHybridizationMatch and setIsotopeMatch (which were reintroduced in 5.3), seem to have disappeared again in 5.4


Is this intentional?


 


Kind regards,


 


Ahmed Hussain

ChemAxon efa1591b5a

11-02-2011 15:23:56

Hi,


I'm afraid it is by mistake. It'll be fixed in the next minor release, 5.4.2.


 


Miklos

User 6f5b13c404

15-02-2011 10:19:52

Not to worry.


 


Thanks for the update.


 


Ahmed