view sucos_max.xml @ 7:9b48456a96fe draft default tip

"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/sucos commit 05dc325ce687441e5d3bdbdedcc0e3529cd5e070"
author bgruening
date Wed, 14 Apr 2021 09:30:28 +0000
parents 55ac04db36aa
children
line wrap: on
line source

<tool id="sucos_max_score" name="Max SuCOS score" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@">
    <description>- determine maximum SuCOS score of ligands against clustered fragment hits</description>
    <macros>
        <import>sucos_macros.xml</import>
        <token name="@GALAXY_VERSION@">0</token>
    </macros>
    <expand macro="requirements"/>
    <command detect_errors="exit_code"><![CDATA[
        python '$__tool_directory__/sucos_max.py'
            -i '$input'
            -o '$output'
        #if $filter_field and $filter_value
            --filter-field '$filter_field' --filter-value $filter_value
        #end if
        #for $cluster in $clusters
            '$cluster'
        #end for
    ]]></command>
    <inputs>
        <param name="input" type="data" format="sdf" label="Ligands to be scored" help="Input in SDF format." />
        <param name="clusters" type="data" format="sdf" multiple="true" label="Set of clusters to score against" help="Clusters in SDF format." />
        <param name="filter_field" type="text" label="Filter field" optional="true"
               help="Filter output using this field's values. (e.g. Max_SuCOS_Score or Cum_SuCOS_Score)">
            <sanitizer>
                <valid initial="string.printable">
                    <remove value="&apos;"/>
                </valid>
                <mapping initial="none"/>
            </sanitizer>
        </param>
        <param name="filter_value" type="float" label="Filter value" optional="true"
               help="Filter out scores less than this value."/>
    </inputs>
    <outputs>
        <data format="sdf" name="output" label="The scored ligands"/>
    </outputs>
    <tests>
        <test>
            <param name="input" ftype="sdf" value="sucos_cluster.sdf"/>
            <param name="clusters" ftype="sdf" value="cluster1.sdf,cluster2.sdf,cluster3.sdf,cluster4.sdf,cluster5.sdf,cluster6.sdf"/>
            <output name="output" ftype="sdf">
                <assert_contents>
                    <has_text text="Max_SuCOS_Score" />
                    <has_text text="Cum_SuCOS_Score" />
                    <has_n_lines n="2224" />
                </assert_contents>
            </output>
        </test>
        <test>
            <param name="input" ftype="sdf" value="sucos_cluster.sdf"/>
            <param name="clusters" ftype="sdf" value="cluster1.sdf,cluster2.sdf,cluster3.sdf,cluster4.sdf,cluster5.sdf,cluster6.sdf"/>
            <param name="filter_field" value="Cum_SuCOS_Score"/>
            <param name="filter_value" value="15"/>
            <output name="output" ftype="sdf">
                <assert_contents>
                    <has_text text="Max_SuCOS_Score" />
                    <has_text text="Cum_SuCOS_Score" />
                    <has_n_lines n="463" />
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[

.. class:: infomark

**What it does**

This tool determines the maximum SuCOS score of ligands, presumed to be potential follow on compounds, compared to a
set of clustered reference compounds, presumed to be fragment screening hits. Each ligand to be scored is compared to
all of the reference compounds with the highest score being recorded, along with the cluster it came from and the index
of the molecule within that cluster.

The original SuCOS code is on GitHub_ under a MIT license. The SuCOS work is described here_.

.. _GitHub: https://github.com/susanhleung/SuCOS
.. _here: https://chemrxiv.org/articles/SuCOS_is_Better_than_RMSD_for_Evaluating_Fragment_Elaboration_and_Docking_Poses/8100203

.. class:: infomark

**Input**

The clustered reference compounds are likely to have been generated using the "Cluster ligands using SuCOS" tool and
will comprise a SDF format file for each cluster. The ligands to be scored are supplied in a SDF file.

Optional filtering of the output is possible, for instance to retain only records with SuCOS scores greater that a
certain value. Use the optional 'Filter field' and 'Filter value' parameters. The 'Filter field' would typically
be one of the properties listed below.

.. class:: infomark

**Output**

The same SD file as the input ligands with  the following properties added:

* Max_SuCOS_Score - the best (maximum) SuCOS score
* Max_SuCOS_FeatureMap_Score - the corresponding FeatureMap score
* Max_SuCOS_Protrude_Score - the corresponding Protrude score
* Max_SuCOS_Cluster - the file name of the cluster that contained the max score
* Max_SuCOS_Index - the index of the cluster that contained the max score (first record is index 1)
* Cum_SuCOS_Score - the cumulative SuCOS score for all overlays (the sum of the individual scores)
* Cum_SuCOS_FeatureMap_Score - the corresponding FeatureMap score
* Cum_SuCOS_Protrude_Score - the corresponding Protrude score

    ]]></help>
    <expand macro="citations"/>
</tool>