From c748742e006979096ac6cf987a8fb37b752d5bf8 Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 15:48:40 -0700 Subject: [PATCH 1/9] Add example spectrum --- misc/gen_example_spectrum.py | 14 + sncosmo/data/examples/example_spectrum.dat | 601 +++++++++++++++++++++ 2 files changed, 615 insertions(+) create mode 100755 misc/gen_example_spectrum.py create mode 100644 sncosmo/data/examples/example_spectrum.dat diff --git a/misc/gen_example_spectrum.py b/misc/gen_example_spectrum.py new file mode 100755 index 00000000..90e1a44e --- /dev/null +++ b/misc/gen_example_spectrum.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +import numpy as np +import sncosmo + +wave = np.arange(3000, 9000, 10) +model = sncosmo.Model(source='hsiao-subsampled') +model.set(z=0.1, amplitude=1e-5, t0=0.) +sample_time = model['t0'] + 2. +flux = model.flux(time=sample_time, wave=wave) +fluxerr = 0.1 * flux +flux = flux + np.random.normal(scale=fluxerr) + +np.savetxt('example_spectrum.dat', np.array([wave, flux, fluxerr]).T, + header="wave flux fluxerr") \ No newline at end of file diff --git a/sncosmo/data/examples/example_spectrum.dat b/sncosmo/data/examples/example_spectrum.dat new file mode 100644 index 00000000..4e724141 --- /dev/null +++ b/sncosmo/data/examples/example_spectrum.dat @@ -0,0 +1,601 @@ +# wave flux fluxerr +3.000000000000000000e+03 1.093260655088280773e-14 1.250426308430417815e-15 +3.010000000000000000e+03 1.342797060155329734e-14 1.306661694472589989e-15 +3.020000000000000000e+03 1.112443105885883520e-14 1.348923470511236498e-15 +3.030000000000000000e+03 1.454348662326869624e-14 1.374466980476627766e-15 +3.040000000000000000e+03 1.236287623155605666e-14 1.385181152610841019e-15 +3.050000000000000000e+03 1.597829803420650659e-14 1.387588499467763244e-15 +3.060000000000000000e+03 1.337778313844877331e-14 1.388412993788750097e-15 +3.070000000000000000e+03 1.363784797016784445e-14 1.394378608315160782e-15 +3.080000000000000000e+03 1.400372203722568104e-14 1.412209315788350168e-15 +3.090000000000000000e+03 1.455960085498613814e-14 1.447919241643274778e-15 +3.100000000000000000e+03 1.269060238214616347e-14 1.504683122089276668e-15 +3.110000000000000000e+03 1.678802893570370432e-14 1.584965846029299551e-15 +3.120000000000000000e+03 1.794351789137730038e-14 1.691232302366290099e-15 +3.130000000000000000e+03 2.087296399998729612e-14 1.825947380003180389e-15 +3.140000000000000000e+03 1.904453334582060826e-14 1.991284414884854194e-15 +3.150000000000000000e+03 2.359953215704485834e-14 2.182711024920776410e-15 +3.160000000000000000e+03 2.567724796431202814e-14 2.388989109984997006e-15 +3.170000000000000000e+03 2.552066189205818276e-14 2.598589016993502061e-15 +3.180000000000000000e+03 2.680828080564182127e-14 2.799981092862289886e-15 +3.190000000000000000e+03 2.695361443889183085e-14 2.981635684507326050e-15 +3.200000000000000000e+03 3.190588496273256603e-14 3.133168926489801473e-15 +3.210000000000000000e+03 3.005682330061234634e-14 3.248780103951666462e-15 +3.220000000000000000e+03 3.391761847227029454e-14 3.323814289680067484e-15 +3.230000000000000000e+03 3.658643814457581539e-14 3.353616556462148245e-15 +3.240000000000000000e+03 3.756982972292109217e-14 3.333531977085050874e-15 +3.250000000000000000e+03 3.619971816633762015e-14 3.259453371137000927e-15 +3.260000000000000000e+03 2.826001320949835712e-14 3.139871734631054056e-15 +3.270000000000000000e+03 2.638681254300432751e-14 2.995876240005093248e-15 +3.280000000000000000e+03 2.669489041364573577e-14 2.849103806498082944e-15 +3.290000000000000000e+03 2.882030745874173726e-14 2.721191353348982855e-15 +3.300000000000000000e+03 2.702401603081178441e-14 2.633775799796768467e-15 +3.310000000000000000e+03 2.595071852731433965e-14 2.602776837212758626e-15 +3.320000000000000000e+03 2.713947462688838545e-14 2.621245245497713460e-15 +3.330000000000000000e+03 2.925576403112187419e-14 2.676514576684752628e-15 +3.340000000000000000e+03 3.064323025144185464e-14 2.755918382807004073e-15 +3.350000000000000000e+03 2.956332236673025566e-14 2.846790215897579170e-15 +3.360000000000000000e+03 3.135741293303623287e-14 2.936855134849039483e-15 +3.370000000000000000e+03 2.460720098009815737e-14 3.022842856320956566e-15 +3.380000000000000000e+03 3.149141659142896697e-14 3.110487754739928527e-15 +3.390000000000000000e+03 3.243909881049375269e-14 3.205915711391979995e-15 +3.400000000000000000e+03 3.433318708221660863e-14 3.315252607563147433e-15 +3.410000000000000000e+03 3.320441899351789785e-14 3.444624324539446794e-15 +3.420000000000000000e+03 3.244482921751628410e-14 3.596008583799671702e-15 +3.430000000000000000e+03 3.870952792617011944e-14 3.754790467593629048e-15 +3.440000000000000000e+03 4.024089323752848381e-14 3.902206898363888011e-15 +3.450000000000000000e+03 3.956690409822158658e-14 4.019494798553011459e-15 +3.460000000000000000e+03 5.026382320014109701e-14 4.087891090603570150e-15 +3.470000000000000000e+03 3.812992445718583824e-14 4.089381658695132453e-15 +3.480000000000000000e+03 4.506348873901885183e-14 4.023178506958551810e-15 +3.490000000000000000e+03 4.324265169645959185e-14 3.905719759475941491e-15 +3.500000000000000000e+03 3.501596432438188837e-14 3.754192502066422634e-15 +3.510000000000000000e+03 4.219873537424047279e-14 3.585783820549120321e-15 +3.520000000000000000e+03 3.917668380416698490e-14 3.417680800743170678e-15 +3.530000000000000000e+03 2.867716367236208155e-14 3.264326686614127879e-15 +3.540000000000000000e+03 3.532675336308905642e-14 3.129189354713285732e-15 +3.550000000000000000e+03 3.088149303019524728e-14 3.012992839738377789e-15 +3.560000000000000000e+03 2.329243027103104166e-14 2.916461176387130500e-15 +3.570000000000000000e+03 2.884927320072741467e-14 2.840318399357269528e-15 +3.580000000000000000e+03 2.793117477247279077e-14 2.785295985166163345e-15 +3.590000000000000000e+03 2.794413444023401000e-14 2.752296572182636525e-15 +3.600000000000000000e+03 2.691878933073082190e-14 2.742393960626988279e-15 +3.610000000000000000e+03 2.528066267525698760e-14 2.756669392539145246e-15 +3.620000000000000000e+03 2.731779897936721608e-14 2.796204109959040772e-15 +3.630000000000000000e+03 2.863305363563268246e-14 2.862079354926595579e-15 +3.640000000000000000e+03 3.077056338771732584e-14 2.953942894473055810e-15 +3.650000000000000000e+03 2.690803426043529301e-14 3.065708595594897492e-15 +3.660000000000000000e+03 3.334977838624617859e-14 3.189856850279911815e-15 +3.670000000000000000e+03 3.242673944847878482e-14 3.318868050515890365e-15 +3.680000000000000000e+03 3.482667779674707855e-14 3.445222588290627094e-15 +3.690000000000000000e+03 3.532400262442902171e-14 3.561592661341347402e-15 +3.700000000000000000e+03 3.687010808297600403e-14 3.665061999642463068e-15 +3.710000000000000000e+03 3.831584203486440057e-14 3.757125865405565550e-15 +3.720000000000000000e+03 4.643153566382258834e-14 3.839471326591681302e-15 +3.730000000000000000e+03 3.554226697588292679e-14 3.913785451161847822e-15 +3.740000000000000000e+03 4.417127875591812404e-14 3.981755307077086044e-15 +3.750000000000000000e+03 3.889771601158805554e-14 4.046025756132187342e-15 +3.760000000000000000e+03 4.090638469281548110e-14 4.113072835456960182e-15 +3.770000000000000000e+03 4.425691866442550490e-14 4.190330376014976371e-15 +3.780000000000000000e+03 4.856236052483270826e-14 4.285232208769804564e-15 +3.790000000000000000e+03 5.309623609558732810e-14 4.405212164685014202e-15 +3.800000000000000000e+03 4.884088282403400633e-14 4.557388186894656163e-15 +3.810000000000000000e+03 4.998609585636369459e-14 4.741612798454106004e-15 +3.820000000000000000e+03 4.828109893251733694e-14 4.950473102340033986e-15 +3.830000000000000000e+03 5.353638745482417816e-14 5.176240313699607582e-15 +3.840000000000000000e+03 4.504989684232296897e-14 5.411185647680007676e-15 +3.850000000000000000e+03 4.938173444705611176e-14 5.647580319428370186e-15 +3.860000000000000000e+03 5.657956781253537773e-14 5.877638279071094301e-15 +3.870000000000000000e+03 5.470618763564577143e-14 6.093344416651405877e-15 +3.880000000000000000e+03 5.645247993230121635e-14 6.286626357191742763e-15 +3.890000000000000000e+03 6.277704422323698405e-14 6.449411725714546754e-15 +3.900000000000000000e+03 6.675784167714972071e-14 6.573628147242262010e-15 +3.910000000000000000e+03 6.301454174371029119e-14 6.651715346484368001e-15 +3.920000000000000000e+03 7.517643212015023058e-14 6.687891340952419036e-15 +3.930000000000000000e+03 7.326581916697798742e-14 6.698152440960040312e-15 +3.940000000000000000e+03 7.906982675364309121e-14 6.699007056507882873e-15 +3.950000000000000000e+03 6.809024805507754537e-14 6.706963597596623795e-15 +3.960000000000000000e+03 6.401948613356454452e-14 6.738530474226922011e-15 +3.970000000000000000e+03 7.373378080863319856e-14 6.801961935843686185e-15 +3.980000000000000000e+03 6.652696017903499884e-14 6.872495589668796311e-15 +3.990000000000000000e+03 7.172856297471442131e-14 6.917114882368377383e-15 +4.000000000000000000e+03 6.122867040543222967e-14 6.902803260608548084e-15 +4.010000000000000000e+03 6.412621048996471532e-14 6.796544171055430252e-15 +4.020000000000000000e+03 5.445778761510131871e-14 6.566865330150889572e-15 +4.030000000000000000e+03 6.001126682042752198e-14 6.217812659178679313e-15 +4.040000000000000000e+03 5.838885063817656661e-14 5.788950284264461628e-15 +4.050000000000000000e+03 5.362410105198226350e-14 5.321386601309628316e-15 +4.060000000000000000e+03 4.654138655322174675e-14 4.856230006215553033e-15 +4.070000000000000000e+03 3.443429080768945198e-14 4.434588894883674122e-15 +4.080000000000000000e+03 3.960087455980115349e-14 4.089123377827442214e-15 +4.090000000000000000e+03 4.164371726586521501e-14 3.818700424008633994e-15 +4.100000000000000000e+03 3.360884022109927965e-14 3.613738717001103913e-15 +4.110000000000000000e+03 3.036032071447209363e-14 3.464656940378707997e-15 +4.120000000000000000e+03 3.486152651778569794e-14 3.361873777715297938e-15 +4.130000000000000000e+03 3.120782415847699435e-14 3.296225056366372191e-15 +4.140000000000000000e+03 3.933032878322091482e-14 3.268140910664987384e-15 +4.150000000000000000e+03 3.745494624084400547e-14 3.287645781921781578e-15 +4.160000000000000000e+03 3.525718893409744363e-14 3.365181255229023831e-15 +4.170000000000000000e+03 3.555580330033018901e-14 3.511188915678998973e-15 +4.180000000000000000e+03 3.488036278383284138e-14 3.736110348363960678e-15 +4.190000000000000000e+03 4.466185657750724940e-14 4.046471449757065743e-15 +4.200000000000000000e+03 4.552366913322664797e-14 4.433135361854968687e-15 +4.210000000000000000e+03 4.672221997907329330e-14 4.883049538035207435e-15 +4.220000000000000000e+03 5.838094337636791103e-14 5.383161431675319909e-15 +4.230000000000000000e+03 4.906442130213505243e-14 5.920418496152869276e-15 +4.240000000000000000e+03 6.047066032230401767e-14 6.481451532899241475e-15 +4.250000000000000000e+03 7.482776947578398571e-14 7.045608348585698633e-15 +4.260000000000000000e+03 6.892863917372104422e-14 7.584953755123274934e-15 +4.270000000000000000e+03 9.276475802453220059e-14 8.071235912476902278e-15 +4.280000000000000000e+03 8.348738621037448317e-14 8.476202980611540173e-15 +4.290000000000000000e+03 7.531991009229507721e-14 8.771603119492076342e-15 +4.300000000000000000e+03 9.430966404836808015e-14 8.936674536368171260e-15 +4.310000000000000000e+03 1.108263055435418455e-13 8.980615627628215117e-15 +4.320000000000000000e+03 9.310753882448541746e-14 8.920114836945306167e-15 +4.330000000000000000e+03 9.028303827157646453e-14 8.771860607992536353e-15 +4.340000000000000000e+03 8.205735241406009161e-14 8.552541384442981843e-15 +4.350000000000000000e+03 9.270012476691005077e-14 8.279231044995914532e-15 +4.360000000000000000e+03 8.096528058259923552e-14 7.977868473952317660e-15 +4.370000000000000000e+03 8.872500796513460139e-14 7.683257561214900009e-15 +4.380000000000000000e+03 8.086019006907965272e-14 7.430587631712525070e-15 +4.390000000000000000e+03 6.461011638281760590e-14 7.255048010374075266e-15 +4.400000000000000000e+03 6.975695529254285356e-14 7.191828022128440909e-15 +4.410000000000000000e+03 7.031096078451917547e-14 7.263349319058201157e-15 +4.420000000000000000e+03 8.364689762708149913e-14 7.440962861860856217e-15 +4.430000000000000000e+03 7.705781750651472293e-14 7.683251938387626692e-15 +4.440000000000000000e+03 7.476909302362937441e-14 7.948799836489737922e-15 +4.450000000000000000e+03 7.011401140190238631e-14 8.196189844018418401e-15 +4.460000000000000000e+03 9.759471547792812980e-14 8.385058048747165205e-15 +4.470000000000000000e+03 9.197004175909095804e-14 8.499254936662588360e-15 +4.480000000000000000e+03 8.805160915864362147e-14 8.546845391964333541e-15 +4.490000000000000000e+03 8.577548715677304133e-14 8.536947098774348131e-15 +4.500000000000000000e+03 9.174815258000223567e-14 8.478677741214593717e-15 +4.510000000000000000e+03 9.891242354393484512e-14 8.381155003407023994e-15 +4.520000000000000000e+03 7.889751609027970572e-14 8.253263107508044173e-15 +4.530000000000000000e+03 8.601569373099087217e-14 8.102952427811863945e-15 +4.540000000000000000e+03 7.315923019308659396e-14 7.937939876647142937e-15 +4.550000000000000000e+03 7.465972838235669582e-14 7.765942366342537622e-15 +4.560000000000000000e+03 8.728705721047850817e-14 7.594676809226709203e-15 +4.570000000000000000e+03 8.000978577287503550e-14 7.431575449176451290e-15 +4.580000000000000000e+03 7.581503793071255066e-14 7.277523155675601184e-15 +4.590000000000000000e+03 5.521437266661467188e-14 7.126857423815054082e-15 +4.600000000000000000e+03 8.264083001088148803e-14 6.973631080233865193e-15 +4.610000000000000000e+03 5.370235979516233776e-14 6.811896951571054229e-15 +4.620000000000000000e+03 7.162674111998225358e-14 6.635707864465645633e-15 +4.630000000000000000e+03 7.051976632045681037e-14 6.440656570211172389e-15 +4.640000000000000000e+03 5.687612172843070542e-14 6.228495518719112503e-15 +4.650000000000000000e+03 7.478836331663516161e-14 6.002517084555446996e-15 +4.660000000000000000e+03 6.307939303868032081e-14 5.766013642286149793e-15 +4.670000000000000000e+03 4.664086886461760868e-14 5.522277566477200339e-15 +4.680000000000000000e+03 4.564619425610579793e-14 5.274816991260416455e-15 +4.690000000000000000e+03 5.473681335652128895e-14 5.032102520782018526e-15 +4.700000000000000000e+03 5.357270311575238006e-14 4.807567229202605046e-15 +4.710000000000000000e+03 4.874973899407062817e-14 4.614859950248681518e-15 +4.720000000000000000e+03 3.892344844632861189e-14 4.467629517646684811e-15 +4.730000000000000000e+03 4.579192250478777112e-14 4.379524765123079407e-15 +4.740000000000000000e+03 4.246133998483106448e-14 4.359302481532920825e-15 +4.750000000000000000e+03 3.947959167858794878e-14 4.396151276245644522e-15 +4.760000000000000000e+03 4.213783985260185893e-14 4.474367713759278570e-15 +4.770000000000000000e+03 4.959617673345010231e-14 4.578248358571854987e-15 +4.780000000000000000e+03 4.869512180994764764e-14 4.692089775181404213e-15 +4.790000000000000000e+03 4.997543583438287505e-14 4.800538098796930371e-15 +4.800000000000000000e+03 5.138759772086644011e-14 4.896279590979997990e-15 +4.810000000000000000e+03 5.301585967770457733e-14 4.980040639644717800e-15 +4.820000000000000000e+03 5.361515763702328438e-14 5.052897203416160806e-15 +4.830000000000000000e+03 5.804017720305422101e-14 5.115925240919423258e-15 +4.840000000000000000e+03 5.944601313913993651e-14 5.170200710779590359e-15 +4.850000000000000000e+03 4.874848026410132534e-14 5.217908123400246055e-15 +4.860000000000000000e+03 5.402320801235215727e-14 5.265666196298939278e-15 +4.870000000000000000e+03 5.456693320485246447e-14 5.321202198771712179e-15 +4.880000000000000000e+03 5.946574518364274238e-14 5.392243400114610064e-15 +4.890000000000000000e+03 6.518171412160179816e-14 5.486517069623676661e-15 +4.900000000000000000e+03 5.846540951822662379e-14 5.611259126750058484e-15 +4.910000000000000000e+03 5.728467179543052134e-14 5.762404444512221966e-15 +4.920000000000000000e+03 6.615047036791112452e-14 5.924586849495977116e-15 +4.930000000000000000e+03 6.727365113046485117e-14 6.081948818442183880e-15 +4.940000000000000000e+03 6.576061940908939197e-14 6.218632828091756634e-15 +4.950000000000000000e+03 5.728503889055098137e-14 6.318781355185578986e-15 +4.960000000000000000e+03 6.381095110782787688e-14 6.370962790011492895e-15 +4.970000000000000000e+03 6.100605420651458435e-14 6.381449177045079830e-15 +4.980000000000000000e+03 4.379830292107614159e-14 6.360938474308866196e-15 +4.990000000000000000e+03 6.199777271844868092e-14 6.320128639825378399e-15 +5.000000000000000000e+03 6.762384539757091602e-14 6.269717631617146789e-15 +5.010000000000000000e+03 6.230092321750152414e-14 6.220041511142068365e-15 +5.020000000000000000e+03 5.985074996149382737e-14 6.173112718871740509e-15 +5.030000000000000000e+03 5.710561585459887722e-14 6.122620074291438891e-15 +5.040000000000000000e+03 5.358601108422838341e-14 6.061890500321826345e-15 +5.050000000000000000e+03 5.976340643251489765e-14 5.984250919883558604e-15 +5.060000000000000000e+03 5.779188650307934405e-14 5.883028255897294556e-15 +5.070000000000000000e+03 6.539305466853396217e-14 5.754172002463288991e-15 +5.080000000000000000e+03 5.198327083306155908e-14 5.604121938400172417e-15 +5.090000000000000000e+03 4.906091471762980809e-14 5.441940413706179918e-15 +5.100000000000000000e+03 5.993605651814619398e-14 5.276689778379544214e-15 +5.110000000000000000e+03 5.114233158494718361e-14 5.117432382418498023e-15 +5.120000000000000000e+03 5.148180199680357596e-14 4.972975264583792120e-15 +5.130000000000000000e+03 4.263783571613806539e-14 4.846253305174243209e-15 +5.140000000000000000e+03 4.480446356484533522e-14 4.734329226026711835e-15 +5.150000000000000000e+03 4.885681072103371649e-14 4.634010437740619198e-15 +5.160000000000000000e+03 4.257211309740140075e-14 4.542104350915343899e-15 +5.170000000000000000e+03 4.134067120534713536e-14 4.455418376150281892e-15 +5.180000000000000000e+03 4.099036855548151259e-14 4.371478360242834351e-15 +5.190000000000000000e+03 4.043266506349060936e-14 4.290683894782417003e-15 +5.200000000000000000e+03 3.243903461047789868e-14 4.214153007556444482e-15 +5.210000000000000000e+03 5.205410286476815241e-14 4.143003726352343255e-15 +5.220000000000000000e+03 4.151169311222747587e-14 4.078354078957525591e-15 +5.230000000000000000e+03 4.228605333441780200e-14 4.021179168521815621e-15 +5.240000000000000000e+03 3.911968732140512628e-14 3.969166831530279266e-15 +5.250000000000000000e+03 4.167793848020823802e-14 3.916717637803215553e-15 +5.260000000000000000e+03 4.301593598438049939e-14 3.858089232523350364e-15 +5.270000000000000000e+03 3.884168369528266052e-14 3.787539260873387494e-15 +5.280000000000000000e+03 3.926922343157469467e-14 3.699325368036035470e-15 +5.290000000000000000e+03 3.517314229441358588e-14 3.590720565941170220e-15 +5.300000000000000000e+03 3.833594933733612813e-14 3.471059333507314402e-15 +5.310000000000000000e+03 3.217791166602621139e-14 3.352691516400158073e-15 +5.320000000000000000e+03 3.885498648999068173e-14 3.247966960285384983e-15 +5.330000000000000000e+03 3.573181953457536344e-14 3.169235510828683611e-15 +5.340000000000000000e+03 3.323422779046275692e-14 3.128345548016196709e-15 +5.350000000000000000e+03 2.604459051078769078e-14 3.125611741204541301e-15 +5.360000000000000000e+03 2.644737969381834581e-14 3.149815049120818541e-15 +5.370000000000000000e+03 2.983102658489775231e-14 3.189234964812564923e-15 +5.380000000000000000e+03 3.273143999925777895e-14 3.232150981327334295e-15 +5.390000000000000000e+03 3.234223027906471400e-14 3.266842591712670645e-15 +5.400000000000000000e+03 3.250432424977117001e-14 3.284279903520421765e-15 +5.410000000000000000e+03 3.747230486073859649e-14 3.286195482319617939e-15 +5.420000000000000000e+03 3.012222336023607687e-14 3.277012508183587336e-15 +5.430000000000000000e+03 3.280546965450675706e-14 3.261154161185658523e-15 +5.440000000000000000e+03 3.167058423099512241e-14 3.243043621399161642e-15 +5.450000000000000000e+03 3.507440871447588215e-14 3.227057656734223581e-15 +5.460000000000000000e+03 2.944566387404492197e-14 3.216505555347446577e-15 +5.470000000000000000e+03 3.164693940618815150e-14 3.213629125641899943e-15 +5.480000000000000000e+03 3.063887535547714158e-14 3.220623763857454859e-15 +5.490000000000000000e+03 3.376338178787067318e-14 3.239684866233982110e-15 +5.500000000000000000e+03 3.016445457982863147e-14 3.273007829011350905e-15 +5.510000000000000000e+03 3.858754108144404822e-14 3.322143874329315264e-15 +5.520000000000000000e+03 3.367127390717914330e-14 3.386067527927137679e-15 +5.530000000000000000e+03 3.833696846207927692e-14 3.463109141443969003e-15 +5.540000000000000000e+03 3.961363833604532592e-14 3.551599066518952202e-15 +5.550000000000000000e+03 3.353118433241567816e-14 3.649867654791234974e-15 +5.560000000000000000e+03 3.846742150176691544e-14 3.756164677381690021e-15 +5.570000000000000000e+03 4.492630890666462147e-14 3.866886553490983869e-15 +5.580000000000000000e+03 4.305970177437176935e-14 3.976576350399581209e-15 +5.590000000000000000e+03 4.031462634604716549e-14 4.079696554869638603e-15 +5.600000000000000000e+03 4.424426841184533112e-14 4.170709653663348901e-15 +5.610000000000000000e+03 3.907432109253004186e-14 4.244078133542895485e-15 +5.620000000000000000e+03 4.420266861243388312e-14 4.295938602372468016e-15 +5.630000000000000000e+03 4.535265011480273177e-14 4.329124152424292298e-15 +5.640000000000000000e+03 4.062267935256841136e-14 4.348141997072606722e-15 +5.650000000000000000e+03 4.177153295547832189e-14 4.357499349691644158e-15 +5.660000000000000000e+03 4.941808986852090231e-14 4.361703423655646152e-15 +5.670000000000000000e+03 4.912722277695613235e-14 4.365021100568793047e-15 +5.680000000000000000e+03 4.003967395554919090e-14 4.366191631324150911e-15 +5.690000000000000000e+03 4.437279923314373739e-14 4.358426636103657346e-15 +5.700000000000000000e+03 4.469322067996347652e-14 4.334697403319199002e-15 +5.710000000000000000e+03 3.841821757644505607e-14 4.287975221382669626e-15 +5.720000000000000000e+03 4.707592818612280788e-14 4.211231378705952715e-15 +5.730000000000000000e+03 4.416422969317799738e-14 4.100352658539155795e-15 +5.740000000000000000e+03 4.745364387073866826e-14 3.962887823485234404e-15 +5.750000000000000000e+03 3.808214421470906811e-14 3.809301130985368115e-15 +5.760000000000000000e+03 3.828005852033786373e-14 3.650056838480729400e-15 +5.770000000000000000e+03 3.321456538595958509e-14 3.495619203412493097e-15 +5.780000000000000000e+03 3.146868450269313719e-14 3.356253349200906627e-15 +5.790000000000000000e+03 3.435372422766371592e-14 3.237644316784901041e-15 +5.800000000000000000e+03 3.084384722566636517e-14 3.140897064622084305e-15 +5.810000000000000000e+03 3.128208831173923454e-14 3.066917417149162217e-15 +5.820000000000000000e+03 3.039212226212052448e-14 3.016611198802811383e-15 +5.830000000000000000e+03 3.149465444484953335e-14 2.990884234019717879e-15 +5.840000000000000000e+03 2.959596861417451291e-14 2.989324037866294438e-15 +5.850000000000000000e+03 2.913495202615686952e-14 3.006244887927842284e-15 +5.860000000000000000e+03 3.716594188698705410e-14 3.034642752419385358e-15 +5.870000000000000000e+03 2.766667331355278159e-14 3.067513599555951149e-15 +5.880000000000000000e+03 2.784323267916578249e-14 3.097853397552561229e-15 +5.890000000000000000e+03 3.471552112131783426e-14 3.118790543544344791e-15 +5.900000000000000000e+03 3.198312344600509863e-14 3.126499299828748502e-15 +5.910000000000000000e+03 3.543187799176470527e-14 3.120199793865549126e-15 +5.920000000000000000e+03 2.914764760754055876e-14 3.099244582034623156e-15 +5.930000000000000000e+03 2.920122571591463904e-14 3.062986220715846297e-15 +5.940000000000000000e+03 3.160663887858093052e-14 3.010777266289093467e-15 +5.950000000000000000e+03 3.043209528420020872e-14 2.943584469796086539e-15 +5.960000000000000000e+03 2.960024518686823779e-14 2.868831360925916680e-15 +5.970000000000000000e+03 2.707897594605787551e-14 2.795555664029522807e-15 +5.980000000000000000e+03 2.950990323869241922e-14 2.732795103457838705e-15 +5.990000000000000000e+03 2.909331871151585246e-14 2.689587403561804078e-15 +6.000000000000000000e+03 2.514735788646263691e-14 2.674692503747791411e-15 +6.010000000000000000e+03 2.426370395771186269e-14 2.690481289697284540e-15 +6.020000000000000000e+03 2.699862583009653905e-14 2.732935593366876287e-15 +6.030000000000000000e+03 2.908468295160733109e-14 2.797759461768582788e-15 +6.040000000000000000e+03 2.900628426837208384e-14 2.880656941914435563e-15 +6.050000000000000000e+03 2.827699181895621639e-14 2.977332080816457848e-15 +6.060000000000000000e+03 3.110005992414686818e-14 3.083163360003056814e-15 +6.070000000000000000e+03 3.195509714843736539e-14 3.192226999068148938e-15 +6.080000000000000000e+03 3.341700954001040974e-14 3.298273652122033846e-15 +6.090000000000000000e+03 3.644582394691519525e-14 3.395053973275008400e-15 +6.100000000000000000e+03 3.428355206025894946e-14 3.476318616637371436e-15 +6.110000000000000000e+03 4.130498869875532197e-14 3.536039622232326316e-15 +6.120000000000000000e+03 4.169083783198984092e-14 3.573280906079851370e-15 +6.130000000000000000e+03 3.627681049850071719e-14 3.592198260196722773e-15 +6.140000000000000000e+03 3.438541517708433323e-14 3.597168862512612942e-15 +6.150000000000000000e+03 3.785137420195500205e-14 3.592569890957194296e-15 +6.160000000000000000e+03 3.323967362195750878e-14 3.582778523460142410e-15 +6.170000000000000000e+03 3.409555455742879307e-14 3.571231919165158662e-15 +6.180000000000000000e+03 2.619717031806390775e-14 3.557607162072053961e-15 +6.190000000000000000e+03 3.232329222962494741e-14 3.540641317394667782e-15 +6.200000000000000000e+03 4.096395278908184130e-14 3.519071450346840390e-15 +6.210000000000000000e+03 3.234848539421517297e-14 3.491634626142409288e-15 +6.220000000000000000e+03 3.265111265580029710e-14 3.457118074879576447e-15 +6.230000000000000000e+03 3.177215748672518083e-14 3.415462818996933749e-15 +6.240000000000000000e+03 3.266443386116332041e-14 3.367763673273450360e-15 +6.250000000000000000e+03 3.628067310719434179e-14 3.315165617372476087e-15 +6.260000000000000000e+03 3.619651903053763405e-14 3.258813630957348512e-15 +6.270000000000000000e+03 2.765141537989206018e-14 3.199852693691402848e-15 +6.280000000000000000e+03 2.957842962213984572e-14 3.139752133341610259e-15 +6.290000000000000000e+03 2.842397822309824841e-14 3.081278670089443900e-15 +6.300000000000000000e+03 3.646657711190053074e-14 3.027523372220004986e-15 +6.310000000000000000e+03 3.527551112200350728e-14 2.981577308018395523e-15 +6.320000000000000000e+03 2.845043291261716969e-14 2.946531545769717120e-15 +6.330000000000000000e+03 3.029947014251265930e-14 2.925364964399319659e-15 +6.340000000000000000e+03 2.937135652822076436e-14 2.918476087558307825e-15 +6.350000000000000000e+03 3.134022411467598990e-14 2.923683083623541897e-15 +6.360000000000000000e+03 3.128644463775847498e-14 2.938691931612124902e-15 +6.370000000000000000e+03 3.228889701612950789e-14 2.961208610541164207e-15 +6.380000000000000000e+03 2.734463348123720106e-14 2.988939099427765599e-15 +6.390000000000000000e+03 3.166358070333364724e-14 3.019692400852319962e-15 +6.400000000000000000e+03 3.013091245393788469e-14 3.051689611648330547e-15 +6.410000000000000000e+03 3.220545732598734048e-14 3.083254852212587672e-15 +6.420000000000000000e+03 2.836623873425564608e-14 3.112712242941881263e-15 +6.430000000000000000e+03 2.914671274053657940e-14 3.138385904232996114e-15 +6.440000000000000000e+03 2.818835900248514196e-14 3.158662411737924368e-15 +6.450000000000000000e+03 3.243868358428499672e-14 3.173364811978276860e-15 +6.460000000000000000e+03 3.336035193276594264e-14 3.183752622345291001e-15 +6.470000000000000000e+03 3.605777370565974874e-14 3.191147815485398929e-15 +6.480000000000000000e+03 3.283871281497726915e-14 3.196872364045041854e-15 +6.490000000000000000e+03 2.906572697335900171e-14 3.202248240670651914e-15 +6.500000000000000000e+03 3.054966940054935267e-14 3.208083629543919668e-15 +6.510000000000000000e+03 2.927108094394543632e-14 3.213131560987529140e-15 +6.520000000000000000e+03 3.749509814936450485e-14 3.215631276859422382e-15 +6.530000000000000000e+03 3.358969700247748674e-14 3.213822019017535135e-15 +6.540000000000000000e+03 3.372180809369561922e-14 3.205943029319809056e-15 +6.550000000000000000e+03 3.189311038517494845e-14 3.190206397390655677e-15 +6.560000000000000000e+03 3.125078045407578798e-14 3.164199711483444329e-15 +6.570000000000000000e+03 2.836110283000593261e-14 3.124886058480498589e-15 +6.580000000000000000e+03 2.924485404781482884e-14 3.069201373030628872e-15 +6.590000000000000000e+03 3.453623267329513691e-14 2.994081589782633362e-15 +6.600000000000000000e+03 2.828339308168973227e-14 2.896462643385313796e-15 +6.610000000000000000e+03 2.469134494411601203e-14 2.774750950170273458e-15 +6.620000000000000000e+03 2.276911136570181984e-14 2.633234853200314334e-15 +6.630000000000000000e+03 2.873866301552497205e-14 2.477673177221040351e-15 +6.640000000000000000e+03 2.132736346146965465e-14 2.313824746978056227e-15 +6.650000000000000000e+03 1.688094705930095529e-14 2.147448387216963917e-15 +6.660000000000000000e+03 2.104413410102517986e-14 1.984263352318754287e-15 +6.670000000000000000e+03 1.980143086656317071e-14 1.829078778278326808e-15 +6.680000000000000000e+03 1.317803434452527621e-14 1.685793682704473391e-15 +6.690000000000000000e+03 1.606733127929596578e-14 1.558267512841417649e-15 +6.700000000000000000e+03 1.227661219395114091e-14 1.450359715933338232e-15 +6.710000000000000000e+03 1.347438939491884923e-14 1.365929739224428776e-15 +6.720000000000000000e+03 1.381643285892839541e-14 1.308007897008590451e-15 +6.730000000000000000e+03 1.252622128104193696e-14 1.276307971778549228e-15 +6.740000000000000000e+03 1.246621469628858242e-14 1.269714613076739990e-15 +6.750000000000000000e+03 1.390748144719965883e-14 1.287112470445597029e-15 +6.760000000000000000e+03 1.303329933760573923e-14 1.327386193427553849e-15 +6.770000000000000000e+03 1.483895457688039139e-14 1.389352302434230265e-15 +6.780000000000000000e+03 1.694065744416575032e-14 1.470260347868530856e-15 +6.790000000000000000e+03 1.245582873411397246e-14 1.565792910124655620e-15 +6.800000000000000000e+03 1.717310014038979639e-14 1.671564440465960493e-15 +6.810000000000000000e+03 1.549526396085030148e-14 1.783189390155829810e-15 +6.820000000000000000e+03 2.317421547129164667e-14 1.896282210457637653e-15 +6.830000000000000000e+03 1.758955970520517350e-14 2.006873250204172600e-15 +6.840000000000000000e+03 2.407867181703508454e-14 2.112656448505866824e-15 +6.850000000000000000e+03 2.114552404836308499e-14 2.211741642042563250e-15 +6.860000000000000000e+03 2.283231114187110493e-14 2.302238667494109928e-15 +6.870000000000000000e+03 2.490873011028542994e-14 2.382257361540348995e-15 +6.880000000000000000e+03 2.590924243365989107e-14 2.449973409175411612e-15 +6.890000000000000000e+03 2.127397135279053570e-14 2.505077006622018144e-15 +6.900000000000000000e+03 2.682210415122318975e-14 2.548772861331483293e-15 +6.910000000000000000e+03 2.535211231727132901e-14 2.582331529069405261e-15 +6.920000000000000000e+03 2.315039360857564973e-14 2.607023565601377124e-15 +6.930000000000000000e+03 2.394961611836017389e-14 2.624119526692999846e-15 +6.940000000000000000e+03 2.378849788520266497e-14 2.634740785977248137e-15 +6.950000000000000000e+03 2.755846203952777264e-14 2.639411988556589317e-15 +6.960000000000000000e+03 2.810808851687995713e-14 2.638508597400870368e-15 +6.970000000000000000e+03 2.581965341915617123e-14 2.632406075479934721e-15 +6.980000000000000000e+03 2.518996908237122787e-14 2.621479885763625414e-15 +6.990000000000000000e+03 2.375544190789464992e-14 2.606107954307025565e-15 +7.000000000000000000e+03 2.866176919616563552e-14 2.586724858125619815e-15 +7.010000000000000000e+03 2.736315718488437351e-14 2.563821825195309322e-15 +7.020000000000000000e+03 2.345254316942088310e-14 2.537892546577222701e-15 +7.030000000000000000e+03 2.291333306377008910e-14 2.509430713332498427e-15 +7.040000000000000000e+03 2.062345564181311243e-14 2.478930016522265904e-15 +7.050000000000000000e+03 2.501450215055743526e-14 2.446884342328428710e-15 +7.060000000000000000e+03 2.452252834945960506e-14 2.413788357415964247e-15 +7.070000000000000000e+03 2.049100525708903237e-14 2.380136923570620938e-15 +7.080000000000000000e+03 2.364352308830126288e-14 2.346424902578146809e-15 +7.090000000000000000e+03 2.176112293407614049e-14 2.313147156224290675e-15 +7.100000000000000000e+03 1.802872460590557286e-14 2.280791626658768033e-15 +7.110000000000000000e+03 2.384710911904083393e-14 2.249687104402557581e-15 +7.120000000000000000e+03 2.644200576418025665e-14 2.220003228347908321e-15 +7.130000000000000000e+03 2.096113327355554369e-14 2.191902717751026075e-15 +7.140000000000000000e+03 1.781591699612193133e-14 2.165548291868130863e-15 +7.150000000000000000e+03 2.301479573380125955e-14 2.141102669955432056e-15 +7.160000000000000000e+03 1.903837677475914788e-14 2.118602237507220980e-15 +7.170000000000000000e+03 2.058965413398300412e-14 2.097578044970091931e-15 +7.180000000000000000e+03 2.122088085957017735e-14 2.077434809028721161e-15 +7.190000000000000000e+03 2.310403486613058200e-14 2.057577246367778611e-15 +7.200000000000000000e+03 2.297040914698739011e-14 2.037410073671942110e-15 +7.210000000000000000e+03 2.266410843999297921e-14 2.016357765053840052e-15 +7.220000000000000000e+03 2.289411195399230871e-14 1.994299215469132254e-15 +7.230000000000000000e+03 1.740152575683083351e-14 1.971567740716507194e-15 +7.240000000000000000e+03 1.902230816365833771e-14 1.948516414022607858e-15 +7.250000000000000000e+03 2.050816290405210573e-14 1.925498308614083544e-15 +7.260000000000000000e+03 1.785521840669158378e-14 1.902866497717576056e-15 +7.270000000000000000e+03 2.184027677955829682e-14 1.880843784955734371e-15 +7.280000000000000000e+03 1.976509626948697370e-14 1.859131895535202634e-15 +7.290000000000000000e+03 1.946284377480746415e-14 1.837302285058629798e-15 +7.300000000000000000e+03 2.079568507230604493e-14 1.814926409128661661e-15 +7.310000000000000000e+03 1.788845064525928960e-14 1.791575723347947175e-15 +7.320000000000000000e+03 1.773726422641147237e-14 1.766842574426525004e-15 +7.330000000000000000e+03 1.810513505891981896e-14 1.740799804544493808e-15 +7.340000000000000000e+03 1.624946209269417219e-14 1.714000751352008696e-15 +7.350000000000000000e+03 1.663971578154262352e-14 1.687019643606612513e-15 +7.360000000000000000e+03 1.697852155766507442e-14 1.660430710065859940e-15 +7.370000000000000000e+03 1.692152585622949911e-14 1.634808179487295598e-15 +7.380000000000000000e+03 1.598108747700040529e-14 1.610621421274564211e-15 +7.390000000000000000e+03 1.392442064005433343e-14 1.587920367415697894e-15 +7.400000000000000000e+03 1.708926241670596919e-14 1.566650090544827090e-15 +7.410000000000000000e+03 1.542563969806977686e-14 1.546755663296080663e-15 +7.420000000000000000e+03 1.611768491080513070e-14 1.528182158303589057e-15 +7.430000000000000000e+03 1.527846337445698795e-14 1.510869083887053541e-15 +7.440000000000000000e+03 1.385364999767684704e-14 1.494627969134353309e-15 +7.450000000000000000e+03 1.480993209812126312e-14 1.479142363901543512e-15 +7.460000000000000000e+03 1.471094103328418630e-14 1.464090253730249729e-15 +7.470000000000000000e+03 1.180879049759479214e-14 1.449149624162102277e-15 +7.480000000000000000e+03 1.354324099908125805e-14 1.433998460738727524e-15 +7.490000000000000000e+03 1.567115526578342771e-14 1.418408716549806924e-15 +7.500000000000000000e+03 1.514118205052204534e-14 1.402528214877237131e-15 +7.510000000000000000e+03 1.194827103356745404e-14 1.386598746550968301e-15 +7.520000000000000000e+03 1.563691307852147010e-14 1.370862102400951187e-15 +7.530000000000000000e+03 1.207859121718074709e-14 1.355560073257136735e-15 +7.540000000000000000e+03 1.215662491840630436e-14 1.340929241884392294e-15 +7.550000000000000000e+03 1.404909128530752425e-14 1.327086405550703296e-15 +7.560000000000000000e+03 1.430230714002340787e-14 1.314028576027168917e-15 +7.570000000000000000e+03 1.307377134165147793e-14 1.301747557019805524e-15 +7.580000000000000000e+03 1.358417764540030452e-14 1.290235152234634018e-15 +7.590000000000000000e+03 1.331595824518531275e-14 1.279483165377670174e-15 +7.600000000000000000e+03 1.533268836248844414e-14 1.269463122798702727e-15 +7.610000000000000000e+03 1.551706846709785547e-14 1.260065441422595484e-15 +7.620000000000000000e+03 1.335127786750169948e-14 1.251160260817984421e-15 +7.630000000000000000e+03 9.918917621614381256e-15 1.242617720553503743e-15 +7.640000000000000000e+03 1.206720214106602693e-14 1.234307960197788636e-15 +7.650000000000000000e+03 1.077017514096487895e-14 1.226104117207225312e-15 +7.660000000000000000e+03 1.379053934559320010e-14 1.217948280456492028e-15 +7.670000000000000000e+03 1.311048592648306690e-14 1.209851490238557311e-15 +7.680000000000000000e+03 1.093315244781215515e-14 1.201827784734140909e-15 +7.690000000000000000e+03 1.124942398764861287e-14 1.193891202123965330e-15 +7.700000000000000000e+03 1.078082071952786023e-14 1.186055780588749928e-15 +7.710000000000000000e+03 1.343781778823163803e-14 1.178340171392393044e-15 +7.720000000000000000e+03 1.312251632082091860e-14 1.170781478131500308e-15 +7.730000000000000000e+03 9.269993184495908418e-15 1.163421417485856928e-15 +7.740000000000000000e+03 1.043671653153696013e-14 1.156301706135245156e-15 +7.750000000000000000e+03 1.098182201994113941e-14 1.149464060759449414e-15 +7.760000000000000000e+03 1.389805391208096259e-14 1.142944567888312990e-15 +7.770000000000000000e+03 1.216038254210787039e-14 1.136649820603051102e-15 +7.780000000000000000e+03 1.039280837948383534e-14 1.130356918536251682e-15 +7.790000000000000000e+03 1.013787328904749877e-14 1.123837331170558968e-15 +7.800000000000000000e+03 1.258581865980148011e-14 1.116862527988622917e-15 +7.810000000000000000e+03 1.101451178952270647e-14 1.109203978473088752e-15 +7.820000000000000000e+03 1.228413601333217449e-14 1.100726008282610533e-15 +7.830000000000000000e+03 1.167174879417888159e-14 1.091664367779867611e-15 +7.840000000000000000e+03 8.780635470976081912e-15 1.082347663503546987e-15 +7.850000000000000000e+03 1.058230817999979027e-14 1.073104501992335074e-15 +7.860000000000000000e+03 1.174212422911343395e-14 1.064263489784918873e-15 +7.870000000000000000e+03 1.023814703388652822e-14 1.056143281423632664e-15 +7.880000000000000000e+03 1.125642013577855915e-14 1.048833635534701224e-15 +7.890000000000000000e+03 9.214077582513129870e-15 1.042195414828241602e-15 +7.900000000000000000e+03 9.951692434352362703e-15 1.036079530018016746e-15 +7.910000000000000000e+03 1.002011556571380870e-14 1.030336891817793348e-15 +7.920000000000000000e+03 9.684773239508097894e-15 1.024818410941333959e-15 +7.930000000000000000e+03 9.122866120338856563e-15 1.019375735902901979e-15 +7.940000000000000000e+03 9.004063827254823925e-15 1.013863466418756910e-15 +7.950000000000000000e+03 9.168707162300231193e-15 1.008136940005657915e-15 +7.960000000000000000e+03 1.177476114862651689e-14 1.002051494180364161e-15 +7.970000000000000000e+03 9.700939653109175627e-15 9.954624664596348135e-16 +7.980000000000000000e+03 9.038834074169803816e-15 9.882277501793073912e-16 +7.990000000000000000e+03 9.959670800618741705e-15 9.802640225140448234e-16 +8.000000000000000000e+03 9.435273229239916139e-15 9.715467444773344627e-16 +8.010000000000000000e+03 9.613428551564480745e-15 9.620539329017418180e-16 +8.020000000000000000e+03 1.063383407167537050e-14 9.517636046198351597e-16 +8.030000000000000000e+03 1.056323490104950782e-14 9.406537764641803913e-16 +8.040000000000000000e+03 8.954228503194638797e-15 9.287115299173044791e-16 +8.050000000000000000e+03 9.373557447795710106e-15 9.159602050615697658e-16 +8.060000000000000000e+03 7.880422269828820293e-15 9.024322066293010374e-16 +8.070000000000000000e+03 8.195982587960265864e-15 8.881599393528218964e-16 +8.080000000000000000e+03 1.077349288190392855e-14 8.731758079644553538e-16 +8.090000000000000000e+03 7.950374509432533526e-15 8.575159932809191571e-16 +8.100000000000000000e+03 8.328640772530636834e-15 8.413035260599937197e-16 +8.110000000000000000e+03 9.089345492102327028e-15 8.247482870005219238e-16 +8.120000000000000000e+03 9.068606850446690347e-15 8.080639328857380356e-16 +8.130000000000000000e+03 8.315521771034587483e-15 7.914641204988828290e-16 +8.140000000000000000e+03 7.539726046442419415e-15 7.751625066231901756e-16 +8.150000000000000000e+03 8.715202062726209138e-15 7.593944459865418437e-16 +8.160000000000000000e+03 8.660803093665607931e-15 7.444820850953929453e-16 +8.170000000000000000e+03 7.027725583974538722e-15 7.307692684008445168e-16 +8.180000000000000000e+03 5.322730974834539025e-15 7.185998403539963130e-16 +8.190000000000000000e+03 6.434962772531472235e-15 7.083176454059486800e-16 +8.200000000000000000e+03 7.508897171659795603e-15 7.002530965505247699e-16 +8.210000000000000000e+03 6.887456966605741218e-15 6.944276832641886380e-16 +8.220000000000000000e+03 7.730251569966393982e-15 6.905539715060434676e-16 +8.230000000000000000e+03 7.315819741915697306e-15 6.883310957779163328e-16 +8.240000000000000000e+03 7.411073656588786449e-15 6.874581905816348989e-16 +8.250000000000000000e+03 6.978971453210496269e-15 6.876343904190254512e-16 +8.260000000000000000e+03 6.958490698235001689e-15 6.885997840983734267e-16 +8.270000000000000000e+03 6.416660365740985288e-15 6.902582776537966309e-16 +8.280000000000000000e+03 6.782137819619898215e-15 6.925547314258706407e-16 +8.290000000000000000e+03 7.202239565493107623e-15 6.954340057551714274e-16 +8.300000000000000000e+03 6.663438377191397572e-15 6.988409609822753571e-16 +8.310000000000000000e+03 7.045953922059824808e-15 7.027190920699768076e-16 +8.320000000000000000e+03 7.626591675980956855e-15 7.069804902921161918e-16 +8.330000000000000000e+03 6.888627164643447291e-15 7.115058432335778859e-16 +8.340000000000000000e+03 7.048284671335211144e-15 7.161744731014654619e-16 +8.350000000000000000e+03 6.557951836513030939e-15 7.208657021028831819e-16 +8.360000000000000000e+03 7.175044561972627058e-15 7.254588524449344206e-16 +8.370000000000000000e+03 6.719466061283710419e-15 7.298661795474541279e-16 +8.380000000000000000e+03 8.014207132594956609e-15 7.341316716812010880e-16 +8.390000000000000000e+03 7.748369710889627014e-15 7.383322503296655619e-16 +8.400000000000000000e+03 7.646474623039373525e-15 7.425448369763371202e-16 +8.410000000000000000e+03 8.089379929177615394e-15 7.468463531047058265e-16 +8.420000000000000000e+03 7.440274486682733087e-15 7.513125211408314270e-16 +8.430000000000000000e+03 7.538170582841336437e-15 7.559914851898844530e-16 +8.440000000000000000e+03 9.062327100873444551e-15 7.609038110361469112e-16 +8.450000000000000000e+03 7.521229101243836735e-15 7.660688654064701948e-16 +8.460000000000000000e+03 8.060588026804271476e-15 7.715060150277052044e-16 +8.470000000000000000e+03 9.234435797522918575e-15 7.772346266267030374e-16 +8.480000000000000000e+03 8.260779044248005991e-15 7.832491783659487944e-16 +8.490000000000000000e+03 7.980445650827735707e-15 7.894445941504579675e-16 +8.500000000000000000e+03 8.777376714865786018e-15 7.956909093208798544e-16 +8.510000000000000000e+03 7.160496431466528857e-15 8.018581592178633586e-16 +8.520000000000000000e+03 8.759254779885973725e-15 8.078163791820575806e-16 +8.530000000000000000e+03 8.351944731073455614e-15 8.134362520205613487e-16 +8.540000000000000000e+03 8.448688103905941409e-15 8.186033522688473045e-16 +8.550000000000000000e+03 9.642349888615637665e-15 8.232181461907579582e-16 +8.560000000000000000e+03 7.083492817206758450e-15 8.271817475165873229e-16 +8.570000000000000000e+03 7.490493249472429713e-15 8.303952699766286227e-16 +8.580000000000000000e+03 7.653164987025714132e-15 8.327598273011756733e-16 +8.590000000000000000e+03 7.711394199373580636e-15 8.341845338365661943e-16 +8.600000000000000000e+03 8.116701773383629537e-15 8.346105063933112513e-16 +8.610000000000000000e+03 9.353593794184092120e-15 8.339868623979654193e-16 +8.620000000000000000e+03 8.973598481912560913e-15 8.322627192770831747e-16 +8.630000000000000000e+03 9.221981266755328901e-15 8.293871944572200786e-16 +8.640000000000000000e+03 8.350104249006054748e-15 8.253155149422383100e-16 +8.650000000000000000e+03 8.000667155049483291e-15 8.201434280141040294e-16 +8.660000000000000000e+03 8.523910162385899620e-15 8.141072012328844208e-16 +8.670000000000000000e+03 8.797455339106017094e-15 8.074492117359546666e-16 +8.680000000000000000e+03 8.355219766737116042e-15 8.004118366606924144e-16 +8.690000000000000000e+03 7.783730033125774526e-15 7.932374531444727481e-16 +8.700000000000000000e+03 8.318510101520451628e-15 7.861326208001776455e-16 +8.710000000000000000e+03 8.817168847161786403e-15 7.791606291427084766e-16 +8.720000000000000000e+03 7.763528404157108085e-15 7.723489501624749843e-16 +8.730000000000000000e+03 7.664306200274959033e-15 7.657250558498844467e-16 +8.740000000000000000e+03 6.135434746732140860e-15 7.593164181953451277e-16 +8.750000000000000000e+03 6.698737836889642992e-15 7.531479898025381442e-16 +8.760000000000000000e+03 7.176984756485109591e-15 7.471867773804358109e-16 +8.770000000000000000e+03 7.235674158252774398e-15 7.413418417433005555e-16 +8.780000000000000000e+03 7.855949112793247158e-15 7.355197243186673627e-16 +8.790000000000000000e+03 6.453241957644627353e-15 7.296269665340737811e-16 +8.800000000000000000e+03 6.582989016999412422e-15 7.235701098170544998e-16 +8.810000000000000000e+03 6.667055399741633015e-15 7.172787951785340258e-16 +8.820000000000000000e+03 6.345959239607949163e-15 7.107750619629884473e-16 +8.830000000000000000e+03 6.700920687937627199e-15 7.041040490982830792e-16 +8.840000000000000000e+03 5.131012947684380843e-15 6.973108955122826445e-16 +8.850000000000000000e+03 8.069551039047083791e-15 6.904407401328519650e-16 +8.860000000000000000e+03 6.821809923618237868e-15 6.835343363472204940e-16 +8.870000000000000000e+03 6.637223640842967629e-15 6.765315701080155523e-16 +8.880000000000000000e+03 5.813187164323505052e-15 6.692714599332609477e-16 +8.890000000000000000e+03 7.931205806462736377e-15 6.615886388003444292e-16 +8.900000000000000000e+03 6.535108972888019767e-15 6.533177396866567044e-16 +8.910000000000000000e+03 7.331033566329981303e-15 6.442933955695854236e-16 +8.920000000000000000e+03 6.857017864061186037e-15 6.344158010492402531e-16 +8.930000000000000000e+03 4.803586961481385504e-15 6.238473972166105407e-16 +8.940000000000000000e+03 5.187400760886239969e-15 6.128161867854061706e-16 +8.950000000000000000e+03 6.635938337003664705e-15 6.015501724693376189e-16 +8.960000000000000000e+03 5.800028657551126415e-15 5.902773569821150655e-16 +8.970000000000000000e+03 6.735859203364710185e-15 5.792244259914434079e-16 +8.980000000000000000e+03 5.085515182185991088e-15 5.685877731069372963e-16 +8.990000000000000000e+03 5.500258263852649420e-15 5.585334998801179786e-16 From 225ef8c6b9f36af57e32adf5dd1dc0608df7bb50 Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:03:27 -0700 Subject: [PATCH 2/9] Add `load_example_spectrum_data` function --- sncosmo/io.py | 25 +++++++++++++++++++++++-- sncosmo/tests/test_io.py | 6 ++++++ 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/sncosmo/io.py b/sncosmo/io.py index 2eab73b9..6c583f62 100644 --- a/sncosmo/io.py +++ b/sncosmo/io.py @@ -14,8 +14,10 @@ from .bandpasses import get_bandpass from .utils import dict_to_array -__all__ = ['read_lc', 'write_lc', 'load_example_data', 'read_griddata_ascii', - 'read_griddata_fits', 'write_griddata_ascii', 'write_griddata_fits'] +__all__ = ['read_lc', 'write_lc', 'load_example_data', + 'load_example_spectrum_data', 'read_griddata_ascii', + 'read_griddata_fits', 'write_griddata_ascii', + 'write_griddata_fits'] def _stripcomment(line, char='#'): @@ -816,3 +818,22 @@ def load_example_data(): filename = get_pkg_data_filename( 'data/examples/example_photometric_data.dat') return read_lc(filename, format='ascii') + + +def load_example_spectrum_data(): + """ + Load example spectrum data. + + Returns + ------- + wave : `~numpy.array` + Wavelengths of each spectral bin + flux : `~numpy.array` + Flux in each spectral bin + fluxerr : `~numpy.array` + Flux error in each spectral bin + """ + from astropy.utils.data import get_pkg_data_filename + filename = get_pkg_data_filename( + 'data/examples/example_spectrum.dat') + return np.genfromtxt(filename).T \ No newline at end of file diff --git a/sncosmo/tests/test_io.py b/sncosmo/tests/test_io.py index 0c1bd475..0fc6aed2 100644 --- a/sncosmo/tests/test_io.py +++ b/sncosmo/tests/test_io.py @@ -216,3 +216,9 @@ def test_write_lc_snana(): def test_load_example_data(): data = sncosmo.load_example_data() + +def test_load_example_spectrum_data(): + wave, flux, fluxerr = sncosmo.load_example_spectrum_data() + + assert len(wave) > 0 + assert len(wave) == len(flux) == len(fluxerr) \ No newline at end of file From e195e33d0e94e89da637e2dfc59a6014b44e84dd Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:28:21 -0700 Subject: [PATCH 3/9] Fix formatting --- misc/gen_example_spectrum.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/misc/gen_example_spectrum.py b/misc/gen_example_spectrum.py index 90e1a44e..f57ba525 100755 --- a/misc/gen_example_spectrum.py +++ b/misc/gen_example_spectrum.py @@ -11,4 +11,4 @@ flux = flux + np.random.normal(scale=fluxerr) np.savetxt('example_spectrum.dat', np.array([wave, flux, fluxerr]).T, - header="wave flux fluxerr") \ No newline at end of file + header="wave flux fluxerr") From 1616b9273a6fd67954907a9df3ff167d139e7160 Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:44:07 -0700 Subject: [PATCH 4/9] Add Spectrum class to the Reference API docs --- docs/reference.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/reference.rst b/docs/reference.rst index 696dc29e..6d4ca649 100644 --- a/docs/reference.rst +++ b/docs/reference.rst @@ -61,6 +61,7 @@ maps, and more.* write_lc read_bandpass load_example_data + load_example_spectrum_data read_snana_ascii read_snana_fits read_snana_simlib @@ -69,6 +70,16 @@ maps, and more.* write_griddata_ascii write_griddata_fits +Spectra +======= + +.. autosummary:: + :toctree: api + + Spectrum + + + .. _fitting-api: Fitting Photometric Data From 39d8ccf79d402f69480985da81c77ff6eec985ff Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:44:37 -0700 Subject: [PATCH 5/9] Fix bandpass docs page --- docs/_helpers/bandpass_page.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_helpers/bandpass_page.py b/docs/_helpers/bandpass_page.py index 7f74ff89..c04ba2b2 100644 --- a/docs/_helpers/bandpass_page.py +++ b/docs/_helpers/bandpass_page.py @@ -10,8 +10,8 @@ ASCII_LETTERS = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' bandpass_meta = _BANDPASSES.get_loaders_metadata() -table_delim = " ".join([15 * '=', 80 * '=', 24 * '=', 8 * '=', 12 * '=']) -table_colnames = ("{0:15} {1:80} {2:24} {3:8} {4:12}" +table_delim = " ".join([15 * '=', 120 * '=', 24 * '=', 8 * '=', 12 * '=']) +table_colnames = ("{0:15} {1:120} {2:24} {3:8} {4:12}" .format('Name', 'Description', 'Reference', 'Data URL', 'Retrieved')) urlnums = {} @@ -50,7 +50,7 @@ def bandpass_table(setname): if 'retrieved' in m: retrieved = m['retrieved'] - lines.append("{0!r:15} {1:80} {2:24} {3:8} {4:12}".format( + lines.append("{0!r:15} {1:120} {2:24} {3:8} {4:12}".format( m['name'], m['description'], reflink, urllink, retrieved)) lines.append(table_delim) From d77256d1964354eb7dd178f383dd3254c3b4d975 Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:45:01 -0700 Subject: [PATCH 6/9] Fix source docs page --- docs/_helpers/source_page.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_helpers/source_page.py b/docs/_helpers/source_page.py index 8121fc58..e8d15ee7 100644 --- a/docs/_helpers/source_page.py +++ b/docs/_helpers/source_page.py @@ -9,8 +9,8 @@ lines = [ '', - ' '.join([20*'=', 7*'=', 10*'=', 27*'=', 30*'=', 7*'=', 20*'=']), - '{0:20} {1:7} {2:10} {3:27} {4:30} {5:7} {6:50}'.format( + ' '.join([30*'=', 7*'=', 10*'=', 27*'=', 30*'=', 7*'=', 20*'=']), + '{0:30} {1:7} {2:10} {3:27} {4:30} {5:7} {6:50}'.format( 'Name', 'Version', 'Type', 'Subclass', 'Reference', 'Website', 'Notes') ] lines.append(lines[1]) @@ -44,7 +44,7 @@ urlnums[url] = max(urlnums.values()) + 1 urllink = '`{0}`_'.format(string.ascii_letters[urlnums[url]]) - lines.append("{0!r:20} {1!r:7} {2:10} {3:27} {4:30} {5:7} {6:50}" + lines.append("{0!r:30} {1!r:7} {2:10} {3:27} {4:30} {5:7} {6:50}" .format(m['name'], m['version'], m['type'], m['subclass'], reflink, urllink, notelink)) From 4c3e03a59b5952610090d17fdf4ad38057cdc254 Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:45:19 -0700 Subject: [PATCH 7/9] Clean up the Spectrum docs page --- docs/spectrum.rst | 85 ++++++++++++++++++++++++----------------------- 1 file changed, 44 insertions(+), 41 deletions(-) diff --git a/docs/spectrum.rst b/docs/spectrum.rst index 41648bf1..95f07ee9 100644 --- a/docs/spectrum.rst +++ b/docs/spectrum.rst @@ -2,21 +2,17 @@ Spectra ******* -Spectroscopic observations are supported in `sncosmo` with the `~sncosmo.Spectrum` -class. A spectrum object can be created from a list of wavelengths and flux values: +Spectroscopic observations are supported in `sncosmo` with the +`~sncosmo.Spectrum` class. A spectrum object can be created from a list of +wavelengths and flux values: .. code:: python - >>> wave = np.arange(3000, 9000) - >>> model = sncosmo.Model(source='hsiao-subsampled') - >>> model.set(z=0.1, amplitude=1e-5, t0=56000.) - >>> sample_time = model['t0'] + 2. - >>> flux = model.flux(time=sample_time, wave=wave) - - >>> spectrum = sncosmo.Spectrum(wave, flux, time=sample_time) + >>> wave, flux, fluxerr = sncosmo.load_example_spectrum_data() + >>> spectrum = sncosmo.Spectrum(wave, flux) -By default, the wavelengths are assumed to be in angstroms and the flux values as a -spectral flux density (erg / s / cm^2 / A). +By default, the wavelengths are assumed to be in angstroms and the flux +values as a spectral flux density (erg / s / cm^2 / A). Uncertainties ------------- @@ -26,15 +22,14 @@ uncertainties for each spectral element: .. code:: python - >>> fluxerr = 0.1 * flux - >>> spectrum = sncosmo.Spectrum(wave, flux, fluxerr, time=sample_time) + >>> spectrum = sncosmo.Spectrum(wave, flux, fluxerr) or a full covariance matrix: .. code:: python >>> fluxcov = np.diag(fluxerr**2) + 1e-5 * np.max(flux)**2 - >>> spectrum = sncosmo.Spectrum(wave, flux, fluxcov=fluxcov, time=sample_time) + >>> spectrum = sncosmo.Spectrum(wave, flux, fluxcov=fluxcov) All operations will take these uncertanties into account. @@ -47,39 +42,40 @@ available in sncosmo: .. code:: python >>> spectrum.bandflux('sdssg') - 6.336874516839506 + 6.417843339246818 Synthetic photometry can be calculated on multiple bands simultaneously: .. code:: python >>> spectrum.bandflux(['sdssg', 'sdssr', 'sdssi']) - array([6.33687452, 5.33348909, 2.86301428]) + array([6.41784334, 5.37683496, 2.8626649 ]) -If a zeropoint and magnitude system are specified, then the bandflux is returned in that -system (otherwise it is in photons / s / cm^2 by default). +If a zeropoint and magnitude system are specified, then the bandflux is +returned in that system (otherwise it is in photons / s / cm^2 by default). .. code:: python >>> spectrum.bandflux(['sdssg', 'sdssr', 'sdssi'], zp=25., zpsys='ab') - array([115932.40764299, 108077.89453051, 79602.18806937]) + array([117413.72315598, 108956.25581652, 79592.47424074]) -Optionally, the full covariance matrix between the bandfluxes can also be calculated: +Optionally, the full covariance matrix between the bandfluxes can also be +calculated: .. code:: python >>> spectrum.bandfluxcov(['sdssg', 'sdssr', 'sdssi'], zp=25., zpsys='ab') - (array([115932.40764299, 108077.89453051, 79602.18806937]), - array([[ 436626.04457069, 574161.2530974 , 845566.99897734], - [ 574161.2530974 , 1088219.30397941, 1460106.55463119], - [ 845566.99897734, 1460106.55463119, 2203060.35600117]])) + (array([117413.72315598, 108956.25581652, 79592.47424074]), + array([[1546972.78077853, 874550.34470817, 1287550.14818921], + [ 874550.34470817, 2479812.26652077, 2226272.0481113 ], + [1287550.14818921, 2226272.0481113 , 3805168.84485814]])) A band magnitude can be evaluated in a specific magnitude system: .. code:: python >>> spectrum.bandmag(['sdssg', 'sdssr', 'sdssi'], magsys='ab') - array([12.33948786, 12.41565781, 12.74768749]) + array([12.32570285, 12.40686957, 12.74781999]) @@ -93,38 +89,45 @@ A spectrum can be rebinned with arbitrary wavelength bins. This returns a new >>> binned_spectrum = spectrum.rebin(np.arange(3500, 6000, 100)) -Rebinning introduces covariance between adjacent spectral elements if the bin edges -in the original spectrum don't line up with the bin edges in the rebinned spectrum. This -covariance is properly propagated. +Rebinning introduces covariance between adjacent spectral elements if the bin +edges in the original spectrum don't line up with the bin edges in the +rebinned spectrum. This covariance is properly propagated. Fitting with spectra -------------------- -Spectra can be used in fits. Any combination of spectra and photometry is allowed. For -example, to fit a single spectrum: +Spectra can be used in fits. Any combination of spectra and photometry is +allowed. To fit spectra, the times at which the spectra were taken must be +specified. For example, to fit a single spectrum: .. code:: python - >>> model.set(z=0., amplitude=1., t0=0.) - >>> sncosmo.fit_lc(model=model, spectra=binned_spectrum, + Create the spectrum object, and specify the time at which it was taken. + >>> spectrum = sncosmo.Spectrum(wave, flux, fluxerr, time=20.) + + Fit a model to the spectrum. + >>> model = sncosmo.Model(source='hsiao-subsampled') + >>> sncosmo.fit_lc(model=model, spectra=spectrum, ... vparam_names=['amplitude', 't0', 'z'], ... bounds={'z': (0., 0.3)}) ( success: True message: 'Minimization exited successfully.' - ncall: 86 - chisq: 1.1072097164403554e-05 - ndof: 22 + ncall: 108 + chisq: 576.7111360163605 + ndof: 597 param_names: ['z', 't0', 'amplitude'] - parameters: array([9.99999822e-02, 5.60000000e+04, 9.99997056e-06]) + parameters: array([9.96571945e-02, 1.80278503e+01, 1.00650322e-05]) vparam_names: ['z', 't0', 'amplitude'] - covariance: array([[ 4.60410999e-08, 7.84028630e-06, -1.39915254e-12], - [ 7.84028630e-06, 6.28193143e-03, -1.47231576e-09], - [-1.39915254e-12, -1.47231576e-09, 2.86156520e-15]]) - errors: OrderedDict([('z', 0.0002145718167298541), ('t0', 0.07925860166142229), ('amplitude', 5.3493599593407034e-08)]) + covariance: array([[ 1.17946556e-07, 1.64336679e-05, -5.21279026e-12], + [ 1.64336679e-05, 1.70047614e-02, -4.60755668e-09], + [-5.21279026e-12, -4.60755668e-09, 2.91915780e-15]]) + errors: OrderedDict([('z', 0.00034343314287464677), + ('t0', 0.13040215158608248), + ('amplitude', 5.4029230945864686e-08)]) nfit: 1 data_mask: None, - ) + ) Other valid signatures are: From 4356e0f03eb24dbd4ec0123c1cd33fff4b0f963c Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 16:45:48 -0700 Subject: [PATCH 8/9] Fix formatting for built in models --- sncosmo/builtins.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sncosmo/builtins.py b/sncosmo/builtins.py index f246e21e..94b0f3dd 100644 --- a/sncosmo/builtins.py +++ b/sncosmo/builtins.py @@ -922,10 +922,10 @@ def load_2011fe(relpath, name=None, version=None): ('v19-iptf13bvn', '1.0', 'SN Ib', 'V19_iPTF13bvn_noHostExtCorr.SED') ] -note = """Templates from Vincenzi et al. 19. Each template is extended in the -ultraviolet (1600AA) and in the near infrared (10000AA). Each template can be -used in its original version (v19-sn-name) or in its host dust extinction -corrected version (v19-sn-name-corr).""" +note = "Templates from Vincenzi et al. 19. Each template is extended in the " \ + "ultraviolet (1600AA) and in the near infrared (10000AA). Each template " \ + "can be used in its original version (v19-sn-name) or in its host dust " \ + "extinction corrected version (v19-sn-name-corr)." for name, vrs, sntype, fn in V19_CC_models: relpath = os.path.join('models', 'vincenzi', fn) @@ -1009,7 +1009,7 @@ def load_sugarmodel(relpath, name=None, version=None): meta = {'type': 'SN Ia', 'subclass': '`~sncosmo.SUGARSource`', 'url': 'http://supernovae.in2p3.fr/sugar_template/', 'reference': ('Leget20', - 'Leget et al. 2020', + 'Leget et al. 2020 ' '')} _SOURCES.register_loader(name, load_sugarmodel, From 28b264e52dfa3cba9ef4394f91ce79280075134c Mon Sep 17 00:00:00 2001 From: Kyle Boone Date: Mon, 19 Apr 2021 17:02:41 -0700 Subject: [PATCH 9/9] Formatting fixes --- sncosmo/io.py | 2 +- sncosmo/tests/test_io.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/sncosmo/io.py b/sncosmo/io.py index 6c583f62..496c27b0 100644 --- a/sncosmo/io.py +++ b/sncosmo/io.py @@ -836,4 +836,4 @@ def load_example_spectrum_data(): from astropy.utils.data import get_pkg_data_filename filename = get_pkg_data_filename( 'data/examples/example_spectrum.dat') - return np.genfromtxt(filename).T \ No newline at end of file + return np.genfromtxt(filename).T diff --git a/sncosmo/tests/test_io.py b/sncosmo/tests/test_io.py index 0fc6aed2..df6f6238 100644 --- a/sncosmo/tests/test_io.py +++ b/sncosmo/tests/test_io.py @@ -217,8 +217,9 @@ def test_write_lc_snana(): def test_load_example_data(): data = sncosmo.load_example_data() + def test_load_example_spectrum_data(): wave, flux, fluxerr = sncosmo.load_example_spectrum_data() assert len(wave) > 0 - assert len(wave) == len(flux) == len(fluxerr) \ No newline at end of file + assert len(wave) == len(flux) == len(fluxerr)