arxiv:1804.03392v3 [astro-ph.im] 2 jul 2018

17
Implementing a semicoherent search for continuous gravitational waves using optimally-constructed template banks K. Wette, 1, 2, * S. Walsh, 3, 2 R. Prix, 2 and M. A. Papa 2, 3 1 ARC Centre of Excellence for Gravitational Wave Discovery (OzGrav) and Centre for Gravitational Physics, Research School of Physics and Engineering, The Australian National University, ACT 0200, Australia 2 Max Planck Institute for Gravitational Physics (Albert Einstein Institute), D-30167 Hannover, Germany 3 Department of Physics, University of Wisconsin, Milwaukee, WI 53201, USA (Dated: 2018-07-02 16:36:12 +1000, commit cd3bd73-CLEAN) All-sky surveys for isolated continuous gravitational waves present a significant data-analysis chal- lenge. Semicoherent search methods are commonly used to efficiently perform the computationally- intensive task of searching for these weak signals in the noisy data of gravitational-wave detectors such as LIGO and Virgo. We present a new implementation of a semicoherent search method, Weave, that for the first time makes full use of a parameter-space metric to generate banks of search templates at the correct resolution, combined with optimal lattices to minimize the required number of templates and hence the computational cost of the search. We describe the implementation of Weave and associated design choices, and characterize its behavior using semi-analytic models. PACS numbers: 04.80.Nn, 95.55.Ym, 95.75.Pq, 97.60.Jd I. INTRODUCTION The detections of short-duration gravitational-wave events from the inspiral and merger of binary black holes [1–5] and binary neutron stars [6] are enabling ad- vances across astronomy, astrophysics, and cosmology. As the gravitational-wave detectors LIGO [7, 8], Virgo [9] improve in sensitivity in the coming years, and as new de- tectors KAGRA [10] and LIGO India [11] come online, it may become possible to detect gravitational radiation from other astrophysical phenomena. Rapidly-spinning, non-axisymmetrically-deformed neutron stars will emit gravitational waves in the form of continuous quasi- sinusoidal signals, and remain an intriguing prospect for detection with advanced instruments. Searches for con- tinuous gravitational waves in contemporary LIGO and Virgo data are ongoing [e.g. 12–16]. Since the maximum non-axisymmetric deformation of neutron stars is expected to be small [e.g. 17], continu- ous waves are expected to be weak relative to the sensi- tivity of the current generation of interferometric detec- tors. Consequentially there has accumulated a significant body of research devoted to the data analysis challenge of extracting such weak signals from the gravitational- wave detector data. Early results [18, 19] focused on the method of matched filtering the entire dataset against the known continuous-wave signal model; while theoreti- cally optimal (in the NeymanPearson sense), this method quickly becomes computationally intractable if some or all of the model parameters are unknown. Such is the case if one wished to target an interesting sky direction e.g. associated with a supernova remnant [e.g. 20] or a low-mass X-ray binary [e.g. 13, 15], or perform an all-sky survey for isolated continuous-wave sources unassociated * [email protected] with known pulsars [e.g. 18]. It is the latter type of search that is the subject of this paper. The additional challenge of a practical upper limit on the computational cost of all-sky searches has spurred the development of various sub-optimal but computationally- tractable hierarchical or semicoherent algorithms [21]. They share a common approach: the dataset (which for this example we assume is contiguous) with timespan b T is partitioned into N segments, each with timespan e T . A fully-coherent matched filter search is then performed individually for each segment. Most 1 methods then com- bine segments by incoherently summing the power from N filters, one from each segment, which together fol- low a consistent frequency evolution as dictated by the continuous-wave signal model. The phase evolution need not be continuous over the N filters, however; nor need the gravitational-wave amplitudes in each segment be consistent. This loss of complete signal self-consistency comes, however, with a computational benefit: while the computational cost of a fully-coherent matched filter search of the entire dataset scales as b T n = N n e T n with n a high power 5 to 6, the cost of a semicoherent method typically scales as N m e T n with m 2 n [24]. The strain sensitivities of a fully-coherent and semicoherent search typically scale as N 1/2 e T 1/2 and N 1/4w e T 1/2 respec- tively, with w 1 [24, 25]; for the loss of a factor N 1/4 in sensitivity, a semicoherent method is able to gain by being able to analyze large (e.g. b T & 1 year) datasets, whereas a fully-coherent search would be computation- ally restricted to a much shorter (e.g. b T 1 year) sub- set. An important early advance in the development of semicoherent methods was the adaption of the Hough 1 A few methods instead look for significant templates which are coincident between segments [22, 23] arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

Upload: others

Post on 07-Jan-2022

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

Implementing a semicoherent search for continuous gravitational waves usingoptimally-constructed template banks

K. Wette,1, 2, ∗ S. Walsh,3, 2 R. Prix,2 and M. A. Papa2, 3

1ARC Centre of Excellence for Gravitational Wave Discovery (OzGrav) and Centre for Gravitational Physics,Research School of Physics and Engineering, The Australian National University, ACT 0200, Australia

2Max Planck Institute for Gravitational Physics (Albert Einstein Institute), D-30167 Hannover, Germany3Department of Physics, University of Wisconsin, Milwaukee, WI 53201, USA

(Dated: 2018-07-02 16:36:12 +1000, commit cd3bd73-CLEAN)

All-sky surveys for isolated continuous gravitational waves present a significant data-analysis chal-lenge. Semicoherent search methods are commonly used to efficiently perform the computationally-intensive task of searching for these weak signals in the noisy data of gravitational-wave detectorssuch as LIGO and Virgo. We present a new implementation of a semicoherent search method,Weave, that for the first time makes full use of a parameter-space metric to generate banks of searchtemplates at the correct resolution, combined with optimal lattices to minimize the required numberof templates and hence the computational cost of the search. We describe the implementation ofWeave and associated design choices, and characterize its behavior using semi-analytic models.

PACS numbers: 04.80.Nn, 95.55.Ym, 95.75.Pq, 97.60.Jd

I. INTRODUCTION

The detections of short-duration gravitational-waveevents from the inspiral and merger of binary blackholes [1–5] and binary neutron stars [6] are enabling ad-vances across astronomy, astrophysics, and cosmology.As the gravitational-wave detectors LIGO [7, 8], Virgo [9]improve in sensitivity in the coming years, and as new de-tectors KAGRA [10] and LIGO India [11] come online,it may become possible to detect gravitational radiationfrom other astrophysical phenomena. Rapidly-spinning,non-axisymmetrically-deformed neutron stars will emitgravitational waves in the form of continuous quasi-sinusoidal signals, and remain an intriguing prospect fordetection with advanced instruments. Searches for con-tinuous gravitational waves in contemporary LIGO andVirgo data are ongoing [e.g. 12–16].

Since the maximum non-axisymmetric deformation ofneutron stars is expected to be small [e.g. 17], continu-ous waves are expected to be weak relative to the sensi-tivity of the current generation of interferometric detec-tors. Consequentially there has accumulated a significantbody of research devoted to the data analysis challengeof extracting such weak signals from the gravitational-wave detector data. Early results [18, 19] focused on themethod of matched filtering the entire dataset againstthe known continuous-wave signal model; while theoreti-cally optimal (in the NeymanPearson sense), this methodquickly becomes computationally intractable if some orall of the model parameters are unknown. Such is thecase if one wished to target an interesting sky directione.g. associated with a supernova remnant [e.g. 20] or alow-mass X-ray binary [e.g. 13, 15], or perform an all-skysurvey for isolated continuous-wave sources unassociated

[email protected]

with known pulsars [e.g. 18]. It is the latter type of searchthat is the subject of this paper.

The additional challenge of a practical upper limit onthe computational cost of all-sky searches has spurred thedevelopment of various sub-optimal but computationally-tractable hierarchical or semicoherent algorithms [21].They share a common approach: the dataset (which for

this example we assume is contiguous) with timespan T

is partitioned into N segments, each with timespan T .A fully-coherent matched filter search is then performedindividually for each segment. Most 1 methods then com-bine segments by incoherently summing the power fromN filters, one from each segment, which together fol-low a consistent frequency evolution as dictated by thecontinuous-wave signal model. The phase evolution neednot be continuous over the N filters, however; nor needthe gravitational-wave amplitudes in each segment beconsistent. This loss of complete signal self-consistencycomes, however, with a computational benefit: whilethe computational cost of a fully-coherent matched filter

search of the entire dataset scales as Tn = NnTn with n ahigh power ∼ 5 to 6, the cost of a semicoherent method

typically scales as NmTn with m ∼ 2 � n [24]. Thestrain sensitivities of a fully-coherent and semicoherent

search typically scale as N1/2T 1/2 and N1/4wT 1/2 respec-tively, with w ≥ 1 [24, 25]; for the loss of a factor N∼1/4

in sensitivity, a semicoherent method is able to gain by

being able to analyze large (e.g. T & 1 year) datasets,whereas a fully-coherent search would be computation-

ally restricted to a much shorter (e.g. T � 1 year) sub-set.

An important early advance in the development ofsemicoherent methods was the adaption of the Hough

1 A few methods instead look for significant templates which arecoincident between segments [22, 23]

arX

iv:1

804.

0339

2v3

[as

tro-

ph.I

M]

2 J

ul 2

018

Page 2: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

2

transform [26], originally created to analyze tracks inbubble chamber photographs, to instead track the fre-quency evolution of a continuous gravitational-wave sig-nal [27]. A number of variations of the Hough transformhave been implemented, which map the signal track inthe time–frequency plane to either its sky position at afixed reference frequency and frequency derivative [28],or conversely to its reference frequency and frequencyderivative at a fixed sky position [29, 30]. The detec-tion statistic computed, the number count, sums eitherzero or one from each segment depending on whetherthe significance of a filter exceeds a set threshold. Some

variations use short-duration (T ∼ 1800s) segments andincoherently sum power above threshold from each seg-ment; others analyze longer segments, and set a thresholdon the F-statistic [19] which computes the matched filteranalytically maximized over the gravitational-wave am-plitudes. Another modification is to weigh each segmentby the antenna response function of the detector, and tosum these weights instead of zero or one [31, 32].

