Troubleshooting your model

From ProcessDB
Jump to navigation Jump to search

Help! My model doesn't work as I expect. What should I do?


Is your model in steady state before your experiment starts?

Some software tools (notably those that specialize in tracer kinetics) simply assume that your biological system is in steady state, and calculate all the steady state masses by numerical inversion of the system matrix. In ProcessDB, we are often interested in non-steady state, highly nonlinear biological systems and so we automatically write differential equations for all your system states as well as any tracer states defined in your experimental protocols. The most efficient way to get such a system into steady state before your experimental protocols start perturbing it, is to set your START TIME to a negative value, say, -100 or -1000. Choose this number so that, given your initial conditions and your rate laws and parameters, all the model states are changing very little by the time you begin your experiment.

There is a lot to be learned by examining the magnitudes of all your states when the steady state is reached. Do they make sense to you and to your experimental colleagues? Plot a group of related states on semi-log axes so you can see the full range. Every graph in the ProcessDB solver window can be made semi-log using the semi-log checkbox in that graph's "Edit graph settings" dialog. An example is shown here.

Edit graph screen.png

We recommend you check that box when one or more of the variables you wish to plot together is 100-fold smaller than the largest one.

Begin at the point in time where your experiment starts

This is the very first thing that my first teacher, Mones Berman, taught me about troubleshooting. As a kinetic modeler, you are always working in time, and the first thing to do is look at the beginning of your time axis. Look specifically for the perturbations that were made experimentally. Are the perturbations happening in your model as you expect them to? For example, if the experimental protocol involves adding an inhibitor, check to see that the targeted process is actually being inhibited! Does the rate law for the target process actually depend on the inhibitor abundance or concentration? Is the inhibition constant, Ki, small enough? Is it in the same units as the ones used in defining the experimental protocol?