MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: NDSolve can't solve a complex ODE correctly?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg74906] Re: NDSolve can't solve a complex ODE correctly?
  • From: dh <dh at metrohm.ch>
  • Date: Tue, 10 Apr 2007 06:04:05 -0400 (EDT)
  • References: <evd3uh$5ks$1@smc.vnet.net>


Hi barrow,

you are fooling yourself. Every numerical solution has small numerical 

errors. What you see are exatcly these errors of the order of 10^-6. You 

can see this by plotting e.g.:

Plot[Evaluate[{a[t]/az[t]}/.sol]-2.07846,{t,1000,2000},

     PlotStyle\[Rule]{Hue[1]}];

hope this helps, Daniel



Barrow wrote:

> Dear all,

>    I have two coupled ordinary differential equations which satisfied

> by two functions, a(t) and az(t). It can be shown analitically that as

> t approaches infinity, a(t) approaches az(t). But the numerical

> solution given by Mathematica doesn't agree this.

>   Here is my code:

> -----------------------

> lam = 1;

> eqb = ((a'[t]/a[t])^2 + 2a'[t]*az'[t]/a[t]/az[t] == lam);

> eqaz = (3(a'[t]/a[t])^2 + 2(a''[t]/a[t] - (a'[t]/a[t])^2) == lam);

> sol = NDSolve[{eqb, eqaz, a[0] == 1, az[0] == .5, a'[0] == .6}, {a[t],

> az[t]}, {t, 0, 2000}, MaxSteps -> 20000];

> Plot[Evaluate[{a[t]/az[t]} /. sol], {t, 0, 2000}, PlotStyle ->

> {Hue[1]}];

> ----------------------------------

> The result of the plot is an oscillation around 2.07846 which is

> really strange.

> Is there anything I didn't noticed about NDSolve or any method to

> improve my coding?

> Thanks very much!

> Cheers.        Barrow

> 

> 




  • Prev by Date: Re: Showing the points on a surface about a circle in the plane
  • Next by Date: Re: Plot a simple function
  • Previous by thread: Re: NDSolve can't solve a complex ODE correctly?
  • Next by thread: Re: NDSolve can't solve a complex ODE correctly?