Two semicoherent methods which use short-durationsegments but which, unlike the Hough transform meth-ods, sum power without thresholding are the Stack-Slide [33] and PowerFlux [34] methods. The StackSlidemethod builds a time–frequency plane, where each col-umn represents a segment. For each choice of signal pa-rameters, it “slides” each column up and down in fre-quency so that a signal with those parameters would fol-low a horizontal line, and then “stacks” (i.e. sums) thecolumns horizontally to accumulate the signal power overtime for each frequency bin. (Due to this intuitive rep-resentation of a semicoherent search method, the termStackSlide is often used to refer to semicoherent meth-ods in general [e.g. 24].) The PowerFlux method fol-lows a similar methodology, and in addition weights thepower from each segment by that segment’s noise leveland antenna response function, so that segments con-taining transient instrumental noise and/or where the re-sponse of the detector is weak are deweighted. A “looselycoherent” adaption to PowerFlux allows the degree ofphase consistency imposed at the semicoherent stage tobe controlled explicitly [35, 36]. A third semicoherentmethod [37, 38] was developed based on the observanceof global correlations between search parameters [39] anduses longer segments analyzed with the F-statistic. Acomprehensive comparison of many of the all-sky searchmethods described above is performed in [40].

Aside from developments in semicoherent search tech-niques, two other ideas have played an important role inthe development of continuous gravitational-wave dataanalysis. First is the use of a parameter-space met-ric [18, 41, 42], which is used to determine the appro-priate resolution of the bank of template signals suchthat the mismatch, or fractional loss in signal-to-noiseratio between any signal present in the data and its near-est template, never exceeds a prescribed maximum. Themetric of the F-statistic for continuous-wave signals wasfirst studied rigorously in [43]. An approximate form

of the metric was utilized in semicoherent search meth-ods developed by [44], and a related approximation wasused in [37, 38]. The latter approximation, however, leadto an underestimation of the number of required tem-plates in the sky parameter space when analyzing longdata stretches; an improved approximate metric devel-oped in [45, 46] addresses this limitation. It was alsolater realized that a further approximation fundamentalto the metric derivation – namely that the prescribedmaximum mismatch (as measured by the metric) couldbe assumed small – generally does not hold under real-istic restrictions on computational cost. This issue wasaddressed in [47] which computed an empirical relationbetween the metric-measured mismatch and the true mis-match of the F-statistic.

A second important idea is the borrowing of resultsfrom lattice theory [e.g. 48] to optimize the geomet-ric placement of templates within the search parameterspace, so as to fulfill the maximum prescribed mismatchcriteria described above with the smallest possible den-sity of templates [49, 50]. Practical algorithms for gener-ating template banks for continuous-wave searches, usingboth the parameter-space metric and optimal lattices,were proposed in [51, 52]. An alternative idea studiedin [53, 54] is to instead place templates at random, usingthe parameter-space metric only as a guide as to the rel-ative density of templates; this idea has found utility insearches for radio [e.g. 55] and X-ray [e.g. 56] pulsars.

The number of computations that must be performedduring an all-sky search, even when utilizing an efficientsemicoherent search method, remains formidable. Forexample, a recent all-sky search [16] of data from thefirst Advanced LIGO observing run divided the data into

N = 12 segments of timespan T = 210 hours, performed∼ 3×1015 matched-filtering operations per segment, andfinally performed ∼ 3×1017 incoherent summations tocombine filter power from each segment. The total com-putational cost of the search was ∼ 6×105 CPU days, al-though this was distributed over O(104) computers vol-unteered through the Einstein@Home distributed com-puting project [57]. Nevertheless, the significant numberof filtering/incoherent summation operations that mustbe performed during a typical all-sky search emphasizesthe need to optimize the construction of the templatebanks, and thereby minimize the computational cost ofthe search, as much as practicable.

In this paper we present Weave, an implementationof a semicoherent search method for continuous grav-itational waves. This implementation brings together,for the first time, several strands of previous research:the use of a semicoherent method to combine data seg-ments analyzed with the F-statistic, combined with opti-mal template placement using the parameter-space met-ric of [45, 46] and optimal lattices [52]. After a reviewof relevant background information in Section II, theWeave implementation is presented in Section III. In Sec-tion IV we demonstrate that important behaviors of theWeave implementation can be modeled semi-analytically,

Page 3: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

3

thereby enabling characterization and optimization of asearch setup without, in the first instance, the need toresort to time-consuming Monte-Carlo simulations. InSection V we discuss ideas for further improvement andextension.

II. BACKGROUND

This section presents background material pertainingto the continuous-wave signal model, parameter-spacemetric, and template bank generation.

A. Continuous-wave signals

The phase of a continuous-wave signal φ(t,λ) at timet at the detector is given by, neglecting relativistic cor-rections [19],

φ(t,λ)

2π≈smax∑

s=0

f (s) (t− t0)s+1

(s+ 1)!+r(t) · n

cfmax . (1)

The first term on the right-hand side primarily 2 en-codes the loss of rotational energy of the neutron staras observed from the Solar System barycenter: f0 is thegravitational-wave frequency; and the spindowns f1, f2,etc. are the 1st-order, 2nd-order, etc. rates of change ofthe gravitational-wave frequency with time. All f (s) pa-rameters are given with respect to a reference time t0.The second term on the right-hand side describes theDoppler modulation of the gravitational waves due to themotion of an Earth-based detector: r(t) is the detectorposition relative to the Solar System barycenter, therebyincluding both the sidereal and orbital motions of theEarth; and n is a unit vector pointing from the SolarSystem barycenter to the continuous-wave source. Thevalue of fmax is chosen conservatively to be the maximumof f(t) ≡ dφ(t,λ)/dt over the timespan of the analyzeddata.

Together the phase evolution parameters λ = (n, f (s))parameterize the continuous-wave signal template; ad-ditional amplitude parameters A are analytically maxi-mized over when computing the F-statistic [19]. In noisethe F-statistic is a central χ2 statistic with 4 degrees offreedom; when in the vicinity of a signal, the noncentral-ity parameter ρ2 of the noncentral χ2 distribution scalesas ρ2 ∝ h2

0T/Sh[f(t)], where h0 is the gravitational-waveamplitude, T the amount of analyzed data, and Sh[f(t)]is the noise power spectral density in the vicinity of thesignal frequency f(t).

2 The rate of spindown observed at the Solar System barycenteris strictly a combination of the spindown observed in the sourceframe and the motion of the source [19]; the latter is usuallyassumed to be small.

B. Parameter-space metric

The parameter-space metric g of the F-statistic is de-fined by a 2nd-order Taylor expansion of the noncentral-ity parameter:

ρ2(A,λs;λ) = ρ2(A,λs;λs)×[1− gij(A,λs)∆λi∆λj

]+O(∆λ3) , (2)

with implicit summation over i, j, and where

gij(A,λs) ≡ −1

2ρ2(A,λs;λ)

∂2ρ2(A,λs;λ)

∂λi∂λj

∣∣∣∣λ=λs

. (3)

Here ρ2(A,λs;λs) is the noncentrality parameter of theF-statistic when perfectly matched to a signal with pa-rameters λs, and ρ2(A,λs;λ) is the noncentrality pa-rameter when computed at some mismatched parametersλ = λs + ∆λ. The mismatch is defined to be

µ(A,λs;λ) ≡ 1− ρ2(A,λs;λ)

ρ2(A,λs;λs)(4)

= gij(A,λs)∆λi∆λj . (5)

A very useful approximation to Eq. (3) is the phase met-ric [18, 43, 44]; it discards the amplitude modulation ofthe signal, and thereby the dependence on the knownparameters A, retaining only dependence on the phaseevolution parameters:

gij(λs) ≡

⟨∂φ

∂λi

∂φ

∂λj

⟩−⟨∂φ

∂λi

⟩⟨∂φ

∂λj

⟩. (6)

C. Optimal template placement

Template placement using optimal lattices is an exam-ple of a sphere covering [e.g. 48]: a collection of lattice-centered n-dimensional spheres of equal radius. The ra-dius is chosen to be the smallest value that satisfies theproperty that each point in the n-dimensional parameterspace is contained in at least one sphere. A lattice wherethe ratio of the volume of the sphere to the volume of alattice cell is minimized generates a minimal sphere cov-ering, i.e. the minimal number of points required to covera parameter space, which is exactly the property desiredfor template banks. (For example, in two dimensions theminimal sphere covering is generated by the hexagonallattice.) We identify the covering spheres with the met-ric ellipsoids gij(λ

s)∆λi∆λj ≤ µmax, where µmax is theprescribed maximum; it follows that the radii of the cov-ering spheres is

õmax. A matrix transform T can then

be constructed [52] which takes integers in ξ ∈ Zn totemplate parameters λ to generate the template bank:

λi = Tijξj = Bik[g(λs)

]Lkjξj , (7)

where B is a function of the metric g(λs), and L is par-ticular to the lattice being used. If T is a lower triangularmatrix, an efficient algorithm [52] can be found for gen-erating the template bank.

Page 4: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

4

D. Reduced supersky metric

In order for Eq. (7) to preserve the sphere coveringproperty, however, it must be independent of the tem-plate parameters λs. Since B is a function of the met-ric, we require a metric which is also independent of λ:g(λs) → g. The phase metric of Eq. (6) is indepen-dent of the frequency and spindown parameters f (s), butretains a dependence on sky position parameters, e.g.g(λs) → g(α, δ) in terms of right ascension α and decli-nation δ. The question of how to derive a useful metricwhich is independent of the sky position parameters, i.e.g(α, δ) → g, has stimulated numerous approaches [e.g.37, 44, 58]. In [45], a useful g is derived through thefollowing procedure:

(i) g(α, δ) is expressed in terms of the 3 componentsof n = (nx, ny, nz), instead of 2 parameters such as(α, δ). The 3 components of n are taken to be inde-pendent; geometrically this is equivalent to embed-ding g(α, δ) into a 3-dimensional supersky parame-ter space, instead of being restricted to the 2-spheredefined by (α, δ). In the supersky parameter space,g is independent of the sky position parameters, i.e.we have the desired g(α, δ)→ g, but with the addi-tion of a 3rd unwanted parameter-space dimension.

