37 #ifndef LALSIMIMRSPINALIGNEDEOBHCAPDERIVATIVEOPTIMIZED_C
38 #define LALSIMIMRSPINALIGNEDEOBHCAPDERIVATIVEOPTIMIZED_C
40 #include <lal/LALSimInspiral.h>
41 #include <lal/LALSimIMR.h>
47 #include <gsl/gsl_deriv.h>
88 static const INT4 lMax = 8;
103 UINT4 SpinAlignedEOBversion;
106 REAL8 rData[3], pData[3];
113 REAL8 mass1, mass2, eta;
126 REAL8 DeltaT, DeltaR;
135 params.values = cartValues;
148 SpinAlignedEOBversion =
params.
params->seobCoeffs->SpinAlignedEOBversion;
160 csi = sqrt( DeltaT * DeltaR ) / (
r*
r +
a*
a);
166 memset( cartValues, 0,
sizeof( cartValues ) );
167 cartValues[0] = values[0];
168 cartValues[3] = values[2];
169 cartValues[4] = values[3] / values[0];
179 polarDynamics.
data = polData;
181 memcpy( polData, values,
sizeof( polData ) );
187 memset( rData, 0,
sizeof(rData) );
188 memset( pData, 0,
sizeof(pData) );
190 rData[0] = values[0];
191 pData[0] = values[2];
192 pData[1] = values[3] / values[0];
202 H =
H * (mass1 + mass2);
209 omega = tmpDValues[4] /
r;
220 dvalues[0] =
csi * tmpDValues[3];
223 dvalues[2] = - tmpDValues[0] + tmpDValues[4] * values[3] / (
r*
r);
224 dvalues[2] = dvalues[2] *
csi - ( values[2] / values[3] ) * flux / omega;
225 dvalues[3] = - flux / omega;
231 if ( isnan( dvalues[0] ) || isnan( dvalues[1] ) || isnan( dvalues[2] ) || isnan( dvalues[3] ) )
static int XLALSpinAlignedHcapDerivativeOptimized(double t, const REAL8 values[], REAL8 dvalues[], void *funcParams)
static REAL8 XLALInspiralSpinFactorizedFluxOptimized(REAL8Vector *values, EOBNonQCCoeffs *nqcCoeffs, const REAL8 omega, SpinEOBParams *ak, const REAL8 H, const INT4 lMax, const UINT4 SpinAlignedEOBversion)
This function calculates the spin factorized-resummed GW energy flux for given dynamical variables.
static REAL8 XLALSimIMRSpinEOBHamiltonianDeltaR(SpinEOBHCoeffs *coeffs, const REAL8 r, const REAL8 eta, const REAL8 a)
This function calculates the DeltaR potential function in the spin EOB Hamiltonian.
static REAL8 XLALSimIMRSpinEOBHamiltonianDeltaT(SpinEOBHCoeffs *coeffs, const REAL8 r, const REAL8 eta, const REAL8 a)
This function calculates the function which appears in the spinning EOB potential function.
UNUSED REAL8 XLALSimIMRSpinEOBHamiltonianOptimized(const REAL8 eta, REAL8Vector *restrict x, REAL8Vector *restrict p, REAL8Vector *restrict s1Vec, REAL8Vector *restrict s2Vec, REAL8Vector *restrict sigmaKerr, REAL8Vector *restrict sigmaStar, INT4 tortoise, SpinEOBHCoeffs *coeffs)
Function to calculate the value of the spinning Hamiltonian for given values of the dynamical variabl...
static REAL8 GSLSpinAlignedHamiltonianWrapper_derivs_allatonce(REAL8 output[6], const REAL8 input[6], void *params)
The coefficients which are used in calculating the non-quasicircular correction to the EOBNRv2 model.
Parameters for the spinning EOB model.