Abstract
Background
Quantitative knowledge of intracellular fluxes is important for a comprehensive characterization of metabolic networks and their functional operation. In contrast to direct assessment of metabolite concentrations, in vivo metabolite fluxes must be inferred indirectly from measurable quantities in ^{13}C experiments. The required experience, the complicated network models, large and heterogeneous data sets, and the timeconsuming setup of highly controlled experimental conditions largely restricted metabolic flux analysis to few expert groups. A conceptual simplification of flux analysis is the analytical determination of metabolic flux ratios exclusively from MS data, which can then be used in a second step to estimate absolute in vivo fluxes.
Results
Here we describe the userfriendly software package FiatFlux that supports flux analysis for nonexpert users. In the first module, ratios of converging fluxes are automatically calculated from GCMSdetected ^{13}Cpattern in proteinbound amino acids. Predefined fragmentation patterns are automatically identified and appropriate statistical data treatment is based on the comparison of redundant information in the MS spectra. In the second module, absolute intracellular fluxes may be calculated by a ^{13}Cconstrained flux balancing procedure that combines experimentally determined fluxes in and out of the cell and the above flux ratios. The software is preconfigured to derive flux ratios and absolute in vivo fluxes from [1^{13}C] and [U^{13}C]glucose experiments and GCMS analysis of amino acids for a variety of microorganisms.
Conclusion
FiatFlux is an intuitive tool for quantitative investigations of intracellular metabolism by users that are not familiar with numerical methods or isotopic tracer experiments. The aim of this open source software is to enable nonspecialists to adapt the software to their specific scientific interests, including other ^{13}Csubstrates, labeling mixtures, and organisms.
Background
Genomewide measurements of cellular mRNA, protein or metabolite concentrations (or their differential concentrations) are current workhorse technologies in functional genomics and systems biology. For a comprehensive analysis of metabolic networks, however, typically also knowledge on the molecular traffic between the metabolites is necessary. These timedependent in vivo fluxes are the functional complement to the metabolite concentrations, but, in contrast to the concentrations, cannot be detected directly [1]. Instead, intracellular fluxes must be inferred indirectly from measurable quantities, such as nutrient uptake and secretion rates and/or ^{13}Clabeling pattern, through methods of metabolic flux analysis [2,3].
To reliably identify a unique distribution of intracellular fluxes, highly controlled culture conditions, extensive physiological, and ^{13}Cdata are a prerequisite [2]. Although many laboratories have access to the necessary instrumentation, flux analysis remained largely restricted to a handful of expert groups because flux quantification required the simultaneous interpretation of physiological and ^{13}Cdata. Briefly, complicated isotopomer models of metabolism were used to balance the labeling state of metabolic intermediates or proteinbound amino acids and to identify a best fit of intracellular fluxes to the available data. Several (nonopen source) software tools for flux analysis with isotopomer models of varying complexity are available for academic research [46], with 13CFLUX as the probably most advanced one [7]. Furthermore, software tools for automated processing of raw MS [8,9] or NMR data for flux anaylsis are available [10], in the latter case allowing also to calculate flux ratios. Although valuable biological insights can be obtained by isotopomer balancing [1116], the required expertise in computational analysis and quantitative biology as well as the complexity of the models restricted broader application and wider use as a routine tool.
A conceptual simplification of flux analysis and an appropriate analytical throughput was obtained by splitting the problem in two separate tasks. Firstly, MSdetected ^{13}C data are analytical interpreted with probabilistic equations that quantify flux partitioning ratios in socalled metabolic flux ratio analysis [17], akin to an earlier NMRbased approach [18]. In the second step, these flux ratios are used as constraints for a flux balancing calculation in a comparatively simple metabolic network model to estimate absolute intracellular fluxes from the measured extracellular fluxes [19,20]. For nonexpert users, the major advantage of this ^{13}Cconstrained flux balancing is the relative simplicity of the employed models, rapid computation, and a more intuitive data treatment. This also allows to simplify the experimental setup because the flux ratios are calculated from MS data exclusively. Hence, simple shake flask experiments suffice for standard analyses – although at the cost of flux resolution – thus restricting the use of laborious bioreactor experiments to specific applications. Intuitively, less data suggest less reliable flux estimates, which indeed would be the case if an isotopomer models was used. However, since the flux ratios are analytically determined in a strictly local data interpretation and not in a global fitting procedure, most ratios are from independent measurements and can partly validate each other. For a more comprehensive treatise of flux ratio and net flux analysis please see [3,14,19,21]. Recently, ^{13}Cconstrained flux balancing was successfully applied to various microorganisms [2225] and was also the key methodology for higherthroughput flux analyses in our lab [22,26,27].
Based on these conceptual advances, the availability of a userfriendly and robust software for flux analyses becomes the major limitation for wider use. Here we describe the opensource software package FiatFlux that consists of two separate modules for analytical metabolic flux ratio analysis and for ^{13}Cconstrained flux analysis. FiatFlux condenses our accumulated knowhow and experience on metabolic flux analysis, and was used successfully for teaching and in collaborations with biologicallyoriented groups.
Implementation
We developed the FiatFlux software on a Matlab basis to exploit the Optimization toolbox and the open source environment. FiatFlux consists of two parts with distinct functions: (i) computation of metabolic flux ratios exclusively from MS data in the RATIO module and (ii) estimation of net carbon fluxes within a comprehensive model of metabolite balances from measured extracellular fluxes, previously determined flux ratios, and biomass requirements in the NETTO module. The two modules are run independently, calling either the functions ratio.m or netto.m, respectively.
The RATIO module affords the integration of raw MS data that are passed to the software using the netCDF standard (network Common Data Form) [28] (Figure 1). This format was chosen because it is supported by the proprietary software of most mass spectrometer manufacturers. From a netCDF file, FiatFlux generates a matrix with the total ion counts for each scan (timepoint) and considered m/z value, and searches automatically for known compounds based on their predefined fragmentation pattern. For each recognized analyte, a mass isotopomer distribution vector MDV_{α }is extracted from the matrix and normalized such that
Figure 1. Procedure for derivation of metabolic flux ratios from raw MS data in RATIO (see text for details). For each stage of the analysis, exemplary data and corresponding computation time in seconds are shown on the right and the left, respectively. Times were measured for the analysis of a GCMS sample on a Pentium 4 1.6 GHz processor.
where m_{0 }is the fractional abundance of molecules with monoisotopic mass and m_{i>0 }the abundances of fragments with heavier masses. The mass isotope distribution vector specific to the carbon backbone (MDV_{A}) is obtained from MDV_{α }upon correction (a) for naturally occurring isotopes of O, N, H, P, S, Si, and C atoms in the derivatization agent [29] and (b) for the presence of unlabeled biomass in the sample, e.g. the inoculum [17]. The MDV_{A }are, in turn, used to estimate by least square fitting the mass distribution of their precursors (MDV_{M}) in central carbon metabolism [17], along with covariance matrices for each MDV_{M}, which are calculated from the experimental error (i. e. comparison of the MDV_{A }of fragments with identical carbon skeletons). Faulty MDV_{α }measurements are diagnosed by visual inspection of the residuals that result for each MDV_{A }in the MDV_{M }fitting. In the case of uniformly labeled tracer experiments, diagnosis is based on the fractional labeling of MDV_{A }(and MDV_{M}) that should equal that of the substrate [30]. Finally, the flux ratios are calculated from the MDV_{M }with probabilistic equations [17]. Standard deviations for each flux ratio are calculated using the covariance matrices of MDV_{M }by applying the Gaussian law of error propagation [17]. For a more complete treatise of the mathematical/analytical background and the experimental protocols please refer to [30]. User monitoring and intervention is possible at every stage from the graphical user interface (Figure 2).
Figure 2. The main window of RATIO. Upon loading of MS data, analytes are first automatically recognized and assigned (A). When necessary, manual assignment of analytes is performed in a different window. The experimental parameters are set by the user (B), then MDV_{M }(C) and flux ratios (D) are calculated. Abnormal residuals indicate that the corresponding fragments are outlier, and they can be excluded (white) or reactivated (blue) by a single mouse click on the corresponding bar. Finally, the flux ratios, the MDV_{A }and the MDV_{M }are exported to a text file or Excel workbook (E).
The set of calculable flux ratios is a function of the biochemical reaction network, the carbon substrates and their corresponding ^{13}Clabeling, and the analyte fragments that can be detected by MS. The software is preconfigured to derive metabolic flux ratios for a variety of microorganisms such as yeasts [31,32], Escherichia coli [17], Bacillus subtilis [23], and others [25] for growth on [1^{13}C]glucose, [U^{13}C]glucose or mixtures thereof. The preconfigured analytes are the TBDMSTFAderivatized proteinogenic amino acids that are typically detected by robust GCMS analysis [33]. Notably, FiatFlux is not limited to glucose substrates and can be extended to cope with additional analytes, different derivatization agents or separations, i.e. liquid chromatography or capillary electrophoresis.
The second module (NETTO) addresses the estimation of absolute in vivo (net) fluxes through a reaction network. This is achieved by global material balances derived from a stoichiometric model and accounting for the withdrawal of precursors during growth (Figure 3). Because of the presence of redundant or interconnected pathways, this system of linear contraints is typically underdetermined [34]. In socalled ^{13}Cconstrained flux balancing [19,20], additional linearly independent constraints are obtained from the experimentally determined flux ratios in the RATIO module that are used to solve the system without further assumptions on energy or redox balances. NETTO features a platform to integrate metabolite balances and ^{13}Cderived equality or inequality constraints; i.e. flux ratios that are exactly determined or for which only reaction bounds are available, respectively [19]. Depending on the active set of constraints and reactions, the system may either be underdetermined, determined, or overly constrained. In underdetermined system, NETTO offers either to search within the solution space for the flux distribution that maximizes a particular flux or the product of an intermediate, or estimate all calculable fluxes using the procedure outlined by Klamt et al. [35]. Exactly determined and overly constrained systems are both solved by a least square optimization using Matlab fmincon function. This approach permits to simultaneously integrate equality and reaction bound constraints in the calculation, and weight the constraints with the experimental uncertainty [19]. Confidence intervals for each calculated flux are estimated as a function of the experimental errors from the Jacobian matrix of the output function. Inequality constraints (reaction bounds), only contribute to the error criterion if the flux solution would otherwise exceed the upper or lower bounds set by the flux ratio data. This asymmetrical error consideration is described elsewhere [19]. If the boundary constraint is inactive, the confidence interval of the resulting flux (e.g. malic enzyme), is a result of the (stoichiometric) dependence on other fluxes.
Figure 3. Schematic representation of the analysis workflow in NETTO.
In NETTO, metabolic models can be constructed from scratch and errorprone operations such as introduction or modification of reactions are executed by the software. In a text file, the user provides a list of reactions, ratios, and biomass composition with a userfriendly syntax (Figure 4). The information is then automatically translated into properly formatted structures and matrices and saved in a Matlab mfile, that is called by NETTO during computation. The graphical user interface of NETTO permits to freely remove a reaction or modify its reversibility, submit extracellular fluxes or metabolic parameters such as the P/O respiratory coupling, or define which metabolites have to be excluded from balancing, for example oxygen or ATP (Figure 5). Alternatively, default preferences can be defined in the saved model mfile. Whenever a session of RATIO is running in parallel, NETTO imports the value for matching flux ratios.
Figure 4. Example of syntax for definition of a model for NETTO. (A) Reactions are described with a unique identifier, educts, products and an operator to set reversibility. (B) Ratios are entered either as equality constraints (=), upper bounds (>), or lover bounds (<), and are defined using the reaction indentifiers. (C) Precursor requirement for biomass formation is expressed with a list of growthrate dependent withdrawals of metabolites in μmol/gCDW. Separate statements are used for each macromolecular class such as protein, DNA, etc.
Figure 5. The graphical user interface of NETTO.
Both modules offer functions to save all variables and recover work at a later point. Results are visualized directly on the graphical user interface and can be stored to text files or to Microsoft Excel spreadsheets.
Results and discussion
FiatFlux is the first publicly available software for flux ratio analysis from MS data and, consequently, no comparison can be done with other programs. The scientific value and accuracy of FiatFluxcalculated flux ratios has already been discussed extensively [14,17,25,26,36,37], and consistency between net flux estimates obtained either with ^{13}Cconstrained flux balancing as in FiatFlux or with global isotopomer balancing was demonstrated previously [19]. Notably, both the calculation of flux ratios from raw MS data in RATIO and the estimation of net fluxes in NETTO is typically completed in a few seconds (Figure 1). This constitutes a major advantage compared to isotopomer balancing, since computation time becomes negligible in relation to the time required by the user to set the experimental parameters. In addition, interpretation of MS data and the integration with measured fluxes are executed independently in FiatFlux. In contrast to methods of isotopomer balancing, this enables the user to discern problems arising from bad measurements or from incomplete metabolic models.
In FiatFlux, user supervision is necessary only when MSsignals are low, saturated, or overlapping. This affects the ion statistics of the corresponding fragment and results in relatively high residuals after inferring MDV_{M }from the MDV_{A}. Since the residuals are graphically represented on the graphic user interface of RATIO, bad fragments are rapidly identified and excluded with a single click. Also when the quality of the fragments has to be diagnosed in detail, and MDV_{M }fitting and flux ratios estimation have therefore to be iterated several times, a correct estimate is obtained within some minutes. Using FiatFlux, a typical user with moderate experience will be able to determine intracellular net fluxes for hundreds of samples per day from previously generated MS data.
The open source nature of FiatFlux, and in particular of the RATIO module, permits to modify and extend its capabilities beyond the predefined features. Although the necessary skills strongly depend on the functionalities to be modified, fundamental biochemical knowledge of the reactions investigated is paramount for every user to understand initial assumptions and critically interpret outcomes. Provided that metabolism of a new organisms to be investigated is similar to that of any of the 4 preconfigured models,, very few adaptations are necessary and the task is manageable by any biochemicallytrained biologist. In fact, in previous works we already demonstrated the analysis of about 20 different species with the 4 core models [25,32]. The implementation of new flux ratios or new substrates, however, requires detailed information on mapping of atoms in biochemical pathways, understanding of error propagation, and advanced experience with Matlab syntax, thus is probably limited to experts. Hence, at this stage, we decided to restrict free modification of the preconfigured models by precompiling the corresponding routine. In case a user requires extensions, we encourage to contact the authors to collaborate on a proper integration that ensures correct estimation of metabolic flux ratios and confidence intervals.
Finally, introduction of new GC methods or derivatization procedures is very simple, and can be attained by users with basic familiarity with the Matlab environment. In principle, the same applies to implementing other separation techniques, such liquidphase systems. Currently, RATIO is not compatible with MS/MS product ion scans.
Conclusion
FiatFlux condenses the knowhow developed over years in our lab and has become our workhorse for quantitative analyses of microbial central carbon metabolism. The software is preconfigured for the most widely used substrate (glucose), the most frequently used (and informative) tracer mixtures, and several model microbes. While this covers about 80% of all current flux applications, it is, of course, not complete. The aim of this open source software is to enable nonspecialists to adapt the software to their specific scientific interests, including other substrates and or labeling mixtures. In particular, we aim at biologists that are not familiar with numerical methods or isotopic tracer experiments. In fact, with the availability of this software, the only burden for such studies remains the access to a GCMS instrument. We hope that this transparent and flexible framework will support further developments.
Availability
Project name: FiatFlux
Operating system: preferably Microsoft Windows. Some minor problems were encountered using Matlab's graphic user interface with Linux.
Programming language: Matlab R14 (The Mathworks).
Other requirements: Matlab Optimization Toolbox
License: source code is freely available from the authors for academic purposes.
Any restriction to use by nonacademics: license required.
Abbreviations
MDV_{α }Mass distribution vector of analyte
MDV_{A }Carbonspecific mass distribution vector of analyte
MDV_{M }Mass distribution vector of metabolite
TBDMSTFA N(tertbutyldimethelsylil)Nmethyltrifluoroacetamide
Authors' contributions
NZ and EF developed the software. US supported the work. NZ and US wrote the manuscript. All authors read and approved the final version.
Acknowledgements
We thank the members of the Sauer Lab for continuous testing.
References

