*CellNetAnalyzer* - Detailed Description

*CellNetAnalyzer* runs under MATLAB and is thus independent of your operating system. It directly benefits from MATLAB's built-in functions and the rich functionalities for building graphical user interfaces. Basically,* CellNetAnalyzer* consists of (i) user-defined network projects and (ii) a toolbox with various functions for structural network analysis:

(i) **Network projects** are created and designed by the user. A network project is of type *Mass-flow* (modeling material flows as in metabolic or other stoichiometric reaction networks) or of type *Signal-flow* (modeling information or signal flows as in signal transduction networks or regulatory networks). Each network project comprises an abstract (symbolic) network representation as well as one or several network graphics visualizing the network under investigation. The abstract network model is composed by declaring network elements such as reactions or compounds (see Fig. 1 and Fig. 2), whereas the network graphics have to be imported and thus created by other programs (e.g. CellDesigner, xfig, CorelDraw etc.; for signal-flow networks, ProMoT provides an elegant solution to construct network map AND network model (in *CellNetAnalyzer* format) in one step). Network model and graphical network representation can then be linked with the help of user interfaces (text boxes) leading to interactive network maps. Examples are shown in Fig. 3 (stoichiometric network) and Fig.4 (signal-flow network). Interactive network maps are the central components of network projects. The text boxes facilitate input and output (e.g. of reaction rates) directly within the network visualization.

(ii) The **toolbox** of *CellNetAnalyzer* provides functions and procedures which, depending on the network type, facilitate stoichiometric (metabolic) network analysis or the analysis of signal-flow networks (see list below). These functions can be started conveniently from a pull-down menu in the network maps and the user has not to be aware of mathematical details. Some algorithms use the MEX interface of MATLAB to call precompiled C files, others make use of external solvers (e.g. CPLEX, glpk). Computed results are displayed in the interactive maps; different coloration of the text boxes allows highlighting certain results. For example, the screen shot in Fig. 3 shows a scenario of metabolic flux analysis and Fig. 4 a logical steady state resulting from an external stimulation in a signaling network.

*CellNetAnalyzer* provides also **API** (**Applications Programming Interface**) functionalities enabling the exchange of data/variables/models between *CellNetAnalyzer* and external applications. Furthermore, many functionalities (e.g. calculation of elementary modes or of feedback loops) can also be called from MATLAB command line without the need to first build a *CellNetAnalyzer* project with interactive maps. User functions can also be embedded in the CNA menu.

Here is an incomplete list of functions for network analysis provided in *CellNetAnalyzer*:

### Mass-flow (stoichiometric, metabolic) networks:

### Analysis of basic topological/structural properties

- Computation of graph-theoretical path lengths in an directed and undirected graph representation of the reaction network; determination of network diameter
- Detection of (elementary) conservation relations, enzyme subsets, isozymes, blocked and parallel reactions
- Connectivity histogram

### Metabolic flux analysis

- Classification of flux scenarios (determinacy and redundancy) and rates (balanceability and calculability)
- Calculation of flux distributions based on given (measured) reaction rates
- Balancing and consistency checks in redundant systems
- Sensitivity analysis of calculated rates
- Feasibility check of a given scenario

### Flux balance analysis (FBA; flux optimization)

- Flux optimization subject to user-defined linear objective functions
- Flux variability analysis
- Yield maximization
- Yield space plot and phase planes (production envelopes)

### Metabolic pathway analysis / Elementary-modes analysis

- Large-scale calculation of elementary (flux) modes, extreme pathways and convex bases (METATOOL or EFMTOOL can be used for calculations)
- New: inhomogeneous constraints can be considered for calculating extreme points, extreme rays, or elementary vectors of flux polyhedra
- Computed pathways can be displayed in the interactive maps
- Selection of pathways with respect to certain criteria
- Statistical analysis of pathways:
- Yield histogram; detection of optimal and suboptimal pathways
- Yield space plot and phase planes
- Reaction participation; prediction of mutant phenotypes
- Quantitative estimating the importance of reactions: control-effective fluxes (CEF)
- Pathway lengths histogram
- Export of computed elementary modes for external analysis

### Minimal cut sets

- Finding targets in and analyzing the fragility of biochemical reaction networks
- Efficient calculation of minimal cut sets (with respect to a specified set of (target) elementary modes)
- Constrained minimal cut sets (cMCS) can be computed (by specifying a set of target modes and a set of desired modes)
- Display of minimal cut sets within the interactive maps
- Statistical analysis and assessment of minimal cut sets
- New: API functions allow calculation of smallest constrained MCS (and constrained regulatory MCS) in large-scale networks without the need to first calculate elementary modes

### Signal-flow (signaling, regulatory) networks:

### Analysis of interaction graphs

- Basic topological properties
- Large-scale enumeration of positive and negative signaling paths connecting inputs with outputs or of all signaling paths between given sets of start and end nodes; statistical analysis of these paths
- Large-scale enumeration of all positive and negative feedback loops; statistical analysis of these loops
- Computation of minimal cut sets (removing reactions or species) for a given set of paths or/and loops
- Computation of distance (shortest paths) matrices; separately for positive and negative paths
- Large-scale dependency analysis (which species has (positive/negative) influence on which species; identification of activators and inhibitors of a given species enabling predictions on perturbation experiments)
- Detection of inconsistencies between experimental (high-throughput) data and dependency matrix

### Analysis of logical (Boolean) interaction networks

- Arbitrary logical models (constructed with AND,OR and NOT operators) with Boolean or multiple discrete levels can be set-up
- Logical steady state analysis for a given set of inputs/fixed states: useful for studying input-output behavior and signal processing
- Odefy plugin (developed by Fabian Theis' group: Jan Krumsiek, Dominik Wittmann): simulate and export ODE models created from Boolean models
- Computation of (logical) minimal intervention sets (sets of knock-outs/knock-ins) repressing or provoking a certain behavior or function of the network
- Computation of species equivalence classes
- Automated conversion of the logical model into an interaction graph

### General features (for mass-flow and signal-flow networks):

- API: The API (Application Programming Interface) of CNA allows interested users and developers
- To read/write or import/export the network structure of a project
- To read values from text boxes (GUIs), then to perform own calculations and finally to display the results in the interactive network maps
- To call selected functions of CNA (such as the computation of elementary modes or signaling paths) independently of the CNA GUI
- To integrate own functions as a new menu-entry in CNA's menu - you can thus construct and integrate plugins for CNA
- To change network/project attributes directly from MATLAB's command line (only for advanced users; not recommended for beginners)

- Cliboard function: for saving (temporarily) intermediate results; allows also arithmetic combination of different scenarios (+, -, \, *) - useful for comparing different scenarios (e.g. different flux distributions)
- Network composer (Fig. 1): for managing and editing the network structure (based on masks as in Fig. 2)
- Element selector: search for species and reactions/interactions using diverse filters and specifications
- Scenarios (e.g. different flux distributions) can be saved and then loaded later again
- Export of the networks in ASCII format
- SBML export and import of mass-flow networks; SBML qual export of signal-flow networks
- Zoom tool (for zooming in and out in large maps)
- Toolbar for frequently used actions (e.g. loading or saving a scenario)