LALSimulation  5.4.0.1-fe68b98
LALSimIMRSEOBNRv1ROMDoubleSpin.c File Reference

Prototypes

static void SEOBNRv1ROMDoubleSpin_Init_LALDATA (void)
 
static int SEOBNRv1ROMDoubleSpin_Init (const char dir[])
 Setup SEOBNRv1ROMDoubleSpin model using data files installed in dir. More...
 
static bool SEOBNRv1ROMDoubleSpin_IsSetup (void)
 Helper function to check if the SEOBNRv1ROMDoubleSpin model has been initialised. More...
 
static int SEOBNRROMdataDS_Init (SEOBNRROMdataDS *romdata, const char dir[])
 
static void SEOBNRROMdataDS_Cleanup (SEOBNRROMdataDS *romdata)
 
static void SEOBNRROMdataDS_coeff_Init (SEOBNRROMdataDS_coeff **romdatacoeff)
 
static void SEOBNRROMdataDS_coeff_Cleanup (SEOBNRROMdataDS_coeff *romdatacoeff)
 
static size_t NextPow2 (const size_t n)
 
static void SplineData_Destroy (SplineData *splinedata)
 
static void SplineData_Init (SplineData **splinedata)
 
static int read_vector (const char dir[], const char fname[], gsl_vector *v)
 
static int read_matrix (const char dir[], const char fname[], gsl_matrix *m)
 
static int load_data (const char dir[], gsl_vector *cvec_amp, gsl_vector *cvec_phi, gsl_matrix *Bamp, gsl_matrix *Bphi, gsl_vector *cvec_amp_pre)
 
static int TP_Spline_interpolation_3d (REAL8 q, REAL8 chi1, REAL8 chi2, gsl_vector *cvec_amp, gsl_vector *cvec_phi, gsl_vector *cvec_amp_pre, gsl_vector *c_amp, gsl_vector *c_phi, REAL8 *amp_pre)
 
static int SEOBNRv1ROMDoubleSpinCore (COMPLEX16FrequencySeries **hptilde, COMPLEX16FrequencySeries **hctilde, double phiRef, double fRef, double distance, double inclination, double Mtot_sec, double q, double chi1, double chi2, const REAL8Sequence *freqs_in, double deltaF)
 
SEOBNRv1 Reduced Order Model (Double Spin)

C code for SEOBNRv1 reduced order model (double spin version). See CQG 31 195010, 2014, arXiv:1402.4146 for details.

Author
Michael Puerrer, John Veitch

This is a frequency domain model that approximates the time domain SEOBNRv1 model. Note that SEOBNRv2 supersedes SEOBNRv1.

The binary data files are available at https://dcc.ligo.org/T1400701-v1. Put the untared data into a location in your LAL_DATA_PATH.

Note
Note that due to its construction the iFFT of the ROM has a small (~ 20 M) offset in the peak time that scales with total mass as compared to the time-domain SEOBNRv1 model.
Parameter ranges:
  • q <= 10
  • -1 <= chi_i <= 0.6
  • Mtot >= 12Msun

Aligned component spins chi1, chi2. Asymmetric mass-ratio q = max(m1/m2, m2/m1). Total mass Mtot.

int XLALSimIMRSEOBNRv1ROMDoubleSpinFrequencySequence (struct tagCOMPLEX16FrequencySeries **hptilde, struct tagCOMPLEX16FrequencySeries **hctilde, const REAL8Sequence *freqs, REAL8 phiRef, REAL8 fRef, REAL8 distance, REAL8 inclination, REAL8 m1SI, REAL8 m2SI, REAL8 chi1, REAL8 chi2)
 Compute waveform in LAL format at specified frequencies for the SEOBNRv1_ROM_DoubleSpin model. More...
 
int XLALSimIMRSEOBNRv1ROMDoubleSpin (struct tagCOMPLEX16FrequencySeries **hptilde, struct tagCOMPLEX16FrequencySeries **hctilde, REAL8 phiRef, REAL8 deltaF, REAL8 fLow, REAL8 fHigh, REAL8 fRef, REAL8 distance, REAL8 inclination, REAL8 m1SI, REAL8 m2SI, REAL8 chi1, REAL8 chi2)
 Compute waveform in LAL format for the SEOBNRv1_ROM_DoubleSpin model. More...
 