Hellerstein MK: In vivo measurement of fluxes through metabolic pathways: The missing link in functional genomics and pharmaceutical research.
Annu Rev Nutr 2003, 23:379402. PubMed Abstract  Publisher Full Text

Wiechert W: 13C metabolic flux analysis.
Metabolic Eng 2001, 3:195206. Publisher Full Text

Sauer U: Highthroughput phenomics: experimental methods for mapping fluxomes.
Curr Opin Biotechnol 2004, 15:5863. PubMed Abstract  Publisher Full Text

Schmidt K, Nielsen J, Villadsen J: Quantitative analysis of metabolic fluxes in Escherichia coli using twodimensional NMR spectroscopy and complete isotopomer models.
J Biotechnol 1999, 71:175190. PubMed Abstract  Publisher Full Text

Wittmann C, Heinzle E: Mass spectroscopy for metabolic flux analysis.
Biotechnol Bioeng 1999, 62:739750. PubMed Abstract  Publisher Full Text

Dauner M, Bailey JE, Sauer U: Metabolic flux analysis with a comprehensive isotopomer model in Bacillus subtilis.
Biotechnol Bioeng 2001, 76:144156. PubMed Abstract  Publisher Full Text

Wiechert W, Möllney M, Petersen S, de Graaf AA: A universal framework for 13C metabolic flux analysis.
Metab Eng 2001, 3:265283. PubMed Abstract  Publisher Full Text

