From 5829f0b7d2fee5fcd2413f18ebfb569a9483b094 Mon Sep 17 00:00:00 2001 From: weichangfeng Date: Wed, 25 Nov 2020 16:07:55 +0800 Subject: [PATCH] Upload New File --- ...min_bilby_BBH_waveform_test_20201125.ipynb | 802 ++++++++++++++++++ 1 file changed, 802 insertions(+) create mode 100644 VItamin_bilby_BBH_waveform_test_20201125.ipynb diff --git a/VItamin_bilby_BBH_waveform_test_20201125.ipynb b/VItamin_bilby_BBH_waveform_test_20201125.ipynb new file mode 100644 index 0000000..3f0ca54 --- /dev/null +++ b/VItamin_bilby_BBH_waveform_test_20201125.ipynb @@ -0,0 +1,802 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import bilby\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "# We first establish a dictionary of parameters that includes \n", + "# all of the different waveform parameters, including masses \n", + "# of the two black holes (mass_1, mass_2), spins of both black \n", + "# holes (a, tilt, phi), etc. \n", + "\n", + "# Here we set the value of each parameter as the median of its prior's \n", + "# range, which is given to train VItamin_B\n", + "parameters = dict(\n", + " mass_1=57.5, mass_2=57.5, a_1=0., a_2=0., tilt_1=0., tilt_2=0.,\n", + " phi_12=0., phi_jl=0., luminosity_distance=1800, theta_jn=3.141592653589793*5/6, psi=3.141592653589793/2,\n", + " phase=6.283185307179586/2, geocent_time=0.25, ra=6.283185307179586/2, dec=0.)\n", + "\n", + "\n", + "\n", + "# Set up interferometers. In this case we'll use three interferometer \n", + "# L1 H1 and V1. Duration and sampling frequency follow VItamin_B's\n", + "# requirement.\n", + "\n", + "ifos_list = [ 'L1','H1','V1']\n", + "duration = 1.\n", + "sampling_frequency = 256\n", + "Nt = duration*sampling_frequency\n", + "\n", + "# Set up a random seed for result reproducibility. \n", + "np.random.seed(8870)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "16:03 bilby INFO : Waveform generator initiated with\n", + " frequency_domain_source_model: bilby.gw.source.lal_binary_black_hole\n", + " time_domain_source_model: None\n", + " parameter_conversion: bilby.gw.conversion.convert_to_lal_binary_black_hole_parameters\n" + ] + } + ], + "source": [ + "waveform_arguments = dict(\n", + " waveform_approximant='IMRPhenomPv2',reference_frequency=50., minimum_frequency=20.)\n", + " \n", + " # Create the waveform_generator using a LAL BinaryBlackHole source function\n", + " # the generator will convert all the parameters\n", + "waveform_generator = bilby.gw.WaveformGenerator(\n", + " duration=duration, sampling_frequency=sampling_frequency,\n", + " frequency_domain_source_model=bilby.gw.source.lal_binary_black_hole,\n", + " parameter_conversion=bilby.gw.conversion.convert_to_lal_binary_black_hole_parameters,\n", + " waveform_arguments=waveform_arguments)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "waveform_generator.parameters = parameters\n", + "freq_signal = waveform_generator.frequency_domain_strain()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/weichangfeng/.local/lib/python3.8/site-packages/bilby/gw/detector/psd.py:356: RuntimeWarning: invalid value encountered in multiply\n", + " frequency_domain_strain = self.__power_spectral_density_interpolated(frequencies) ** 0.5 * white_noise\n", + "16:03 bilby WARNING : Injecting signal outside segment, start_time=0.75, merger time=0.25.\n", + "16:03 bilby INFO : Injected signal in L1:\n", + "16:03 bilby INFO : optimal SNR = 21.86\n", + "16:03 bilby INFO : matched filter SNR = 21.67+0.20j\n", + "16:03 bilby INFO : mass_1 = 57.5\n", + "16:03 bilby INFO : mass_2 = 57.5\n", + "16:03 bilby INFO : a_1 = 0.0\n", + "16:03 bilby INFO : a_2 = 0.0\n", + "16:03 bilby INFO : tilt_1 = 0.0\n", + "16:03 bilby INFO : tilt_2 = 0.0\n", + "16:03 bilby INFO : phi_12 = 0.0\n", + "16:03 bilby INFO : phi_jl = 0.0\n", + "16:03 bilby INFO : luminosity_distance = 1800\n", + "16:03 bilby INFO : theta_jn = 2.6179938779914944\n", + "16:03 bilby INFO : psi = 1.5707963267948966\n", + "16:03 bilby INFO : phase = 3.141592653589793\n", + "16:03 bilby INFO : geocent_time = 0.25\n", + "16:03 bilby INFO : ra = 3.141592653589793\n", + "16:03 bilby INFO : dec = 0.0\n", + "16:03 bilby WARNING : Injecting signal outside segment, start_time=0.75, merger time=0.25.\n", + "16:03 bilby INFO : Injected signal in H1:\n", + "16:03 bilby INFO : optimal SNR = 18.43\n", + "16:03 bilby INFO : matched filter SNR = 19.05+0.84j\n", + "16:03 bilby INFO : mass_1 = 57.5\n", + "16:03 bilby INFO : mass_2 = 57.5\n", + "16:03 bilby INFO : a_1 = 0.0\n", + "16:03 bilby INFO : a_2 = 0.0\n", + "16:03 bilby INFO : tilt_1 = 0.0\n", + "16:03 bilby INFO : tilt_2 = 0.0\n", + "16:03 bilby INFO : phi_12 = 0.0\n", + "16:03 bilby INFO : phi_jl = 0.0\n", + "16:03 bilby INFO : luminosity_distance = 1800\n", + "16:03 bilby INFO : theta_jn = 2.6179938779914944\n", + "16:03 bilby INFO : psi = 1.5707963267948966\n", + "16:03 bilby INFO : phase = 3.141592653589793\n", + "16:03 bilby INFO : geocent_time = 0.25\n", + "16:03 bilby INFO : ra = 3.141592653589793\n", + "16:03 bilby INFO : dec = 0.0\n", + "16:03 bilby WARNING : Injecting signal outside segment, start_time=0.75, merger time=0.25.\n", + "16:03 bilby INFO : Injected signal in V1:\n", + "16:03 bilby INFO : optimal SNR = 10.87\n", + "16:03 bilby INFO : matched filter SNR = 11.04-0.98j\n", + "16:03 bilby INFO : mass_1 = 57.5\n", + "16:03 bilby INFO : mass_2 = 57.5\n", + "16:03 bilby INFO : a_1 = 0.0\n", + "16:03 bilby INFO : a_2 = 0.0\n", + "16:03 bilby INFO : tilt_1 = 0.0\n", + "16:03 bilby INFO : tilt_2 = 0.0\n", + "16:03 bilby INFO : phi_12 = 0.0\n", + "16:03 bilby INFO : phi_jl = 0.0\n", + "16:03 bilby INFO : luminosity_distance = 1800\n", + "16:03 bilby INFO : theta_jn = 2.6179938779914944\n", + "16:03 bilby INFO : psi = 1.5707963267948966\n", + "16:03 bilby INFO : phase = 3.141592653589793\n", + "16:03 bilby INFO : geocent_time = 0.25\n", + "16:03 bilby INFO : ra = 3.141592653589793\n", + "16:03 bilby INFO : dec = 0.0\n" + ] + }, + { + "data": { + "text/plain": [ + "[{'plus': array([ 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " -2.59379145e-24+2.54967296e-23j, -2.40066029e-23-6.98728163e-25j,\n", + " -5.12948978e-24-2.19776749e-23j, 1.70269897e-23-1.27326779e-23j,\n", + " 1.85940451e-23+7.57387420e-24j, 4.95507806e-24+1.83445090e-23j,\n", + " -9.63735222e-24+1.52299287e-23j, -1.65658961e-23+4.35820007e-24j,\n", + " -1.48632943e-23-6.72004805e-24j, -7.76667566e-24-1.34846902e-23j,\n", + " 7.50821212e-25-1.48521372e-23j, 7.79465484e-24-1.19108340e-23j,\n", + " 1.19691046e-23-6.55511055e-24j, 1.30887180e-23-5.94161836e-25j,\n", + " 1.17003552e-23+4.66847996e-24j, 8.64331378e-24+8.50822225e-24j,\n", + " 4.76246838e-24+1.06780595e-23j, 7.59355182e-25+1.12597598e-23j,\n", + " -2.86160189e-24+1.05237769e-23j, -5.79021964e-24+8.82070629e-24j,\n", + " -7.87982472e-24+6.50776426e-24j, -9.10711519e-24+3.90520437e-24j,\n", + " -9.53296312e-24+1.27504652e-24j, -9.26904231e-24-1.18517180e-24j,\n", + " -8.45186555e-24-3.33949261e-24j, -7.22403426e-24-5.10575249e-24j,\n", + " -5.72168407e-24-6.44578507e-24j, -4.06684983e-24-7.35539710e-24j,\n", + " -2.36350724e-24-7.85512869e-24j, -6.96216178e-25-7.98228771e-24j,\n", + " 8.69500385e-25-7.78441832e-24j, 2.28570349e-24-7.31416951e-24j,\n", + " 3.51999536e-24-6.62542605e-24j, 4.55322612e-24-5.77051916e-24j,\n", + " 5.37717722e-24-4.79832476e-24j, 5.99236488e-24-3.75306724e-24j,\n", + " 6.40604629e-24-2.67366727e-24j, 6.63046882e-24-1.59349609e-24j,\n", + " 6.68137406e-24-5.40423165e-25j, 6.57674992e-24+4.62933652e-25j,\n", + " 6.33581340e-24+1.39882618e-24j, 5.97820029e-24+2.25391662e-24j,\n", + " 5.52333607e-24+3.01878125e-24j, 4.98996187e-24+3.68740649e-24j,\n", + " 4.39579071e-24+4.25669783e-24j, 3.75727140e-24+4.72601544e-24j,\n", + " 3.08943971e-24+5.09674494e-24j, 2.40583938e-24+5.37190812e-24j,\n", + " 1.71849761e-24+5.55581538e-24j, 1.03794241e-24+5.65375986e-24j,\n", + " 3.73251090e-25+5.67175169e-24j, -2.67878810e-25+5.61628988e-24j,\n", + " -8.79043246e-25+5.49416913e-24j, -1.45503576e-24+5.31231808e-24j,\n", + " -1.99174637e-24+5.07766599e-24j, -2.48605879e-24+4.79703433e-24j,\n", + " -2.93574855e-24+4.47705048e-24j, -3.33938409e-24+4.12408039e-24j,\n", + " -3.69623071e-24+3.74417907e-24j, -4.00613707e-24+3.34308419e-24j,\n", + " -4.26950725e-24+2.92614408e-24j, -4.48720710e-24+2.49830273e-24j,\n", + " -4.66047845e-24+2.06410595e-24j, -4.79087490e-24+1.62770194e-24j,\n", + " -4.88020403e-24+1.19284691e-24j, -4.93047551e-24+7.62914998e-25j,\n", + " -4.94385501e-24+3.40911180e-25j, -4.92262330e-24-7.05133132e-26j,\n", + " -4.86914025e-24-4.69043949e-25j, -4.78581342e-24-8.52684652e-25j,\n", + " -4.67507058e-24-1.21973886e-24j, -4.53933617e-24-1.56879026e-24j,\n", + " -4.38101091e-24-1.89868344e-24j, -4.20245464e-24-2.20850478e-24j,\n", + " -4.00597173e-24-2.49756373e-24j, -3.79379904e-24-2.76537454e-24j,\n", + " -3.56809594e-24-3.01163874e-24j, -3.33093631e-24-3.23622822e-24j,\n", + " -3.08430221e-24-3.43916919e-24j, -2.83007907e-24-3.62062681e-24j,\n", + " -2.57005218e-24-3.78089076e-24j, -2.30590426e-24-3.92036161e-24j,\n", + " -2.03921417e-24-4.03953792e-24j, -1.77145636e-24-4.13900430e-24j,\n", + " -1.50400111e-24-4.21942014e-24j, -1.23811546e-24-4.28150914e-24j,\n", + " -9.74964610e-25-4.32604964e-24j, -7.15613850e-25-4.35386555e-24j,\n", + " -4.61030861e-25-4.36581804e-24j, -2.12088349e-25-4.36279788e-24j,\n", + " 3.04330483e-26-4.34571832e-24j, 2.65841630e-25-4.31550864e-24j,\n", + " 4.93531321e-25-4.27310817e-24j, 7.12978219e-25-4.21946092e-24j,\n", + " 9.23737033e-25-4.15551057e-24j, 1.12543744e-24-4.08219605e-24j,\n", + " 1.31778040e-24-4.00044743e-24j, 1.50053438e-24-3.91118229e-24j,\n", + " 1.67353167e-24-3.81530242e-24j, 1.83666457e-24-3.71369081e-24j,\n", + " 1.98988165e-24-3.60720909e-24j, 2.13318406e-24-3.49669507e-24j,\n", + " 2.26662174e-24-3.38296072e-24j, 2.39028983e-24-3.26679023e-24j,\n", + " 2.50432496e-24-3.14893836e-24j, 2.60890165e-24-3.03012894e-24j,\n", + " 2.70422875e-24-2.91105352e-24j, 2.79054583e-24-2.79237009e-24j,\n", + " 0.00000000e+00+0.00000000e+00j]),\n", + " 'cross': array([ 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " -2.52352178e-23-2.56718776e-24j, 6.91561530e-25-2.37603748e-23j,\n", + " 2.17522569e-23-5.07687824e-24j, 1.26020829e-23+1.68523493e-23j,\n", + " -7.49619138e-24+1.84033319e-23j, -1.81563552e-23+4.90425540e-24j,\n", + " -1.50737201e-23-9.53850497e-24j, -4.31349940e-24-1.63959850e-23j,\n", + " 6.65112266e-24-1.47108462e-23j, 1.33463820e-23-7.68701534e-24j,\n", + " 1.46998036e-23+7.43120278e-25j, 1.17886683e-23+7.71470755e-24j,\n", + " 6.48787687e-24+1.18463413e-23j, 5.88067708e-25+1.29544712e-23j,\n", + " -4.62059685e-24+1.15803484e-23j, -8.42095612e-24+8.55466207e-24j,\n", + " -1.05685380e-23+4.71362126e-24j, -1.11442720e-23+7.51566718e-25j,\n", + " -1.04158378e-23-2.83225135e-24j, -8.73023512e-24-5.73083120e-24j,\n", + " -6.44101619e-24-7.79900387e-24j, -3.86514993e-24-9.01370641e-24j,\n", + " -1.26196878e-24-9.43518656e-24j, 1.17301587e-24-9.17397270e-24j,\n", + " 3.30524050e-24-8.36517746e-24j, 5.05338441e-24-7.14993964e-24j,\n", + " 6.37967271e-24-5.66299858e-24j, 7.27995513e-24-4.02513745e-24j,\n", + " 7.77456114e-24-2.33926550e-24j, 7.90041593e-24-6.89075310e-25j,\n", + " 7.70457602e-24+8.60582197e-25j, 7.23915040e-24+2.26225975e-24j,\n", + " 6.55747116e-24+3.48389188e-24j, 5.71133279e-24+4.50652513e-24j,\n", + " 4.74910987e-24+5.32202523e-24j, 3.71457322e-24+5.93090311e-24j,\n", + " 2.64624431e-24+6.34034151e-24j, 1.57715211e-24+6.56246222e-24j,\n", + " 5.34880217e-25+6.61284533e-24j, -4.58185489e-25+6.50929429e-24j,\n", + " -1.38447886e-24+6.27082898e-24j, -2.23079891e-24+5.91688380e-24j,\n", + " -2.98781857e-24+5.46668497e-24j, -3.64958593e-24+4.93878142e-24j,\n", + " -4.21303824e-24+4.35070449e-24j, -4.67754221e-24+3.71873426e-24j,\n", + " -5.04446925e-24+3.05775231e-24j, -5.31681017e-24+2.38116345e-24j,\n", + " -5.49883115e-24+1.70087153e-24j, -5.59577105e-24+1.02729657e-24j,\n", + " -5.61357834e-24+3.69422772e-25j, -5.55868539e-24-2.65131263e-25j,\n", + " -5.43781719e-24-8.70027180e-25j, -5.25783133e-24-1.44011192e-24j,\n", + " -5.02558599e-24-1.97131766e-24j, -4.74783268e-24-2.46056008e-24j,\n", + " -4.43113080e-24-2.90563752e-24j, -4.08178101e-24-3.30513309e-24j,\n", + " -3.70577622e-24-3.65831965e-24j, -3.30879524e-24-3.96504740e-24j,\n", + " -2.89613156e-24-4.22571627e-24j, -2.47267843e-24-4.44118325e-24j,\n", + " -2.04293508e-24-4.61267740e-24j, -1.61100712e-24-4.74173642e-24j,\n", + " -1.18061226e-24-4.83014933e-24j, -7.55090022e-25-4.87990519e-24j,\n", + " -3.37414563e-25-4.89314747e-24j, 6.97900806e-26-4.87213352e-24j,\n", + " 4.64233115e-25-4.81919903e-24j, 8.43938937e-25-4.73672685e-24j,\n", + " 1.20722839e-24-4.62711987e-24j, 1.55269968e-24-4.49277764e-24j,\n", + " 1.87920925e-24-4.33607628e-24j, 2.18585285e-24-4.15935140e-24j,\n", + " 2.47194701e-24-3.96488376e-24j, 2.73701097e-24-3.75488725e-24j,\n", + " 2.98074932e-24-3.53149912e-24j, 3.20303526e-24-3.29677195e-24j,\n", + " 3.40389473e-24-3.05266750e-24j, 3.58349119e-24-2.80105185e-24j,\n", + " 3.74211137e-24-2.54369197e-24j, 3.88015171e-24-2.28225333e-24j,\n", + " 3.99810567e-24-2.01829860e-24j, 4.09655185e-24-1.75328709e-24j,\n", + " 4.17614289e-24-1.48857505e-24j, 4.23759507e-24-1.22541650e-24j,\n", + " 4.28167873e-24-9.64964708e-25j, 4.30920934e-24-7.08274026e-25j,\n", + " 4.32103924e-24-4.56302214e-25j, 4.31805005e-24-2.09913026e-25j,\n", + " 4.30114567e-24+3.01209062e-26j, 4.27124584e-24+2.63114977e-25j,\n", + " 4.22928026e-24+4.88469328e-25j, 4.17618325e-24+7.05665429e-25j,\n", + " 4.11288882e-24+9.14262557e-25j, 4.04032626e-24+1.11389419e-24j,\n", + " 3.95941611e-24+1.30426434e-24j, 3.87106654e-24+1.48514388e-24j,\n", + " 3.77617008e-24+1.65636679e-24j, 3.67560067e-24+1.81782649e-24j,\n", + " 3.57021109e-24+1.96947207e-24j, 3.46083058e-24+2.11130467e-24j,\n", + " 3.34826277e-24+2.24337372e-24j, 3.23328380e-24+2.36577339e-24j,\n", + " 3.11664070e-24+2.47863890e-24j, 2.99904987e-24+2.58214298e-24j,\n", + " 2.88119577e-24+2.67649233e-24j, 2.76372964e-24+2.76192409e-24j,\n", + " 0.00000000e+00-0.00000000e+00j])},\n", + " {'plus': array([ 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " -2.59379145e-24+2.54967296e-23j, -2.40066029e-23-6.98728163e-25j,\n", + " -5.12948978e-24-2.19776749e-23j, 1.70269897e-23-1.27326779e-23j,\n", + " 1.85940451e-23+7.57387420e-24j, 4.95507806e-24+1.83445090e-23j,\n", + " -9.63735222e-24+1.52299287e-23j, -1.65658961e-23+4.35820007e-24j,\n", + " -1.48632943e-23-6.72004805e-24j, -7.76667566e-24-1.34846902e-23j,\n", + " 7.50821212e-25-1.48521372e-23j, 7.79465484e-24-1.19108340e-23j,\n", + " 1.19691046e-23-6.55511055e-24j, 1.30887180e-23-5.94161836e-25j,\n", + " 1.17003552e-23+4.66847996e-24j, 8.64331378e-24+8.50822225e-24j,\n", + " 4.76246838e-24+1.06780595e-23j, 7.59355182e-25+1.12597598e-23j,\n", + " -2.86160189e-24+1.05237769e-23j, -5.79021964e-24+8.82070629e-24j,\n", + " -7.87982472e-24+6.50776426e-24j, -9.10711519e-24+3.90520437e-24j,\n", + " -9.53296312e-24+1.27504652e-24j, -9.26904231e-24-1.18517180e-24j,\n", + " -8.45186555e-24-3.33949261e-24j, -7.22403426e-24-5.10575249e-24j,\n", + " -5.72168407e-24-6.44578507e-24j, -4.06684983e-24-7.35539710e-24j,\n", + " -2.36350724e-24-7.85512869e-24j, -6.96216178e-25-7.98228771e-24j,\n", + " 8.69500385e-25-7.78441832e-24j, 2.28570349e-24-7.31416951e-24j,\n", + " 3.51999536e-24-6.62542605e-24j, 4.55322612e-24-5.77051916e-24j,\n", + " 5.37717722e-24-4.79832476e-24j, 5.99236488e-24-3.75306724e-24j,\n", + " 6.40604629e-24-2.67366727e-24j, 6.63046882e-24-1.59349609e-24j,\n", + " 6.68137406e-24-5.40423165e-25j, 6.57674992e-24+4.62933652e-25j,\n", + " 6.33581340e-24+1.39882618e-24j, 5.97820029e-24+2.25391662e-24j,\n", + " 5.52333607e-24+3.01878125e-24j, 4.98996187e-24+3.68740649e-24j,\n", + " 4.39579071e-24+4.25669783e-24j, 3.75727140e-24+4.72601544e-24j,\n", + " 3.08943971e-24+5.09674494e-24j, 2.40583938e-24+5.37190812e-24j,\n", + " 1.71849761e-24+5.55581538e-24j, 1.03794241e-24+5.65375986e-24j,\n", + " 3.73251090e-25+5.67175169e-24j, -2.67878810e-25+5.61628988e-24j,\n", + " -8.79043246e-25+5.49416913e-24j, -1.45503576e-24+5.31231808e-24j,\n", + " -1.99174637e-24+5.07766599e-24j, -2.48605879e-24+4.79703433e-24j,\n", + " -2.93574855e-24+4.47705048e-24j, -3.33938409e-24+4.12408039e-24j,\n", + " -3.69623071e-24+3.74417907e-24j, -4.00613707e-24+3.34308419e-24j,\n", + " -4.26950725e-24+2.92614408e-24j, -4.48720710e-24+2.49830273e-24j,\n", + " -4.66047845e-24+2.06410595e-24j, -4.79087490e-24+1.62770194e-24j,\n", + " -4.88020403e-24+1.19284691e-24j, -4.93047551e-24+7.62914998e-25j,\n", + " -4.94385501e-24+3.40911180e-25j, -4.92262330e-24-7.05133132e-26j,\n", + " -4.86914025e-24-4.69043949e-25j, -4.78581342e-24-8.52684652e-25j,\n", + " -4.67507058e-24-1.21973886e-24j, -4.53933617e-24-1.56879026e-24j,\n", + " -4.38101091e-24-1.89868344e-24j, -4.20245464e-24-2.20850478e-24j,\n", + " -4.00597173e-24-2.49756373e-24j, -3.79379904e-24-2.76537454e-24j,\n", + " -3.56809594e-24-3.01163874e-24j, -3.33093631e-24-3.23622822e-24j,\n", + " -3.08430221e-24-3.43916919e-24j, -2.83007907e-24-3.62062681e-24j,\n", + " -2.57005218e-24-3.78089076e-24j, -2.30590426e-24-3.92036161e-24j,\n", + " -2.03921417e-24-4.03953792e-24j, -1.77145636e-24-4.13900430e-24j,\n", + " -1.50400111e-24-4.21942014e-24j, -1.23811546e-24-4.28150914e-24j,\n", + " -9.74964610e-25-4.32604964e-24j, -7.15613850e-25-4.35386555e-24j,\n", + " -4.61030861e-25-4.36581804e-24j, -2.12088349e-25-4.36279788e-24j,\n", + " 3.04330483e-26-4.34571832e-24j, 2.65841630e-25-4.31550864e-24j,\n", + " 4.93531321e-25-4.27310817e-24j, 7.12978219e-25-4.21946092e-24j,\n", + " 9.23737033e-25-4.15551057e-24j, 1.12543744e-24-4.08219605e-24j,\n", + " 1.31778040e-24-4.00044743e-24j, 1.50053438e-24-3.91118229e-24j,\n", + " 1.67353167e-24-3.81530242e-24j, 1.83666457e-24-3.71369081e-24j,\n", + " 1.98988165e-24-3.60720909e-24j, 2.13318406e-24-3.49669507e-24j,\n", + " 2.26662174e-24-3.38296072e-24j, 2.39028983e-24-3.26679023e-24j,\n", + " 2.50432496e-24-3.14893836e-24j, 2.60890165e-24-3.03012894e-24j,\n", + " 2.70422875e-24-2.91105352e-24j, 2.79054583e-24-2.79237009e-24j,\n", + " 0.00000000e+00+0.00000000e+00j]),\n", + " 'cross': array([ 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " -2.52352178e-23-2.56718776e-24j, 6.91561530e-25-2.37603748e-23j,\n", + " 2.17522569e-23-5.07687824e-24j, 1.26020829e-23+1.68523493e-23j,\n", + " -7.49619138e-24+1.84033319e-23j, -1.81563552e-23+4.90425540e-24j,\n", + " -1.50737201e-23-9.53850497e-24j, -4.31349940e-24-1.63959850e-23j,\n", + " 6.65112266e-24-1.47108462e-23j, 1.33463820e-23-7.68701534e-24j,\n", + " 1.46998036e-23+7.43120278e-25j, 1.17886683e-23+7.71470755e-24j,\n", + " 6.48787687e-24+1.18463413e-23j, 5.88067708e-25+1.29544712e-23j,\n", + " -4.62059685e-24+1.15803484e-23j, -8.42095612e-24+8.55466207e-24j,\n", + " -1.05685380e-23+4.71362126e-24j, -1.11442720e-23+7.51566718e-25j,\n", + " -1.04158378e-23-2.83225135e-24j, -8.73023512e-24-5.73083120e-24j,\n", + " -6.44101619e-24-7.79900387e-24j, -3.86514993e-24-9.01370641e-24j,\n", + " -1.26196878e-24-9.43518656e-24j, 1.17301587e-24-9.17397270e-24j,\n", + " 3.30524050e-24-8.36517746e-24j, 5.05338441e-24-7.14993964e-24j,\n", + " 6.37967271e-24-5.66299858e-24j, 7.27995513e-24-4.02513745e-24j,\n", + " 7.77456114e-24-2.33926550e-24j, 7.90041593e-24-6.89075310e-25j,\n", + " 7.70457602e-24+8.60582197e-25j, 7.23915040e-24+2.26225975e-24j,\n", + " 6.55747116e-24+3.48389188e-24j, 5.71133279e-24+4.50652513e-24j,\n", + " 4.74910987e-24+5.32202523e-24j, 3.71457322e-24+5.93090311e-24j,\n", + " 2.64624431e-24+6.34034151e-24j, 1.57715211e-24+6.56246222e-24j,\n", + " 5.34880217e-25+6.61284533e-24j, -4.58185489e-25+6.50929429e-24j,\n", + " -1.38447886e-24+6.27082898e-24j, -2.23079891e-24+5.91688380e-24j,\n", + " -2.98781857e-24+5.46668497e-24j, -3.64958593e-24+4.93878142e-24j,\n", + " -4.21303824e-24+4.35070449e-24j, -4.67754221e-24+3.71873426e-24j,\n", + " -5.04446925e-24+3.05775231e-24j, -5.31681017e-24+2.38116345e-24j,\n", + " -5.49883115e-24+1.70087153e-24j, -5.59577105e-24+1.02729657e-24j,\n", + " -5.61357834e-24+3.69422772e-25j, -5.55868539e-24-2.65131263e-25j,\n", + " -5.43781719e-24-8.70027180e-25j, -5.25783133e-24-1.44011192e-24j,\n", + " -5.02558599e-24-1.97131766e-24j, -4.74783268e-24-2.46056008e-24j,\n", + " -4.43113080e-24-2.90563752e-24j, -4.08178101e-24-3.30513309e-24j,\n", + " -3.70577622e-24-3.65831965e-24j, -3.30879524e-24-3.96504740e-24j,\n", + " -2.89613156e-24-4.22571627e-24j, -2.47267843e-24-4.44118325e-24j,\n", + " -2.04293508e-24-4.61267740e-24j, -1.61100712e-24-4.74173642e-24j,\n", + " -1.18061226e-24-4.83014933e-24j, -7.55090022e-25-4.87990519e-24j,\n", + " -3.37414563e-25-4.89314747e-24j, 6.97900806e-26-4.87213352e-24j,\n", + " 4.64233115e-25-4.81919903e-24j, 8.43938937e-25-4.73672685e-24j,\n", + " 1.20722839e-24-4.62711987e-24j, 1.55269968e-24-4.49277764e-24j,\n", + " 1.87920925e-24-4.33607628e-24j, 2.18585285e-24-4.15935140e-24j,\n", + " 2.47194701e-24-3.96488376e-24j, 2.73701097e-24-3.75488725e-24j,\n", + " 2.98074932e-24-3.53149912e-24j, 3.20303526e-24-3.29677195e-24j,\n", + " 3.40389473e-24-3.05266750e-24j, 3.58349119e-24-2.80105185e-24j,\n", + " 3.74211137e-24-2.54369197e-24j, 3.88015171e-24-2.28225333e-24j,\n", + " 3.99810567e-24-2.01829860e-24j, 4.09655185e-24-1.75328709e-24j,\n", + " 4.17614289e-24-1.48857505e-24j, 4.23759507e-24-1.22541650e-24j,\n", + " 4.28167873e-24-9.64964708e-25j, 4.30920934e-24-7.08274026e-25j,\n", + " 4.32103924e-24-4.56302214e-25j, 4.31805005e-24-2.09913026e-25j,\n", + " 4.30114567e-24+3.01209062e-26j, 4.27124584e-24+2.63114977e-25j,\n", + " 4.22928026e-24+4.88469328e-25j, 4.17618325e-24+7.05665429e-25j,\n", + " 4.11288882e-24+9.14262557e-25j, 4.04032626e-24+1.11389419e-24j,\n", + " 3.95941611e-24+1.30426434e-24j, 3.87106654e-24+1.48514388e-24j,\n", + " 3.77617008e-24+1.65636679e-24j, 3.67560067e-24+1.81782649e-24j,\n", + " 3.57021109e-24+1.96947207e-24j, 3.46083058e-24+2.11130467e-24j,\n", + " 3.34826277e-24+2.24337372e-24j, 3.23328380e-24+2.36577339e-24j,\n", + " 3.11664070e-24+2.47863890e-24j, 2.99904987e-24+2.58214298e-24j,\n", + " 2.88119577e-24+2.67649233e-24j, 2.76372964e-24+2.76192409e-24j,\n", + " 0.00000000e+00-0.00000000e+00j])},\n", + " {'plus': array([ 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " 0.00000000e+00+0.00000000e+00j, 0.00000000e+00+0.00000000e+00j,\n", + " -2.59379145e-24+2.54967296e-23j, -2.40066029e-23-6.98728163e-25j,\n", + " -5.12948978e-24-2.19776749e-23j, 1.70269897e-23-1.27326779e-23j,\n", + " 1.85940451e-23+7.57387420e-24j, 4.95507806e-24+1.83445090e-23j,\n", + " -9.63735222e-24+1.52299287e-23j, -1.65658961e-23+4.35820007e-24j,\n", + " -1.48632943e-23-6.72004805e-24j, -7.76667566e-24-1.34846902e-23j,\n", + " 7.50821212e-25-1.48521372e-23j, 7.79465484e-24-1.19108340e-23j,\n", + " 1.19691046e-23-6.55511055e-24j, 1.30887180e-23-5.94161836e-25j,\n", + " 1.17003552e-23+4.66847996e-24j, 8.64331378e-24+8.50822225e-24j,\n", + " 4.76246838e-24+1.06780595e-23j, 7.59355182e-25+1.12597598e-23j,\n", + " -2.86160189e-24+1.05237769e-23j, -5.79021964e-24+8.82070629e-24j,\n", + " -7.87982472e-24+6.50776426e-24j, -9.10711519e-24+3.90520437e-24j,\n", + " -9.53296312e-24+1.27504652e-24j, -9.26904231e-24-1.18517180e-24j,\n", + " -8.45186555e-24-3.33949261e-24j, -7.22403426e-24-5.10575249e-24j,\n", + " -5.72168407e-24-6.44578507e-24j, -4.06684983e-24-7.35539710e-24j,\n", + " -2.36350724e-24-7.85512869e-24j, -6.96216178e-25-7.98228771e-24j,\n", + " 8.69500385e-25-7.78441832e-24j, 2.28570349e-24-7.31416951e-24j,\n", + " 3.51999536e-24-6.62542605e-24j, 4.55322612e-24-5.77051916e-24j,\n", + " 5.37717722e-24-4.79832476e-24j, 5.99236488e-24-3.75306724e-24j,\n", + " 6.40604629e-24-2.67366727e-24j, 6.63046882e-24-1.59349609e-24j,\n", + " 6.68137406e-24-5.40423165e-25j, 6.57674992e-24+4.62933652e-25j,\n", + " 6.33581340e-24+1.39882618e-24j, 5.97820029e-24+2.25391662e-24j,\n", + " 5.52333607e-24+3.01878125e-24j, 4.98996187e-24+3.68740649e-24j,\n", + " 4.39579071e-24+4.25669783e-24j, 3.75727140e-24+4.72601544e-24j,\n", + " 3.08943971e-24+5.09674494e-24j, 2.40583938e-24+5.37190812e-24j,\n", + " 1.71849761e-24+5.55581538e-24j, 1.03794241e-24+5.65375986e-24j,\n", + " 3.73251090e-25+5.67175169e-24j, -2.67878810e-25+5.61628988e-24j,\n", + " -8.79043246e-25+5.49416913e-24j, -1.45503576e-24+5.31231808e-24j,\n", + " -1.99174637e-24+5.07766599e-24j, -2.48605879e-24+4.79703433e-24j,\n", + " -2.93574855e-24+4.47705048e-24j, -3.33938409e-24+4.12408039e-24j,\n", + " -3.69623071e-24+3.74417907e-24j, -4.00613707e-24+3.34308419e-24j,\n", + " -4.26950725e-24+2.92614408e-24j, -4.48720710e-24+2.49830273e-24j,\n", + " -4.66047845e-24+2.06410595e-24j, -4.79087490e-24+1.62770194e-24j,\n", + " -4.88020403e-24+1.19284691e-24j, -4.93047551e-24+7.62914998e-25j,\n", + " -4.94385501e-24+3.40911180e-25j, -4.92262330e-24-7.05133132e-26j,\n", + " -4.86914025e-24-4.69043949e-25j, -4.78581342e-24-8.52684652e-25j,\n", + " -4.67507058e-24-1.21973886e-24j, -4.53933617e-24-1.56879026e-24j,\n", + " -4.38101091e-24-1.89868344e-24j, -4.20245464e-24-2.20850478e-24j,\n", + " -4.00597173e-24-2.49756373e-24j, -3.79379904e-24-2.76537454e-24j,\n", + " -3.56809594e-24-3.01163874e-24j, -3.33093631e-24-3.23622822e-24j,\n", + " -3.08430221e-24-3.43916919e-24j, -2.83007907e-24-3.62062681e-24j,\n", + " -2.57005218e-24-3.78089076e-24j, -2.30590426e-24-3.92036161e-24j,\n", + " -2.03921417e-24-4.03953792e-24j, -1.77145636e-24-4.13900430e-24j,\n", + " -1.50400111e-24-4.21942014e-24j, -1.23811546e-24-4.28150914e-24j,\n", + " -9.74964610e-25-4.32604964e-24j, -7.15613850e-25-4.35386555e-24j,\n", + " -4.61030861e-25-4.36581804e-24j, -2.12088349e-25-4.36279788e-24j,\n", + " 3.04330483e-26-4.34571832e-24j, 2.65841630e-25-4.31550864e-24j,\n", + " 4.93531321e-25-4.27310817e-24j, 7.12978219e-25-4.21946092e-24j,\n", + " 9.23737033e-25-4.15551057e-24j, 1.12543744e-24-4.08219605e-24j,\n", + " 1.31778040e-24-4.00044743e-24j, 1.50053438e-24-3.91118229e-24j,\n", + " 1.67353167e-24-3.81530242e-24j, 1.83666457e-24-3.71369081e-24j,\n", + " 1.98988165e-24-3.60720909e-24j, 2.13318406e-24-3.49669507e-24j,\n", + " 2.26662174e-24-3.38296072e-24j, 2.39028983e-24-3.26679023e-24j,\n", + " 2.50432496e-24-3.14893836e-24j, 2.60890165e-24-3.03012894e-24j,\n", + " 2.70422875e-24-2.91105352e-24j, 2.79054583e-24-2.79237009e-24j,\n", + " 0.00000000e+00+0.00000000e+00j]),\n", + " 'cross': array([ 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " 0.00000000e+00-0.00000000e+00j, 0.00000000e+00-0.00000000e+00j,\n", + " -2.52352178e-23-2.56718776e-24j, 6.91561530e-25-2.37603748e-23j,\n", + " 2.17522569e-23-5.07687824e-24j, 1.26020829e-23+1.68523493e-23j,\n", + " -7.49619138e-24+1.84033319e-23j, -1.81563552e-23+4.90425540e-24j,\n", + " -1.50737201e-23-9.53850497e-24j, -4.31349940e-24-1.63959850e-23j,\n", + " 6.65112266e-24-1.47108462e-23j, 1.33463820e-23-7.68701534e-24j,\n", + " 1.46998036e-23+7.43120278e-25j, 1.17886683e-23+7.71470755e-24j,\n", + " 6.48787687e-24+1.18463413e-23j, 5.88067708e-25+1.29544712e-23j,\n", + " -4.62059685e-24+1.15803484e-23j, -8.42095612e-24+8.55466207e-24j,\n", + " -1.05685380e-23+4.71362126e-24j, -1.11442720e-23+7.51566718e-25j,\n", + " -1.04158378e-23-2.83225135e-24j, -8.73023512e-24-5.73083120e-24j,\n", + " -6.44101619e-24-7.79900387e-24j, -3.86514993e-24-9.01370641e-24j,\n", + " -1.26196878e-24-9.43518656e-24j, 1.17301587e-24-9.17397270e-24j,\n", + " 3.30524050e-24-8.36517746e-24j, 5.05338441e-24-7.14993964e-24j,\n", + " 6.37967271e-24-5.66299858e-24j, 7.27995513e-24-4.02513745e-24j,\n", + " 7.77456114e-24-2.33926550e-24j, 7.90041593e-24-6.89075310e-25j,\n", + " 7.70457602e-24+8.60582197e-25j, 7.23915040e-24+2.26225975e-24j,\n", + " 6.55747116e-24+3.48389188e-24j, 5.71133279e-24+4.50652513e-24j,\n", + " 4.74910987e-24+5.32202523e-24j, 3.71457322e-24+5.93090311e-24j,\n", + " 2.64624431e-24+6.34034151e-24j, 1.57715211e-24+6.56246222e-24j,\n", + " 5.34880217e-25+6.61284533e-24j, -4.58185489e-25+6.50929429e-24j,\n", + " -1.38447886e-24+6.27082898e-24j, -2.23079891e-24+5.91688380e-24j,\n", + " -2.98781857e-24+5.46668497e-24j, -3.64958593e-24+4.93878142e-24j,\n", + " -4.21303824e-24+4.35070449e-24j, -4.67754221e-24+3.71873426e-24j,\n", + " -5.04446925e-24+3.05775231e-24j, -5.31681017e-24+2.38116345e-24j,\n", + " -5.49883115e-24+1.70087153e-24j, -5.59577105e-24+1.02729657e-24j,\n", + " -5.61357834e-24+3.69422772e-25j, -5.55868539e-24-2.65131263e-25j,\n", + " -5.43781719e-24-8.70027180e-25j, -5.25783133e-24-1.44011192e-24j,\n", + " -5.02558599e-24-1.97131766e-24j, -4.74783268e-24-2.46056008e-24j,\n", + " -4.43113080e-24-2.90563752e-24j, -4.08178101e-24-3.30513309e-24j,\n", + " -3.70577622e-24-3.65831965e-24j, -3.30879524e-24-3.96504740e-24j,\n", + " -2.89613156e-24-4.22571627e-24j, -2.47267843e-24-4.44118325e-24j,\n", + " -2.04293508e-24-4.61267740e-24j, -1.61100712e-24-4.74173642e-24j,\n", + " -1.18061226e-24-4.83014933e-24j, -7.55090022e-25-4.87990519e-24j,\n", + " -3.37414563e-25-4.89314747e-24j, 6.97900806e-26-4.87213352e-24j,\n", + " 4.64233115e-25-4.81919903e-24j, 8.43938937e-25-4.73672685e-24j,\n", + " 1.20722839e-24-4.62711987e-24j, 1.55269968e-24-4.49277764e-24j,\n", + " 1.87920925e-24-4.33607628e-24j, 2.18585285e-24-4.15935140e-24j,\n", + " 2.47194701e-24-3.96488376e-24j, 2.73701097e-24-3.75488725e-24j,\n", + " 2.98074932e-24-3.53149912e-24j, 3.20303526e-24-3.29677195e-24j,\n", + " 3.40389473e-24-3.05266750e-24j, 3.58349119e-24-2.80105185e-24j,\n", + " 3.74211137e-24-2.54369197e-24j, 3.88015171e-24-2.28225333e-24j,\n", + " 3.99810567e-24-2.01829860e-24j, 4.09655185e-24-1.75328709e-24j,\n", + " 4.17614289e-24-1.48857505e-24j, 4.23759507e-24-1.22541650e-24j,\n", + " 4.28167873e-24-9.64964708e-25j, 4.30920934e-24-7.08274026e-25j,\n", + " 4.32103924e-24-4.56302214e-25j, 4.31805005e-24-2.09913026e-25j,\n", + " 4.30114567e-24+3.01209062e-26j, 4.27124584e-24+2.63114977e-25j,\n", + " 4.22928026e-24+4.88469328e-25j, 4.17618325e-24+7.05665429e-25j,\n", + " 4.11288882e-24+9.14262557e-25j, 4.04032626e-24+1.11389419e-24j,\n", + " 3.95941611e-24+1.30426434e-24j, 3.87106654e-24+1.48514388e-24j,\n", + " 3.77617008e-24+1.65636679e-24j, 3.67560067e-24+1.81782649e-24j,\n", + " 3.57021109e-24+1.96947207e-24j, 3.46083058e-24+2.11130467e-24j,\n", + " 3.34826277e-24+2.24337372e-24j, 3.23328380e-24+2.36577339e-24j,\n", + " 3.11664070e-24+2.47863890e-24j, 2.99904987e-24+2.58214298e-24j,\n", + " 2.88119577e-24+2.67649233e-24j, 2.76372964e-24+2.76192409e-24j,\n", + " 0.00000000e+00-0.00000000e+00j])}]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ifos = bilby.gw.detector.InterferometerList(ifos_list) \n", + "ifos = bilby.gw.detector.InterferometerList(ifos_list)\n", + "ifos.set_strain_data_from_power_spectral_densities(\n", + " sampling_frequency=sampling_frequency, duration=duration,\n", + " start_time=parameters['geocent_time']--duration/2.0)\n", + "ifos.inject_signal(waveform_generator=waveform_generator,\n", + " parameters=parameters)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "# Use Bilby to generate BBH waveform\n", + "def generate_bbh_waveform(parameters,ifos_list):\n", + " \n", + " signal_array = np.zeros((3,256))\n", + " for k in range(len(ifos_list)):\n", + " \n", + " signal_freq = ifos[k].get_detector_response(freq_signal, parameters) \n", + " signal_time = Nt*np.fft.irfft(signal_freq)\n", + " signal_array[k] = signal_time \n", + " return signal_array" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "signal = generate_bbh_waveform(parameters,ifos_list)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'waveform')" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "times = np.linspace(-parameters['geocent_time'],1.0-parameters['geocent_time'], 256)\n", + "plt.plot(times,signal[0])\n", + "plt.title('signal_L1')\n", + "plt.xlabel('times')\n", + "plt.ylabel('waveform')" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "def whiten_signal(signal,ifo):\n", + " \n", + " signal_freq = np.fft.rfft(signal)/Nt\n", + " whitened_signal_freq_domain = signal_freq/ifo.amplitude_spectral_density_array\n", + " whitened_signal = np.sqrt(2.0*Nt)*np.fft.irfft(whitened_signal_freq_domain)\n", + " \n", + " return whitened_signal" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "def add_Gaussian_white_noise(signal):\n", + " \n", + " \n", + " noisy_signal = signal + 1.0*np.random.randn(256)\n", + " \n", + " return noisy_signal" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "signal_freq = np.fft.rfft(signal)/Nt" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "whitened_signal = np.zeros((3,256))\n", + "whitened_noisy_signal = np.zeros((3,256))\n", + "for i in range(len(ifos)):\n", + " \n", + " whitened_signal[i] = whiten_signal(signal[i],ifos[i])\n", + " whitened_noisy_signal[i] = add_Gaussian_white_noise(whitened_signal[i])" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'waveform')" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "times = np.linspace(-parameters['geocent_time'],1.0-parameters['geocent_time'], 256)\n", + "plt.plot(times,whitened_noisy_signal[0])\n", + "plt.title('whitened_noisy_signal_L1')\n", + "plt.xlabel('times')\n", + "plt.ylabel('waveform')" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "import h5py\n", + "\n", + "f1 = h5py.File('data_0.h5py','r')\n", + "name_list=[]\n", + "#shape_list=[]\n", + "#type_list=[]\n", + "data_set_list=[]\n", + "\n", + "for name in f1:\n", + " name_list.append(name)\n", + " #shape_list.append(f2[f'{name}'].shape)\n", + " #type_list.append(f2[f'{name}'].dtype)\n", + " data_set_list.append(f1[f'{name}'])\n", + " #print(y)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "x_data_list = []\n", + "x_data_list=[parameters['mass_1'],parameters['mass_2'],parameters['luminosity_distance'],\n", + " parameters['geocent_time'],parameters['phase'],parameters['theta_jn'],\n", + " parameters['psi'],parameters['ra'],parameters['dec']]\n", + "x_data=np.array(x_data_list)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "with h5py.File('data_20201125','w') as f2:\n", + " \n", + " for i in range(len(name_list)):\n", + " d = f2.create_dataset(name_list[i],data=data_set_list[i])\n", + " x_data_o = f2['x_data'] # load the data\n", + " y_data_noisy_o = f2['y_data_noisy'] \n", + " y_data_noisefree_o = f2['y_data_noisefree']\n", + " x_data_o = x_data # assign new values to data \n", + " y_data_noisy_o = whitened_noisy_signal\n", + " y_data_noisefree_o = whitened_signal" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} -- GitLab