Go to the source code of this file.

Data Structures

struct  SEOBNRROMdataDS_coeff
 
struct  SEOBNRROMdataDS
 
struct  SplineData
 

Macros

#define nk_amp   95
 
#define nk_phi   123
 

Variables

static const double gA []
 
static const double gPhi []
 
static SEOBNRROMdataDS __lalsim_SEOBNRv1ROMDS_data
 

Macro Definition Documentation

◆ nk_amp

#define nk_amp   95

Definition at line 65 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ nk_phi

#define nk_phi   123

Definition at line 66 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

Function Documentation

◆ SEOBNRv1ROMDoubleSpin_Init_LALDATA()

static void SEOBNRv1ROMDoubleSpin_Init_LALDATA ( void  )
static

Definition at line 864 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRv1ROMDoubleSpin_Init()

static int SEOBNRv1ROMDoubleSpin_Init ( const char  dir[])
static

Setup SEOBNRv1ROMDoubleSpin model using data files installed in dir.

Definition at line 208 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRv1ROMDoubleSpin_IsSetup()

static bool SEOBNRv1ROMDoubleSpin_IsSetup ( void  )
static

Helper function to check if the SEOBNRv1ROMDoubleSpin model has been initialised.

Definition at line 225 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRROMdataDS_Init()

static int SEOBNRROMdataDS_Init ( SEOBNRROMdataDS *  romdata,
const char  dir[] 
)
static

Definition at line 358 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRROMdataDS_Cleanup()

static void SEOBNRROMdataDS_Cleanup ( SEOBNRROMdataDS *  romdata)
static

Definition at line 388 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRROMdataDS_coeff_Init()

static void SEOBNRROMdataDS_coeff_Init ( SEOBNRROMdataDS_coeff **  romdatacoeff)
static

Definition at line 398 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRROMdataDS_coeff_Cleanup()

static void SEOBNRROMdataDS_coeff_Cleanup ( SEOBNRROMdataDS_coeff romdatacoeff)
static

Definition at line 412 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ NextPow2()

static size_t NextPow2 ( const size_t  n)
static

Definition at line 419 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SplineData_Destroy()

static void SplineData_Destroy ( SplineData splinedata)
static

Definition at line 301 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SplineData_Init()

static void SplineData_Init ( SplineData **  splinedata)
static

Definition at line 244 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ read_vector()

static int read_vector ( const char  dir[],
const char  fname[],
gsl_vector *  v 
)
static

◆ read_matrix()

static int read_matrix ( const char  dir[],
const char  fname[],
gsl_matrix *  m 
)
static

◆ load_data()

static int load_data ( const char  dir[],
gsl_vector *  cvec_amp,
gsl_vector *  cvec_phi,
gsl_matrix *  Bamp,
gsl_matrix *  Bphi,
gsl_vector *  cvec_amp_pre 
)
static

Definition at line 233 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ TP_Spline_interpolation_3d()

static int TP_Spline_interpolation_3d ( REAL8  q,
REAL8  chi1,
REAL8  chi2,
gsl_vector *  cvec_amp,
gsl_vector *  cvec_phi,
gsl_vector *  cvec_amp_pre,
gsl_vector *  c_amp,
gsl_vector *  c_phi,
REAL8 amp_pre 
)
static

Definition at line 312 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ SEOBNRv1ROMDoubleSpinCore()

static int SEOBNRv1ROMDoubleSpinCore ( COMPLEX16FrequencySeries **  hptilde,
COMPLEX16FrequencySeries **  hctilde,
double  phiRef,
double  fRef,
double  distance,
double  inclination,
double  Mtot_sec,
double  q,
double  chi1,
double  chi2,
const REAL8Sequence freqs_in,
double  deltaF 
)
static

Definition at line 429 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

Variable Documentation

◆ gA