Talwar P, Wittmann C, Lengauer T, Heinzle E: Software tool for automated processing of 13C labeling data from mass spectrometric spectra.
Biotechniques 2003, 35:12141215. PubMed Abstract

Wahl A, Dauner M, Wiechert W: New tools for mass isotopomer data evaluation in 13C flux analysis: mass isotope correction, data consistency checking and precursor relationships.
Biotechnol Bioeng 2004, 85:259268. PubMed Abstract  Publisher Full Text

Szyperski T, Glaser RW, Hochuli M, Fiaux J, Sauer U, Bailey JE, Wüthrich K: Bioreaction network topology and metabolic flux ratio analysis by biosynthetic fractional 13Clabeling and twodimensional NMR spectroscopy.
Metabolic Eng 1999, 1:189197. Publisher Full Text

Dauner M, Storni T, Sauer U: Bacillus subtilis metabolism and energetics in carbonlimited and carbonexcess chemostat culture.
J Bacteriol 2001, 183:73087317. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Marx A, Hans S, Möckel B, Bathe B, de Graaf AA: Metabolic phenotype of phosphoglucose isomerase mutants of Corynebacerium glutamicum.
J Biotechnol 2003, 104:185197. PubMed Abstract  Publisher Full Text

Gunnarsson N, Mortensen UH, Sosio M, Nielsen J: Identification of the EntnerDoudoroff pathway in an antibioticproducing actinomycete species.
Mol Microbiol 2004, 52:895902. PubMed Abstract  Publisher Full Text

