Hello, I'm trying to do some differential equation modeling in R using the package 'deSolve.' Briefly, I'm trying to use the law of mass action (the details of which aren't really important) to structure a vector of rate equation which will be passed into an ODE function and solved with associated functions from 'deSolve.' Roughly what this entails is scanning through a very large stoichiometric matrix containing integers which map metabolites to reactions and then assembling a series of monomials that describe the rates of the reactions. I'm running into trouble because R does not like doing numerical operations on characters, but I need the rate to be in symbolic form. Below I've described an example. The input is a matrix like this one, but a lot bigger: rxn1 rxn2 rxn3 met1 -2 0 2 met2 -1 -1 0 met3 0 -1 -1 and the goal is to generate a vector of monomials representing the rate of each reaction 1 - 3: rateRxn1 = (met1)^2 * (met2)^1 rateRxn2 = (met2)^1 * (met3)^1 rateRxn3 = (met3)^1 The rates need to be represented symbolically for me to pass into the ODE solver where the metabolites will be assigned starting values. I tried using the functions "quote" and "substitute" but unfortunately they are tough to use within a loop because if I pass in a metabolite label generated from a loop (e.g. metaboliteNames[i]) it's taken verbatim in "quote()," so I get "metaboliteNames[i]^-stoich[i, j]" instead of "met1^2." My goal is to make a package of functions for modeling and simulation of chemical kinetics and I want to make sure that they are open-source and freely available to all researchers, so any advice on how to proceed would be greatly appreciated! Erin -- Erin Rachael Shellman The University of Michigan Bioinformatics PhD Candidate http://www.erinshellman.com shellman at umich.edu (937) 321.1129
Hello, I'm trying to do some differential equation modeling in R using the package 'deSolve.' Briefly, I'm trying to use the law of mass action (the details of which aren't really important) to structure a vector of rate equation which will be passed into an ODE function and solved with associated functions from 'deSolve.' Roughly what this entails is scanning through a very large stoichiometric matrix containing integers which map metabolites to reactions and then assembling a series of monomials that describe the rates of the reactions. I'm running into trouble because R does not like doing numerical operations on characters, but I need the rate to be in symbolic form. Below I've described an example. The input is a matrix like this one, but a lot bigger: rxn1 rxn2 rxn3 met1 -2 1 2 met2 -1 -1 0 met3 1 -1 -1 and the goal is to generate a vector of monomials representing the rate of each reaction 1 - 3: rateRxn1 = (met1)^2 * (met2)^1 rateRxn2 = (met2)^1 * (met3)^1 rateRxn3 = (met3)^1 The rates need to be represented symbolically for me to pass into the ODE solver where the metabolites will be assigned starting values. I tried using the functions "quote" and "substitute" but unfortunately they are tough to use within a loop because if I pass in a metabolite label generated from a loop (e.g. metaboliteNames[i]) it's taken verbatim in "quote()," so I get "metaboliteNames[i]^-stoich[i, j]" instead of "met1^2." My goal is to make a package of functions for modeling and simulation of chemical kinetics and I want to make sure that they are open-source and freely available to all researchers, so any advice on how to proceed would be greatly appreciated! Erin -- Erin Rachael Shellman The University of Michigan Bioinformatics PhD Candidate http://www.erinshellman.com shellman@umich.edu (937) 321.1129 [[alternative HTML version deleted]]