NFFT Logo 3.2.2
kernel/nfsft/api.h
00001 /*
00002  * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts
00003  *
00004  * This program is free software; you can redistribute it and/or modify it under
00005  * the terms of the GNU General Public License as published by the Free Software
00006  * Foundation; either version 2 of the License, or (at your option) any later
00007  * version.
00008  *
00009  * This program is distributed in the hope that it will be useful, but WITHOUT
00010  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00011  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
00012  * details.
00013  *
00014  * You should have received a copy of the GNU General Public License along with
00015  * this program; if not, write to the Free Software Foundation, Inc., 51
00016  * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00017  */
00018 
00019 /* $Id: api.h 3775 2012-06-02 16:39:48Z keiner $ */
00020 
00026 #ifndef API_H
00027 #define API_H
00028 
00029 #include "config.h"
00030 #include "nfft3.h"
00031 
00036 /* "Default exponent of maximum bandwidth" */
00037 #define BWEXP_MAX 10
00038 
00039 /* "Default maximum bandwidth" */
00040 #define BW_MAX 1024
00041 
00042 #define ROW(k) (k*(wisdom.N_MAX+2))
00043 #define ROWK(k) (k*(wisdom.N_MAX+2)+k)
00044 
00045 #ifdef HAVE_STDBOOL_H
00046   #include <stdbool.h>
00047 #else
00048   typedef enum {false = 0,true = 1} bool;
00049 #endif
00050 
00051 //#define FIRST_L (int)floor(ntilde/(double)plength)
00052 //#define LAST_L (int)ceil((Mtilde+1)/(double)plength)-1
00053 
00054 
00058 struct nfsft_wisdom
00059 {
00061   bool initialized;
00062   unsigned int flags;
00065   int N_MAX;
00067   int T_MAX;
00068 
00069   /* Data for the direct algorithms */
00070 
00076   double *alpha;
00082   double *beta;
00088   double *gamma;
00089 
00090   /* Data for fast algorithms. */
00091 
00093   double threshold;
00094 #ifdef _OPENMP
00095   int nthreads;
00096   fpt_set *set_threads;
00097 #else
00098 
00099   fpt_set set;
00100 #endif
00101 };
00102 /* \} */
00103 #endif
00104 

Generated on Fri Oct 12 2012 by Doxygen 1.8.0-20120409