MathGroup Archive 2006

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

Search the Archive

Re: How to get the maximums of a curve

  • To: mathgroup at smc.vnet.net
  • Subject: [mg66865] Re: How to get the maximums of a curve
  • From: "Valeri Astanoff" <astanoff at yahoo.fr>
  • Date: Fri, 2 Jun 2006 04:08:27 -0400 (EDT)
  • References: <e5js8v$e44$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi Simon,

Here is a quick DIY way to find local maximums (just an example) :

In[1]:=data={{0,1.09},{1,2.01},{2,1.92},{3,1.18},{4,0.29},
    {5,0.109},{6,0.801},{7,1.66},{8,2.064},{9,1.47},
    {10,0.518},{11,0.0379},{12,0.471},{13,1.514},{14,2.017},
    {15,1.65}}; xmin=0; xmax=15;

In[2]:=f=Interpolation[data];

In[3]:=ListPlot[Table[{x,f[x]},{x,xmin,xmax,0.1}] ,PlotJoined->True]

Out[3]= - Graphics -

In[4]:=t=Table[FindRoot[f'[x] == 0,{x,u}],{u,xmin,xmax,0.1}];
[warning interpolation messages...]

In[5]:={x,f[x]} /.
  Select[Union[t, SameTest -> (Abs[(x/.#2)-(x/.#1)]<10^-5&)] ,
    f''[x/.#] < 0 && xmin < (x /. #) < xmax&]

Out[5]={{1.37679,2.07527},{7.99549,2.06401},{14.1378,2.02555}}

hth

V.Astanoff


  • Prev by Date: Re: Simplifying algebraic expressions
  • Next by Date: Re: how to iterate
  • Previous by thread: Re: How to get the maximums of a curve
  • Next by thread: Re: Re: How to get the maximums of a curve