Fischer E, Sauer U: A novel metabolic cycle catalyzes glucose oxidation and anaplerosis in hungry Escherichia coli.
J Biol Chem 2003, 278:4644646451. PubMed Abstract  Publisher Full Text

Wittmann C, Heinzle E: Genealogy profiling through strain improvement by using metabolic network analysis: metabolic flux genealogy of several generations of lysineproducing Corynebacteria.
Appl Environ Microbiol 2002, 68:58435859. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Hua Q, Yang C, Baba T, Mori H, Shimizu K: Responses of the central carbon metabolism in Escherichia coli to phosphoglucose isomerase and glucose6phosphate dehydrogenase knockouts.
J Bacteriol 2003, 185:70537067. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Fischer E, Sauer U: Metabolic flux profiling of Escherichia coli mutants in central carbon metabolism by GCMS.
Eur J Biochem 2003, 270:880891. PubMed Abstract  Publisher Full Text

Szyperski T: Biosynthetically directed fractional 13Clabeling of proteinogenic amino acids: an efficient analytical tool to investigate intermediary metabolism.
Eur J Biochem 1995, 232:433448. PubMed Abstract  Publisher Full Text

Fischer E, Zamboni N, Sauer U: Highthroughput metabolic flux analysis based on gas chromatographymass spectrometry derived 13C constraints.
Anal Biochem 2004, 325:308316. PubMed Abstract  Publisher Full Text

