Next: Vetoing techniques (time domain Up: GRASP Routines: Gravitational Radiation Previous: Function: freq_inject_chirp()   Contents

## Function: time_inject_chirp()

0 void time_inject_chirp(float c0, float c90, int offset, float invMpc, float* chirp0, float* chirp90, float* data, float *response, float *work, int n)
This is a time-domain version of the previous function freq_inject_chirp() which injects chirps in the time-domain (after deconvolving them with the detector's response function). This routine injects artificial signals into the time-domain strain . The plane of the binary system is assumed to be normal to the line to the detector.

The arguments are:

c0: Input. The coefficient of the 0-phase template to inject.
c90: Input. The coefficient of the -phase to inject. Note that should be 1.
offset: Input. The offset number of samples at which the injected chirp starts, in the time domain.
invMpc: Input. The inverse of the distance to the system (measured in Mpc).
chirp0: Input. The time-domain phase-0 chirp (strain units) at a distance of 1 Mpc.
chirp90: Input. The time-domain phase-90 chirp (strain units) at a distance of 1 Mpc.
data: Output. The detector response in time that would be produced by the specified binary inspiral. Note that this routine adds into and increments this array, so that if it contains another ``signal" like IFO noise, the chirp is simply super-posed onto it.
response: Input. The function that specifies the response function of the IFO. This is produced by the routine normalize_gw().
work: Output. A working array.
n: Input. Defines the lengths of the various arrays chirp0[0..n-1], chirp90[0..n-1], data[0..n-1], work[0..n-1], and response[0..n+1] (note that this "+" sign is not a typo!).

Note that in making use of this injection routine, you must determine the level of the quantization noise of the ADC, and be careful to inject a properly dithered version of this signal when its amplitude is small compared to the ADC quantization step size.

Author: Bruce Allen, ballen@dirac.phys.uwm.edu
Comments: A short look at the time-domain signal which is injected shows that it has a low-amplitude spike at the very start. This may be an un-avoidable Gibbs phenomenon associated with the turn-on of the waveform. A second interesting point is that for many interesting signals, the amplitude of the injected signal in the time domain is below the level of the quantization noise. Thus, a sensible injection scheme would be to add it into an appropriately dithered (float) version of the integer signal stream, then cast that back into an integer. This should be tried.

Next: Vetoing techniques (time domain Up: GRASP Routines: Gravitational Radiation Previous: Function: freq_inject_chirp()   Contents
Bruce Allen 2000-11-19