const double gA[]
static
Initial value:
= {0.000631238, 0.000669113, 0.00070926, 0.000751815, 0.000796924,
0.000844739, 0.000895424, 0.000949149, 0.0010061, 0.00106646,
0.00113045, 0.00119828, 0.00127018, 0.00134639, 0.00142717,
0.0015128, 0.00160357, 0.00169978, 0.00180177, 0.00190987,
0.00202447, 0.00214594, 0.00227469, 0.00241117, 0.00255584,
0.00270919, 0.00287175, 0.00304405, 0.00322669, 0.00342029,
0.00362551, 0.00384304, 0.00407363, 0.00431804, 0.00457713,
0.00485175, 0.00514286, 0.00545143, 0.00577852, 0.00612523,
0.00649274, 0.00688231, 0.00729524, 0.00773296, 0.00819694,
0.00868875, 0.00921008, 0.00976268, 0.0103484, 0.0109693, 0.0116275,
0.0123252, 0.0130647, 0.0138486, 0.0146795, 0.0155602, 0.0164938,
0.0174835, 0.0185325, 0.0196444, 0.0208231, 0.0220725, 0.0233968,
0.0248006, 0.0262887, 0.027866, 0.029538, 0.0313102, 0.0331889,
0.0351802, 0.037291, 0.0395285, 0.0419002, 0.0444142, 0.047079,
0.0499038, 0.052898, 0.0560719, 0.0594362, 0.0630024, 0.0667825,
0.0707895, 0.0750368, 0.079539, 0.0843114, 0.0893701, 0.0947323,
0.100416, 0.106441, 0.112828, 0.119597, 0.126773, 0.13438, 0.142442,
0.15}

Definition at line 69 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ gPhi

const double gPhi[]
static
Initial value:
= {0.00062519, 0.000638554, 0.000652301, 0.000666444, 0.000680997,
0.000695976, 0.000711395, 0.000727272, 0.000743622, 0.000760465,
0.000777818, 0.000795701, 0.000814135, 0.00083314, 0.000852738,
0.000872954, 0.000893812, 0.000915337, 0.000937555, 0.000960495,
0.000984187, 0.00100866, 0.00103395, 0.00106009, 0.00108711,
0.00111506, 0.00114396, 0.00117387, 0.00120483, 0.00123688,
0.00127008, 0.00130446, 0.00134009, 0.00137703, 0.00141533,
0.00145506, 0.00149628, 0.00153906, 0.00158349, 0.00162963,
0.00167757, 0.0017274, 0.00177922, 0.00183312, 0.00188921,
0.00194759, 0.0020084, 0.00207175, 0.00213777, 0.00220662,
0.00227844, 0.00235339, 0.00243165, 0.0025134, 0.00259883,
0.00268816, 0.0027816, 0.0028794, 0.00298181, 0.0030891, 0.00320158,
0.00331954, 0.00344334, 0.00357333, 0.00370991, 0.00385349,
0.00400452, 0.0041635, 0.00433095, 0.00450744, 0.00469358,
0.00489005, 0.00509755, 0.00531687, 0.00554887, 0.00579446,
0.00605465, 0.00633054, 0.00662331, 0.00693427, 0.00726485,
0.0076166, 0.00799125, 0.00839066, 0.00881692, 0.00927229,
0.00975928, 0.0102807, 0.0108395, 0.0114393, 0.0120836, 0.0127768,
0.0135236, 0.0143291, 0.0151992, 0.0161404, 0.0171602, 0.0182667,
0.0194694, 0.0207788, 0.0222069, 0.0237674, 0.0254758, 0.0273498,
0.0294099, 0.0316794, 0.0341854, 0.0369591, 0.0400368, 0.043461,
0.0472811, 0.0515553, 0.0563523, 0.0617535, 0.0678557, 0.0747749,
0.0826504, 0.0916509, 0.101981, 0.113893, 0.127695, 0.143771, 0.15}

Definition at line 88 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.

◆ __lalsim_SEOBNRv1ROMDS_data

SEOBNRROMdataDS __lalsim_SEOBNRv1ROMDS_data
static

Definition at line 135 of file LALSimIMRSEOBNRv1ROMDoubleSpin.c.