Sauer U, Hatzimanikatis V, Bailey JE, Hochuli M, Szyperski T, Wüthrich K: Metabolic fluxes in riboflavinproducing Bacillus subtilis.
Nature Biotechnol 1997, 15:448452. Publisher Full Text

Emmerling M, Dauner M, Ponti A, Fiaux J, Hochuli M, Szyperski T, Wüthrich K, Bailey JE, Sauer U: Metabolic flux responses to pyruvate kinase knockout in Escherichia coli.
J Bacteriol 2002, 184:152164. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Blank LM, Kuepfer L, Sauer U: Largescale 13Cflux analysis reveals mechanistic principles of metabolic network robustness to null mutations in yeast.
Genome Biol 2005, 6:R49. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Zamboni N, Sauer U: Knockout of the highcoupling cytochrome aa3 oxidase reduces TCA cycle fluxes in Bacillus subtilis.
FEMS Microbiol Lett 2003, 226:121126. PubMed Abstract  Publisher Full Text

Sauer U, Canonaco F, Heri S, Perrenoud A, Fischer E: The soluble and membranebound transhydrogenases UdhA and PntAB have divergent functions in NADPH metabolism of Escherichia coli.
J Biol Chem 2004, 279:66136619. PubMed Abstract  Publisher Full Text

