view curve_fitting.xml @ 5:e0af18405e37 draft

planemo upload for repository https://github.com/BMCV/galaxy-image-analysis/tree/master/tools/curve_fitting/ commit cd63bc5e6eb7254111012209fac9154569355f20
author imgteam
date Tue, 19 Jul 2022 08:51:41 +0000
parents 004c57179c61
children 2dc244356765
line wrap: on
line source

<tool id="ip_curve_fitting" name="Curve Fitting" version="0.0.3" profile="20.05"> 
    <description>to data points using (1st- or 2nd-degree) polynomial function</description>
    <requirements>
        <requirement type="package" version="1.20.2">numpy</requirement>
        <requirement type="package" version="3.0.7">openpyxl</requirement>
        <requirement type="package" version="1.2.4">pandas</requirement>
        <requirement type="package" version="1.6.2">scipy</requirement>
    </requirements>
    <command>
    <![CDATA[
python '$__tool_directory__/curve_fitting.py'
    '$fn_in'
    ./output.xlsx
    $degree
    $penalty
    $alpha
    ]]>
    </command>
    <inputs>
        <param name="fn_in" type="data" format="xlsx" label="File name of input data points (xlsx)" />
        <param name="degree" type="select" label="Degree of the polynomial function">
            <option value="2" selected="True">2nd degree</option>
            <option value="1">1st degree</option>
        </param>
        <param name="penalty" type="select" label="Optimization objective for fitting">
            <option value="abs" selected="True">Least absolute deviations (LAD)</option>
            <option value="quadratic">Least squares (LS)</option>
            <option value="student-t">Robust non-convex penalty</option>
        </param>
        <param name="alpha" type="float" value="0.01" label="Significance level for generating assistive curves" />
    </inputs>
    <outputs>
        <data format="xlsx" name="fn_out" from_work_dir="output.xlsx"/>
    </outputs>
    <tests>
        <test>
            <param name="fn_in" value="spots_linked.xlsx"/>
            <param name="degree" value="2"/>
            <param name="penalty" value="abs"/>
            <param name="alpha" value="0.01"/>
            <output name="fn_out" value="curves_fitted.xlsx" ftype="xlsx" compare="sim_size"/>
        </test>
    </tests>
    <help>
    **What it does**

    This tool fits (1st- or 2nd-degree) polynomial curves to data points. Optional: Given a significance level, assistive curves will also be generated.
    </help>
    <citations>
        <citation type="doi">10.1097/j.pain.0000000000002642</citation>
    </citations>
</tool>