fourier.h

00001 
00002 /*----------------------------------------------------------------------------
00003  *                                  E.S.O.
00004  *----------------------------------------------------------------------------
00005  * File name    :   fourier.c
00006  * Author       :   Nicolas Devillard
00007  * Created on   :   OCt 20, 1995
00008  * Hardware     :   Sun Sparc 20
00009  * Software     :   ANSI C under Solaris Unix
00010  *                  Part of ECLIPSE library for Adonis
00011  * Description  :   fourier transform routines
00012  *--------------------------------------------------------------------------*/
00013 
00014 /*
00015 
00016  $Id: fourier.h,v 1.1 2003/09/03 12:50:47 amodigli Exp $
00017  $Author: amodigli $
00018  $Date: 2003/09/03 12:50:47 $
00019  $Revision: 1.1 $
00020 
00021  */
00022 
00023 
00024 #ifndef _FOURIER_H_
00025 #define _FOURIER_H_
00026 
00027 
00028 /*----------------------------------------------------------------------------
00029  *                              Includes
00030  *--------------------------------------------------------------------------*/
00031 
00032 #include <math.h>
00033 #include "memory.h"
00034 #include "cube_defs.h"
00035 #include "cube_handling.h"
00036 #include "fft_base.h"
00037 
00038 
00039 /*----------------------------------------------------------------------------
00040  *                      Function ANSI C prototypes
00041  *--------------------------------------------------------------------------*/
00042 
00043 
00044 /*----------------------------------------------------------------------------
00045  * Function :   fftn_image()
00046  * In       :   2 images: real and imaginary, fft direction
00047  * Out      :   1 cube containing 2 images
00048  * Job      :   compute image FFT
00049  * Notice   :   if no imaginary part is given, give NULL as argument for
00050  *              the second image. sign is set to FFT_FORWARD for foward fft,
00051  *              FFT_INVERSE for inverse fft.
00052  *--------------------------------------------------------------------------*/
00053 
00054 OneCube  *
00055 fftn_image(
00056     OneImage    *real_img,
00057     OneImage    *imaginary_img,
00058     int         sign
00059 ) ;
00060 
00061 
00062 /*----------------------------------------------------------------------------
00063  * Function :   conv_xy_rtheta()
00064  * In       :   one 2-plane cube
00065  * Out      :   one newly allocated 2-plane cube
00066  * Job      :   convert a 2-plane cube in (real,imag) to (modulus,phase)
00067  * Notice   :
00068  *--------------------------------------------------------------------------*/
00069 
00070 OneCube *
00071 conv_xy_rtheta(OneCube * cube_in) ;
00072 
00073 
00074 
00075 /*----------------------------------------------------------------------------
00076  * Function :   conv_rtheta_xy()
00077  * In       :   one 2-plane cube
00078  * Out      :   one newly allocated 2-plane cube
00079  * Job      :   convert a cube in (modulus,phase) to (real,imaginary)
00080  * Notice   :
00081  *--------------------------------------------------------------------------*/
00082 
00083 OneCube *
00084 conv_rtheta_xy(OneCube * cube_in) ;
00085 
00086 
00087 
00088 /*----------------------------------------------------------------------------
00089  * Function :   swap_image_quadrants()
00090  * In       :   1 image
00091  * Out      :   void
00092  * Job      :   swap quadrants in image
00093  * Notice   :   if the image is initially 1 2 it becomes 4 3
00094  *                                        3 4            2 1
00095  *
00096  *              the input image is modified
00097  *--------------------------------------------------------------------------*/
00098 
00099 void 
00100 swap_image_quadrants(OneImage   * cube_in) ;
00101 
00102 
00103 #endif
00104 /*--------------------------------------------------------------------------*/

Generated on Wed Oct 26 13:08:52 2005 for SINFONI Pipeline Reference Manual by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001