(ii) A linear coordinate transform (nx, ny, nz, f(s)) →

(na, nb, nc, ν(s)) is derived which satisfies: g is di-

agonal in the sky position parameters (na, nb, nc),i.e. gnanb

= gnanc= gnbnc

= 0; gnana� gncnc

;and gnbnb

� gncnc. The last two properties im-

ply that the metric ellipsoids are much longer alongthe nc axis than along the na and nb axes. Incomputing the coordinate transform, use is madeof the well-known correlation between the sky andfrequency/spindown parameters of the continuous-wave signal [e.g. 39, 59]. The correlations arise be-cause, on sufficiently short timescales, the changein phase due to the cyclical sidereal and orbital mo-tions of the Earth may be Taylor expanded as lin-ear, quadratic, etc. changes in phase with time, andthereby are equivalent to changes in the frequency(f (0) ≡ f), 1st spindown (f (1) ≡ f), etc. parame-ters.

(iii) Since, in the new coordinates (na, nb, nc, ν(s)) the

mismatch µ is only weakly dependent on gncnc,

a useful approximate metric g is found by dis-carding the nc dimension. Geometrically thiscorresponds to projecting the 3-dimensional su-persky parameter space and metric onto the 2-dimensional na–nb plane. The resultant reduced su-persky parameter-space metric g and associated co-ordinates (na, nb, ν

(s)) has reduced the sky param-eter space dimensionality back to 2, while retainingthe property that g is parameter-independent.

III. WEAVE IMPLEMENTATION

This section describes the Weave implementation ofthe semicoherent search method, a schematic of which isshown in Figure 1. The implementation is freely avail-able as part of the LALSuite [60] gravitational-wave dataanalysis library.

A. Overview

In step 1 the user runs a precursor programlalapps WeaveSetup, which takes as an argument a listof N segments {(tstart

` , tstop` )}N−1

`=0 into which the datasetis to be partitioned. The program computes in step 2the N coherent parameter-space metrics g` used to con-struct template banks within each segment, and thesemicoherent parameter-space metric g used to incoher-ently combine segments. The metrics are written toa setup file in the FITS format [61]. Due to the nu-merical ill-conditionedness of the parameter-space met-ric [43, 45], this computation involves a bootstrappingprocess, whereby successively better-conditioned itera-tions of the supersky metric are computed, before thencomputing the reduced supersky metric as outlined inSection II D. Since this bootstrapping process can betime-consuming for large N , and may give slightly differ-ent results on different computer hardware, precomput-ing the metrics both saves computing time and adds ro-bustness against numerical errors. Note that, by Eq. (1),the sky components of the metrics will scale with f2

max;since its value depends on the search frequency parameterspace, which is not known by lalapps WeaveSetup, an ar-bitrary fiducial value ffiducial is used, and the sky compo-nents of the metrics are later rescaled by (fmax/ffiducial)

2.In step 3 the user runs the main search program

lalapps Weave. The principle arguments to this pro-gram are the setup file output by lalapps WeaveSetup,the search parameter space, and the prescribed maxi-mum mismatches µmax and µmax for the coherent andsemicoherent template banks respectively. The frequencyand spindown parameter space is specified by ranges

[f(s)min, f

(s)max], where s = 0, 1, etc. as required. The

sky search parameter space may be specified either asa rectangular patch in right ascension and declination[αmin, αmax] ⊗ [δmin, δmax], or alternatively partitionedinto K patches containing approximately equal numberof templates (see Appendix A), and a patch selected byan index k, 0 ≤ k < K. In step 4 various preparatorytasks are performed, such as loading the gravitational-wave detector data into memory, before beginning themain search loop.

The main search loop of a semicoherent search methodmay be structured in two complementary ways, whichdiffer in the memory each requires to store intermediateresults:

(i) The semicoherent template bank {λ} is stored in

Page 5: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

5

(1) Run precursor program lalapps WeaveSetup. Takes reference timet0 and segment list {(tstartℓ , tstopℓ )}Nℓ=1 as arguments.

(2) Compute N coherent parameter-space metrics gℓ and semicoherentmetric g. Stores metrics in setup file. End of lalapps WeaveSetup.

(3) Run search program lalapps Weave. Takes as arguments: setup file,data to search, sky parameter space ([αmin, αmax] × [δmin, δmax] or sky

patch 0 ≤ k < K), frequency/spindown parameter space [f(s)min, f

(s)max],

maximum coherent µmax and semicoherent µmax mismatches.

(4) Load data into memory. Set up semicoherent template bank {λ}and N coherent template banks {λℓ} at t0. Begin loop over semicoher-

ent template bank {λ}.

(5) Generate the next semicoherent template λ ∈ {λ}. Compute

its relevance R(λ). Set 2Fsum = 0 [and 2FXsum = 0]. Begin loop

over N segments.

(6) In each segment ℓ, find the nearest template in coherent

template bank λℓ ∈ {λℓ} to λ.

(7) Interrogate the cache of computed F-statistic values: has

2F(λℓ) been previously computed?

(8) Retrieve 2F(λℓ)

[and 2FX(λℓ)] fromcache.

(9) Compute the multi-detector 2F at

λℓ. Add to cache. [Compute the per-

detector 2FX at λℓ. Add to cache.]

(10) Select λℓ in cache with smallest

relevance. Is R(λℓ) < R(λ)?

(11) Remove 2F(λℓ) [and

2FX(λℓ)] from cache.

(12) Update 2Fsum += 2F(λℓ) [and 2FXsum += 2FX(λℓ)].

(13) Are there remaining segments?

(14) Compute 2Fmean = 2Fsum/N [and BSGL(2Fsum, 2FXsum)].

(15) Add candidate (α, δ, f (s), 2Fmean, [BSGL]) to toplist ranked by

2Fmean. [Add candidate (α, δ, f (s), 2Fmean, BSGL) to toplist ranked

by BSGL.]

(16) Are there remaining λ ∈ {λ}?

(17) Compute extra statistics not needed for ranking toplists. Writetoplists to output file. End of lalapps Weave.

YesNo

No

Yes

Yes

No

Yes

No

FIG. 1. Schematic of the Weave implementation. Boxeswith solid borders (green) represent actions taken by the user.Boxes with dotted borders (blue) represent actions taken bythe program. Boxes with dashes borders (red) represent de-cisions the program must take. Bracketed text denotes the

optional computation of BSGL. See the text in Section III fora full description of the Weave implementation.

-6

-4

-2

0

2

4

6

-8 -6 -4 -2 0 2 4 6

f(1

)/10−

11Hz/s

f (0)/10−5 Hz

∆ℓ = −14.0 −9.3 −4.7 0.0 4.7 9.3 14.0

FIG. 2. Coherent (solid) and semicoherent (dashed) metric

ellipses in the (f, f) plane. The seven coherent metric ellipses

are for segments with T = 2 days, evenly spaced within a

timespan of T = 30 days; each ellipse is labeled by its valueof ∆` / days; see Eq. (8). The reference time t0 for all metrics

is centered within T . The coherent and semicoherent metricellipses are plotted at maximum mismatches of µmax = 0.1and µmax = 10 respectively.

memory, and the N segments are processed in se-quence. For each segment `, every coherent tem-

plate λ` ∈ {λ`} is mapped back to the semicoherent

template bank, i.e. λ` → λ(λ`). Because the semi-coherent template bank must track the continuous-

wave signal over a larger timespan T � T than thecoherent template banks, it will contain a greaterdensity of templates; the ratio of semicoherent tocoherent template bank densities is the refinementfactor γ ≥ 1 [38, 46]. It follows that the mapping

λ` → λ(λ`) will be one-to-many.

As the N segments are processed, any semicoher-

ent detection statistic associated with λ(λ`) is thenupdated based on the corresponding coherent de-

tection statistic associated with λ`. For example,it is common to compute the summed F-statistic

2Fsum ≡∑N−1`=0 2F(λ`); here we would then have

2Fsum

