view gem_flux_distribution.xml @ 0:1c71660496fb draft default tip

planemo upload for repository https://github.com/AlmaasLab/elixir-galaxy-tools-systemsbiology commit 3f7bec1264a86e1488ee1315dbac0f44675f5171
author iuc
date Fri, 13 Dec 2024 21:33:11 +0000
parents
children
line wrap: on
line source

<tool id="gem_flux_distribution" name="Calculate flux distribution" version="@VERSION@" profile="@PROFILE@">
    <description> 
        of a GEM
    </description>
    <macros>
        <import>gem_macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="version_command_cobra"/>
    <command>
        python '$__tool_directory__/gem_flux_distribution.py'
            --cb_model_location '${cb_model_location}'
            -output '${output}'
            --uptake_constraints_file '${uptake_constraints_file}'
    </command>
    <inputs>
        <expand macro="input_model"/>
        <expand macro="input_uptake_constraints"/>
    </inputs>
    <outputs>
        <expand macro="output"/>
    </outputs>
    <tests>
        <!-- Ensuring that minimal_gem.xml with minimal_gem_exchange_reactions.csv runs -->
        <test>
            <param name="cb_model_location" value="textbook_model_cobrapy.xml"/>
            <param name="uptake_constraints_file" value="textbook_model_cobrapy_exchange.csv"/>
            <output name="output">
                <assert_contents>
                    <has_line line="reaction_name;reaction_id;flux"/>
                </assert_contents>
            </output>
        </test>
        <!-- Test 2: Invalid model format -->
        <test expect_failure="true">
            <param name="cb_model_location" value="invalid_format.txt"/>
            <assert_stderr>
                <has_text text="The model could not be read"/>
            </assert_stderr>
        </test>
        <expand macro="test_invalid_model"/>
    </tests>
    <help><![CDATA[
        Flux distribution

        This tool performs Flux Balance Analysis (FBA) to calculate the optimal flux distribution of a Genome-scale Metabolic Model (GEM).

        What it does

        * Reads a SBML-formatted metabolic model
        * Applies user-specified uptake constraints
        * Calculates the optimal flux distribution using FBA
        * Outputs the results in CSV format

        Input files

        *Model file** (required): Must be in SBML format (.xml), compatible with COBRApy
        *Uptake constraints file* (optional): CSV format

        Output

        The tool generates a CSV file containing:
        * Reaction IDs
        * Calculated flux values for each reaction
        * Optimal flux distribution based on the model's objective function

        Common Issues

        If the tool fails, check:
        * Is your SBML model valid?
        * Are the uptake constraints properly formatted?
        * Are the reaction IDs in the constraints file matching those in the model?
        * Does your model have a valid objective function?

        For more information about FBA, visit: http://cobrapy.readthedocs.io/
    ]]></help>
    <citations>
        <expand macro="citation_pandas"/>
        <expand macro="citation_cobrapy"/>
    </citations>
</tool>