51 #include <sys/types.h>
53 #include <lal/AVFactories.h>
54 #include <lal/LALConfig.h>
55 #include <lal/LALMalloc.h>
56 #include <lal/LALStatusMacros.h>
57 #include <lal/LALStdlib.h>
58 #include <lal/LALMathematica.h>
61 #define LALMATHNDPLOTTESTC_ENORM 0
62 #define LALMATHNDPLOTTESTC_EMEM 1
63 #define LALMATHNDPLOTTESTC_ESUB 2
68 #define LALMATHNDPLOTTESTC_MSGENORM "Normal exit"
69 #define LALMATHNDPLOTTESTC_MSGEMEM "Memory allocation error"
70 #define LALMATHNDPLOTTESTC_MSGESUB "Subroutine error"
86 printf(LALMATHNDPLOTTESTC_MSGEMEM);
91 for(loopx=1; loopx <= 20; loopx++){
92 for(loopy=1; loopy <= 20; loopy++){
93 for(loopz=0; loopz <= 1; loopz++){
94 for(loopw=0; loopw <= 1; loopw++){
104 printf(LALMATHNDPLOTTESTC_MSGEMEM);
112 for(loopx=1; loopx <= 20; loopx++){
113 for(loopy=1; loopy <= 20; loopy++){
114 for(loopw=0; loopw <= 1; loopw++){
124 printf(LALMATHNDPLOTTESTC_MSGEMEM);
132 for(loopx=1; loopx <= 20; loopx++){
133 for(loopy=1; loopy <= 20; loopy++){
134 for(loopz=3; loopz <= 4; loopz++){
135 for(loopw=0; loopw <=1; loopw++){
136 if( ((loopx==6)||(loopx==19)) && (loopy<16) && (loopy>5))
continue;
137 if((loopy==15)&&(((loopx<20)&&(loopx>14))||((loopx<7)&&(loopx>1))))
continue;
138 if((loopx>9)&&(loopx<12)&&(((loopy>6)&&(loopy<10))||(loopy==12)))
continue;
139 if(((loopx==9)||(loopx==12)) && ((loopy>9)&&(loopy<13)))
continue;
140 if(((loopx==8)||(loopx==13)) && ((loopy>12)&&(loopy<16)))
continue;
144 printf(LALMATHNDPLOTTESTC_MSGESUB);
155 printf(LALMATHNDPLOTTESTC_MSGEMEM);
165 printf(
"\nCalling LALMathNDPlot()......\n");
170 printf(LALMATHNDPLOTTESTC_MSGESUB);
183 printf(LALMATHNDPLOTTESTC_MSGESUB);
189 printf(LALMATHNDPLOTTESTC_MSGEMEM);
void REPORTSTATUS(LALStatus *status)
#define LALError(statusptr, statement)
#define LALMATHNDPLOTTESTC_ENORM
Normal exit.
#define LALMATHNDPLOTTESTC_ESUB
Subroutine error.
#define LALMATHNDPLOTTESTC_EMEM
Memory allocation error.
int main(int argc, char *argv[])
uint32_t UINT4
Four-byte unsigned integer.
int32_t INT4
Four-byte signed integer.
void LALMathNDPlot(LALStatus *status, MathNDPointList *first, INT4 *ntiles, REAL4 *pointSize)
This function is for plotting N-Dimensional template banks by creating a MATHEMATICA notebook.
void LALSDestroyVector(LALStatus *, REAL4Vector **)
void LALSCreateVector(LALStatus *, REAL4Vector **, UINT4)
LAL status structure, see The LALStatus structure for more details.
This type is similar to Math3DPointList except the coordinates are stored as data in the REAL4Vector ...
REAL4Vector * coordinates
struct tagMathNDPointList * next
REAL4 * data
Pointer to the data array.