[λ(λ`)

]+= 2F(λ`). Once every segment has

been processed, computed 2Fsum for every λ ∈ {λ}will exist in memory. The memory usage of themain search loop will therefore be proportional to

the number of semicoherent templates N ≡ γ×〈N 〉,where 〈N 〉 is the average number of templates in acoherent template bank.

(ii) The N coherent template banks {λ`} are storedin memory, and the semicoherent template bank isprocessed in sequence. Each semicoherent template

λ ∈ {λ} is mapped back to the coherent template

bank in each segment `, i.e. λ→ λ`(λ); since N ≥N in each segment this mapping will be many-to-one. With these N mappings in hand, the semico-

Page 6: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

6

Semicoherent template bank

Metric coordinates (na, nb)

na

nb

Physical coordinates (α, δ)

α

δ

Coherent template bank #2

na

nb

Coherent template bank #1

na

nb

Coherent template bank #3

na

nb

Computation of semicoherent statistics

e.g. 2Fsum = 2F[λ1(λ)

]+ 2F

[λ2(λ)

]+ 2F

[λ3(λ)

]Management of cacheof coherent statistics

λλ

′′′

λ1(λ)

λ2(λ)

λ3(λ)

λ ′1

λ ′′1

λ ′(λ ′1)

λ ′′(λ ′′1)

R

R(λ)R(λ ′1) R(λ ′′

1)< <

FIG. 3. Diagram of the Weave template banks for an example search setup with 3 segments. Shown are the semicoherentand coherent template banks in the two sky parameters of the reduced supersky metric (na, nb); the frequency and spindowndimensions are omitted. For clarity the semicoherent and coherent template banks are plotted with metric ellipses of the samesize. Arrows with solid lines (green) represent iteration over the semicoherent template bank. Arrows with dashed lines (blue)represent the process of computing semicoherent statistics, described in Section III B. Arrows with dotted lines (red) representthe process of managing the caches of coherent statistics, described in Section III C. Also shown is the semicoherent templatebank in physical coordinates (α, δ); the solid square (green) shows the rectangular boundary of the sky parameter space inthese coordinates.

herent detection statistics may be immediately com-

puted in full, e.g. 2Fsum(λ) =∑N−1`=0 2F

[λ`(λ)

].

The memory usage of the main search loop will

therefore be proportional to N × 〈N 〉.

For the parameter-space metric for all-sky searches, γ �N [38, 46], and therefore the latter structuring givenabove will have the lower memory requirement; theWeave implementation uses this structuring of the main

search loop. The semicoherent template bank {λ} isgenerated one template at a time using the algorithmdescribed in [52]. For each coherent template bank, anefficient lookup table [52] is constructed for the mapping

λ→ λ`(λ).

We note an important distinction between the defini-tion of the Weave template banks and the traditionalStackSlide picture of a semicoherent search method. Inthe latter picture, the frequency and spindown templatebanks of each segment are defined with respect to indi-vidual reference times (t0)`, typically the midtime of eachsegment. When combining segments, therefore, the fre-quency and spindown parameters of each coherent tem-plate must be adjusted so as to bring the parameters ofall segments to a common reference time t0; this is the“sliding” step. The Weave implementation, however, de-fines the frequency and spindown templates banks of all

Page 7: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

7

segments at the same reference time t0, which is alsothe reference time of the semicoherent bank. Consequen-tially, there is no analogy to the “sliding” step of Stack-Slide. Instead, the orientation of the metric ellipses inthe (f, f) plane changes from segment to segment, as il-lustrated in Figure 2. As the absolute difference

|∆`| = |tmid` − t0| (8)

between the midtime of each segment tmid` ≡ (tstart

` +

tstop` )/2 and t0 increases, both the extent of the ellipses

in f and the correlation between f and f also increase.Steps 5–16 comprise the main search loop; which per-

forms two key tasks: the computation and output of thedetection statistics over the semicoherent template bank(steps 5, 6, and 12–17), and the management of an in-ternal cache of required detection statistics computed oneach coherent template bank (steps 7–11). These twotasks are described more fully in the following two sec-tions, and with reference to a diagram of their operationin Figure 3.

In this section and in Figure 1 we focus for simplicity onthe computation of the semicoherent F-statistics 2Fsum

and 2Fmean ≡ 2Fsum/N . The computation of other de-tection statistics is also possible: in particular a family ofBayesian statistics has been developed which weigh thelikelihood of a continuous wave signal against that of aninstrumental line which appears in all segments [62, 63],or a transient instrumental line which appears only inone segment [64]. Computation of the former statistic,

denoted BSGL, is also illustrated in Figure 1; it takes asinput the multi-detector 2Fsum which uses data from allgravitational-wave detectors, as well as the per-detector2FXsum which are computed from each detector X indi-vidually.

B. Computation of semicoherent statistics

In steps 5 and 16 (Figure 1), the main loop of the

search method generates successive points λ in the semi-coherent template bank. An example of such a pointis indicated in Figure 3. Next, in steps 6 and 13, each

segment ` is visited and the mapping λ → λ`(λ) is per-formed. The mapping used by Weave is nearest-neighbor

interpolation: the λ is expressed in the coherent metriccoordinates of the `th segment, and the nearest (with re-spect to the metric) coherent template in the respective

bank λ`(λ) is determined. If the template bank is con-structed on a lattice, efficient algorithms exist for deter-mining the nearest point [e.g. 52, and references therein].In Figure 3, example nearest coherent templates are la-

beled λ1(λ), λ2(λ), and λ3(λ).As each nearest point is determined, the coherent F-

statistic in the respective segment is computed (steps 7–11, see Section III C), and the value of the semicoherentstatistic 2Fsum is updated (step 12). Once all segmentshave been processed (step 13), additional semicoherent

statistics such as 2Fmean are computed (step 14), and acandidate comprising the signal parameters together withthe computed semicoherent statistics is added (step 15)to one or more toplists which ranks 3 each candidate bya chosen semicoherent statistic. The size of the toplistsis generally of a fixed user-determined size so that onlya fixed number of the most promising candidates will bereturned.

Once the semicoherent template bank is exhausted(step 16) the toplists are written to an output file in theFITS format, and the search concludes (step 17).

C. Management of cache of coherent statistics

It is important that the main search loop minimizesits memory usage as much as possible. Even though inSection III A we chose a structuring of the main searchloop so as to reduce memory usage, a naive implemen-

tation which stores N × 〈N 〉 coherent statistics wouldstill require a prohibitive amount of memory, given that

both N and 〈N 〉 are typically large. We therefore im-plement a per-segment cache which stores only those co-

herent statistics associated with coherent templates λ`accessible from the unprocessed portion of the semico-

herent template bank via the mapping λ → λ`(λ). Put

another way, if a λ` can no longer be mapped to by any

λ remaining in {λ}, then 2F(λ`) can be safely removedfrom the cache.

In order to devise a cache management algorithm withthe above desired properties, we first define an operatorcalled relevance, denoted R : λ → R. The relevanceoperates on both coherent and semicoherent templates,and should satisfy the following property:

For all λ` ∈ {λ`} and for all λ ∈ {λ}, the con-

dition R(λ`) < R(λ) implies that no mapping

λ→ λ`(λ) exists in the remaining {λ}, and thus

2F(λ`) can be safely removed from the cache.

(9)

A definition of R satisfying this property is derived asfollows.

First, take any coherent template (e.g. λ ′1 in Figure 3)

and surround it by its metric ellipsoid at mismatch µmax.Then surround the metric ellipsoid in turn by its bound-ing box, the smallest coordinate box which contains theellipsoid [e.g. 52]; the metric ellipse bounding box cen-

tered on λ ′1 is also shown in Figure 3. Now, trans-

form the bounding box into the semicoherent parameterspace; practically this may be achieved by expressing thecoordinates of each vertex of the bounding box in thesemicoherent metric coordinates. See Figure 3 for the

transformed bounding box of λ ′1 in the semicoherent

parameter space, which is centered on λ ′(λ ′1).

3 Toplists are implemented efficiently as a binary heap [e.g. 65].

Page 8: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

8

Note that, by definition, any semicoherent template

λ outside of the transformed bounding box centered on

λ ′(λ ′1) cannot map to λ ′

1 under λ→ λ`(λ). Thus, to

determine whether λ ′1 is accessible by λ, we can com-

pute whether λ is within the transformed bounding box

of λ ′(λ ′1). To be conservative, however, we also sur-

round λ by its bounding box as shown in Figure 3, and

instead compute whether the bounding boxes of λ ′(λ ′1)

and λ intersect.To simplify the bounding box intersection calculation,

we compare just the coordinates of the bounding boxes

of λ ′(λ ′1) and λ in one dimension; for reasons that will

soon be apparent, we choose the lowest-dimensional co-ordinate, na. First, we define the relevance R for bothcoherent and semicoherent templates:

R(λ`) ≡ the maximum value of na within thetransformed bounding box of λ`,

(10a)

and

R(λ) ≡ the minimum value of na within thebounding box of λ.

(10b)

We now compute R(λ ′1) and R(λ); in Figure 3, R(λ ′

1)is the na coordinate of the right-most edge of the trans-

formed bounding box of λ ′(λ ′1), and R(λ) is the na

coordinate of the left-most edge of the bounding box of

λ. In this example, R(λ ′1) < R(λ), and it follows from

the definition of R in Eqs. (10) that the bounding boxes

of λ ′(λ ′1) and λ cannot intersect.

On the other hard, let us choose another coherent tem-

plate λ ′′1, and examine its relevance R(λ ′

1); here we

have R(λ ′′1) > R(λ) (see Figure 3). From the simpli-

fied bounding box intersection calculation, we conclude

that the bounding boxes of λ ′′(λ ′′1) and λ could po-

tentially intersect, since at least in the na dimension thebounding boxes overlap (although in this example thebounding boxes do not overlap in the nb dimension).

Finally, if for some λ we have R(λ ′1) < R(λ), then

this condition is guaranteed to remain true for all remain-

ing λ in the template bank. This is simply a consequenceof the algorithm used to generate the semicoherent tem-plate bank [52], which operates as follows: first, values ofna are generated in a constant range [namin, namax]; then,for each value of na, values of nb are generated in ranges[nb(na)min, nb(na)max] dependent on na, and so on. Itfollows that the value of na can only increase during thegeneration of the semicoherent template bank, and since

R(λ) is defined in terms of na, it too can only increase.To summarize, the relevance operator R defined by

Eqs. (10) satisfies the desired property given by Eq. (9).

In Figure 3, since R(λ ′1) < R(λ), the cache manage-

ment algorithm would discard any coherent statistics as-

sociated with λ ′1 from memory, since they cannot be

N T T |{(µmax, µmax)}| µmax µmax ninj

228 25.0 256.0 56 0.1–1.2 1.5–12.0 111.4

195 30.0 256.2 56 0.1–1.6 2.0–12.0 111.4

147 40.0 256.6 71 0.1–1.5 4.0–24.0 111.4

TABLE I. Details of search setups used to test model inSection IV A. Columns are (left to right): number of seg-ments, timespan of each segment in hours, total timespanof all segments in days, number of (µmax, µmax) pairs used,ranges of maximum coherent and semicoherent mismatches,average number of injections per (µmax, µmax) pair.

accessed by λ nor any remaining semicoherent template.On the other hard, the algorithm would retain any coher-

ent statistics associated with λ ′′1, since they could still

be needed for future semicoherent templates; indeed inFigure 3 it is clear that the next semicoherent template

in the bank, labeled λ′′′

, could require coherent statis-

tics associated with λ ′′1, since the bounding boxes of

λ ′′(λ ′′1) and λ

′′′intersect.

The cache management algorithm described above isimplemented in the main search loop in steps 7–11 (Fig-ure 1). In step 7 the cache is interrogated for a required

F-statistic value 2F(λ`): if it is in the cache, it is re-trieved and utilized (step 8), otherwise it is computedand inserted into the cache (step 9). In the latter case,the cache is also checked to see if any cache items canbe discarded. Starting with step 10, cache items in-

dexed by λ` are retrieved in order of ascending R(λ`). If

R(λ`) < R(λ), the cache items are discarded (step 11).Only one cache item is removed at any one time, andtherefore the memory usage of the cache will either re-main constant, or increase by one item per main searchloop iteration. The cache is implemented using two datastructures [e.g. 65]: a binary heap to rank cache items by

R(λ`), and a hash table to find cache items indexed by

λ`.

IV. MODELS OF WEAVE BEHAVIOR

This section presents semi-analytic models of theWeave implementation. It greatly facilitates the prac-tical usage of any search method if its behavior canbe characterized a priori as much as possible using acomputationally-cheap model. For example, a model ofthe distribution of F-statistic mismatches (Section IV A)permits the estimation of the sensitivity of a particu-lar search setup [25] which in turn allows the setup tobe optimized so as to maximize sensitivity [24]. Simi-larly, models of the number of coherent and semicoherenttemplates (Section IV B) and computational cost (Sec-tion IV C) allow the parameters of the optimal searchsetup to be estimated [24]. The memory usage (Sec-tion IV D) and input data bandwidth (Section IV E) re-

Page 9: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

9

N T T µmax µmax K |{k}| ∆f ∆f F alg.

10 25.0 10.5 0.1 0.1 100 24 0.1 4.5×10−9 R

10 25.0 10.5 0.1 0.1 100 24 0.5 1.0×10−9 R

10 25.0 10.5 0.1 0.1 100 24 0.1 5.0×10−9 D

10 25.0 10.5 0.1 0.2 24 24 0.1 3.6×10−9 R

10 25.0 10.5 0.1 0.2 24 24 0.5 8.0×10−10 R

10 25.0 10.5 0.1 0.2 24 24 0.1 4.0×10−9 D

29 25.0 33.8 0.1 0.5 100 24 0.1 8.1×10−10 R

29 25.0 33.8 0.1 0.5 100 24 0.5 1.8×10−10 R

29 25.0 33.8 0.1 0.5 100 24 0.1 9.0×10−10 D

29 25.0 33.8 0.1 0.5 500 24 0.1 9.0×10−10 R

29 25.0 33.8 0.1 0.5 500 24 0.5 2.0×10−10 R

29 25.0 33.8 0.1 0.5 500 24 0.1 1.0×10−9 D

90 25.0 105.2 0.01 0.8 2700 24 0.1 1.8×10−10 R

90 25.0 105.2 0.01 0.8 2700 24 0.5 4.0×10−11 R

90 25.0 105.2 0.01 0.8 2700 24 0.1 2.0×10−10 D

90 25.0 105.2 0.1 0.8 1000 24 0.1 2.7×10−9 R

90 25.0 105.2 0.1 0.8 1000 24 0.5 6.0×10−10 R

90 25.0 105.2 0.1 0.8 1000 24 0.1 3.0×10−9 D

228 25.0 256.0 0.1 2 5000 24 0.1 8.1×10−10 R

228 25.0 256.0 0.1 2 5000 24 0.5 1.8×10−10 R

228 25.0 256.0 0.1 2 5000 24 0.1 9.0×10−10 D

228 25.0 256.0 0.1 2 5000 24 0.1 5.4×10−10 R

228 25.0 256.0 0.1 2 5000 24 0.5 1.2×10−10 R

228 25.0 256.0 0.1 2 5000 24 0.1 6.0×10−10 D

TABLE II. Details of search setups used to test models inSections IV B– IV E. Columns are (left to right): number ofsegments, timespan of each segment in hours, total timespanof all segments in days, maximum coherent and semicoherentmismatches, number of patches used to partition sky, numberof sky patches used to test models, range of frequency param-eter space in Hz, range of spindown parameter space in Hz/s,F-statistic algorithm (D=demodulation, R=resampling).

quired by the implementation are also important proper-ties when implementing a search pipeline.

Each model presented in this section is implementedas an Octave [66] script, and is freely available as part ofthe OctApps [67] script library.

A. Distribution of F-statistic mismatches

The distribution of the mismatch between the F-statistic computed at an exact signal location, and atthe nearest point in the Weave semicoherent templatebank, gives an idea of the expected loss in signal-to-noise ratio due to the necessary coarseness of the tem-plate bank. Figure 4 plots the predicted means andstandard deviations of Weave F-statistic mismatch dis-tributions, against their measured values, for a varietyof setups given in Table I. The distributions were mea-sured using software injection studies, where relatively

strong (h0/√Sh & 70Hz1/2) simulated signals are added

to Gaussian-distributed noise and then searched for usinglalapps Weave.

The predicted means and standard deviations are fromthe model presented in [47], and are generally conserva-tive: Figure 4 shows that the model generally overes-timates the mean F-statistic mismatch by ∼ 0.13 (Fig-ure 4a) to ∼ 0.20 (Figure 4c); and the predicted standarddeviations imply slightly broader distributions than weremeasured. As explored in [47], the relationship betweenthe maximum mismatches of the coherent and semicoher-ent template banks (which are inputs to lalapps Weave)and the F-statistic mismatch distribution (which is out-put by lalapps Weave) is difficult to model when the for-mer are large e.g. & 1.

In addition, an optimization implemented in Weavebut not accounted for in the model of [47] complicates thepicture: the coherent and semicoherent template banksare constructed to have equally-spaced templates in thefrequency parameter f . This permits (in step 9 of Fig-ure 1) the simultaneous computation of a series of 2Fvalues at equally-spaced values of f across the frequencyparameter space, which can be performed efficiently us-ing Fast Fourier Transform-based algorithms (see Sec-tion IV C). The construction of equal-frequency-spacingcoherent and semicoherent template banks is performedby first constructing each bank independently, and thenreducing the frequency spacing in all banks to that of thesmallest frequency spacing in any bank. This construc-tion will always reduce the maximum possible mismatchin each grid, but never increase it, and so we would ex-pect the mean F-statistic mismatch measured by Weaveto be smaller than that predicted by the model of [47].

The model of [47] is implemented in the OctApps scriptWeaveFstatMismatch.m.

B. Number of templates

Since the Weave coherent and semicoherent templatebanks are constructed using lattices (see Section II C),the number of templates in each is estimated startingfrom the formula [e.g. 51, 52]

N = θµ−n/2max

√detg V , (11)

where V is the volume of the n-dimensional parameterspace, g the parameter-space metric, and µmax the maxi-mum mismatch. The normalized thickness θ is a propertyof the particular lattice used to generate the templatebank [48, e.g.].

The parameter-space volume is given explicitly by the

Page 10: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

10

0.3

0.4

0.5

0.60.6

0.3 0.4 0.5 0.60.6

Predicted〈µ

0〉

Measured 〈µ0〉(a)

0.4

0.5

0.60.6

0.70.7

0.4 0.5 0.60.6 0.70.7

Predicted〈µ

0〉

Measured 〈µ0〉(b)

0.4

0.5

0.60.6

0.70.7

0.8

0.4 0.5 0.60.6 0.70.7 0.8

Predicted〈µ

0〉

Measured 〈µ0〉(c)

0.06

0.08

0.10

0.12

0.14

0.06 0.08 0.10 0.12 0.14

Predictedσµ0

Measured σµ0

(d)

0.06

0.08

0.10

0.12

0.14

0.06 0.08 0.10 0.12 0.14

Predictedσµ0

Measured σµ0

(e)

0.04

0.06

0.08

0.10

0.12

0.04 0.06 0.08 0.10 0.12

Predictedσµ0

Measured σµ0

(f)

FIG. 4. Predicted means (top row) and standard deviations (bottom row) of the distributions of F-statistic mismatches,against their measured values, for (left column to right column) the 3 search setups listed in Table I. The dotted line denotesequality between predicted and measured values.

following expressions:

V = Vnanb

smax∏

s=0

Vf(s) , (12)

Vnanb= max{βaβb,V ′nanb

} ,V ′nanb

= 2(π + 4βb + βaβb)

×{

(αmax−αmin)(sin δmax−sin δmin)4π or

1K ,

(13)

Vf(s) = βf(s) + f (s)max − f (s)

min . (14)

Here, β is the vector whose components are the extentsof the bounding box of g in each dimension; it is usedto ensure that the volume of the parameter space ineach dimension is not smaller than the extent of a singletemplate. In Eq. (13), the volume of the sky parame-ter space may be specified either by a rectangular patch[αmin, αmax]⊗ [δmin, δmax], or by the number K of equal-size sky patches (see Section III A).

Finally, the total number of coherent and semicoherent

templates, N and N respectively, are given by:

N = 1.436

N−1∑

`=0

θµ−n/2max

√det g` V , (15)

N = θµ−n/2max

√det g V . (16)

The numerical prefactor on the right-hand side of

Eq. (15) is chosen to better match N to the number ofcoherent templates actually computed by lalapps Weave:the coherent parameter space is augmented with addi-tional padding along its boundaries to ensure that it en-closes the semicoherent parameter space, i.e. that it in-

cludes a nearest neighbor for every λ.Equations (15) and (16) are used to predict the num-

ber of templates computed by lalapps Weave for a varietyof search setups detailed in Table II. Figure 5 plots the

predicted N and N against the values measured by run-ning lalapps Weave. Reasonable agreement is achieved

between predicted and measured N (Figure 5a): whileEq. (15) sometimes underestimates the number of coher-ent templates, it rarely does so by more than a factor of

Page 11: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

11

108

109

1010

108 109 1010

PredictedN

Measured N(a)

108

109

1010

1011

108 109 1010 1011

PredictedN

Measured N(b)

FIG. 5. Predicted number of (a) coherent templates[Eq. (15)] and (b) semicoherent templates [Eq. (16)], againsttheir measured values. The error bars denote the standarddeviations of measured N and N when averaged over differ-ent sky patches. The dotted line denotes equality betweenpredicted and measured values. The search setups used inthis Figure are listed in Table II.

a few. Better agreement is seen between predicted and

measured N (Figure 5b).

Equations (15) and (16) are implemented in the Oc-tApps script WeaveTemplateCount.m.

Fundamental Timing Constant Representative Value / s

Demodulation Resampling

τ effF 2.5×10−6 (1.5–4)×10−7

τiter 1.4×10−10

τquery 8.6×10−11

τ2Fmean 8.3×10−10

τ2Fsum 7.3×10−10

τBSGL9.9×10−9

τout 7.9×10−10

TABLE III. Representative values of the fundamental tim-ing constants of the computational cost model detailedin Section IV C. These values were computed by runninglalapps Weave on a computer cluster of Intel Xeon E5-2658V4processors running at 2.30 GHz. Some values are specific tothe search setups detailed in Table II.

C. Computational cost

The total computational cost Ctot of a particularsearch setup may be modeled in terms of the number

of coherent N and semicoherent N templates (see Sec-tion IV B), the number of segments N and number ofdetectors Ndet. Following [24] we write

Ctot(N , N , N,Ndet) = C(N , Ndet)

+ C(N , N,Ndet) + Cother ,(17)

where C and C denote the computational cost of thecoherent and semicoherent stages of the search methodrespectively, and Cother denotes any unmodeled compu-tational costs.

The computational cost model takes as input funda-mental timing constants which give the time taken tocomplete certain fundamental computations. Their val-ues are highly dependent on various properties of thecomputer hardware used to run lalapps Weave, such asthe processor speed and cache sizes, as well as what otherprograms were using the computer hardware at the sametime as lalapps Weave. Some values are also specific tothe search setups detailed in Table II. For the interestof the reader, Table III lists representative values of thefundamental timing constants obtained on a particularcomputer cluster.

The coherent cost C is simply the cost of computingthe F-statistic (step 9 of Figure 1):

C(N , Ndet) = NNdetτ effF (∆f, T ,F alg.) . (18)

The fundamental timing constant τ effF gives the time

taken to compute the F-statistic per template and perdetector, and is further described in [68]. Its value de-pends primarily upon the range of the frequency parame-

ter space ∆f , the coherent segment length T , and the al-gorithm used to compute the F-statistic. Choices for thelatter are: the resampling algorithm [e.g. 19, 69], which

Page 12: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

12

102

103

104

102 103 104

PredictedC

tot/s

Measured Ctot / s

(a)

10−1

1

10

102 103 104

MeasuredC

oth

er/s

Measured Ctot / s

(b)

102

103

104

102 103 104

PredictedC

/s

Measured C / s

(c)

10−2

10−1

1

10−2 10−1 1

PredictedC

iter/s

Measured Citer / s

(d)

10−1

1

10

102

10−1 1 10 102

PredictedC

query

/s

Measured Cquery / s

(e)

10

102

103

10 102 103

PredictedC

2F

sum/s

Measured C2Fsum/ s

(f)

10−1

1

10

10−1 1 10

PredictedC

2F

mean/s

Measured C2Fmean/ s

(g)

1

10

102

1 10 102

PredictedC

B SG

L/s

Measured CBSGL/ s

(h)

10−1

1

10

10−1 1 10

PredictedC

out/s

Measured Cout / s

(i)

FIG. 6. (a) Predicted vs. measured total computational cost Ctot [Eq. (17)]. (b) Measured unmodeled computational cost Cother

[Eq. (17)] vs. measured total computational cost Ctot. (c)–(i) Predicted vs. measured values of the coherent computational cost

C of Eq. (18), and of the components of the semicoherent computational cost C of Eq. (19). In (a)–(c), grey crosses and blackcrosses are used to distinguish values computed using the demodulation and resampling F-statistic algorithms respectively;otherwise black crosses are used for values which are independent of the choice of F-statistic algorithm. The search setups usedin this Figure are listed in Table II.

computes the F-statistic over a wide band of frequen-cies efficiently using the Fast Fourier Transform, and isgenerally used to performing an initial wide-parameter-space search; and the demodulation algorithm of [70],

which uses a Dirichlet kernel to compute the F-statisticmore efficiently at a single frequency or over a narrow fre-quency band, and is therefore used to perform follow-upsearches of localized parameter spaces around interesting

Page 13: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

13

candidates. The additional cost of managing the cacheof computed F-statistic values (steps 8, 10, and 11) is

amortized into C.The semicoherent cost

C(N , N,Ndet) = Citer(N ) + Cquery(N , N)

+ C2Fsum(N , N,Ndet)

+ C2Fmean(N ) + CBSGL(N )

+ Cout(N )

(19)

has a number of components:

(i) Citer is the cost of iterating over the semicoherenttemplate bank (steps 5 and 16 of Figure 1);

(ii) Cquery is the cost of finding the nearest templatesin the coherent template banks (step 6 and 13) andof interrogating the cache of computed F-statisticvalues (step 7);

(iii) C2Fsumis the cost of computing 2Fsum and, if re-

quired, 2FXsum (step 12);

(iv) C2Fmeanis the cost of computing 2Fmean (step 14);

(v) CBSGLis the cost of computing BSGL, if required

(step 14); and

(vi) Cout is the cost of adding candidates to toplists(step 15).

These components of C are further defined in terms of

N , N , Ndet, and various fundamental timing constants(see Table III) as follows:

Citer(N ) = N τiter ; (20)

Cquery(N , N) = NNτquery ; (21)

C2Fsum(N , N,Ndet) = N (N − 1)τ2Fsum

×{

1 +Ndet if 2FXsum required ,

1 otherwise ;

(22)

C2Fmean(N ) = N τ2Fmean

; (23)

CBSGL(N ) = N τBSGL

; (24)

Cout(N ) = N τout × number of toplists .(25)

Figure 6 compares the computational cost model ofEqs. (17)–(20) against the measured computational costof lalapps Weave (see Table III), using the search se-tups detailed in Table II. The total computational costof lalapps Weave is generally well-modeled (Figure 6a)and the unmodeled component of the measured compu-tational cost is low (Figure 6b). The coherent compu-

tational cost C of Eq. (18) and the components of the

102

103

104

105

102 103 104 105

PredictedM

/MiB

Measured M / MiB

(a)

102

103

104

105

102 103 104 105

PredictedM

/MiB

Measured M / MiB

(b)

FIG. 7. Predicted memory usage of lalapps Weave, againstits measured memory usage, when using the (a) demodulationand (b) resampling F-statistic algorithms. The search setupsused in this Figure are listed in Table II.

semicoherent cost C of Eq. (19) are also in good agree-ment (Figures 6c–6i).

Equations (17)–(20) are implemented in the OctAppsscript WeaveRunTime.m.

Page 14: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

14

D. Memory usage

The memory usage M of lalapps Weave is modeled by

M = MF +Mcache . (26)

The first term on the right-hand side, MF , is the mem-ory usage of the F-statistic algorithm (which includesthe gravitational-wave detector data) and is further de-scribed in [68]. The second term, Mcache, is the memoryusage of the cache of computed F-statistic values, and isfurther given by

Mcache = Nmaxcachem2F

{1 +Ndet if 2FXsum reqd. ,

1 otherwise ,(27)

where Nmaxcache is the maximum size of the cache (across all

segments), and m2F ≡ 4×2−20 MiB (mebibytes) is thememory required to store one 2F value as a 4-byte singleprecision floating-point number. The maximum cacheNmax

cache cannot easily be predicted from first principles,i.e. given the search setup, parameter space, and otherinput arguments to lalapps Weave. Instead, it is mea-sured by running lalapps Weave in a special mode whichsimulates the performance of the cache but without com-puting any F-statistic or derived values; essentially itfollows Figure 1 but with the first part of step 9, step 12,and step 14 omitted.

Figure 7 plots the predicted memory usage of Eqs. (26)and (27) against the measured memory usage oflalapps Weave, using the search setups detailed in Ta-ble II. The F-statistic is computed using both the re-sampling and demodulation algorithms: in the former

case, both Fmean and BSGL are computed, thereby trig-gering the first case in Eq. (27); in the latter case, onlyFmean is computed, thereby triggering the second case inEq. (27). Good agreement between predicted and mea-sured memory usage is seen for both algorithms.

Equations (26) and (27) are also implemented in theOctApps script WeaveRunTime.m.

E. Input data bandwidth

Our final Weave model concerns what bandwidth ofthe input gravitational-wave detector data is required tosearch a given frequency range. For most continuous-wave search pipelines, short (typically 1800 s) contiguoussegments of gravitational-wave strain data are Fouriertransformed, and the resulting complex spectra stored asShort Fourier Transform (SFT) files. A continuous-wavesearch of a large frequency parameter space will generallybe divided into smaller jobs, with each job searching asmaller partition of the whole frequency parameter space.Each job therefore requires that only a small bandwidthout of the full SFT spectra be read into memory.

Given an input frequency parameter space [fmin, fmax]

and spindown parameter space [fmin, fmax], predict-ing the bandwidth of the SFT spectra required by

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

100 150 200 250 300 350 400 450 500

Measured fSFT / Hz

Predicted−MeasuredfSFT/Hz

FIG. 8. Difference between predicted and measured fSFTmin

(circles) and fSFTmax (crosses), against the measured fSFT

min andfSFT

max respectively, for the demodulation (top plot) and resam-pling (bottom plot) F-statistic algorithms. The search setupsused in this Figure are listed in Table II.

lalapps Weave proceeds in several steps. First, the in-put parameter spaces are augmented to account for extrapadding of the Weave template banks:

f ′min = (1− xpad)fmin , f ′max = (1 + xpad)fmax , (28a)

f ′min = (1− xpad)fmin , f ′max = (1 + xpad)fmax , (28b)

where xpad ≡ 10−3 and xpad ≡ 10−10 are empiricallychosen. Next, the maximum frequency range [f ′′min, f

′′max]

is found by evolving the frequency–spindown parameterspace [f ′min, f

′max] ⊗ [f ′min, f

′max] from the reference time

t0 to the start and end times of each segment, tstart` and

tstop` respectively:

f ′′min = min{f ′min + f ′min(t− t0)

∣∣ t ∈ {tstart` , tstop

` }N−1`=0

},

(29a)

f ′′max = max{f ′max + f ′max(t− t0)

∣∣ t ∈ {tstart` , tstop

` }N−1`=0

}

(29b)

Finally, the SFT bandwidth [fSFTmin , f

SFTmax ] of the SFT

spectra which is required by lalapps Weave is given by:

fSFTmin = (1− xsky)f ′′min − fF , (30a)

fSFTmax = (1 + xsky)f ′′max + fF . (30b)

The xsky enlarges [f ′′min, f′′

max] to account for the max-imum frequency-dependent Doppler modulation of acontinuous-wave signal due to the sidereal and orbitalmotions of the Earth, and is given by

xsky =2π

c

(DES

1 year+

RE

1 day

), (31)

Page 15: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

15

where c is the speed of light, DES is the Earth–Sundistance and RE the radius of the Earth. Additionalpadding of [f ′′min, f

′′max] is also required for use by the

chosen F-statistic algorithm, and is given by fF [see 68].Figure 8 compares the model of Eqs. (28)–(31) against

the behavior of lalapps Weave when run with the searchsetups detailed in Table II. Note that the model satisfies

predicted fSFTmin −measured fSFT

min ≤ 0 ,

i.e. all circles plotted in Figure 8 are below the horizontalaxis, and

predicted fSFTmax −measured fSFT

max ≥ 0 ,

i.e. all crosses plotted in Figure 8 are above the horizontalaxis. The model is therefore conservative, i.e. it maypredict a slightly larger SFT bandwidth than required,but should never predict a smaller SFT bandwidth, whichwould cause a fatal error in lalapps Weave. The model isgenerally more conservative at higher frequencies, wherethe Doppler modulation due to the Earth’s motion ishigher.

Equations (28)–(31) are implemented in the OctAppsscript WeaveInputSFTBand.m.

V. DISCUSSION

This paper details the Weave implementation of asemicoherent search method for continuous gravita-tional waves. It focuses on all-sky surveys for isolatedcontinuous-wave sources, for which the parameter spaceis the sky position and frequency evolution of the source.We note, however, that the implementation is in fact in-different to the parameter space being searched, as longas the relevant constant parameter-space metric is avail-able. The implementation could therefore be adaptedto search other parameter spaces for continuous-wavesources such as known low-mass X-ray binaries, for whichthe parameter space includes the evolution parameters ofthe binary orbit, using the metric of [71].

There is scope to improve the semi-analytic models ofthe behavior of lalapps Weave presented in Section IV.

In particular, a more accurate model of the distributionof F-statistic mismatches than that presented in Sec-tion IV A would allow the sensitivity of a search to bemore accurately estimated without resorting to softwareinjection studies. The memory model of Section IV Dwould also be improved if the maximum cache size Nmax

cachecould be predicted from first principles.

In a forthcoming paper [72] we plan to more fullycharacterize the performance of the Weave implementa-tion, and compare it to an implementation of the methodof [37, 38] using a mock data challenge.

ACKNOWLEDGMENTS

We thank Bruce Allen and Heinz-Bernd Eggensteinfor valuable discussions. KW is supported by ARCCE170100004. Numerical simulations were performedon the Atlas computer cluster of the Max Planck Insti-tute for Gravitational Physics. This paper has documentnumber ligo-p1800074-v4.

Appendix A: Properties of equal-area sky patches

The search program lalapps Weave allows the skysearch parameter space to be partitioned into K patches,and a patch selected by an index k. Tests of this featurefound that, provided K � N 1

1 (the number of templateswith just one patch), the variation in the number of tem-plates between patches ∆NK is generally small and well-approximated by

∆NK =

{1.48×10−2 + 5.35×10−4K K ≤ 100 ,

8.48×10−2 + 4.03×10−5K K > 100 .(A1)

The ratio∑K−1k=0 N k

K/N 11 of the number of templates in

all K patches to the number of templates with just onepatch is generally . 7%. The union of all templates in aset of K patches also faithfully reproduces the unparti-tioned template bank, i.e. with just one patch.

[1] B. P. Abbott et al. (LIGO Scientific Collaborationand Virgo Collaboration), “Observation of GravitationalWaves from a Binary Black Hole Merger,” Physical Re-view Letters 116, 061102 (2016), arXiv:1602.03837 [gr-qc].

[2] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “GW151226: Observation of Grav-itational Waves from a 22-Solar-Mass Binary BlackHole Coalescence,” Physical Review Letters 116, 241103(2016), arXiv:1606.04855 [gr-qc].

[3] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “GW170104: Observation of a

50-Solar-Mass Binary Black Hole Coalescence at Red-shift 0.2,” Physical Review Letters 118, 221101 (2017),arXiv:1706.01812 [gr-qc].

[4] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “GW170608: Observation of a 19Solar-mass Binary Black Hole Coalescence,” Astrophys-ical Journal Letters 851, L35 (2017), arXiv:1711.05578[astro-ph.HE].

[5] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “GW170814: A Three-DetectorObservation of Gravitational Waves from a Binary BlackHole Coalescence,” Physical Review Letters 119, 141101

Page 16: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

16

(2017), arXiv:1709.09660 [gr-qc].[6] B. P. Abbott et al. (LIGO Scientific Collaboration

and Virgo Collaboration), “GW170817: Observation ofGravitational Waves from a Binary Neutron Star In-spiral,” Physical Review Letters 119, 161101 (2017),arXiv:1710.05832 [gr-qc].

[7] B. P. Abbott et al. (LIGO Scientific Collaboration),“LIGO: the Laser Interferometer Gravitational-WaveObservatory,” Reports on Progress in Physics 72, 076901(2009), arXiv:0711.3041 [gr-qc].

[8] J. Aasi et al. (LIGO Scientific Collaboration), “AdvancedLIGO,” Classical and Quantum Gravity 32, 074001(2015), arXiv:1411.4547 [gr-qc].

[9] F. Acernese et al. (Virgo Collaboration), “AdvancedVirgo: a second-generation interferometric gravitationalwave detector,” Classical and Quantum Gravity 32,024001 (2015), arXiv:1408.3978 [gr-qc].

[10] K. Somiya (KAGRA Collaboration), “Detector configu-ration of KAGRA-the Japanese cryogenic gravitational-wave detector,” Classical and Quantum Gravity 29,124007 (2012), arXiv:1111.7185 [gr-qc].

[11] C. S. Unnikrishnan, “IndIGO and Ligo-India Scopeand Plans for Gravitational Wave Research and Preci-sion Metrology in India,” International Journal of Mod-ern Physics D 22, 1341010 (2013), arXiv:1510.06059[physics.ins-det].

[12] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “First Search for GravitationalWaves from Known Pulsars with Advanced LIGO,” As-trophysical Journal 839, 12 (2017), arXiv:1701.07709[astro-ph.HE].

[13] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “Search for gravitational wavesfrom Scorpius X-1 in the first Advanced LIGO observ-ing run with a hidden Markov model,” Physical ReviewD 95, 122003 (2017), arXiv:1704.03719 [gr-qc].

[14] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “All-sky search for periodic grav-itational waves in the O1 LIGO data,” Physical ReviewD 96, 062002 (2017), arXiv:1707.02667 [gr-qc].

[15] B. P. Abbott et al. (LIGO Scientific Collaboration andVirgo Collaboration), “Upper Limits on GravitationalWaves from Scorpius X-1 from a Model-based Cross-correlation Search in Advanced LIGO Data,” Astrophys-ical Journal 847, 47 (2017).

[16] B. P. Abbott et al. (LIGO Scientific Collaborationand Virgo Collaboration), “First low-frequency Ein-stein@Home all-sky search for continuous gravitationalwaves in Advanced LIGO data,” Physical Review D 96,122004 (2017), arXiv:1707.02669 [gr-qc].

[17] N. K. Johnson-McDaniel and B. J. Owen, “Maximumelastic deformations of relativistic stars,” Physical Re-view D 88, 044004 (2013), arXiv:1208.5227 [astro-ph.SR].

[18] P. R. Brady, T. Creighton, C. Cutler, and B. F. Schutz,“Searching for periodic sources with LIGO,” Physical Re-view D 57, 2101 (1998), arXiv:gr-qc/9702050.

[19] P. Jaranowski, A. Krolak, and B. F. Schutz, “Data anal-ysis of gravitational-wave signals from spinning neutronstars: The signal and its detection,” Physical Review D58, 063001 (1998), arXiv:gr-qc/9804014.

[20] K. Wette et al., “Searching for gravitational waves fromCassiopeia A with LIGO,” Classical and Quantum Grav-ity 25, 235011 (2008), arXiv:0802.3332 [gr-qc].

[21] P. R. Brady and T. Creighton, “Searching for periodicsources with LIGO. II. Hierarchical searches,” PhysicalReview D 61, 082001 (2000), arXiv:gr-qc/9812014.

[22] B. Abbott et al. (LIGO Scientific Collaboration), “Ein-stein@Home search for periodic gravitational waves inLIGO S4 data,” Physical Review D 79, 022001 (2009),arXiv:0804.1747 [gr-qc].

[23] G. Poghosyan, S. Matta, A. Streit, M. Bejger, andA. Krolak, “Architecture, implementation and paral-lelization of the software to search for periodic gravita-tional wave signals,” Computer Physics Communications188, 167–176 (2015), arXiv:1410.3677 [gr-qc].

[24] R. Prix and M. Shaltev, “Search for continuous grav-itational waves: Optimal StackSlide method at fixedcomputing cost,” Physical Review D 85, 084010 (2012),arXiv:1201.4321 [gr-qc].

[25] K. Wette, “Estimating the sensitivity of wide-parameter-space searches for gravitational-wave pulsars,” PhysicalReview D 85, 042003 (2012), arXiv:1111.5650 [gr-qc].

[26] P. V. C. Hough, “Machine Analysis of Bubble Cham-ber Pictures,” in 2nd International Conference on High-Energy Accelerators and Instrumentation, Vol. C590914,edited by L. Kowarski (CERN, Geneva, 1959) pp. 554–558.

[27] B. F. Schutz and M. A. Papa, “End-to-end algorithm forhierarchical area searches for long-duration GW sourcesfor GEO 600,” in Gravitational Waves and Experimen-tal Gravity, edited by J. Tran Thanh Van, J. Du-marchez, S. Reynaud, C. Salomon, S. Thorsett, andJ. Vinet (World Publishers, Hanoi, 1999) pp. 199–205,gr-qc/9905018.

[28] B. Krishnan, A. M. Sintes, M. A. Papa, B. F. Schutz,S. Frasca, and C. Palomba, “Hough transform searchfor continuous gravitational waves,” Physical Review D70, 082001 (2004), arXiv:gr-qc/0407001.

[29] F. Antonucci et al., “Detection of periodic gravitationalwave sources by Hough transform in the f versus f-dot plane,” Classical and Quantum Gravity 25, 184015(2008), arXiv:0807.5065 [gr-qc].

[30] P. Astone, A. Colla, S. D’Antonio, S. Frasca, andC. Palomba, “Method for all-sky searches of contin-uous gravitational wave signals using the frequency-Hough transform,” Physical Review D 90, 042002 (2014),arXiv:1407.8333 [astro-ph.IM].

[31] C. Palomba, P. Astone, and S. Frasca, “Adaptive Houghtransform for the search of periodic sources,” Classicaland Quantum Gravity 22, 1255 (2005).

[32] B. Krishnan and A. M. Sintes, Hough search with im-proved sensitivity , Tech. Rep. T070124-x0 (LIGO, 2007).

[33] G. Mendell and M. Landry, StackSlide and Hough SearchSNR and Statistics, Tech. Rep. T050003-x0 (LIGO,2005).

[34] V. Dergachev, Description of PowerFlux 2 algorithmsand implementation, Tech. Rep. T1000272-v5 (LIGO,2010).

[35] V. Dergachev, “On blind searches for noise dominatedsignals: a loosely coherent approach,” Classical andQuantum Gravity 27, 205017 (2010).

[36] V. Dergachev, “Loosely coherent searches for sets of well-modeled signals,” Physical Review D 85, 062003 (2012),arXiv:1110.3297 [gr-qc].

[37] H. J. Pletsch and B. Allen, “Exploiting Large-Scale Correlations to Detect Continuous GravitationalWaves,” Physical Review Letters 103, 181102 (2009),

Page 17: arXiv:1804.03392v3 [astro-ph.IM] 2 Jul 2018

17

arXiv:0906.0023 [gr-qc].[38] H. J. Pletsch, “Parameter-space metric of semicoherent

searches for continuous gravitational waves,” PhysicalReview D 82, 042002 (2010), arXiv:1005.0395 [gr-qc].

[39] H. J. Pletsch, “Parameter-space correlations of theoptimal statistic for continuous gravitational-wave de-tection,” Physical Review D 78, 102005 (2008),arXiv:0807.1324 [gr-qc].

[40] S. Walsh, M. Pitkin, M. Oliver, S. D’Antonio, V. Der-gachev, A. Krolak, P. Astone, M. Bejger, M. Di Gio-vanni, O. Dorosh, S. Frasca, P. Leaci, S. Mastrogio-vanni, A. Miller, C. Palomba, M. A. Papa, O. J. Piccinni,K. Riles, O. Sauter, and A. M. Sintes, “Comparison ofmethods for the detection of gravitational waves fromunknown neutron stars,” Physical Review D 94, 124010(2016), arXiv:1606.00660 [gr-qc].

[41] R. Balasubramanian, B. S. Sathyaprakash, and S. V.Dhurandhar, “Gravitational waves from coalescing bi-naries: Detection strategies and Monte Carlo estima-tion of parameters,” Physical Review D 53, 3033 (1996),arXiv:gr-qc/9508011.

[42] B. J. Owen, “Search templates for gravitational wavesfrom inspiraling binaries: Choice of template spacing,”Physical Review D 53, 6749 (1996), arXiv:gr-qc/9511032.

[43] R. Prix, “Search for continuous gravitational waves: Met-ric of the multidetector F-statistic,” Physical Review D75, 023004 (2007), arXiv:gr-qc/0606088.

[44] P. Astone, K. M. Borkowski, P. Jaranowski, andA. Krolak, “Data analysis of gravitational-wave sig-nals from spinning neutron stars. IV. An all-skysearch,” Physical Review D 65, 042003 (2002), arXiv:gr-qc/0012108.

[45] K. Wette and R. Prix, “Flat parameter-space metric forall-sky searches for gravitational-wave pulsars,” PhysicalReview D 88, 123005 (2013), arXiv:1310.5587 [gr-qc].

[46] K. Wette, “Parameter-space metric for all-sky semico-herent searches for gravitational-wave pulsars,” PhysicalReview D 92, 082003 (2015), arXiv:1508.02372 [gr-qc].

[47] K. Wette, “Empirically extending the range of va-lidity of parameter-space metrics for all-sky searchesfor gravitational-wave pulsars,” Physical Review D 94,122002 (2016), arXiv:1607.00241 [gr-qc].

[48] J. H. Conway and N. J. A. Sloane, Sphere Packings, Lat-tices and Groups, Grundlehren der mathematischen Wis-senschaften No. 290 (Springer-Verlag, New York, 1988).

[49] B. J. Owen and B. S. Sathyaprakash, “Matched filteringof gravitational waves from inspiraling compact binaries:Computational cost and template placement,” PhysicalReview D 60, 022002 (1999), arXiv:gr-qc/9808076.

[50] P. Jaranowski and A. Krolak, “Gravitational-Wave DataAnalysis. Formalism and Sample Applications: TheGaussian Case,” Living Reviews in Relativity 8, 3 (2005).

[51] R. Prix, “Template-based searches for gravitationalwaves: efficient lattice covering of flat parameterspaces,” Classical and Quantum Gravity 24, S481 (2007),arXiv:0707.0428 [gr-qc].

[52] K. Wette, “Lattice template placement for coherent all-sky searches for gravitational-wave pulsars,” Physical Re-view D 90, 122010 (2014), arXiv:1410.6882 [gr-qc].

[53] C. Messenger, R. Prix, and M. A. Papa, “Random tem-plate banks and relaxed lattice coverings,” Physical Re-view D 79, 104017 (2009), arXiv:0809.5223 [gr-qc].

[54] G. M. Manca and M. Vallisneri, “Cover art: Issues inthe metric-guided and metric-less placement of random

and stochastic template banks,” Physical Review D 81,024004 (2010), arXiv:0909.0563 [gr-qc].

[55] B. Knispel et al., “Einstein@Home Discovery of 24 Pul-sars in the Parkes Multi-beam Pulsar Survey,” Astro-physical Journal 774, 93 (2013), arXiv:1302.0467 [astro-ph.GA].

[56] C. Messenger and A. Patruno, “A Semi-coherent Searchfor Weak Pulsations in AQUILA X–1,” AstrophysicalJournal 806, 261 (2015), arXiv:1412.5938 [astro-ph.HE].

[57] “Einstein@Home,” https://einsteinathome.org.[58] P. Jaranowski and A. Krolak, “Data analysis of

gravitational-wave signals from spinning neutron stars.II. Accuracy of estimation of parameters,” Physical Re-view D 59, 063003 (1999), arXiv:gr-qc/9809046.

[59] R. Prix and Y. Itoh, “Global parameter-space correla-tions of coherent searches for continuous gravitationalwaves,” Classical and Quantum Gravity 22, 1003 (2005),arXiv:gr-qc/0504006.

[60] “LALSuite,” https://wiki.ligo.org/DASWG/LALSuite.[61] D. C. Wells, E. W. Greisen, and R. H. Harten, “FITS

- a Flexible Image Transport System,” Astronomy andAstrophysics Supplement 44, 363 (1981).

[62] D. Keitel, R. Prix, M. A. Papa, P. Leaci, and M. Siddiqi,“Search for continuous gravitational waves: Improvingrobustness versus instrumental artifacts,” Physical Re-view D 89, 064023 (2014), arXiv:1311.5738 [gr-qc].

[63] D. Keitel and R. Prix, “Line-robust statistics for contin-uous gravitational waves: safety in the case of unequaldetector sensitivities,” Classical and Quantum Gravity32, 035004 (2015), arXiv:1409.2696 [gr-qc].

[64] D. Keitel, “Robust semicoherent searches for continuousgravitational waves with noise and signal models includ-ing hours to days long transients,” Physical Review D93, 084024 (2016), arXiv:1509.02398 [gr-qc].

[65] P. Morin, Open Data Structures: An Introduction(Athabasca University Press, 2013).

[66] J. W. Eaton, D. Bateman, S. Hauberg, and R. Wehbring,GNU Octave version 4.0.0 manual: a high-level interac-tive language for numerical computations (2015).

[67] K. Wette, R. Prix, D. Keitel, M. Pitkin, C. Dreissigacker,J. T. Whelan, and P. Leaci, “OctApps: a library ofOctave functions for continuous gravitational-wave dataanalysis,” Journal of Open Source Software 3, 707 (2018).

[68] R. Prix, Characterizing timing and memory-requirementsof the F-statistic implementations in LALSuite, Tech.Rep. T1600531-v4 (LIGO, 2017).

[69] P. Patel, X. Siemens, R. Dupuis, and J. Betzwieser,“Implementation of barycentric resampling for continu-ous wave searches in gravitational wave data,” PhysicalReview D 81, 084032 (2010), arXiv:0912.4255 [gr-qc].

[70] P. R. Williams and B. F. Schutz, “An efficient matchedfiltering algorithm for the detection of continuous grav-itational wave signals,” in AIP Conference Series, Vol.523, edited by S. Meshkov (2000) pp. 473–476, gr-qc/9912029.

[71] P. Leaci and R. Prix, “Directed searches for continu-ous gravitational waves from binary systems: Parameter-space metrics and optimal Scorpius X-1 sensitivity,”Physical Review D 91, 102003 (2015), arXiv:1502.00914[gr-qc].

[72] S. Walsh, K. Wette, M. Papa, and R. Prix, in preparation(2018).