Which is better to use: w0 from Lionel's algorithm, or from PN?

L. London 2016


In [2]:
%matplotlib inline
from nrutils.core.nrsc import *


The highest level init for nrutils is located at: /Users/book/JOKI/Libs/KOALA/nrutils_dev/nrutils/__init__.pyc

>> Initiating nrutils ...

>> Sub-Packages to be imported:
   -> core
   -> manipulate
   -> tools
>> Please note style conventions:                  
   * lower case function/method/variable names                  
   * no underscore in names unless there are repeated letters, or counfounded syllables                  
   * information is implicitely in time domain unless explicitely stated.                  
   * frequency domain information will start with "fd".

nrutils:

  .core: 
      .basics*
      .basics
      .nrsc
  .manipulate: 
      .bundlers
  .tools: 
    .unit: 
      .conversion


In [3]:
# Search for simulations
# A = scsearch(institute='sxs',nonspinning=True,q=[1,10],verbose=True,unique=True)
# A = scsearch(precessing=True,q=[1,1.5],verbose=True,unique=True)
A = scsearch(keyword="base",unique=True,verbose=True)


[scsearch]>> Found keyword (='base') keyword.
[scsearch]>> Found unique (=True) keyword.
[scsearch]>> Found verbose (=True) keyword.
## Found 1 unique simulations:
[0001] q1.2_base: p-q1.20


In [11]:
# Convert a single simulation into a waveform object with desired multipoles
a = gwylm( scentry_obj = A[0], lm=[2,2], dt=0.4, verbose=True )
b = gwylm( scentry_obj = A[0], lm=[4,4], dt=0.4, w22=pnw0(a.m1,a.m2,D=a.b), verbose=True )


(gwylm)>> Found clean (=False) keyword.
(gwylm)>> Found dt (=0.4) keyword.
(gwylm)>> Found lm (=[2, 2]) keyword.
(gwylm)>> Found load (=True) keyword.
(gwylm)>> Found scentry_obj (=<nrutils.core.nrsc.scentry instance at 0x103b2a7a0>) keyword.
(gwylm)>> Found verbose (=True) keyword.
(load)>> Loading: psi3col.r5.l5.l2.m2.gz
(load)>> Re-orienting waveform phase to be consistent with internal sign convention for Psi4, where sign(dPhi/dt)=1*sign(m). Note that the internal sign convention is defined in ... nrutils/core/__init__.py as "M_RELATIVE_SIGN_CONVENTION". This message has appeared becuase the waveform is determioned to obey and sign convention: sign(dPhi/dt)=-1*sign(m).
(gwylm)>> Using w22 from algorithmic estimate to calculate strain multipoles.
>> w0 = 0.058814
(gwylm)>> Found clean (=False) keyword.
(gwylm)>> Found dt (=0.4) keyword.
(gwylm)>> Found lm (=[4, 4]) keyword.
(gwylm)>> Found load (=True) keyword.
(gwylm)>> Found scentry_obj (=<nrutils.core.nrsc.scentry instance at 0x103b2a7a0>) keyword.
(gwylm)>> Found verbose (=True) keyword.
(gwylm)>> Found w22 (=0.027069855196789866) keyword.
(load)>> Loading: psi3col.r5.l5.l4.m4.gz
(load)>> Re-orienting waveform phase to be consistent with internal sign convention for Psi4, where sign(dPhi/dt)=1*sign(m). Note that the internal sign convention is defined in ... nrutils/core/__init__.py as "M_RELATIVE_SIGN_CONVENTION". This message has appeared becuase the waveform is determioned to obey and sign convention: sign(dPhi/dt)=-1*sign(m).
(load)>> Loading: psi3col.r5.l5.l2.m2.gz
(load)>> Re-orienting waveform phase to be consistent with internal sign convention for Psi4, where sign(dPhi/dt)=1*sign(m). Note that the internal sign convention is defined in ... nrutils/core/__init__.py as "M_RELATIVE_SIGN_CONVENTION". This message has appeared becuase the waveform is determioned to obey and sign convention: sign(dPhi/dt)=-1*sign(m).
(gwylm)>> Using w22 from user input to calculate strain multipoles.
>> w0 = 0.054140

In [10]:
# plot time domain strain
b.plot(kind='strain',show=True,domain='time')


Out[10]:
[<matplotlib.axes._subplots.AxesSubplot at 0x107abf190>,
 <matplotlib.axes._subplots.AxesSubplot at 0x107489850>,
 <matplotlib.axes._subplots.AxesSubplot at 0x10bb813d0>]

In [5]:
# plot time domain psi4
y.plot(kind='psi4',show=True,domain='time')


Out[5]:
[<matplotlib.axes._subplots.AxesSubplot at 0x107577ed0>,
 <matplotlib.axes._subplots.AxesSubplot at 0x107aa2c10>,
 <matplotlib.axes._subplots.AxesSubplot at 0x1075e3e90>]

In [6]:
# plot frequency domain psi4
y.plot(kind='psi4',show=True,domain='freq')


Out[6]:
[<matplotlib.axes._subplots.AxesSubplot at 0x10a61eed0>,
 <matplotlib.axes._subplots.AxesSubplot at 0x10b18cb10>,
 <matplotlib.axes._subplots.AxesSubplot at 0x10b22de10>]

In [7]:
# plot frequency domain strain
y.plot(kind='strain',show=True,domain='freq')


Out[7]:
[<matplotlib.axes._subplots.AxesSubplot at 0x10afae3d0>,
 <matplotlib.axes._subplots.AxesSubplot at 0x10b8c6e90>,
 <matplotlib.axes._subplots.AxesSubplot at 0x10ba9b110>]