29#include <lal/LALStdio.h>
30#include <lal/FileIO.h>
31#include <lal/NRWaveIO.h>
32#include <lal/NRWaveInject.h>
84 for (k = 0; k < length; k++) {
163 for (k = 0; k < length; k++) {
173 data->data[k] = tmp2;
252 for (k = 0; k < length; k++) {
262 data->data[k] = massMpc * tmp2;
316 if ( out->
data == NULL) {
321 for (k = 0; k < numWaves; k++) {
352 test = sscanf(cfgstr,
"%f%f%f%f%f%f%f%d%d%s", tmpR, tmpR+1, tmpR+2, tmpR+3, tmpR+4, tmpR+5,
353 tmpR+6, tmpI, tmpI+1, tmpStr);
369 out->
spin1[0] = tmpR[1];
370 out->
spin1[1] = tmpR[2];
371 out->
spin1[2] = tmpR[3];
372 out->
spin2[0] = tmpR[4];
373 out->
spin2[1] = tmpR[5];
374 out->
spin2[2] = tmpR[6];
376 out->
mode[0] = tmpI[0];
377 out->
mode[1] = tmpI[1];
406 for ( modeL = modeLlo; modeL <= modeLhi; modeL++ )
409 for ( modeM = -modeL; modeM <= modeL; modeM++ )
412 XLALFindNRFile( &thisMetaData, nrCatalog, thisInj, modeL, modeM );
422 if (sumStrain == NULL) {
424 sumStrain =
LALCalloc(1,
sizeof(*sumStrain));
428 sumStrain->
f0 = tempStrain->
f0;
453 *outStrain = sumStrain;
478 for ( thisInj = injections; thisInj; thisInj = thisInj->
next )
static INT4 test(REAL4, REAL4, REAL4, REAL4, REAL4, REAL4, REAL4, REAL4)
#define ABORT(statusptr, code, mesg)
#define TRY(func, statusptr)
#define ATTATCHSTATUSPTR(statusptr)
#define ASSERT(assertion, statusptr, code, mesg)
#define DETATCHSTATUSPTR(statusptr)
#define INITSTATUS(statusptr)
#define RETURN(statusptr)
REAL8VectorSequence * XLALCreateREAL8VectorSequence(UINT4 length, UINT4 veclen)
void XLALDestroyREAL4VectorSequence(REAL4VectorSequence *vecseq)
REAL4VectorSequence * XLALCreateREAL4VectorSequence(UINT4 length, UINT4 veclen)
int XLALParseDataFile(LALParsedDataFile **cfgdata, const CHAR *fname)
void XLALDestroyParsedDataFile(LALParsedDataFile *cfgdata)
void LALReadNRWave(LALStatus *status, REAL4TimeVectorSeries **out, const REAL4 mass, const CHAR *filename)
Reads a numerical relativity waveform given a filename and a value of the total mass for setting the ...
void LALGetSingleNRMetaData(LALStatus *status, NRWaveMetaData *out, const CHAR *dir, const CHAR *cfgstr)
Parse a single string to fill the NRWaveMetaData structure.
void LALDriveNRInject(LALStatus *status, REAL4TimeSeries *injData, SimInspiralTable *injections, NumRelInjectParams *params)
Main driver funtion for doing Numerical Relativity Injections.
void LALNRDataFind(LALStatus *status, NRWaveCatalog *out, const CHAR *dir, const CHAR *filename)
Function for reading a numerical relativity metadata file.
void LALReadNRWave_raw_real8(LALStatus *status, REAL8TimeVectorSeries **out, const CHAR *filename)
#define NRWAVEIO_EVAL
Invalid value.
#define NRWAVEIO_EFILE
Error in file-IO.
#define NRWAVEIO_EFORMAT
Meta data file format incorrect.
void LALAddStrainModes(LALStatus *status, REAL4TimeVectorSeries **outStrain, NRWaveCatalog *nrCatalog, INT4 modeLlo, INT4 modeLhi, const SimInspiralTable *thisInj)
Put the main functionalities of nr_wave.c together.
#define NRWAVEIO_ENONULL
Not a Null pointer.
#define NRWAVEIO_ENOMEM
Memory ellocation error.
#define NRWAVEIO_ENULL
Null pointer.
void LALReadNRWave_raw(LALStatus *status, REAL4TimeVectorSeries **out, const CHAR *filename)
Functionfor reading the numrel waveform – just returns the numrel data as it is without any rescaling...
INT4 XLALFindNRFile(NRWaveMetaData *out, NRWaveCatalog *nrCatalog, const SimInspiralTable *inj, INT4 modeL, INT4 modeM)
For given inspiral parameters, find nearest waveform in catalog of numerical relativity waveforms.
INT4 XLALOrientNRWave(REAL4TimeVectorSeries *strain, UINT4 modeL, INT4 modeM, REAL4 inclination, REAL4 coa_phase)
Takes a (sky averaged) numerical relativity waveform and returns the waveform appropriate for given c...
REAL4TimeVectorSeries * XLALSumStrain(REAL4TimeVectorSeries *tempstrain, REAL4TimeVectorSeries *strain)
Takes a strain of h+ and hx data and stores it in a temporal strain in order to perform the sum over ...
void LALInjectStrainGW(LALStatus *status, REAL4TimeSeries *injData, REAL4TimeVectorSeries *strain, SimInspiralTable *thisInj, CHAR *ifo, REAL8 dynRange)
REAL4Vector * XLALCreateREAL4Vector(UINT4 length)
void XLALDestroyREAL4Vector(REAL4Vector *vector)
REAL8Vector * XLALCreateREAL8Vector(UINT4 length)
void XLALDestroyREAL8Vector(REAL8Vector *vector)
List of numrel waveform metadata.
NRWaveMetaData * data
List of waveforms.
UINT4 length
Number of waveforms.
REAL4VectorSequence * data
REAL8VectorSequence * data
struct tagSimInspiralTable * next