next up previous contents
Next: Function: match_parab() Up: GRASP Routines: Template Bank Previous: The match between two   Contents

Function: compute_match()

float compute_match(float m1, float m2, float ch0tilde[], float ch90tilde[], float inverse_distance_scale, float twice_inv_noise[], float flo, float s_n0, float s_n90, int npoint, float srate, int err_cd_sprs, int order)
This function computes and returns the match function between a binary inspiral template that is stored in the arrays ch0tilde[] and ch90tilde and the binary inspiral template that corresponds to the binary system whose bodies have masses m1 and m2.

The two phases of the ``reference chirp'', ch0tilde[] and ch90tilde[], are assumed to have been precomputed and run through the function orthonormalize(). (The parameters s_n0 and s_n90 are assumed to have been found when the reference chirp was orthonormalized.) This allows efficient computation of the match of many different templates with the reference chirp.

The arguments to the function are:

m1: Input. Mass of body 1 in the template that is cross-correlated with the reference chirp, solar masses.
m2: Input. Mass of Body 2 in the template, solar masses.
ch0tilde: Input. The FFT of the $0^\circ$-phase reference chirp.
ch90tilde: Input. The FFT of the $90^\circ$-phase reference chirp.
inverse_distance_scale: Input. The inverse distance to the binary system, in $1/$Mpc. Because the match is a normalized correlation, this parameter isn't physically relevant: moving the binary twice as far from the earth has no effect on the match. However, it may be computationally convenient to scale the inner products that go into the match defintion by some amount to prevent numerical error.
twice_inv_noise: Input. Twice the inverse noise power spectrum, used for optimal filtering. For a more detailed description, see the routine find_chirp() (which is used within compute_match()).
flo: Input. The low-frequency cutoff to impose, in Hz. Within the code, this is used as the starting frequency of the templates; see make_filters().
s_n0: Input. The normalization of ch0tilde[], found using orthonormalize().
s_n90: Input. The normalization of ch90tilde[], found using orthonormalize(). Note that only the ratio s_n0/s_n90 is physically relevant, because the match is normalized; if both s_n0 and s_n90 are multiplied by some constant, the match is unaffected.
npoint: Input. Defines the lengths of the various arrays: ch0tilde[0..npoint-1], $\qquad \qquad$ ch90tilde[0..npoint-1], twice_inverse_noise[0..npoint/2].
srate: Input. The sampling rate, in Hz. Used to convert between integer array time-domain subscripts and frequency subscripts. For example this is the sample rate of the $0^\circ$- and $90^\circ$-phase reference chirps, before they are FFT'd.
err_cd_sprs: Input. The error suppression code to be passed to the chirp generator; see chirp_filters().
order: Input. Twice the post-Newtonian order; i.e., the power of $(v/c)$ used in the expansion. See chirp_filters().

Author: Scott Hughes,

next up previous contents
Next: Function: match_parab() Up: GRASP Routines: Template Bank Previous: The match between two   Contents
Bruce Allen 2000-11-19