Path: news.mathworks.com!newsfeed-00.mathworks.com!newscon02.news.prodigy.net!prodigy.net!news.glorb.com!postnews.google.com!d30g2000prg.googlegroups.com!not-for-mail
From:  NZTideMan <mulgor@gmail.com>
Newsgroups: comp.dsp,comp.soft-sys.matlab
Subject: Re: Normalization for DFT (fft in MATLAB)
Date: Tue, 10 Jul 2007 22:47:41 -0700
Organization: http://groups.google.com
Lines: 44
Message-ID: <1184132861.111269.299090@d30g2000prg.googlegroups.com>
References: <1184106069.512506.73460@q75g2000hsh.googlegroups.com>
NNTP-Posting-Host: 162.112.38.4
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1184132861 7795 127.0.0.1 (11 Jul 2007 05:47:41 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Wed, 11 Jul 2007 05:47:41 +0000 (UTC)
In-Reply-To: <1184128292.224850.195010@r34g2000hsd.googlegroups.com>
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30),gzip(gfe),gzip(gfe)
Complaints-To: groups-abuse@google.com
Injection-Info: d30g2000prg.googlegroups.com; posting-host=162.112.38.4;
Xref: news.mathworks.com comp.dsp:225253 comp.soft-sys.matlab:418392



On Jul 11, 4:31 pm, "A.E lover" <aelove...@gmail.com> wrote:
> On Jul 10, 11:01 pm, Jerry Avins <j...@ieee.org> wrote:> A.E lover wrote:
>
> I am using fft of MATLAB,  I am still confused with Tim's method.
> In Tim 's method, the testing input is a vector of ones. I am
> confused,  I guess it should  be a sinusoidal with amplitude of 1
> because my objective is to normalize fft such that the sinusoidal with
> applitude of 1 in time domain will correspond with fft amplitude of
> unity.
> I have tested two cases, using Tim's method, the scale value is the
> length of the input vector. while if  the input is a sinusoidal
> signal, the scale value is half of signal length. So which one is
> correct for my case?
>
> Thanks
>
>
>
> > > Thanks Wescott,  however I have a specific requirement to normalize
> > > fft: " normalize the FFT output such that a sinusoid with amplitude 1
> > > will correspond to an FFT magnitude of unity". I think for this
> > > specific requirement we will have unique way to do that, right? So in
> > > your opinion, in this case, how should I do to normalize FFT output?
>
> > That depends on the details of the FFT routine you use. Write your own
> > and know, or use Tim's approach to find out.
>
> > Jerry
> > --
> > Engineering is the art of making what you want from things you can get.
> > =AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=
=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=
=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF- Hide=
 quoted text -
>
> - Show quoted text -

You can scale the FFT to be whatever you like.
For a power spectral density (PSD) spectrum, the convention is for the
area under the spectrum to be the variance of the time series, but for
a normalised spectrum the area is unity, by convention.
If you have to divide by N/2 to get unit amplitude, so be it.
Different strokes for different folks.