LALPulsar  6.1.0.1-fe68b98
SinCosLUT.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2011 Bernd Machenschalk
3 //
4 // This program is free software; you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation; either version 2 of the License, or
7 // (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License
15 // along with with program; see the file COPYING. If not, write to the
16 // Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17 // MA 02110-1301 USA
18 //
19 
20 #ifndef _SINCOSLUT_H
21 #define _SINCOSLUT_H
22 
23 #include <lal/LALStdlib.h>
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
29 ///
30 /// \defgroup SinCosLUT_h Header SinCosLUT.h
31 /// \ingroup lalpulsar_general
32 /// \authors Reinhard Prix, Karl Wette
33 ///
34 /// \brief fast non-vector FPU version of SinCos used in various CW codes
35 ///
36 
37 /// @{
38 void XLALSinCosLUTInit( void );
39 
40 int XLALSinCosLUT( REAL4 *sinx, REAL4 *cosx, REAL8 x );
41 int XLALSinCos2PiLUT( REAL4 *sin2pix, REAL4 *cos2pix, REAL8 x );
43 /// @}
44 
45 #ifdef __cplusplus
46 }
47 #endif
48 
49 #endif // _SINCOSLUT_H
double REAL8
float REAL4
int XLALSinCosLUT(REAL4 *sinx, REAL4 *cosx, REAL8 x)
Calculate sin(x) and cos(x) to roughly 1e-7 precision using a lookup-table and Taylor-expansion.
Definition: SinCosLUT.c:83
int XLALSinCos2PiLUT(REAL4 *sin2pix, REAL4 *cos2pix, REAL8 x)
Calculate sin(2*pi*x) and cos(2*pi*x) to roughly 1e-7 precision using a lookup-table and Taylor-expan...
Definition: SinCosLUT.c:97
int XLALSinCos2PiLUTtrimmed(REAL4 *s, REAL4 *c, REAL8 x)
A function that uses the lookup tables to evaluate sin and cos values of 2*Pi*x, but relies on x bein...
Definition: SinCosLUT.c:112
void XLALSinCosLUTInit(void)
Definition: SinCosLUT.c:49