Re: Re: Avoiding divide by zero error in NDSolve
- To: mathgroup at smc.vnet.net
- Subject: [mg62586] Re: [mg62479] Re: Avoiding divide by zero error in NDSolve
- From: Daniel Huber <dh at metrohm.ch>
- Date: Tue, 29 Nov 2005 04:44:20 -0500 (EST)
- References: <dm49jj$sul$1@smc.vnet.net> <200511250725.CAA18016@smc.vnet.net> <438A6178.30504@purdue.edu>
- Sender: owner-wri-mathgroup at wolfram.com
Hi Pradeep, my notes are still valid even for the coupled system. All your equation are of the form: D[M y,t] == k2 with an initial value for M[0]==0 this gives M' y + M y' == k2 for t=0 and M[0]==0: M' y ==k2 Therefore, at start time the value of y' is not determined!!, the equations can not be solved numerically from 0 on !! Towards this aim, the diffential equation should allow to calculate the drivative! I think your equations are not correct. Either you used an invalid simplification or made an error somewhere. Daniel Pradeep Suresh wrote: > Hi, > Thank you very much for your response to my question about avoiding > divide by zero error in using NDSolve with a specific set of > equations i had in mind namely(just to refresh your memories) > > Nsp = 5; > k1 = 100; > For[i = 1, i < (Nsp + 1), i++, k2[i] = k1/Nsp]; > eqn1 = {D[M[t], t] == k1, M[0] == 0}; > eqn2 = Table[{D[M[t]y[i][t], t] == k2[i],y[i][0] ==k2[i]/k1},{i,Nsp}]; > var1 = Table[y[i][t], {i, Nsp}]; > var2 = Join[{M}, var1]; > sol=NDSolve[{eqn1,eqn2},var2,{t,0,10}] > > What is suprising is that everyone of you had suggested a solution to > this problem by solving the first equation seperately and using the > result to solve the second equation(btw Plz pardon the simplicity of > the final solution, this is just a test case). The problem is slightly > more complicated because the purpose behind this question is that our > research group is trying to write a program to generate mathematica > statements for solving any given set of differential equations > encountered in our domain(generally simple ODE's and DAE's) and in > orber to be able to do that, there is must be a standard way of > solving a set of equations, namely, > NDSolve[{eqns},{vars},{var,lowlim,upplim}]. > That is why i had wanted to solve this set of equations > simultaneously. Now by solving each equation in isolation this > solution becomes non-genralizable. So i have to ask, is there a way of > solving this set of equations simulatneously avoiding the divide by > zero error? is there a way i can specifiy the order of equations to be > solved in mathematica? any other suggestions? > > thank you guys so much for your dedication to mathematica! > regards > pradeep > -- Daniel Huber Metrohm Ltd. Oberdorfstr. 68 CH-9100 Herisau Tel. +41 71 353 8585, Fax +41 71 353 8907 E-Mail:<mailto:dh at metrohm.ch> Internet:<http://www.metrohm.ch>
- References:
- Re: Avoiding divide by zero error in NDSolve
- From: "Chris Chiasson" <chris.chiasson@gmail.com>
- Re: Avoiding divide by zero error in NDSolve