view larch_criteria_report.xml @ 0:aa9cb2b42741 draft default tip

planemo upload for repository https://github.com/MaterialsGalaxy/larch-tools/tree/main/larch_criteria_report commit 5be486890442dedfb327289d597e1c8110240735
author muon-spectroscopy-computational-project
date Tue, 14 Nov 2023 15:34:55 +0000
parents
children
line wrap: on
line source

<tool id="larch_criteria_report" name="Larch Criteria Report" version="@TOOL_VERSION@+galaxy@WRAPPER_VERSION@" python_template_version="3.5" profile="22.05" license="MIT">
    <description>generate reports on Artemis fitting from XAFS data</description>
    <macros>
        <!-- version of underlying tool (PEP 440) -->
        <token name="@TOOL_VERSION@">3.5.2</token>
        <!-- version of this tool wrapper (integer) -->
        <token name="@WRAPPER_VERSION@">0</token>
        <!-- citation should be updated with every underlying tool version -->
        <!-- typical fields to update are version, month, year, and doi -->
        <token name="@TOOL_CITATION@">10.1109/MCSE.2007.55</token>
    </macros>
    <creator>
        <person givenName="Patrick" familyName="Austin" url="https://github.com/patrick-austin" identifier="https://orcid.org/0000-0002-6279-7823"/>
    </creator>
    <requirements>
        <requirement type="package" version="@TOOL_VERSION@">matplotlib</requirement>
        <requirement type="package" version="3.0">zip</requirement>
    </requirements>
    <required_files>
        <include type="literal" path="larch_criteria_report.py"/>
    </required_files>
    <command detect_errors="exit_code"><![CDATA[
        mkdir plots
        && input_file='$format.input_data'
        #if $format.format == 'zipped':
            && unzip \$input_file
            && input_file=report
        #end if
        && python '${__tool_directory__}/larch_criteria_report.py' \$input_file '$inputs'
    ]]></command>
    <configfiles>
        <inputs name="inputs"/>
    </configfiles>
    <inputs>
        <conditional name="format" >
            <param name="format" type="select" display="radio" label="Input format" help="Format of input file(s).">
                <option value="csv" selected="true">Single CSV</option>
                <option value="collection">Multiple FEFFIT reports</option>
                <option value="zipped">Zipped FEFFIT reports</option>
            </param>
            <when value="csv">
                <param name="input_data" type="data" format="csv" label="Criteria report" help="Report summarising logged criteria from an execution of Larch Artemis."/>
            </when>
            <when value="collection">
                <param name="input_data" type="data" format="feffit" multiple="true" label="Fit reports" help="Individual fit reports from independent executions of Larch Artemis."/>
                <repeat name="report_criteria" title="Report Criteria">
                    <param name="variable" type="text" label="Variable" help="Name of the variable of that appears in the statistics or variables sections of the report."/>
                </repeat>
            </when>
            <when value="zipped">
                <param name="input_data" type="data" format="zip" label="Zipped Artemis outputs" help="Zipped fit reports from series executions of Larch Artemis."/>
                <repeat name="report_criteria" title="Report Criteria">
                    <param name="variable" type="text" label="Variable" help="Name of the variable of that appears in the statistics or variables sections of the report."/>
                </repeat>
            </when>
        </conditional>
    </inputs>
    <outputs>
        <data name="criteria_report" format="csv" from_work_dir="criteria_report.csv" label="Tabulated criteria from ${on_string}">
            <filter>format["format"]!="csv"</filter>
        </data>
        <collection name="plots" format="png" type="list" label="Plots of criteria from ${on_string}">
            <discover_datasets pattern="__name_and_ext__" directory="plots"/>
        </collection>
    </outputs>
    <tests>
        <!-- From CSV -->
        <test expect_num_outputs="1">
            <param name="input_data" value="criteria_report.csv"/>
            <output_collection name="plots" type="list" count="2"/>
        </test>
        <!-- From TXT -->
        <test expect_num_outputs="2">
            <param name="format" value="collection"/>
            <param name="input_data" value="0.txt,1.txt"/>
            <param name="variable" value="alpha"/>
            <output name="criteria_report" file="criteria_report_alpha.csv"/>
            <output_collection name="plots" type="list" count="1"/>
        </test>
        <!-- From ZIP -->
        <test expect_num_outputs="2">
            <param name="format" value="zipped"/>
            <param name="input_data" value="artemis_outputs.zip"/>
            <param name="variable" value="alpha"/>
            <output name="criteria_report" file="criteria_report_zipped.csv"/>
            <output_collection name="plots" type="list" count="1"/>
        </test>
    </tests>
    <help><![CDATA[
        Plot criteria of interest from multiple Artemis fittings, for example where each dataset represents a sequential point in time.

        Either accepts a CSV summary from series execution (with criteria already selected), a zipped directory, or multiple datasets/a collection of fit reports from parallel execution.
        In the latter cases, the criteria of interest need to be specified.
    ]]></help>
    <citations>
        <citation type="doi">@TOOL_CITATION@</citation>
    </citations>
</tool>