21 #include <lal/FrequencySeries.h>
22 #include <lal/NormalizeSFTRngMed.h>
23 #include <lal/Units.h>
25 #define REL_ERR(x,y) ( fabs((x) - (y)) / fabs( (x) ) )
37 REAL8 dFreq = 1.0 / 1800.0;
42 crectf( -1.249241e-21, 1.194085e-21 ),
43 crectf( 2.207420e-21, 2.472366e-22 ),
44 crectf( 1.497939e-21, 6.593609e-22 ),
45 crectf( 3.544089e-20, -9.365807e-21 ),
46 crectf( 1.292773e-21, -1.402466e-21 )
55 strcpy( mySFT->
name,
"H1;testSFTRngmed" );
62 for ( iBin = 0; iBin <
numBins; iBin ++ ) {
90 REAL8 rngmedREF3[] = { 2.986442063306e-42, 2.986442063306e-42, 4.933828992779561e-42, 3.638172910684999e-42, 3.638172910684999e-42 };
103 printf(
"%4s %22s %22s %8s <%g\n",
"Bin",
"rngmed(LAL)",
"rngmed(Octave)",
"relError",
tol );
104 for ( iBin = 0; iBin <
numBins; iBin ++ ) {
105 REAL8 rngmedVAL = rngmed.data->data[iBin];
106 REAL8 rngmedREF = rngmedREF3[iBin] / medianBias3;
108 if ( relErr >
tol ) {
115 printf(
"%4d %22.16g %22.16g %8.1g %s\n", iBin, rngmedVAL, rngmedREF, relErr, passStr );
122 UINT4 blockSize4 = 4;
130 REAL8 rngmedREF4[] = { 3.96013552804278e-42, 3.96013552804278e-42, 3.96013552804278e-42, 4.28600095173228e-42, 4.28600095173228e-42 };
141 printf(
"%4s %22s %22s %8s <%g\n",
"Bin",
"rngmed(LAL)",
"rngmed(Octave)",
"relError",
tol );
142 for ( iBin = 0; iBin <
numBins; iBin ++ ) {
143 REAL8 rngmedVAL = rngmed.data->data[iBin];
144 REAL8 rngmedREF = rngmedREF4[iBin] / medianBias4;
146 if ( relErr >
tol ) {
153 printf(
"%4d %22.16g %22.16g %8.1g %s\n", iBin, rngmedVAL, rngmedREF, relErr, passStr );
164 printf(
"Test failed! Difference exceeded tolerance.\n" );
167 printf(
"Test passed.\n" );
#define __func__
log an I/O error, i.e.
void LALCheckMemoryLeaks(void)
#define XLAL_INIT_DECL(var,...)
int XLALSFTtoRngmed(REAL8FrequencySeries *rngmed, const SFTtype *sft, UINT4 blockSize)
Calculates a smoothed (running-median) periodogram for the given SFT.
REAL8 XLALRngMedBias(INT4 blkSize)
SFTtype * XLALCreateSFT(UINT4 numBins)
XLAL function to create one SFT-struct.
void XLALDestroySFT(SFTtype *sft)
Destructor for one SFT.
REAL8Vector * XLALCreateREAL8Vector(UINT4 length)
void XLALDestroyREAL8Vector(REAL8Vector *vector)
#define XLAL_CHECK(assertion,...)
int XLALPrintError(const char *fmt,...) _LAL_GCC_PRINTF_FORMAT_(1