# 17.1.1.1.1.6. cobra.core.metabolite¶

Define the Metabolite class.

## 17.1.1.1.1.6.1. Module Contents¶

### 17.1.1.1.1.6.1.1. Classes¶

 Metabolite Metabolite is a class for holding information regarding
cobra.core.metabolite.element_re[source]
class cobra.core.metabolite.Metabolite(id=None, formula=None, name='', charge=None, compartment=None)[source]

Metabolite is a class for holding information regarding a metabolite in a cobra.Reaction object.

Parameters
• id (str) – the identifier to associate with the metabolite

• formula (str) – Chemical formula (e.g. H2O)

• name (str) – A human readable name.

• charge (float) – The charge number of the metabolite

• compartment (str or None) – Compartment of the metabolite.

_set_id_with_model(self, value)[source]
property constraint(self)[source]

Get the constraints associated with this metabolite from the solve

Returns

the optlang constraint for this metabolite

Return type

optlang.<interface>.Constraint

property elements(self)[source]

Dictionary of elements as keys and their count in the metabolite as integer. When set, the formula property is update accordingly

property formula_weight(self)[source]

Calculate the formula weight

property y(self)[source]

The shadow price for the metabolite in the most recent solution

Shadow prices are computed from the dual values of the bounds in the solution.

property shadow_price(self)[source]

The shadow price in the most recent solution.

Shadow price is the dual value of the corresponding constraint in the model.

Warning

• Accessing shadow prices through a Solution object is the safer, preferred, and only guaranteed to be correct way. You can see how to do so easily in the examples.

• Shadow price is retrieved from the currently defined self._model.solver. The solver status is checked but there are no guarantees that the current solver state is the one you are looking for.

• If you modify the underlying model after an optimization, you will retrieve the old optimization values.

Raises
• RuntimeError – If the underlying model was never optimized beforehand or the metabolite is not part of a model.

• OptimizationError – If the solver status is anything other than ‘optimal’.

Examples

>>> import cobra
>>> import cobra.test
>>> model = cobra.test.create_test_model("textbook")
>>> solution = model.optimize()
-0.09166474637510488
-0.091664746375104883

remove_from_model(self, destructive=False)[source]

Removes the association from self.model

The change is reverted upon exit when using the model as a context.

Parameters

destructive (bool) – If False then the metabolite is removed from all associated reactions. If True then all associated reactions are removed from the Model.

summary(self, solution=None, fva=None)[source]

Create a summary of the producing and consuming fluxes.

Parameters
• solution (cobra.Solution, optional) – A previous model solution to use for generating the summary. If None, the summary method will generate a parsimonious flux distribution (default None).

• fva (pandas.DataFrame or float, optional) – Whether or not to include flux variability analysis in the output. If given, fva should either be a previous FVA solution matching the model or a float between 0 and 1 representing the fraction of the optimum objective to be searched (default None).

Returns

Return type

cobra.summary.MetaboliteSummary

Reaction.summary(), Model.summary()
_repr_html_(self)[source]