Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALInspiral 5.0.3.1-b246709
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
TemplateBankGeneration.h
Go to the documentation of this file.
1/*
2* Copyright (C) 2007 Bernd Machenschalk, Chad Hanna, Jolien Creighton, Benjamin Owen
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/*________________________________________________________________________
21 *
22 * File Name: TemplateBankGeneration.h
23 *
24 * Author: Hanna C. R.
25 *
26 *________________________________________________________________________
27 */
28
29#ifndef _TEMPLATEBANKGENERATION_H
30#define _TEMPLATEBANKGENERATION_H
31
32#include<lal/LALStdlib.h>
33#include<lal/LALStatusMacros.h>
34#if 0
35#include<lal/LALInspiral.h>
36#include<lal/LALInspiralBank.h>
37#endif
38#include<lal/LALDatatypes.h>
39#include<lal/LIGOMetadataTables.h>
40
41/**
42 * \defgroup TemplateBankGeneration_h Header TemplateBankGeneration.h
43 * \ingroup lalinspiral_bank
44 * \author Hanna, C. R.
45 *
46 * \brief This header file includes all the necessary types and
47 * function prototypes for LALNDTemplateBank() and LALMakeTemplateBank().
48 *
49 * ### Synopsis ###
50 *
51 * \code
52 * #include <lal/TemplateBankGeneration.h>
53 * \endcode
54 *
55 * NDTemplateBank() provides a general way to tile a parameter space with
56 * a constant metric ( currently only for less than 12 dimensions).
57 * MakeTemplateBank() provides a general way for applications to
58 * generate a template bank with suitable I/O.
59 *
60 */
61/** @{ */
62
63/**\name Error Codes */
64/** @{ */
65#define TEMPLATEBANKGENERATIONH_ENULL 1
66#define TEMPLATEBANKGENERATIONH_MSGENULL "Unexpected NULL pointer to an input type"
67/** @} */
68
69typedef enum tagTemplateBankType {
70 /* Binary Inspiral Searches 100-199 */
74 /* Pulsar Searches 200-299 */
76 /* Burst Searches 300-399 */
77 Burst
78 /* Other Searches 400-499 Etc... */
80
81typedef struct tagNDTemplateBankInput {
82 REAL4 minCoordinates[12]; /**< Psi0, Psi3, etc */
83 REAL4 maxCoordinates[12]; /**< Psi0, Psi3, etc */
84 REAL4 minParameters[12]; /**< mass, eta, etc */
85 REAL4 maxParameters[12]; /**< mass, eta, etc */
86 INT2 dimension; /**< 3D?, 4D? -> ND! */
87 REAL4 mm; /**< mismatch */
88 TemplateBankType type; /**< whats the search? */
89 REAL8FrequencySeries *PSD; /**< Power Spec Density */
90 REAL4 f0; /**< Moment scaling freq */
92
93
94
95typedef struct tagNDTemplateBankOutput{
96 REAL4 coordinateVals[12];
97 REAL4 parameterVals[12];
98 struct tagNDTemplateBankOutput *next;
100
101
102
105
106typedef struct tagNDTemplateBankFunctionPtrs {
107 NDTemplateBankMetricPtr metric; /**< Ptr to metric function */
108 NDTemplateBankTestPtr test; /**< Ptr boundary test fct */
110
111
112void
114 LALStatus *,
118
119
120/** @} */ /* end:TemplateBankGeneration_h */
121
122#if 0
123void
124LALMakeTemplateBank(
125 LALStatus *,
127 MakeTemplateBankInput *,
128 MetadataTable *);
129 /* LALMakeTemplateBank(); */
130#endif
131
132#endif
int16_t INT2
float REAL4
void(* NDTemplateBankMetricPtr)(LALStatus *, NDTemplateBankInput *, REAL4Array *)
void(* NDTemplateBankTestPtr)(LALStatus *, NDTemplateBankInput *, NDTemplateBankOutput *, INT2 *)
void LALNDTemplateBank(LALStatus *, NDTemplateBankInput *, NDTemplateBankFunctionPtrs *, NDTemplateBankOutput **)
@ PrecessingType
NDTemplateBankTestPtr test
Ptr boundary test fct
NDTemplateBankMetricPtr metric
Ptr to metric function.
TemplateBankType type
whats the search?
REAL4 f0
Moment scaling freq
INT2 dimension
3D?, 4D? -> ND!
REAL8FrequencySeries * PSD
Power Spec Density
struct tagNDTemplateBankOutput * next