Re: Determining whether a function is periodic
- To: mathgroup at smc.vnet.net
- Subject: [mg35941] Re: Determining whether a function is periodic
- From: "Kevin J. McCann" <kmccann at umbc.edu>
- Date: Fri, 9 Aug 2002 05:17:49 -0400 (EDT)
- Organization: University of Maryland, Baltimore County
- References: <aitgvu$css$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
The simple answer is, of course, to do a FT. If you are sampling at better than twice the max frequency you expect, then it will give you the answer you seek. However, since you are asking the question, I suspect that there may be a signal to noise problem as well. In the absence of noise, the above works well if you sample for 10 or more cycles at say 5 *f0 sampling rate. However, the "optimum detector" when noise is present, well it depends. Even so, I would suggest that an FFT of your data is the best bet, and although errors happen when you are dealing with real data and real noise, the FFT is, in fact, better than the human eye at detecting true periodicity. If on the other hand the frequency is not stable, then, again, it depends. Kevin -- Kevin J. McCann Joint Center for Earth Systems Technology (JCET) Department of Physics UMBC Baltimore MD 21250 "Deirdre Stewart" <dstewart at hebel.net> wrote in message news:aitgvu$css$1 at smc.vnet.net... > Hi, > > I've got the feeling I'm overlooking something obvious... > > In the framework of an optimization problem, I'm tinkering with a class of > real integral functionals - i.e. functions defined by an integral - of a real > variable. > > I define a functional ff(u) as the integral of a function f(x) with > integration boundaries [0,u] > In Mathematica notation, ff[u] := Integrate[ f(x), {x,0,u} ] > > I know that the functional I'm looking for is periodic for some values of u. > My problem is finding the value(s) for x such that ff(u) is perfectly periodic. > The functional ff is quite well-behaved, and uniformly converges towards > a periodic function in u's vicinity. > > The human eye is quite good at detecting periods in plots, but surely there's > a clever way to make Mathematica automatically assess a function's > periodicity, given the period value p one expects ? > > ff(u) = ff(u + k*p) where k=integer, p=period > > As the period is known, I could e.g. look at the magnitude of the expected > Dirac deltas after calculating a Fourier Transform of the integral functional, > but this seems quite inefficient and prone to numerical errors. > > Any suggestions as to how to detect periodicity in Mathematica would be > most welcome... > > Deirdre Stewart >