Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 4bc66056a634db26a1f4d0845dc41ca6 > files > 6671

mrpt-doc-0.9.5-0.1.20110925svn2670.fc16.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Fourier transform functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> &gt; <b>C++ reference</b> </div>
<div align="right">
<a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a>
</div>
<!-- Generated by Doxygen 1.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
          <div class="left">
            <form id="FSearchBox" action="search.php" method="get">
              <img id="MSearchSelect" src="search/mag.png" alt=""/>
              <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" 
                     onfocus="searchBox.OnSearchFieldFocus(true)" 
                     onblur="searchBox.OnSearchFieldFocus(false)"/>
            </form>
          </div><div class="right"></div>
        </div>
      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Fourier transform functions</div>  </div>
<div class="ingroups"><a class="el" href="group__mrpt__base__grp.html">[mrpt-base]</a></div></div>
<div class="contents">
<div class="dynheader">
Collaboration diagram for Fourier transform functions:</div>
<div class="dyncontent">
<center><table><tr><td><img src="group__fourier__grp.png" border="0" alt="" usemap="#group____fourier____grp"/>
<map name="group____fourier____grp" id="group____fourier____grp">
<area shape="rect" id="node1" href="group__mrpt__base__grp.html" title=" Back to list of all libraries | See all modules &#160;&#160;" alt="" coords="5,5,93,32"/></map>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void BASE_IMPEXP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fourier__grp.html#gae749b48e5b92cd15c723b16a7d618ff2">mrpt::math::fft_real</a> (vector_float &amp;in_realData, vector_float &amp;out_FFT_Re, vector_float &amp;out_FFT_Im, vector_float &amp;out_FFT_Mag)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the FFT of a 2^N-size vector of real numbers, and returns the Re+Im+Magnitude parts.  <a href="#gae749b48e5b92cd15c723b16a7d618ff2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void BASE_IMPEXP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fourier__grp.html#ga014fd241ea8e475366d3e418e3c0d39a">mrpt::math::dft2_real</a> (const CMatrixFloat &amp;in_data, CMatrixFloat &amp;out_real, CMatrixFloat &amp;out_imag)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the 2D Discrete Fourier Transform (DFT) of a real matrix, returning the real and imaginary parts separately.  <a href="#ga014fd241ea8e475366d3e418e3c0d39a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void BASE_IMPEXP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fourier__grp.html#gaee06620d7a7a003dbeeaa21c18af46ec">mrpt::math::idft2_real</a> (const CMatrixFloat &amp;in_real, const CMatrixFloat &amp;in_imag, CMatrixFloat &amp;out_data)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the 2D inverse Discrete Fourier Transform (DFT)  <a href="#gaee06620d7a7a003dbeeaa21c18af46ec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void BASE_IMPEXP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fourier__grp.html#ga8755c43118b81440f188a2ec5b36874a">mrpt::math::dft2_complex</a> (const CMatrixFloat &amp;in_real, const CMatrixFloat &amp;in_imag, CMatrixFloat &amp;out_real, CMatrixFloat &amp;out_imag)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the 2D Discrete Fourier Transform (DFT) of a complex matrix, returning the real and imaginary parts separately.  <a href="#ga8755c43118b81440f188a2ec5b36874a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void BASE_IMPEXP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fourier__grp.html#gacd41a786500745eabb631c971d94d183">mrpt::math::idft2_complex</a> (const CMatrixFloat &amp;in_real, const CMatrixFloat &amp;in_imag, CMatrixFloat &amp;out_real, CMatrixFloat &amp;out_imag)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the 2D inverse Discrete Fourier Transform (DFT).  <a href="#gacd41a786500745eabb631c971d94d183"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void BASE_IMPEXP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fourier__grp.html#gaf73df6c1be447d2a0e514d912f499bdc">mrpt::math::cross_correlation_FFT</a> (const CMatrixFloat &amp;A, const CMatrixFloat &amp;B, CMatrixFloat &amp;out_corr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Correlation of two matrixes using 2D FFT.  <a href="#gaf73df6c1be447d2a0e514d912f499bdc"></a><br/></td></tr>
</table>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gaf73df6c1be447d2a0e514d912f499bdc"></a><!-- doxytag: member="mrpt::math::cross_correlation_FFT" ref="gaf73df6c1be447d2a0e514d912f499bdc" args="(const CMatrixFloat &amp;A, const CMatrixFloat &amp;B, CMatrixFloat &amp;out_corr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BASE_IMPEXP mrpt::math::cross_correlation_FFT </td>
          <td>(</td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_corr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Correlation of two matrixes using 2D FFT. </p>

</div>
</div>
<a class="anchor" id="ga8755c43118b81440f188a2ec5b36874a"></a><!-- doxytag: member="mrpt::math::dft2_complex" ref="ga8755c43118b81440f188a2ec5b36874a" args="(const CMatrixFloat &amp;in_real, const CMatrixFloat &amp;in_imag, CMatrixFloat &amp;out_real, CMatrixFloat &amp;out_imag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BASE_IMPEXP mrpt::math::dft2_complex </td>
          <td>(</td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_real</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_imag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_real</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_imag</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the 2D Discrete Fourier Transform (DFT) of a complex matrix, returning the real and imaginary parts separately. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">in_real</td><td>The N_1xN_2 matrix with the real part. </td></tr>
    <tr><td class="paramname">in_imag</td><td>The N_1xN_2 matrix with the imaginary part. </td></tr>
    <tr><td class="paramname">out_real</td><td>The N_1xN_2 output matrix which will store the real values (user has not to initialize the size of this matrix). </td></tr>
    <tr><td class="paramname">out_imag</td><td>The N_1xN_2 output matrix which will store the imaginary values (user has not to initialize the size of this matrix). If the dimensions of the matrix are powers of two, the fast fourier transform (FFT) is used instead of the general algorithm. </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fourier__grp.html#gae749b48e5b92cd15c723b16a7d618ff2" title="Computes the FFT of a 2^N-size vector of real numbers, and returns the Re+Im+Magnitude parts...">fft_real</a>, <a class="el" href="group__fourier__grp.html#gacd41a786500745eabb631c971d94d183" title="Compute the 2D inverse Discrete Fourier Transform (DFT).">idft2_complex</a>,<a class="el" href="group__fourier__grp.html#ga014fd241ea8e475366d3e418e3c0d39a" title="Compute the 2D Discrete Fourier Transform (DFT) of a real matrix, returning the real and imaginary pa...">dft2_real</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga014fd241ea8e475366d3e418e3c0d39a"></a><!-- doxytag: member="mrpt::math::dft2_real" ref="ga014fd241ea8e475366d3e418e3c0d39a" args="(const CMatrixFloat &amp;in_data, CMatrixFloat &amp;out_real, CMatrixFloat &amp;out_imag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BASE_IMPEXP mrpt::math::dft2_real </td>
          <td>(</td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_real</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_imag</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the 2D Discrete Fourier Transform (DFT) of a real matrix, returning the real and imaginary parts separately. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">in_data</td><td>The N_1xN_2 matrix. </td></tr>
    <tr><td class="paramname">out_real</td><td>The N_1xN_2 output matrix which will store the real values (user has not to initialize the size of this matrix). </td></tr>
    <tr><td class="paramname">out_imag</td><td>The N_1xN_2 output matrix which will store the imaginary values (user has not to initialize the size of this matrix). </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fourier__grp.html#gae749b48e5b92cd15c723b16a7d618ff2" title="Computes the FFT of a 2^N-size vector of real numbers, and returns the Re+Im+Magnitude parts...">fft_real</a>, ifft2_read, fft2_complex If the dimensions of the matrix are powers of two, the fast fourier transform (FFT) is used instead of the general algorithm. </dd></dl>

</div>
</div>
<a class="anchor" id="gae749b48e5b92cd15c723b16a7d618ff2"></a><!-- doxytag: member="mrpt::math::fft_real" ref="gae749b48e5b92cd15c723b16a7d618ff2" args="(vector_float &amp;in_realData, vector_float &amp;out_FFT_Re, vector_float &amp;out_FFT_Im, vector_float &amp;out_FFT_Mag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BASE_IMPEXP mrpt::math::fft_real </td>
          <td>(</td>
          <td class="paramtype">vector_float &amp;&#160;</td>
          <td class="paramname"><em>in_realData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vector_float &amp;&#160;</td>
          <td class="paramname"><em>out_FFT_Re</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vector_float &amp;&#160;</td>
          <td class="paramname"><em>out_FFT_Im</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vector_float &amp;&#160;</td>
          <td class="paramname"><em>out_FFT_Mag</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the FFT of a 2^N-size vector of real numbers, and returns the Re+Im+Magnitude parts. </p>
<dl class="see"><dt><b>See also:</b></dt><dd>fft2_real </dd></dl>

</div>
</div>
<a class="anchor" id="gacd41a786500745eabb631c971d94d183"></a><!-- doxytag: member="mrpt::math::idft2_complex" ref="gacd41a786500745eabb631c971d94d183" args="(const CMatrixFloat &amp;in_real, const CMatrixFloat &amp;in_imag, CMatrixFloat &amp;out_real, CMatrixFloat &amp;out_imag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BASE_IMPEXP mrpt::math::idft2_complex </td>
          <td>(</td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_real</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_imag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_real</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_imag</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the 2D inverse Discrete Fourier Transform (DFT). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">in_real</td><td>The N_1xN_2 input matrix with real values, where both dimensions MUST BE powers of 2. </td></tr>
    <tr><td class="paramname">in_imag</td><td>The N_1xN_2 input matrix with imaginary values, where both dimensions MUST BE powers of 2. </td></tr>
    <tr><td class="paramname">out_real</td><td>The N_1xN_2 output matrix for real part (user has not to initialize the size of this matrix). </td></tr>
    <tr><td class="paramname">out_imag</td><td>The N_1xN_2 output matrix for imaginary part (user has not to initialize the size of this matrix). </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fourier__grp.html#gae749b48e5b92cd15c723b16a7d618ff2" title="Computes the FFT of a 2^N-size vector of real numbers, and returns the Re+Im+Magnitude parts...">fft_real</a>, <a class="el" href="group__fourier__grp.html#ga014fd241ea8e475366d3e418e3c0d39a" title="Compute the 2D Discrete Fourier Transform (DFT) of a real matrix, returning the real and imaginary pa...">dft2_real</a>,<a class="el" href="group__fourier__grp.html#ga8755c43118b81440f188a2ec5b36874a" title="Compute the 2D Discrete Fourier Transform (DFT) of a complex matrix, returning the real and imaginary...">dft2_complex</a> If the dimensions of the matrix are powers of two, the fast fourier transform (FFT) is used instead of the general algorithm. </dd></dl>

</div>
</div>
<a class="anchor" id="gaee06620d7a7a003dbeeaa21c18af46ec"></a><!-- doxytag: member="mrpt::math::idft2_real" ref="gaee06620d7a7a003dbeeaa21c18af46ec" args="(const CMatrixFloat &amp;in_real, const CMatrixFloat &amp;in_imag, CMatrixFloat &amp;out_data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void BASE_IMPEXP mrpt::math::idft2_real </td>
          <td>(</td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_real</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>in_imag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CMatrixFloat &amp;&#160;</td>
          <td class="paramname"><em>out_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the 2D inverse Discrete Fourier Transform (DFT) </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">in_real</td><td>The N_1xN_2 input matrix with real values. </td></tr>
    <tr><td class="paramname">in_imag</td><td>The N_1xN_2 input matrix with imaginary values. </td></tr>
    <tr><td class="paramname">out_data</td><td>The N_1xN_2 output matrix (user has not to initialize the size of this matrix). Note that the real and imaginary parts of the FFT will NOT be checked to assure that they represent the transformation of purely real data. If the dimensions of the matrix are powers of two, the fast fourier transform (FFT) is used instead of the general algorithm. </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fourier__grp.html#gae749b48e5b92cd15c723b16a7d618ff2" title="Computes the FFT of a 2^N-size vector of real numbers, and returns the Re+Im+Magnitude parts...">fft_real</a>, fft2_real </dd></dl>

</div>
</div>
</div>
<br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.7.5</a> for MRPT 0.9.5 SVN: at Sun Sep 25 17:20:18 UTC 2011</td><td></td> <td width="100"> </td> <td width="150">  </td></tr> </table>  </body></html>