# MINVAL - MINimal VALidation for Stoichiometric Reactions

### Characterize Reactions

Characterize the stoichiometric reactions of a metabolic model is a required and time-consuming work. The MINVAL package includes the characterizeReactions function to characterize the stoichiometric functions and metabolites by compartment.

To load the MINVAL package just type:

library(minval)

To show the potential use of the characterizeReactions function of the MINVAL package the Human Metabolic Reconstruction (RECON 2.04) was included in a human-readable format. To load it just type:

RECON <- read.csv(system.file("extdata", "rRECON2.csv",
package = "minval"))
dim(RECON)
## [1] 7441    8

The characterizeReactions function requires a set of stoichiometric reactions as input. The given stoichiometric reactions must have the following mandatory characteristics:

• Arrows symbols must be given in the form '=>' or '<=>' (Inverse arrow symbols '<=' or other types as: '-->', '<==>', '->' will not be parsed and will lead to errors.)
• Arrow symbols and plus signs (+) must be surrounded by a space character.
• Stoichiometric coefficients must be surrounded by a space character and not by parentheses.
• Each metabolite must have only one stoichiometric coefficient, substituents must be joined to metabolite name by a hyphen (-) symbol.
• Exchange reactions must have only one metabolite before arrow symbol.
• Compartments must be given between square brackets ([compartment]) joined at the end of metabolite name.

The characterizeReactions function: - Counts the number of reactions - Computes the relative frequency of each reaction type (transport, exchange and compartmentalized) - Computes the relative frequency of reactions by compartment - Counts the number of unique metabolites - Computes the relative frequency of metabolites by compartment

Finally the characterizeReactions function returns all these information as a labeled list. To characterize a set of stoichiometric reactions just type:

RECONcharacteristics <- characterizeReactions(reactionList = RECON$REACTION) RECONcharacteristics ##$nReactions
## [1] 7441
##
## $rType ## ## Compartmentalized reaction Exchange reaction ## 55.825830 9.420777 ## Transport reaction ## 34.753393 ## ##$cReaction
##
##         c         e         g         l         m         n         r
## 24.593469  1.760516  3.628545  2.983470  9.958339  1.666443  6.208843
##         x
##  5.026206
##
## $nMetabolites ## [1] 5063 ## ##$cMetabolites
##
##         c         e         g         l         m         n         r
## 37.092633 12.680229  6.261110  5.964843 14.892356  3.258937 11.258147
##         x
##  8.591744

Computed values can be easy plotted as follows:

#### Type of Reactions

Metabolic models generally includes three types of reactions:

• Compartmentalized reactions: Reactions in where all involved metabolites (all reactants and products) were assigned to the same compartment. e.g. h[m] + nadph[m] + o2[m] + 25hvitd2[m] => h2o[m] + nadp[m] + 1a25dhvitd2[m]
• Transport reactions: Reactions in where the involved metabolites (reactants or products) were assigned to two or more compartments. e.g. 2 hco3[e] + na1[e] <=> 2 hco3[c] + na1[c]
• Exchange reactions: Reaction used to import or release metabolites to the boundary. e.g. acetone[e] <=>

To plot it just type:

pie(x = RECONcharacteristics$rType, main = "Reactions by Type" ) #### Reactions by Compartment Compartmentalized reactions identified also are categorized and reported as a relative frequency to their associated compartment. To plot it just type: pie(x = RECONcharacteristics$cReaction,
main = "Reactions by Compartment",
labels = compartmentNames
)

#### Metabolites by Compartment

Metabolites are categorized and reported as a relative frequency to their associated compartment. To plot it just type:

pie(x = RECONcharacteristics\$cMetabolites,
main = "Metabolites by Compartment",
labels = compartmentNames
)