[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] Eigen/FFT
- From: Tim Hutt <tdhutt@xxxxxxxxx>
- Date: Tue, 23 Jun 2009 08:47:55 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=sKKjzyG7mPzLqbTHqIvdpWiyNEqhBwcTdVARxxGc5f0=; b=VNQBL4bgV6CJCQZM++1cLtAn4OxGRkdldsRJuDljxX+CDVzx58f0bWPHVcOoo8J9rm 6XTO4NqLI878MSjTeyuIZNABK80L3d+513oBvLRZ5Q6Wvzb/zyGQfivXsn8AOUkIJaTS ZJ4vwGJom1BAI8iQFbwkkYMESnwiNVBorE3Vs=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=b1xN3GxKn8uDTwU147pGf+WF/CeaJ3IJ4reGGoi1l8EWjV0btukNF2+YLoAlaHmdkg pb5oTioh2lOrep1wCAxhMwl7olhhju+e7nxU74+PSsytgmuBiHEeSOgos0zwyrPChObS Q5f+VhBbQGPPsxjvqXWyI+JZGYaGi1sGolwos=
>> I think the default behavior of Eigen/FFT should favor correctness and generality over speed.
>> 1) Scaling:
>> Other libraries (FFTW,IMKL,KISSFFT) do not perform scaling, so there is a constant gain incurred after the forward&inverse transforms , so IFFT(FFT(x)) = Kx; this is done to avoid a vector-by-value multiply. The downside is that algorithms that worked correctly in Matlab/octave don't behave the same way once implemented in C++.
Simple solution, have FFT(x) and FFT_unscaled(x). That way people
won't be surprised by the results but they can still be optimised.