Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALPulsar 7.1.1.1-8a6b96f
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
SearchIteration.h
Go to the documentation of this file.
1//
2// Copyright (C) 2017 Karl Wette
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 _SEARCH_ITERATION_H
21#define _SEARCH_ITERATION_H
22
23///
24/// \file
25/// \ingroup lalpulsar_bin_Weave
26/// \brief Module which implements iterators over search parameter spaces
27///
28
29#include "Weave.h"
30
31#include <lal/LatticeTiling.h>
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
37WeaveSearchIterator *XLALWeaveMainLoopSearchIteratorCreate(
38 const LatticeTiling *semi_tiling,
39 const UINT4 freq_partitions,
40 const UINT4 f1dot_partitions
41);
43 WeaveSearchIterator *itr
44);
46 const WeaveSearchIterator *itr,
48);
50 WeaveSearchIterator *itr,
52);
54 WeaveSearchIterator *itr,
55 BOOLEAN *iteration_complete,
56 BOOLEAN *expire_cache,
57 UINT8 *semi_index,
58 const gsl_vector **semi_rssky,
59 INT4 *semi_left,
60 INT4 *semi_right,
61 UINT4 *repetition_index
62);
64 const WeaveSearchIterator *itr
65);
67 const WeaveSearchIterator *itr,
68 const REAL8 elapsed_time
69);
70
71#ifdef __cplusplus
72}
73#endif
74
75#endif // _SEARCH_ITERATION_H
76
77// Local Variables:
78// c-file-style: "linux"
79// c-basic-offset: 2
80// End:
int XLALWeaveSearchIteratorNext(WeaveSearchIterator *itr, BOOLEAN *iteration_complete, BOOLEAN *expire_cache, UINT8 *semi_index, const gsl_vector **semi_rssky, INT4 *semi_left, INT4 *semi_right, UINT4 *repetition_index)
Advance to next state of iterator.
REAL8 XLALWeaveSearchIteratorProgress(const WeaveSearchIterator *itr)
Return progress of iterator as a percentage.
void XLALWeaveSearchIteratorDestroy(WeaveSearchIterator *itr)
Destroy iterator.
int XLALWeaveSearchIteratorSave(const WeaveSearchIterator *itr, FITSFile *file)
Save state of iterator to a FITS file.
WeaveSearchIterator * XLALWeaveMainLoopSearchIteratorCreate(const LatticeTiling *semi_tiling, const UINT4 freq_partitions, const UINT4 f1dot_partitions)
Create iterator over the main loop search parameter space.
REAL8 XLALWeaveSearchIteratorRemainingTime(const WeaveSearchIterator *itr, const REAL8 elapsed_time)
Return estimate of time remaining for iteration to complete, assuming a equal dstribution in computat...
int XLALWeaveSearchIteratorRestore(WeaveSearchIterator *itr, FITSFile *file)
Restore state of iterator from a FITS file.
struct tagFITSFile FITSFile
Representation of a FITS file.
Definition: FITSFileIO.h:54
unsigned char BOOLEAN
uint64_t UINT8
double REAL8
uint32_t UINT4
int32_t INT4