What does "rev" field means in model structures?

78 views
Skip to first unread message

varshit dusad

unread,
Jun 3, 2018, 6:17:43 AM6/3/18
to COBRA Toolbox
Hi,

I was exploring all the fields inside models of genome scale models and found that description of the field "rev" missing in the documentation as provided here:

I have uploaded 2 models both of which contains this field. The properties of this fields are:
1. The number of rows is equal to the number of reactions.
2. All the values are either 0 or 1.

My guess is that this field represents reversibility of each reaction where 1 represents if the reaction is reversible and 0 represents if the reaction is irreversible. However, I have found no supporting evidence on any of the COBRA documentations including the one of which I shared the link above.

Please let me know what this field means. For my project, I need a field which categorizes the reactions as reversible or irreversible.

Thank you!

Warm regards,
Varshit Dusad
786-0.mat
ecoli_core(old).mat

Ronan M.T. Fleming

unread,
Jun 4, 2018, 2:38:21 AM6/4/18
to COBRA Toolbox
Hi Varshit,
model.rev is a depreciated field. model.rev(j) is 1 if the reaction is reversible, and model.rev is 0 if the reaction is forward only. However, this field is no longer used as it is redundant. The model.lb and model.ub quantiatively specify bounds on reaction rate, which includes directional information, so there is no need for model.rev. We removed it because some code (now legacy code) was based on reading model.rev and some code based on reading model.lb and model.ub, which could give inconsistent results, if these fields were out of sync. Therefore, the safest option was to remove model.rev from the cobra toolbox code completely. In your case, check this consistency, and if they are consistent, then remove model.rev. If not, then look to the literature or thermodynamic directionality, to see what is the direction for your reactions. e.g. see "Thermodynamic Information" for http://vmh.uni.lu/#reaction/DNDPt32m
Regards,
Ronan


--

---
You received this message because you are subscribed to the Google Groups "COBRA Toolbox" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cobra-toolbo...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
--
Mr. Ronan MT Fleming B.V.M.S. Dip. Math. Ph.D.
----------------------------------------------------------------------------
Assistant Professor,
Division of Systems Biomedicine and Pharmacology,
Leiden Academic Centre for Drug Research,
Faculty of Science,
Leiden University.
&
H2020 Project Coordinator
Systems Medicine of Mitochondrial Parkinson’s Disease
----------------------------------------------------------------------------
Mobile:  +352 621 175 112
Skype: ronan.fleming
----------------------------------------------------------------------------
(This message is confidential and may contain privileged information. It is intended for the named recipient only. If you receive it in error please notify me and permanently delete the original message and any copies.)

varshit dusad

unread,
Jun 4, 2018, 3:42:19 AM6/4/18
to COBRA Toolbox
Hi Ronan,

Thank you very much for your detailed and informative reply. I am noticing that even the latest models (Recon3D, uploaded in 2018) itself contains the ".rev" field. My question is are there still some COBRA functions which rely on this field at all. Should I manually curate these field out from models or leaving it in the model will not matter because any of the COBRA function no longer uses this field for any calculation. I personally prefer to make minimum permanent changes to the models from the literature.

Thank you for taking out time for replying!

Warm regards,
Varshit Dusad

Thomas Pfau

unread,
Jun 4, 2018, 3:43:29 AM6/4/18
to cobra-...@googlegroups.com

There should be no functions in the toolbox still relying on model.rev

So the field can be mostly "ignored" from a user perspective.

Best

Thomas


On 2018-06-04 09:42, varshit dusad wrote:

Unsubscribe

It appears that you have subscribed to commercial messages from this sender. To stop receiving such messages from this sender, please unsubscribe

varshit dusad

unread,
Jun 4, 2018, 3:47:47 AM6/4/18
to cobra-...@googlegroups.com
Thank you, Thomas! This clarifies the whole situation to me.

Warm regards,
Varshit Dusad

To unsubscribe from this group and stop receiving emails from it, send an email to cobra-toolbox+unsubscribe@googlegroups.com.

-- 
Université du Luxembourg
Faculté des Sciences, de la Technologie et de la Communication
Campus Belval, Biotech II 115
6 avenue du Swing
L-4367 Belvaux
Tel: (+352) 46 66 44 5309
Email: thoma...@uni.lu

--

---
You received this message because you are subscribed to the Google Groups "COBRA Toolbox" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cobra-toolbox+unsubscribe@googlegroups.com.

Agustin Maria Pardo

unread,
Aug 28, 2020, 3:38:12 PM8/28/20
to COBRA Toolbox
Hello,

I have a model without the "rev" structure (I attahced the model description)

I am trying to run PROM script from Chandrasekaran (2010). So, do you know a way to get that structure from the data that already exisist in the model?

Regards

Agustin Pardo



-- 
Université du Luxembourg
Faculté des Sciences, de la Technologie et de la Communication
Campus Belval, Biotech II 115
6 avenue du Swing
L-4367 Belvaux
Tel: (+352) 46 66 44 5309
Email: thoma...@uni.lu

--

---
You received this message because you are subscribed to the Google Groups "COBRA Toolbox" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cobra-toolbo...@googlegroups.com.
Screenshot from 2020-08-28 12-02-56.png

Agustin Maria Pardo

unread,
Aug 28, 2020, 3:43:50 PM8/28/20
to COBRA Toolbox
Sorry, the thing is that my model had the "rev" structure. But it didn't have the "rules" structure so I used readCbMode() COBRA function to solve that. But now the "rev" structure disappears and the PROM code needs that structure! So, do you know how to use that function but keeping the "rev" structure?

Regards

Diana El Assal

unread,
Aug 28, 2020, 5:13:11 PM8/28/20
to cobra-...@googlegroups.com
Hi Agustin,

If you need to use the depreciated field model.rev, you can write a short for loop to add it.

Here a few hints:

model.rev is the same length as model.rxns
You can start by putting zeros(length(model.rxns)).
For each reaction, if model.lb < 0 and model.ub > 0 then model.rev for reversible reactions is 1 (or 0 for irreversible reactions with model.lb >=0).

Best wishes,

Diana

To unsubscribe from this group and stop receiving emails from it, send an email to cobra-toolbox+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cobra-toolbox/c3aee1c6-f75e-4fc9-acdf-f5dfce3ed3cfn%40googlegroups.com.


--

                                                                                                

Diana Charles Jordan-El Assal, PhD

Laboratory of Algal, Synthetic, and Systems Biology
Post-Doctoral Associate
Division of Science and Math

Center for Genomics and Systems Biology
New York University Abu Dhabi
P.O. Box 129188, Abu Dhabi, UAE
Email:dc...@nyu.edu 
                                                                             
Reply all
Reply to author
Forward
0 new messages