[SciPy-user] integrate.odeint , stiff chemical equations and mass conservation -any hint?
Tue Jun 2 20:31:17 CDT 2009
I think the standard way to "fix" stiff problems is to go to implicit
Here's a nice write-up about using implicit time-stepping for chemical kinetics:
It's over a decade old, but might give you some hints on how to solve
If you are integrating the system accurately you should be conserving
mass, even with big implicit time-steps, your production and loss
terms should balance at each step.
On Tue, Jun 2, 2009 at 4:43 PM, Anne Archibald
> 2009/6/2 ms <email@example.com>:
>> Hi Anne,
>> Thanks for the suggestions! I didn't know about pydstool and I will
>> definitely try it.
>>> On the other hand, it may be more valuable to keep the total mass as a
>>> free parameter so that you can judge the quality of your solutions by
>>> looking at how much it varies. After all, the total mass is only one
>>> direction in which your approximate solution can deviate from the true
>> True; however we want to use the model to predict somehow the
>> concentrations of species in a chemical system, and if mass is not
>> conserved (it goes up like 10 times) such prediction won't look good :)
> Indeed not, but it seems to me that there's a risk that enforcing mass
> conservation will avoid that problem but then leave you with answers
> that are just as wrong but not in an obvious way.
I agree with Anne, mass conservation is a good diagnostic to help you
catch errors (modeling, coding or otherwise).
>>> It's also, of course, possible there's a bug in your derivative
>>> function - it's worth checking that the derivative vector is always
>>> orthogonal to the gradient of mass-as-a-function-of-your-parameters.
>> Thanks for the hint, I will check it.
>> SciPy-user mailing list
> SciPy-user mailing list
More information about the SciPy-user