Fuhrer T, Fischer E, Sauer U: Experimental identification and quantification of glucose metabolism in seven bacterial species.
J Bacteriol 2005, 187:15811590. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Fischer E, Sauer U: Largescale in vivo flux analysis shows rigidity and suboptimal performance of Bacillus subtilis metabolism.
Nat Genet 2005, 37:636640. PubMed Abstract  Publisher Full Text

Perrenoud A, Sauer U: Impact of global transcriptional regulation by ArcA, ArcB, Cra, Crp, Cya, Fnr and Mlc on glucose catabolism in Escherichia coli.
J Bacteriol 2005, 187:31713179. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

van Winden WA, Wittmann C, Heinzle E, Heijnen JJ: Correcting mass isotopomer distributions for naturally occurring isotopes.
Biotechnol Bioeng 2002, 80:477479. PubMed Abstract  Publisher Full Text

Perrenoud A, Fuhrer T, Sauer U: Determination of metabolic flux ratios from 13Cexperiments and GCMSdata: protocols and principles.

Blank LM, Sauer U: TCA cycle activity in Saccharomyces cerevisiae is a function of the environmentally determined specific growth and glucose uptake rates.
Microbiology 2004, 150:10851093. PubMed Abstract  Publisher Full Text

Blank LM, Lehmbeck F, Sauer U: Metabolicflux and network analysis in 14 hemiascomycetous yeasts.
FEMS Yeast Res 2005, 5:545558. PubMed Abstract  Publisher Full Text

Dauner M, Sauer U: GCMS analysis of amino acids rapidly provides rich information for isotopomer balancing.
Biotechnol Prog 2000, 16:642649. PubMed Abstract  Publisher Full Text

Bonarius HPJ, Schmid G, Tramper J: Flux analysis of underdetermined metabolic networks: The quest for the missing constraints.
Trends Biotechnol 1997, 15:308314. Publisher Full Text

Klamt S, Schuster S, Gilles ED: Calculability analysis in underdetermined metabolic networks illustrated by a model of the central metabolism in purple nonsulfur bacteria.
Biotechnol Bioeng 2002, 77:734751. PubMed Abstract  Publisher Full Text

Zamboni N, Fischer E, Muffler A, Wyss M, Hohmann HP, Sauer U: Transient expression and flux changes during a shift from high to low riboflavin production in continuous cultures of Bacillus subtilis.
Biotechnol Bioeng 2005, 89:219232. PubMed Abstract  Publisher Full Text

Zamboni N, Fischer E, Laudert D, Aymerich S, Hohmann HP, Sauer U: The Bacillus subtilis yqjI gene encodes the NADP+dependent 6Pgluconate dehydrogenase in the pentose phosphate pathway.
J Bacteriol 2004, 186:45284534. PubMed Abstract  Publisher Full Text  PubMed Central Full Text