From e56234c7c7bb4ac8dd17feef1da805125f151b11 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Mon, 24 Aug 2020 15:35:19 +0100 Subject: [PATCH 01/17] switch to interpolation, remove h units, massless neutrinos --- skypy/power_spectrum/_camb.py | 28 ++++++++++++------- .../power_spectrum/tests/data/camb_result.txt | 4 +-- skypy/power_spectrum/tests/test_camb.py | 4 +-- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 4f9c44577..33920a9c5 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -7,10 +7,12 @@ ] -def camb(wavenumber, redshift, cosmology, A_s, n_s): +def camb(wavenumber, redshift, cosmology, + A_s, n_s, z_reion): r'''CAMB linear matter power spectrum. Compute the linear matter power spectrum on a two dimensional grid of redshift and wavenumber using CAMB [1]_. + Currently assumes massless neutrinos. Parameters ---------- @@ -29,6 +31,8 @@ def camb(wavenumber, redshift, cosmology, A_s, n_s): n_s : float Cosmology parameter, spectral index of scalar perturbation power spectrum + z_reion : float + Cosmology parameter, redshift of re-ionisation Returns ------- @@ -57,7 +61,7 @@ def camb(wavenumber, redshift, cosmology, A_s, n_s): ''' try: - from camb import CAMBparams, get_results, model + from camb import CAMBparams, get_results, model, get_matter_power_interpolator except ImportError: raise Exception("camb is required to use skypy.power_spectrum.camb") @@ -72,16 +76,18 @@ def camb(wavenumber, redshift, cosmology, A_s, n_s): omch2=cosmology.Odm0 * h2, omk=cosmology.Ok0, TCMB=cosmology.Tcmb0.value, - mnu=np.sum(cosmology.m_nu.value), + mnu=0., # for now, need to solve agreement with CLASS standard_neutrino_neff=cosmology.Neff ) - # camb requires redshifts to be in decreasing order - redshift_order = np.argsort(redshift)[::-1] + # camb interpolator requires redshifts to be in increasing order + redshift_order = np.argsort(redshift) pars.InitPower.ns = n_s pars.InitPower.As = A_s + pars.Reion.redshift = z_reion + pars.set_matter_power(redshifts=list(redshift[redshift_order]), kmax=np.max(wavenumber)) @@ -91,10 +97,12 @@ def camb(wavenumber, redshift, cosmology, A_s, n_s): k = wavenumber * (1. / u.Mpc) - k_h = k.to((u.littleh / u.Mpc), u.with_H0(cosmology.H0)) + pk_interp = get_matter_power_interpolator(pars, + nonlinear=False, + hubble_units=False, k_hunit=False, + kmax=np.max(k.value), + zmax=redshift.max()) - kh, z, pzk = results.get_matter_power_spectrum(minkh=np.min(k_h.value), - maxkh=np.max(k_h.value), - npoints=len(k_h.value)) + pzk = pk_interp.P(redshift[redshift_order], k.value) - return pzk[redshift_order[::-1]].reshape(return_shape) + return pzk[redshift_order].reshape(return_shape) diff --git a/skypy/power_spectrum/tests/data/camb_result.txt b/skypy/power_spectrum/tests/data/camb_result.txt index 1b33627c9..92252880f 100644 --- a/skypy/power_spectrum/tests/data/camb_result.txt +++ b/skypy/power_spectrum/tests/data/camb_result.txt @@ -1,2 +1,2 @@ -6.024796270000000504e+02,6.320850990000000138e+02,6.631417050000000017e+02,6.957198600000000397e+02,7.298934400000000551e+02,7.657399460000000317e+02,8.033404209999999921e+02,8.427795939999999746e+02,8.841461450000000468e+02,9.275328899999999521e+02,9.730369399999999587e+02,1.020759890000000041e+03,1.070807880000000068e+03,1.123291809999999941e+03,1.178327530000000024e+03,1.236036090000000058e+03,1.296543760000000020e+03,1.359982310000000098e+03,1.426489060000000109e+03,1.496207210000000032e+03,1.569285900000000083e+03,1.645880480000000034e+03,1.726152460000000019e+03,1.810269700000000057e+03,1.898406660000000102e+03,1.990744570000000067e+03,2.087471349999999802e+03,2.188781840000000102e+03,2.294877700000000004e+03,2.405967569999999796e+03,2.522267159999999876e+03,2.643999330000000100e+03,2.771393489999999929e+03,2.904685730000000149e+03,3.044118860000000041e+03,3.189942460000000210e+03,3.342411939999999959e+03,3.501788579999999911e+03,3.668338029999999890e+03,3.842330390000000079e+03,4.024039459999999963e+03,4.213742530000000443e+03,4.411718120000000454e+03,4.618245799999999690e+03,4.833603949999999713e+03,5.058069550000000163e+03,5.291916350000000421e+03,5.535414020000000164e+03,5.788823029999999562e+03,6.052394599999999627e+03,6.326368760000000293e+03,6.610973109999999906e+03,6.906416760000000068e+03,7.212889650000000074e+03,7.530558600000000297e+03,7.859566039999999703e+03,8.200024550000000090e+03,8.552015390000000480e+03,8.915581759999999122e+03,9.290727679999999964e+03,9.677413119999999253e+03,1.007555160000000069e+04,1.048499970000000030e+04,1.090555669999999918e+04,1.133695579999999973e+04,1.177886319999999978e+04,1.223086470000000008e+04,1.269246550000000025e+04,1.316307430000000022e+04,1.364200829999999951e+04,1.412849380000000019e+04,1.462165660000000025e+04,1.512045739999999932e+04,1.562373760000000038e+04,1.613034339999999975e+04,1.663901949999999852e+04,1.714802929999999833e+04,1.765536829999999827e+04,1.815909960000000137e+04,1.865725809999999910e+04,1.914779130000000077e+04,1.962851529999999912e+04,2.009688420000000042e+04,2.055012610000000132e+04,2.098525830000000133e+04,2.139915000000000146e+04,2.178848740000000180e+04,2.214984490000000005e+04,2.247964909999999873e+04,2.277424439999999959e+04,2.302975519999999960e+04,2.324226680000000124e+04,2.340782549999999901e+04,2.352257110000000102e+04,2.358268100000000049e+04,2.358456299999999828e+04,2.352488550000000032e+04,2.340075590000000011e+04,2.320981729999999880e+04,2.295039419999999882e+04,2.262170430000000124e+04,2.222390840000000026e+04,2.175849390000000130e+04,2.122811330000000089e+04,2.063717320000000109e+04,1.999131910000000062e+04,1.929822780000000057e+04,1.856665439999999944e+04,1.780750430000000051e+04,1.703214640000000145e+04,1.625327410000000054e+04,1.548345130000000063e+04,1.473683129999999983e+04,1.402533230000000003e+04,1.335625480000000061e+04,1.273643660000000091e+04,1.217768540000000030e+04,1.168571210000000065e+04,1.124912479999999960e+04,1.085493050000000039e+04,1.049120550000000003e+04,1.014433350000000064e+04,9.797217339999999240e+03,9.427360300000000279e+03,9.009957689999999275e+03,8.528237489999999525e+03,7.980746839999999793e+03,7.383401640000000043e+03,6.765645540000000437e+03,6.161316300000000410e+03,5.603979129999999714e+03,5.124446450000000368e+03,4.744167550000000119e+03,4.463432050000000345e+03,4.255872339999999895e+03,4.076055389999999989e+03,3.875673130000000128e+03,3.621742369999999937e+03,3.310713679999999840e+03,2.969399179999999888e+03,2.646100210000000061e+03,2.390161939999999959e+03,2.215113699999999881e+03,2.091474600000000009e+03,1.972668349999999919e+03,1.817544489999999996e+03,1.629499900000000025e+03,1.449596970000000056e+03,1.313417269999999917e+03,1.219528489999999920e+03,1.132942870000000084e+03,1.027436050000000023e+03,9.170018109999999751e+02,8.281070929999999635e+02,7.608468890000000329e+02,6.939979170000000295e+02,6.225484529999999950e+02,5.609046919999999545e+02,5.105815499999999929e+02,4.612284450000000220e+02,4.142321259999999938e+02,3.743304939999999874e+02,3.375733969999999999e+02,3.032548679999999877e+02,2.731247730000000047e+02,2.454341200000000072e+02,2.203872819999999990e+02,1.978875710000000083e+02,1.774408760000000029e+02,1.590925689999999975e+02,1.425301240000000007e+02,1.275927049999999952e+02,1.141414429999999953e+02,1.020457999999999998e+02,9.118255320000000097e+01,8.143264069999999322e+01,7.268642599999999732e+01,6.484462870000000123e+01,5.781740760000000279e+01,5.152398019999999690e+01,4.589162069999999716e+01,4.085430790000000201e+01,3.635214659999999753e+01,3.233081680000000091e+01,2.874099229999999849e+01,2.553810340000000068e+01,2.268196419999999947e+01,2.013637170000000154e+01,1.786879529999999860e+01,1.585000559999999936e+01,1.405368879999999976e+01,1.245617460000000065e+01,1.103613250000000079e+01,9.774224580000000273e+00,8.653143460000000786e+00,7.657458959999999593e+00,6.773431040000000181e+00,5.989134779999999658e+00,5.294103530000000113e+00,4.678820299999999932e+00 -2.230833900000000085e+02,2.340467060000000004e+02,2.455475549999999885e+02,2.576120809999999892e+02,2.702676799999999844e+02,2.835430529999999862e+02,2.974682520000000068e+02,3.120747390000000223e+02,3.273954420000000027e+02,3.434648179999999797e+02,3.603189039999999750e+02,3.779953790000000140e+02,3.965336649999999850e+02,4.159749939999999810e+02,4.363624040000000264e+02,4.577408110000000079e+02,4.801571319999999901e+02,5.036603690000000029e+02,5.283015860000000430e+02,5.541339960000000247e+02,5.812130389999999807e+02,6.095964659999999640e+02,6.393443200000000388e+02,6.705190169999999625e+02,7.031853680000000395e+02,7.374106629999999996e+02,7.732647050000000490e+02,8.108198820000000069e+02,8.501510110000000395e+02,8.913354160000000093e+02,9.344529209999999466e+02,9.795859179999999924e+02,1.026819369999999935e+03,1.076240810000000010e+03,1.127939869999999928e+03,1.182008319999999912e+03,1.238540500000000065e+03,1.297633149999999887e+03,1.359384450000000015e+03,1.423894070000000056e+03,1.491263400000000047e+03,1.561595420000000104e+03,1.634993359999999939e+03,1.711560750000000098e+03,1.791401290000000017e+03,1.874618519999999990e+03,1.961313850000000002e+03,2.051586569999999938e+03,2.145533590000000004e+03,2.243248990000000049e+03,2.344821600000000217e+03,2.450334989999999834e+03,2.559866860000000088e+03,2.673488460000000032e+03,2.791262119999999868e+03,2.913240940000000137e+03,3.039466699999999946e+03,3.169969489999999951e+03,3.304765859999999975e+03,3.443858180000000175e+03,3.587231810000000223e+03,3.734854609999999866e+03,3.886674190000000181e+03,4.042617249999999785e+03,4.202585530000000290e+03,4.366455509999999776e+03,4.534074080000000322e+03,4.705258429999999862e+03,4.879790090000000419e+03,5.057416669999999613e+03,5.237851749999999811e+03,5.420771410000000287e+03,5.605791089999999713e+03,5.792482259999999769e+03,5.980419139999999970e+03,6.169138520000000426e+03,6.357995689999999740e+03,6.546245390000000043e+03,6.733169899999999870e+03,6.918041930000000320e+03,7.100101020000000062e+03,7.278537809999999808e+03,7.452409080000000358e+03,7.620687799999999697e+03,7.782268399999999929e+03,7.935989910000000236e+03,8.080622260000000097e+03,8.214893649999999980e+03,8.337479190000000017e+03,8.447023789999999281e+03,8.542089470000000802e+03,8.621222809999999299e+03,8.682954620000000432e+03,8.725850179999999455e+03,8.748489900000000489e+03,8.749539829999999711e+03,8.727760640000000421e+03,8.682075290000000678e+03,8.611604799999999159e+03,8.515723009999999704e+03,8.394135949999999866e+03,8.246899419999999736e+03,8.074560120000000097e+03,7.878097200000000157e+03,7.659142469999999776e+03,7.419788069999999607e+03,7.162879500000000007e+03,6.891663110000000415e+03,6.610184629999999743e+03,6.322662709999999606e+03,6.033807590000000346e+03,5.748282669999999598e+03,5.471343549999999595e+03,5.207417010000000118e+03,4.959215299999999843e+03,4.729279279999999744e+03,4.521996280000000297e+03,4.339490230000000338e+03,4.177533629999999903e+03,4.031303859999999986e+03,3.896375070000000051e+03,3.767690979999999854e+03,3.638902140000000145e+03,3.501653670000000147e+03,3.346730550000000221e+03,3.167901530000000093e+03,2.964625810000000001e+03,2.742813259999999900e+03,2.513400709999999890e+03,2.288960849999999937e+03,2.081963600000000042e+03,1.903859580000000051e+03,1.762619840000000067e+03,1.658356279999999970e+03,1.581275300000000016e+03,1.514496149999999943e+03,1.440071809999999914e+03,1.345745149999999967e+03,1.230197629999999890e+03,1.103390789999999924e+03,9.832731300000000374e+02,8.881820440000000190e+02,8.231461910000000444e+02,7.772118719999999712e+02,7.330717120000000477e+02,6.754337669999999889e+02,6.055595899999999574e+02,5.387093300000000227e+02,4.881060780000000250e+02,4.532183329999999728e+02,4.210438409999999863e+02,3.818366520000000151e+02,3.407974120000000084e+02,3.077625110000000177e+02,2.827674069999999915e+02,2.579246449999999982e+02,2.313717589999999973e+02,2.084627779999999859e+02,1.897608830000000069e+02,1.714192759999999964e+02,1.539533480000000054e+02,1.391240400000000079e+02,1.254633050000000054e+02,1.127087949999999950e+02,1.015108460000000008e+02,9.121946040000000266e+01,8.191061799999999948e+01,7.354839889999999514e+01,6.594915419999999528e+01,5.912982279999999946e+01,5.297418449999999979e+01,4.742246839999999963e+01,4.242308280000000309e+01,3.792752490000000165e+01,3.389000570000000323e+01,3.026627390000000162e+01,2.701557969999999997e+01,2.410102320000000020e+01,2.148921359999999936e+01,1.915012760000000114e+01,1.705673769999999934e+01,1.518450720000000054e+01,1.351117619999999953e+01,1.201655620000000013e+01,1.068231409999999926e+01,9.491884770000000415e+00,8.430332220000000376e+00,7.484200829999999804e+00,6.641400130000000068e+00,5.891066559999999619e+00,5.223420139999999989e+00,4.629663360000000338e+00,4.101868429999999677e+00,3.632847899999999797e+00,3.216169149999999810e+00,2.846097209999999933e+00,2.517525260000000209e+00,2.226021119999999964e+00,1.967694609999999900e+00,1.739008490000000018e+00 +1.951467718090812923e+03,2.047355413015059639e+03,2.147942249664320570e+03,2.253455922975439080e+03,2.364135249332563490e+03,2.480230715393552600e+03,2.602004800220892321e+03,2.729732451357789614e+03,2.863700377080795079e+03,3.004207606698225391e+03,3.151567779229795633e+03,3.306109792540796661e+03,3.468177480477853351e+03,3.638130138439293660e+03,3.816341546965158159e+03,4.003200756629046737e+03,4.199115419041609130e+03,4.404512395775370351e+03,4.619835947972834219e+03,4.845548412703719805e+03,5.082130370735760152e+03,5.330081532965835322e+03,5.589922935994270119e+03,5.862197468649691473e+03,6.147467615000623482e+03,6.446316433437832529e+03,6.759350110513191794e+03,7.087198381303833230e+03,7.430511635639694759e+03,7.789961831999057722e+03,8.166243523199450465e+03,8.560074555448774845e+03,8.972196658965209281e+03,9.403375536153513167e+03,9.854396559797458394e+03,1.032606552965292394e+04,1.081920774575706128e+04,1.133466856663955878e+04,1.187331346889330962e+04,1.243602689883712264e+04,1.302370010271323918e+04,1.363723313587922894e+04,1.427753993692420227e+04,1.494554555865394468e+04,1.564216840891513493e+04,1.636832187593372146e+04,1.712491410694219303e+04,1.791284599983201406e+04,1.873300084246003826e+04,1.958624135141176157e+04,2.047338862467828221e+04,2.139522290024275935e+04,2.235247591754984387e+04,2.334582774413689913e+04,2.437589065376312647e+04,2.544320491788672734e+04,2.654821433436691586e+04,2.769126364072809520e+04,2.887257341928234382e+04,3.009224006885297422e+04,3.135022703676796664e+04,3.264635304554540926e+04,3.398023855072411970e+04,3.535131024869107932e+04,3.675877934410735179e+04,3.820163701724504790e+04,3.967860840454194840e+04,4.118815374094589788e+04,4.272841672993027896e+04,4.429723357563979516e+04,4.589209168499738007e+04,4.751013694477191893e+04,4.914811756395819248e+04,5.080239620494191331e+04,5.246886545199059037e+04,5.414297961955046776e+04,5.581965926516590116e+04,5.749335044935840415e+04,5.915796105516699754e+04,6.080690367831488402e+04,6.243292139518957265e+04,6.402821646152414178e+04,6.558435531033109874e+04,6.709238390522886766e+04,6.854262502539403795e+04,6.992487978246195416e+04,7.122822299669367203e+04,7.244128398949046095e+04,7.355207965983722534e+04,7.454831983818174922e+04,7.541713061755853414e+04,7.614553604547506256e+04,7.672033988349030551e+04,7.712861164023388119e+04,7.735753074266789190e+04,7.739502709491767746e+04,7.722988736033445457e+04,7.685233633944913163e+04,7.625433194735940197e+04,7.543007642029343697e+04,7.437674538697990647e+04,7.309463992819112900e+04,7.158844168619326956e+04,6.986669074982407619e+04,6.794371896876742539e+04,6.583797151378869603e+04,6.357461152027807111e+04,6.118240866335591272e+04,5.869728241839793191e+04,5.615672469807612651e+04,5.360261951621113258e+04,5.107649985934264987e+04,4.862526232938425528e+04,4.628831679250510933e+04,4.408955417622345703e+04,4.205173200600593555e+04,4.021511624216157361e+04,3.859839753439852211e+04,3.716036843242248142e+04,3.586381443878867867e+04,3.468453895314828696e+04,3.356149395968425233e+04,3.241818535104104376e+04,3.118359447894872574e+04,2.979017379750102191e+04,2.819479405945881444e+04,2.639478279264966477e+04,2.443391776285641026e+04,2.239695615484797236e+04,2.039248890171610765e+04,1.854111240765767070e+04,1.695606911182616750e+04,1.570695819067602861e+04,1.478291148758148483e+04,1.409175095922004766e+04,1.349274308610057597e+04,1.283347407430594831e+04,1.199642458914418057e+04,1.096369726382487715e+04,9.832641520357718036e+03,8.765159427965685609e+03,7.917147708392681125e+03,7.336678293851523449e+03,6.928908795489106524e+03,6.534669040834439329e+03,6.020902258409794740e+03,5.398357239129433765e+03,4.802310363673157553e+03,4.351498604398076168e+03,4.040612305614688921e+03,3.753616527251836033e+03,3.404286081011387978e+03,3.038211574671753169e+03,2.743924816005142020e+03,2.521160134411403760e+03,2.299440439590581718e+03,2.062896454214474943e+03,1.858718766435391672e+03,1.691867416194632142e+03,1.528309204892073012e+03,1.372640636093422927e+03,1.240453689563056514e+03,1.118647049900961974e+03,1.004925209992125474e+03,9.050822515665504397e+02,8.133287175760272021e+02,7.303488344769367586e+02,6.557970255223581262e+02,5.880470601438555605e+02,5.272204042909472719e+02,4.723181549254862830e+02,4.228146752611165198e+02,3.782445991916398498e+02,3.381713890378269980e+02,3.021794535534319266e+02,2.698719637885699854e+02,2.408872646394593744e+02,2.148976224233522601e+02,1.916070438988876958e+02,1.707495308064259234e+02,1.520837836375599466e+02,1.353906872571616304e+02,1.204713795102326372e+02,1.071452058841732224e+02,9.524874954716683817e+01,8.463449556128861673e+01,7.516939808873625850e+01,6.673359640795834480e+01,5.921915363798756715e+01,5.252892141050831754e+01,4.657552630947511574e+01,4.128040235204898778e+01,3.657298447884389958e+01,3.238997913518370808e+01,2.867465333344764034e+01,2.537618393402373940e+01,2.244907185512865411e+01,1.985261455322502044e+01,1.755042268317478360e+01,1.550998238003064245e+01 +7.236032243147496956e+02,7.591626398288361770e+02,7.964653189281094683e+02,8.355957936448312466e+02,8.766427983693936312e+02,9.196994770938588317e+02,9.648633807265121050e+02,1.012236641257329552e+03,1.061925808602714142e+03,1.114042065190596304e+03,1.168702056828233935e+03,1.226028134539119492e+03,1.286148203314464581e+03,1.349195922423463799e+03,1.415310401588935292e+03,1.484636491768611450e+03,1.557325923975971364e+03,1.633537554525514224e+03,1.713436951338372410e+03,1.797196615824384708e+03,1.884995506203622881e+03,1.977019413164340904e+03,2.073462345947543326e+03,2.174526699480548814e+03,2.280422042188076830e+03,2.391365470446294694e+03,2.507582352519347296e+03,2.629306532417139351e+03,2.756779640267972809e+03,2.890251371893736177e+03,3.029979404372796125e+03,3.176229682021537428e+03,3.329276777242483604e+03,3.489403917108880250e+03,3.656901495930902911e+03,3.832067300724386314e+03,4.015206011356527597e+03,4.206629498488861827e+03,4.406658028925206963e+03,4.615619536921241888e+03,4.833844044718161967e+03,5.061664604848131603e+03,5.299420576202533994e+03,5.547456342532608687e+03,5.806114271010555058e+03,6.075735125667061766e+03,6.356656321983473390e+03,6.649211605125074129e+03,6.953727764532171932e+03,7.270523837920827646e+03,7.599905392474025575e+03,7.942163959047353273e+03,8.297571056585171391e+03,8.666377887611748520e+03,9.048811809662762244e+03,9.445074226411114068e+03,9.855330152973876466e+03,1.027970751429320080e+04,1.071828823646733326e+04,1.117110813813248933e+04,1.163815307987561391e+04,1.211935495470562819e+04,1.261457310240455990e+04,1.312359546210454391e+04,1.364612930908229828e+04,1.418179995216301722e+04,1.473013442177873731e+04,1.529056166581981233e+04,1.586239294123613399e+04,1.644482494595786557e+04,1.703692243737825629e+04,1.763762287037247006e+04,1.824572202862061022e+04,1.885987476986688125e+04,1.947855544168069173e+04,2.010007322807427408e+04,2.072254194938639193e+04,2.134390036696301104e+04,2.196188637608479985e+04,2.257405391294456422e+04,2.317771092334163768e+04,2.376996494695580259e+04,2.434768238372738415e+04,2.490753531057861255e+04,2.544593406924086958e+04,2.595909672745120042e+04,2.644296339927085501e+04,2.689330737829612553e+04,2.730568544763575119e+04,2.767554237485896374e+04,2.799809405878401230e+04,2.826851566105743404e+04,2.848190917919799176e+04,2.863347794356411396e+04,2.871846438552712425e+04,2.873238847087657632e+04,2.867108565470714893e+04,2.853092518069965081e+04,2.830892309235348148e+04,2.800292867880962149e+04,2.761189068921640865e+04,2.713591795498419742e+04,2.657674991233356923e+04,2.593755945323311971e+04,2.522366905251121352e+04,2.444192719245012631e+04,2.360167316382156423e+04,2.271358523948743459e+04,2.179099890608202986e+04,2.084783388428009494e+04,1.989963976750063739e+04,1.896183525524719880e+04,1.805182880281405960e+04,1.718425021179292889e+04,1.636797124552326386e+04,1.561144253171444871e+04,1.492961166625942133e+04,1.432941616852722655e+04,1.379555719312968722e+04,1.331421902825578945e+04,1.287641969238723868e+04,1.245949634829450952e+04,1.203505111306450817e+04,1.157671737483630750e+04,1.105941685720918213e+04,1.046714177379057037e+04,9.798900415298707230e+03,9.070941318510962446e+03,8.314733671248108294e+03,7.570586474219838237e+03,6.883273599506636856e+03,6.294836295346478437e+03,5.831111954347822575e+03,5.488065983602173219e+03,5.231475679582026714e+03,5.009097606125535094e+03,4.764348212708737265e+03,4.453598039632169275e+03,4.070205281083184218e+03,3.650307894386470707e+03,3.254011295827807771e+03,2.939192241211710552e+03,2.723696899630585449e+03,2.572314476773470687e+03,2.425956207071790232e+03,2.235222973751194331e+03,2.004106697755880305e+03,1.782828261951842705e+03,1.615467236614018702e+03,1.500052539732944069e+03,1.393507041266800570e+03,1.263820422778025431e+03,1.127917347492887302e+03,1.018665329135762363e+03,9.359650453824256147e+02,8.536530506798833358e+02,7.658376505684059339e+02,6.900377987128144923e+02,6.280954310470075370e+02,5.673753074416582649e+02,5.095844163745742890e+02,4.605107930953101345e+02,4.152908699629912235e+02,3.730722535433195617e+02,3.360062202298502712e+02,3.019432751266447781e+02,2.711375295139318951e+02,2.434605832652748063e+02,2.183089019837481146e+02,1.957273248038880524e+02,1.753451877127577063e+02,1.569673397482554833e+02,1.404209927194158638e+02,1.255440690316991095e+02,1.121822793601828039e+02,1.001883115879642645e+02,8.942791004896807294e+01,7.977940981385340535e+01,7.113292630574872533e+01,6.338970621713211528e+01,5.646016588217696608e+01,5.026295842247682089e+01,4.472425681444465084e+01,3.977699531684285006e+01,3.536050761009361310e+01,3.142003042100404642e+01,2.790617163469840634e+01,2.477443323777710660e+01,2.198474373686700645e+01,1.950103701939803358e+01,1.729087604403152412e+01,1.532509384541342179e+01,1.357749388673481050e+01,1.202457902115343202e+01,1.064528758002758835e+01,9.420751697710864292e+00,8.334079913436468701e+00,7.370161522921526043e+00,6.515487131244417363e+00,5.757986135661854910e+00 diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index f99fde928..4346a16b0 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -27,12 +27,12 @@ def test_camb(): # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965) + pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) assert pkz.shape == (len(redshift), len(wavenumber)) assert allclose(pkz, test_pkz, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965) + pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) assert pkz.shape == (len(redshift), len(wavenumber)) assert allclose(pkz, test_pkz[np.argsort(redshift), :], rtol=1.e-4) From c0bc4d1c81be1bcc6da04348202a29c272942379 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Mon, 24 Aug 2020 15:41:34 +0100 Subject: [PATCH 02/17] codestyle fixes --- skypy/power_spectrum/_camb.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 33920a9c5..c3c8ab638 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -93,12 +93,10 @@ def camb(wavenumber, redshift, cosmology, pars.NonLinear = model.NonLinear_none - results = get_results(pars) - k = wavenumber * (1. / u.Mpc) pk_interp = get_matter_power_interpolator(pars, - nonlinear=False, + nonlinear=False, hubble_units=False, k_hunit=False, kmax=np.max(k.value), zmax=redshift.max()) From 9f561369077631aac7e0bed4938eb451b2362486 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Mon, 24 Aug 2020 16:11:39 +0100 Subject: [PATCH 03/17] more codestyle --- skypy/power_spectrum/_camb.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index c3c8ab638..bd805c6ac 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -61,7 +61,7 @@ def camb(wavenumber, redshift, cosmology, ''' try: - from camb import CAMBparams, get_results, model, get_matter_power_interpolator + from camb import CAMBparams, model, get_matter_power_interpolator except ImportError: raise Exception("camb is required to use skypy.power_spectrum.camb") From b39a06b1f7437203f66716ae7b842d549563ef3e Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Tue, 25 Aug 2020 10:43:45 +0100 Subject: [PATCH 04/17] renamed z_reio variable to match class --- skypy/power_spectrum/_camb.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index bd805c6ac..75208fdc6 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -8,7 +8,7 @@ def camb(wavenumber, redshift, cosmology, - A_s, n_s, z_reion): + A_s, n_s, z_reio): r'''CAMB linear matter power spectrum. Compute the linear matter power spectrum on a two dimensional grid of redshift and wavenumber using CAMB [1]_. @@ -31,7 +31,7 @@ def camb(wavenumber, redshift, cosmology, n_s : float Cosmology parameter, spectral index of scalar perturbation power spectrum - z_reion : float + z_reio : float Cosmology parameter, redshift of re-ionisation Returns @@ -51,7 +51,8 @@ def camb(wavenumber, redshift, cosmology, >>> wavenumber = np.array([1.e-2, 1.e-1, 1e0]) >>> A_s = 2.e-9 >>> n_s = 0.965 - >>> power_spectrum = camb(wavenumber, redshift, cosmology, A_s, n_s) # doctest: +SKIP + >>> z_reio = 10. + >>> power_spectrum = camb(wavenumber, redshift, cosmology, A_s, n_s, z_reio) # doctest: +SKIP References ---------- @@ -86,7 +87,7 @@ def camb(wavenumber, redshift, cosmology, pars.InitPower.ns = n_s pars.InitPower.As = A_s - pars.Reion.redshift = z_reion + pars.Reion.redshift = z_reio pars.set_matter_power(redshifts=list(redshift[redshift_order]), kmax=np.max(wavenumber)) From d5c921a4ebeffdfa375d3aec73b3a5063a57c253 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Tue, 25 Aug 2020 15:27:03 +0100 Subject: [PATCH 05/17] test on a massless neutrino cosmology --- skypy/power_spectrum/_camb.py | 2 +- skypy/power_spectrum/tests/test_camb.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 75208fdc6..9eb46bfe5 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -77,7 +77,7 @@ def camb(wavenumber, redshift, cosmology, omch2=cosmology.Odm0 * h2, omk=cosmology.Ok0, TCMB=cosmology.Tcmb0.value, - mnu=0., # for now, need to solve agreement with CLASS + mnu=np.sum(cosmology.m_nu.to_value(u.eV)), standard_neutrino_neff=cosmology.Neff ) diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index 4346a16b0..d6481cbc9 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -1,5 +1,6 @@ import numpy as np from astropy.cosmology import Planck15 +from astropy import units as u from astropy.units import allclose from astropy.utils.data import get_pkg_data_filename import pytest @@ -24,15 +25,17 @@ def test_camb(): ''' from skypy.power_spectrum import camb + Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*u.eV) + # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) + pkz = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) assert pkz.shape == (len(redshift), len(wavenumber)) assert allclose(pkz, test_pkz, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) + pkz = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) assert pkz.shape == (len(redshift), len(wavenumber)) assert allclose(pkz, test_pkz[np.argsort(redshift), :], rtol=1.e-4) From 47aec8950455b4588bd4cb19cbee115afb457d01 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Tue, 25 Aug 2020 15:39:01 +0100 Subject: [PATCH 06/17] tidied interp evaluation --- skypy/power_spectrum/_camb.py | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 9eb46bfe5..f3dbe6a33 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -12,7 +12,6 @@ def camb(wavenumber, redshift, cosmology, r'''CAMB linear matter power spectrum. Compute the linear matter power spectrum on a two dimensional grid of redshift and wavenumber using CAMB [1]_. - Currently assumes massless neutrinos. Parameters ---------- @@ -89,19 +88,14 @@ def camb(wavenumber, redshift, cosmology, pars.Reion.redshift = z_reio - pars.set_matter_power(redshifts=list(redshift[redshift_order]), - kmax=np.max(wavenumber)) - pars.NonLinear = model.NonLinear_none - k = wavenumber * (1. / u.Mpc) - pk_interp = get_matter_power_interpolator(pars, nonlinear=False, hubble_units=False, k_hunit=False, - kmax=np.max(k.value), - zmax=redshift.max()) + kmax=np.max(wavenumber), + zmax=np.max(redshift)) - pzk = pk_interp.P(redshift[redshift_order], k.value) + pzk = pk_interp.P(redshift[redshift_order], wavenumber) return pzk[redshift_order].reshape(return_shape) From 4c2aed4201ce48ec8054eafe1122cf693a922ead Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Wed, 23 Sep 2020 14:15:12 +0100 Subject: [PATCH 07/17] argsort on wavenumner, units not abbreviated --- skypy/power_spectrum/_camb.py | 7 ++++--- skypy/power_spectrum/tests/test_camb.py | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 3c35f50ef..215f065fb 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -1,5 +1,5 @@ import numpy as np -from astropy import units as u +from astropy import units __all__ = [ @@ -76,12 +76,13 @@ def camb(wavenumber, redshift, cosmology, omch2=cosmology.Odm0 * h2, omk=cosmology.Ok0, TCMB=cosmology.Tcmb0.value, - mnu=np.sum(cosmology.m_nu.to_value(u.eV)), + mnu=np.sum(cosmology.m_nu.to_value(units.eV)), standard_neutrino_neff=cosmology.Neff ) # camb interpolator requires redshifts to be in increasing order redshift_order = np.argsort(redshift) + wavenumber_order = np.argsort(wavenumber) pars.InitPower.ns = n_s pars.InitPower.As = A_s @@ -96,6 +97,6 @@ def camb(wavenumber, redshift, cosmology, kmax=np.max(wavenumber), zmax=np.max(redshift)) - pzk = pk_interp.P(redshift[redshift_order], wavenumber) + pzk = pk_interp.P(redshift[redshift_order], wavenumber[wavenumber_order]) return pzk[redshift_order].reshape(return_shape) diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index d6481cbc9..68bda3308 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -1,6 +1,6 @@ import numpy as np from astropy.cosmology import Planck15 -from astropy import units as u +from astropy import units from astropy.units import allclose from astropy.utils.data import get_pkg_data_filename import pytest @@ -25,7 +25,7 @@ def test_camb(): ''' from skypy.power_spectrum import camb - Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*u.eV) + Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*units.eV) # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] From ff8118dddcd81a29c1aeaa2d0089d5f36f02d043 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Wed, 23 Sep 2020 14:18:52 +0100 Subject: [PATCH 08/17] small change to docstring --- skypy/power_spectrum/_camb.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 215f065fb..5295b6fc0 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -16,7 +16,7 @@ def camb(wavenumber, redshift, cosmology, Parameters ---------- wavenumber : (nk,) array_like - Array of wavenumbers in units of Mpc-1 at which to + Array of wavenumbers in units of [Mpc^-1] at which to evaluate the linear matter power spectrum. redshift : (nz,) array_like Array of redshifts at which to evaluate the linear matter power From 4123124937feac64a3608443744c6e0c96060763 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Wed, 23 Sep 2020 15:21:59 +0100 Subject: [PATCH 09/17] changed to massive neutrino cosmology for test --- skypy/power_spectrum/tests/data/camb_result.txt | 4 ++-- skypy/power_spectrum/tests/test_camb.py | 9 ++++----- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/skypy/power_spectrum/tests/data/camb_result.txt b/skypy/power_spectrum/tests/data/camb_result.txt index 92252880f..62f5af514 100644 --- a/skypy/power_spectrum/tests/data/camb_result.txt +++ b/skypy/power_spectrum/tests/data/camb_result.txt @@ -1,2 +1,2 @@ -1.951467718090812923e+03,2.047355413015059639e+03,2.147942249664320570e+03,2.253455922975439080e+03,2.364135249332563490e+03,2.480230715393552600e+03,2.602004800220892321e+03,2.729732451357789614e+03,2.863700377080795079e+03,3.004207606698225391e+03,3.151567779229795633e+03,3.306109792540796661e+03,3.468177480477853351e+03,3.638130138439293660e+03,3.816341546965158159e+03,4.003200756629046737e+03,4.199115419041609130e+03,4.404512395775370351e+03,4.619835947972834219e+03,4.845548412703719805e+03,5.082130370735760152e+03,5.330081532965835322e+03,5.589922935994270119e+03,5.862197468649691473e+03,6.147467615000623482e+03,6.446316433437832529e+03,6.759350110513191794e+03,7.087198381303833230e+03,7.430511635639694759e+03,7.789961831999057722e+03,8.166243523199450465e+03,8.560074555448774845e+03,8.972196658965209281e+03,9.403375536153513167e+03,9.854396559797458394e+03,1.032606552965292394e+04,1.081920774575706128e+04,1.133466856663955878e+04,1.187331346889330962e+04,1.243602689883712264e+04,1.302370010271323918e+04,1.363723313587922894e+04,1.427753993692420227e+04,1.494554555865394468e+04,1.564216840891513493e+04,1.636832187593372146e+04,1.712491410694219303e+04,1.791284599983201406e+04,1.873300084246003826e+04,1.958624135141176157e+04,2.047338862467828221e+04,2.139522290024275935e+04,2.235247591754984387e+04,2.334582774413689913e+04,2.437589065376312647e+04,2.544320491788672734e+04,2.654821433436691586e+04,2.769126364072809520e+04,2.887257341928234382e+04,3.009224006885297422e+04,3.135022703676796664e+04,3.264635304554540926e+04,3.398023855072411970e+04,3.535131024869107932e+04,3.675877934410735179e+04,3.820163701724504790e+04,3.967860840454194840e+04,4.118815374094589788e+04,4.272841672993027896e+04,4.429723357563979516e+04,4.589209168499738007e+04,4.751013694477191893e+04,4.914811756395819248e+04,5.080239620494191331e+04,5.246886545199059037e+04,5.414297961955046776e+04,5.581965926516590116e+04,5.749335044935840415e+04,5.915796105516699754e+04,6.080690367831488402e+04,6.243292139518957265e+04,6.402821646152414178e+04,6.558435531033109874e+04,6.709238390522886766e+04,6.854262502539403795e+04,6.992487978246195416e+04,7.122822299669367203e+04,7.244128398949046095e+04,7.355207965983722534e+04,7.454831983818174922e+04,7.541713061755853414e+04,7.614553604547506256e+04,7.672033988349030551e+04,7.712861164023388119e+04,7.735753074266789190e+04,7.739502709491767746e+04,7.722988736033445457e+04,7.685233633944913163e+04,7.625433194735940197e+04,7.543007642029343697e+04,7.437674538697990647e+04,7.309463992819112900e+04,7.158844168619326956e+04,6.986669074982407619e+04,6.794371896876742539e+04,6.583797151378869603e+04,6.357461152027807111e+04,6.118240866335591272e+04,5.869728241839793191e+04,5.615672469807612651e+04,5.360261951621113258e+04,5.107649985934264987e+04,4.862526232938425528e+04,4.628831679250510933e+04,4.408955417622345703e+04,4.205173200600593555e+04,4.021511624216157361e+04,3.859839753439852211e+04,3.716036843242248142e+04,3.586381443878867867e+04,3.468453895314828696e+04,3.356149395968425233e+04,3.241818535104104376e+04,3.118359447894872574e+04,2.979017379750102191e+04,2.819479405945881444e+04,2.639478279264966477e+04,2.443391776285641026e+04,2.239695615484797236e+04,2.039248890171610765e+04,1.854111240765767070e+04,1.695606911182616750e+04,1.570695819067602861e+04,1.478291148758148483e+04,1.409175095922004766e+04,1.349274308610057597e+04,1.283347407430594831e+04,1.199642458914418057e+04,1.096369726382487715e+04,9.832641520357718036e+03,8.765159427965685609e+03,7.917147708392681125e+03,7.336678293851523449e+03,6.928908795489106524e+03,6.534669040834439329e+03,6.020902258409794740e+03,5.398357239129433765e+03,4.802310363673157553e+03,4.351498604398076168e+03,4.040612305614688921e+03,3.753616527251836033e+03,3.404286081011387978e+03,3.038211574671753169e+03,2.743924816005142020e+03,2.521160134411403760e+03,2.299440439590581718e+03,2.062896454214474943e+03,1.858718766435391672e+03,1.691867416194632142e+03,1.528309204892073012e+03,1.372640636093422927e+03,1.240453689563056514e+03,1.118647049900961974e+03,1.004925209992125474e+03,9.050822515665504397e+02,8.133287175760272021e+02,7.303488344769367586e+02,6.557970255223581262e+02,5.880470601438555605e+02,5.272204042909472719e+02,4.723181549254862830e+02,4.228146752611165198e+02,3.782445991916398498e+02,3.381713890378269980e+02,3.021794535534319266e+02,2.698719637885699854e+02,2.408872646394593744e+02,2.148976224233522601e+02,1.916070438988876958e+02,1.707495308064259234e+02,1.520837836375599466e+02,1.353906872571616304e+02,1.204713795102326372e+02,1.071452058841732224e+02,9.524874954716683817e+01,8.463449556128861673e+01,7.516939808873625850e+01,6.673359640795834480e+01,5.921915363798756715e+01,5.252892141050831754e+01,4.657552630947511574e+01,4.128040235204898778e+01,3.657298447884389958e+01,3.238997913518370808e+01,2.867465333344764034e+01,2.537618393402373940e+01,2.244907185512865411e+01,1.985261455322502044e+01,1.755042268317478360e+01,1.550998238003064245e+01 -7.236032243147496956e+02,7.591626398288361770e+02,7.964653189281094683e+02,8.355957936448312466e+02,8.766427983693936312e+02,9.196994770938588317e+02,9.648633807265121050e+02,1.012236641257329552e+03,1.061925808602714142e+03,1.114042065190596304e+03,1.168702056828233935e+03,1.226028134539119492e+03,1.286148203314464581e+03,1.349195922423463799e+03,1.415310401588935292e+03,1.484636491768611450e+03,1.557325923975971364e+03,1.633537554525514224e+03,1.713436951338372410e+03,1.797196615824384708e+03,1.884995506203622881e+03,1.977019413164340904e+03,2.073462345947543326e+03,2.174526699480548814e+03,2.280422042188076830e+03,2.391365470446294694e+03,2.507582352519347296e+03,2.629306532417139351e+03,2.756779640267972809e+03,2.890251371893736177e+03,3.029979404372796125e+03,3.176229682021537428e+03,3.329276777242483604e+03,3.489403917108880250e+03,3.656901495930902911e+03,3.832067300724386314e+03,4.015206011356527597e+03,4.206629498488861827e+03,4.406658028925206963e+03,4.615619536921241888e+03,4.833844044718161967e+03,5.061664604848131603e+03,5.299420576202533994e+03,5.547456342532608687e+03,5.806114271010555058e+03,6.075735125667061766e+03,6.356656321983473390e+03,6.649211605125074129e+03,6.953727764532171932e+03,7.270523837920827646e+03,7.599905392474025575e+03,7.942163959047353273e+03,8.297571056585171391e+03,8.666377887611748520e+03,9.048811809662762244e+03,9.445074226411114068e+03,9.855330152973876466e+03,1.027970751429320080e+04,1.071828823646733326e+04,1.117110813813248933e+04,1.163815307987561391e+04,1.211935495470562819e+04,1.261457310240455990e+04,1.312359546210454391e+04,1.364612930908229828e+04,1.418179995216301722e+04,1.473013442177873731e+04,1.529056166581981233e+04,1.586239294123613399e+04,1.644482494595786557e+04,1.703692243737825629e+04,1.763762287037247006e+04,1.824572202862061022e+04,1.885987476986688125e+04,1.947855544168069173e+04,2.010007322807427408e+04,2.072254194938639193e+04,2.134390036696301104e+04,2.196188637608479985e+04,2.257405391294456422e+04,2.317771092334163768e+04,2.376996494695580259e+04,2.434768238372738415e+04,2.490753531057861255e+04,2.544593406924086958e+04,2.595909672745120042e+04,2.644296339927085501e+04,2.689330737829612553e+04,2.730568544763575119e+04,2.767554237485896374e+04,2.799809405878401230e+04,2.826851566105743404e+04,2.848190917919799176e+04,2.863347794356411396e+04,2.871846438552712425e+04,2.873238847087657632e+04,2.867108565470714893e+04,2.853092518069965081e+04,2.830892309235348148e+04,2.800292867880962149e+04,2.761189068921640865e+04,2.713591795498419742e+04,2.657674991233356923e+04,2.593755945323311971e+04,2.522366905251121352e+04,2.444192719245012631e+04,2.360167316382156423e+04,2.271358523948743459e+04,2.179099890608202986e+04,2.084783388428009494e+04,1.989963976750063739e+04,1.896183525524719880e+04,1.805182880281405960e+04,1.718425021179292889e+04,1.636797124552326386e+04,1.561144253171444871e+04,1.492961166625942133e+04,1.432941616852722655e+04,1.379555719312968722e+04,1.331421902825578945e+04,1.287641969238723868e+04,1.245949634829450952e+04,1.203505111306450817e+04,1.157671737483630750e+04,1.105941685720918213e+04,1.046714177379057037e+04,9.798900415298707230e+03,9.070941318510962446e+03,8.314733671248108294e+03,7.570586474219838237e+03,6.883273599506636856e+03,6.294836295346478437e+03,5.831111954347822575e+03,5.488065983602173219e+03,5.231475679582026714e+03,5.009097606125535094e+03,4.764348212708737265e+03,4.453598039632169275e+03,4.070205281083184218e+03,3.650307894386470707e+03,3.254011295827807771e+03,2.939192241211710552e+03,2.723696899630585449e+03,2.572314476773470687e+03,2.425956207071790232e+03,2.235222973751194331e+03,2.004106697755880305e+03,1.782828261951842705e+03,1.615467236614018702e+03,1.500052539732944069e+03,1.393507041266800570e+03,1.263820422778025431e+03,1.127917347492887302e+03,1.018665329135762363e+03,9.359650453824256147e+02,8.536530506798833358e+02,7.658376505684059339e+02,6.900377987128144923e+02,6.280954310470075370e+02,5.673753074416582649e+02,5.095844163745742890e+02,4.605107930953101345e+02,4.152908699629912235e+02,3.730722535433195617e+02,3.360062202298502712e+02,3.019432751266447781e+02,2.711375295139318951e+02,2.434605832652748063e+02,2.183089019837481146e+02,1.957273248038880524e+02,1.753451877127577063e+02,1.569673397482554833e+02,1.404209927194158638e+02,1.255440690316991095e+02,1.121822793601828039e+02,1.001883115879642645e+02,8.942791004896807294e+01,7.977940981385340535e+01,7.113292630574872533e+01,6.338970621713211528e+01,5.646016588217696608e+01,5.026295842247682089e+01,4.472425681444465084e+01,3.977699531684285006e+01,3.536050761009361310e+01,3.142003042100404642e+01,2.790617163469840634e+01,2.477443323777710660e+01,2.198474373686700645e+01,1.950103701939803358e+01,1.729087604403152412e+01,1.532509384541342179e+01,1.357749388673481050e+01,1.202457902115343202e+01,1.064528758002758835e+01,9.420751697710864292e+00,8.334079913436468701e+00,7.370161522921526043e+00,6.515487131244417363e+00,5.757986135661854910e+00 +1.938237119497023514e+03 2.033480877732498129e+03 2.133392361215547226e+03 2.238199557662894222e+03 2.348140165780609550e+03 2.463461934271990685e+03 2.584425564318605211e+03 2.711305353383179863e+03 2.844386600502214606e+03 2.983966037629961647e+03 3.130356118426995636e+03 3.283885706961626056e+03 3.444896196361852617e+03 3.613742071863042383e+03 3.790796226269676026e+03 3.976450602317721859e+03 4.171111310496261467e+03 4.375199375636912919e+03 4.589156816082082514e+03 4.813447196225026346e+03 5.048550233739435498e+03 5.294962698503289175e+03 5.553203973099104587e+03 5.823816572887521943e+03 6.107362241921599889e+03 6.404422796309818295e+03 6.715602453952121323e+03 7.041528422230898286e+03 7.382849443325404536e+03 7.740236529852999411e+03 8.114383683174457474e+03 8.506008264109852462e+03 8.915848229233473830e+03 9.344662837033341930e+03 9.793233172329199078e+03 1.026236227395377318e+04 1.075287189380179552e+04 1.126560252952013070e+04 1.180140871696771683e+04 1.236115934974771517e+04 1.294573542229604936e+04 1.355602931667879238e+04 1.419293683224413871e+04 1.485735687757466258e+04 1.555018532401242010e+04 1.627231401032959184e+04 1.702462246242709807e+04 1.780797614018037348e+04 1.862321415258925117e+04 1.947114783561477088e+04 2.035255057221979223e+04 2.126815437614812981e+04 2.221863026244337016e+04 2.320458680502490097e+04 2.422655895182141467e+04 2.528500405861194304e+04 2.638028735243949995e+04 2.751267521303944523e+04 2.868230568908906935e+04 2.988918762532247274e+04 3.113319216862500616e+04 3.241404309916475540e+04 3.373127907583692286e+04 3.508425232988927019e+04 3.647210564252726181e+04 3.789376639598687325e+04 3.934790135253586050e+04 4.083291748009042931e+04 4.234691232737500832e+04 4.388768924672165303e+04 4.545276065604363976e+04 4.703931487822531199e+04 4.864400804544963466e+04 5.026311085654659109e+04 5.189291114155262767e+04 5.352937212295935024e+04 5.516690721634055808e+04 5.679906706545926863e+04 5.841962112008470285e+04 6.002224786865645729e+04 6.160034261237797909e+04 6.314687867814932542e+04 6.465366680613913195e+04 6.611179071123150061e+04 6.751165491678293620e+04 6.884318637208463042e+04 7.009572362174701993e+04 7.125824591953711933e+04 7.231925810725476185e+04 7.326700014909518359e+04 7.408900398171934648e+04 7.477267488089254766e+04 7.530529293028927350e+04 7.567444039118601358e+04 7.586781909309758339e+04 7.587387361757487815e+04 7.568188409962291189e+04 7.528254519445350161e+04 7.466827712552377488e+04 7.383369214652816299e+04 7.277626744111823791e+04 7.149651414886189741e+04 6.999922189002826053e+04 6.829293048596933659e+04 6.639181805428148073e+04 6.431404652589472244e+04 6.208430789542764251e+04 5.973076499842629710e+04 5.728850234947272838e+04 5.479409780120193318e+04 5.228838819919160596e+04 4.981179316813583864e+04 4.740984297836804762e+04 4.512087838092840684e+04 4.296838895033735753e+04 4.097437420007140463e+04 3.917681738631798362e+04 3.759408894518086890e+04 3.618954489654158533e+04 3.492138575760865933e+04 3.375124656008202874e+04 3.263532396794898523e+04 3.151861714397486503e+04 3.032874809207860017e+04 2.898592463560428223e+04 2.743618690896175031e+04 2.567485616834729444e+04 2.375313608352699521e+04 2.176574652607356620e+04 1.982156135466891283e+04 1.802855502204020013e+04 1.648584998787313452e+04 1.526245648914335470e+04 1.435930307142175116e+04 1.369156249758880585e+04 1.311307356588952280e+04 1.246842268501784565e+04 1.165150226515151189e+04 1.065089294878422879e+04 9.552852823646444449e+03 8.512766571801246755e+03 7.689387883508730738e+03 7.126239184267302335e+03 6.728480753163247755e+03 6.346269348664473000e+03 5.847220679792134433e+03 5.242262135427591602e+03 4.663497251668834906e+03 4.225393261710382831e+03 3.923343745987492639e+03 3.644788834620067973e+03 3.305362436940259613e+03 2.950085713003068577e+03 2.664102401738479784e+03 2.447719375757351372e+03 2.232660257730331523e+03 2.002799949971260048e+03 1.804485614656616235e+03 1.642591298910032492e+03 1.483817687190139623e+03 1.332625688197262662e+03 1.204258152905350926e+03 1.086007144020557007e+03 9.756008619701484577e+02 8.786693625790009037e+02 7.895858760686617188e+02 7.090076882760166654e+02 6.366239446159752333e+02 5.708447618392178811e+02 5.118166720036654169e+02 4.585337540134033816e+02 4.104785671321039899e+02 3.672044322748638479e+02 3.282914405032612990e+02 2.933432063424322109e+02 2.619767200135979692e+02 2.338392824752652928e+02 2.086115041644046642e+02 1.860043549136560728e+02 1.657579017463316120e+02 1.476381055732929042e+02 1.314325250447624285e+02 1.169484506462966067e+02 1.040111608198491950e+02 9.246213060839650666e+01 8.215810665546331393e+01 7.296987630955514703e+01 6.478098473720514505e+01 5.748654483751767685e+01 5.099216596582981254e+01 4.521298338871749678e+01 4.007275335221453361e+01 3.550302140904990011e+01 3.144235814230841086e+01 2.783569442230885471e+01 2.463370031501177237e+01 2.179221524325155812e+01 1.927173113130510984e+01 1.703692405555526079e+01 1.505623024674271448e+01 +7.176815422031822891e+02 7.529516239833551481e+02 7.899507365680883595e+02 8.287635290195048583e+02 8.694781463118131342e+02 9.121863388292655372e+02 9.569847783726260104e+02 1.003975317113930373e+03 1.053263888675638327e+03 1.104960659240095310e+03 1.159181568159036487e+03 1.216048588530812822e+03 1.275688509824594576e+03 1.338233150685432975e+03 1.403821020471465772e+03 1.472597559326912005e+03 1.544713646482534841e+03 1.620325881713448553e+03 1.699598604361462549e+03 1.782704099061792704e+03 1.869820676975560445e+03 1.961133014122634904e+03 2.056834207282181069e+03 2.157125958775804520e+03 2.262216969410314505e+03 2.372323267571116048e+03 2.487669282258685598e+03 2.608488032106867649e+03 2.735020223299448389e+03 2.867514521228495141e+03 3.006227754413428556e+03 3.151425116315464948e+03 3.303379930013642024e+03 3.462373712809760946e+03 3.628694742113631492e+03 3.802638372856077694e+03 3.984508060103565185e+03 4.174615057643571163e+03 4.373275147143160211e+03 4.580808957835160072e+03 4.797542778952536537e+03 5.023807975067462394e+03 5.259936571046727295e+03 5.506261468025467366e+03 5.763116365850467446e+03 6.030834678510655067e+03 6.309742189530077667e+03 6.600157574259610556e+03 6.902392996469196987e+03 7.216752310388699698e+03 7.543521735151048233e+03 7.882970020405715331e+03 8.235346525683242362e+03 8.600879529078552878e+03 8.979768955442204970e+03 9.372185265092310146e+03 9.778264010367980518e+03 1.019810382899468459e+04 1.063175766637230481e+04 1.107923155909895104e+04 1.154047842696860062e+04 1.201539563383648601e+04 1.250381453902390967e+04 1.300549876812895855e+04 1.352013238015632669e+04 1.404731861402069262e+04 1.458656471325802158e+04 1.513728201441073725e+04 1.569876755327228602e+04 1.627020940052037986e+04 1.685068659212797138e+04 1.743915755680112125e+04 1.803438477029585920e+04 1.863498893415778366e+04 1.923960028568133202e+04 1.984672907190576007e+04 2.045430128688762125e+04 2.105991930192214568e+04 2.166127417750818859e+04 2.225602627074845077e+04 2.284172872810389163e+04 2.341577736755484148e+04 2.397513807291571356e+04 2.451650730857579401e+04 2.503632836410122763e+04 2.553086602041504375e+04 2.599616279860441500e+04 2.642812695840868764e+04 2.682249649764079004e+04 2.717491227604469168e+04 2.748074806495666053e+04 2.773532783061756709e+04 2.793392501942117815e+04 2.807192402717313962e+04 2.814475803501449991e+04 2.814813560779631734e+04 2.807806949779771094e+04 2.793109452756302926e+04 2.770438411811922197e+04 2.739592469740668457e+04 2.700476824808461242e+04 2.653109209266393736e+04 2.597665664964097596e+04 2.534461430264738738e+04 2.464021541153754515e+04 2.387019045218198153e+04 2.304369193572026415e+04 2.217116235477637383e+04 2.126561766396100211e+04 2.034063058087829268e+04 1.941135496399542535e+04 1.849279348095068053e+04 1.760185306669557031e+04 1.675277454950492756e+04 1.595428466518949790e+04 1.521455840412883845e+04 1.454770890480856178e+04 1.396056825600984848e+04 1.343953801421319076e+04 1.296910354641307276e+04 1.253502425005816076e+04 1.212103445402327998e+04 1.170670807537353539e+04 1.126516528472776008e+04 1.076676305431263972e+04 1.019145379846073592e+04 9.537496008884312687e+03 8.823902572883138419e+03 8.085857061351669472e+03 7.363812492939808180e+03 6.697882775753157148e+03 6.124904150814820241e+03 5.670522442172639785e+03 5.335096438965158086e+03 5.087119124798823577e+03 4.872283976379614614e+03 4.632853052553450652e+03 4.329394818557745566e+03 3.957667300437422455e+03 3.549718024855537806e+03 3.163287086144263867e+03 2.857369671889140591e+03 2.648142452411787417e+03 2.500367499347449211e+03 2.358364267621969702e+03 2.172937343709643301e+03 1.948145014573460458e+03 1.733081348791279197e+03 1.570285534033192562e+03 1.458048195538035770e+03 1.354539518933324189e+03 1.228405921555774739e+03 1.096379053268354937e+03 9.901024298876520788e+02 9.096905982651049953e+02 8.297692101845592560e+02 7.443458318945880592e+02 6.706452813726227760e+02 6.104795108035727935e+02 5.514728263910532178e+02 4.952831359210021560e+02 4.475757716932886296e+02 4.036279116100415649e+02 3.625953271144339283e+02 3.265704165570433020e+02 2.934620405706189672e+02 2.635145609452568465e+02 2.366124947679755337e+02 2.121649202393778069e+02 1.902265416790131098e+02 1.704232825308015151e+02 1.525628513712574090e+02 1.364792977614004030e+02 1.220166020433432124e+02 1.090274684080932133e+02 9.736954473740587446e+01 8.691174008573896970e+01 7.753534586815945318e+01 6.913293889969325789e+01 6.160791462299716414e+01 5.487329482869714781e+01 4.885012677493897115e+01 4.346678988662728926e+01 3.865834761419159094e+01 3.436588108661515406e+01 3.053614710697587498e+01 2.712112112603330871e+01 2.407752039804179134e+01 2.136636186453862152e+01 1.895256383539820533e+01 1.680458494636301126e+01 1.489408785003885249e+01 1.319563013091273262e+01 1.168638024909456341e+01 1.034587054961751917e+01 9.155766446575828610e+00 8.099654638551152530e+00 7.162851014683812245e+00 6.332226587634928627e+00 5.596049909588766802e+00 diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index 68bda3308..b4cbb22ea 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -4,10 +4,11 @@ from astropy.units import allclose from astropy.utils.data import get_pkg_data_filename import pytest +import pdb # load the external camb result to test against camb_result_filename = get_pkg_data_filename('data/camb_result.txt') -test_pkz = np.loadtxt(camb_result_filename, delimiter=',') +test_pkz = np.loadtxt(camb_result_filename) # try to import the requirement, if it doesn't exist, skip test try: @@ -25,17 +26,15 @@ def test_camb(): ''' from skypy.power_spectrum import camb - Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*units.eV) - # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pkz = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) + pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) assert pkz.shape == (len(redshift), len(wavenumber)) assert allclose(pkz, test_pkz, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pkz = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) + pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) assert pkz.shape == (len(redshift), len(wavenumber)) assert allclose(pkz, test_pkz[np.argsort(redshift), :], rtol=1.e-4) From b6b690191d5e0daa5f260eeb59f4b4e217ebc535 Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Wed, 23 Sep 2020 17:13:22 +0100 Subject: [PATCH 10/17] correct test variable names --- skypy/power_spectrum/tests/data/camb_result.txt | 4 ++-- skypy/power_spectrum/tests/test_camb.py | 16 +++++++++------- skypy/power_spectrum/tests/test_class.py | 8 +++----- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/skypy/power_spectrum/tests/data/camb_result.txt b/skypy/power_spectrum/tests/data/camb_result.txt index 62f5af514..10df15576 100644 --- a/skypy/power_spectrum/tests/data/camb_result.txt +++ b/skypy/power_spectrum/tests/data/camb_result.txt @@ -1,2 +1,2 @@ -1.938237119497023514e+03 2.033480877732498129e+03 2.133392361215547226e+03 2.238199557662894222e+03 2.348140165780609550e+03 2.463461934271990685e+03 2.584425564318605211e+03 2.711305353383179863e+03 2.844386600502214606e+03 2.983966037629961647e+03 3.130356118426995636e+03 3.283885706961626056e+03 3.444896196361852617e+03 3.613742071863042383e+03 3.790796226269676026e+03 3.976450602317721859e+03 4.171111310496261467e+03 4.375199375636912919e+03 4.589156816082082514e+03 4.813447196225026346e+03 5.048550233739435498e+03 5.294962698503289175e+03 5.553203973099104587e+03 5.823816572887521943e+03 6.107362241921599889e+03 6.404422796309818295e+03 6.715602453952121323e+03 7.041528422230898286e+03 7.382849443325404536e+03 7.740236529852999411e+03 8.114383683174457474e+03 8.506008264109852462e+03 8.915848229233473830e+03 9.344662837033341930e+03 9.793233172329199078e+03 1.026236227395377318e+04 1.075287189380179552e+04 1.126560252952013070e+04 1.180140871696771683e+04 1.236115934974771517e+04 1.294573542229604936e+04 1.355602931667879238e+04 1.419293683224413871e+04 1.485735687757466258e+04 1.555018532401242010e+04 1.627231401032959184e+04 1.702462246242709807e+04 1.780797614018037348e+04 1.862321415258925117e+04 1.947114783561477088e+04 2.035255057221979223e+04 2.126815437614812981e+04 2.221863026244337016e+04 2.320458680502490097e+04 2.422655895182141467e+04 2.528500405861194304e+04 2.638028735243949995e+04 2.751267521303944523e+04 2.868230568908906935e+04 2.988918762532247274e+04 3.113319216862500616e+04 3.241404309916475540e+04 3.373127907583692286e+04 3.508425232988927019e+04 3.647210564252726181e+04 3.789376639598687325e+04 3.934790135253586050e+04 4.083291748009042931e+04 4.234691232737500832e+04 4.388768924672165303e+04 4.545276065604363976e+04 4.703931487822531199e+04 4.864400804544963466e+04 5.026311085654659109e+04 5.189291114155262767e+04 5.352937212295935024e+04 5.516690721634055808e+04 5.679906706545926863e+04 5.841962112008470285e+04 6.002224786865645729e+04 6.160034261237797909e+04 6.314687867814932542e+04 6.465366680613913195e+04 6.611179071123150061e+04 6.751165491678293620e+04 6.884318637208463042e+04 7.009572362174701993e+04 7.125824591953711933e+04 7.231925810725476185e+04 7.326700014909518359e+04 7.408900398171934648e+04 7.477267488089254766e+04 7.530529293028927350e+04 7.567444039118601358e+04 7.586781909309758339e+04 7.587387361757487815e+04 7.568188409962291189e+04 7.528254519445350161e+04 7.466827712552377488e+04 7.383369214652816299e+04 7.277626744111823791e+04 7.149651414886189741e+04 6.999922189002826053e+04 6.829293048596933659e+04 6.639181805428148073e+04 6.431404652589472244e+04 6.208430789542764251e+04 5.973076499842629710e+04 5.728850234947272838e+04 5.479409780120193318e+04 5.228838819919160596e+04 4.981179316813583864e+04 4.740984297836804762e+04 4.512087838092840684e+04 4.296838895033735753e+04 4.097437420007140463e+04 3.917681738631798362e+04 3.759408894518086890e+04 3.618954489654158533e+04 3.492138575760865933e+04 3.375124656008202874e+04 3.263532396794898523e+04 3.151861714397486503e+04 3.032874809207860017e+04 2.898592463560428223e+04 2.743618690896175031e+04 2.567485616834729444e+04 2.375313608352699521e+04 2.176574652607356620e+04 1.982156135466891283e+04 1.802855502204020013e+04 1.648584998787313452e+04 1.526245648914335470e+04 1.435930307142175116e+04 1.369156249758880585e+04 1.311307356588952280e+04 1.246842268501784565e+04 1.165150226515151189e+04 1.065089294878422879e+04 9.552852823646444449e+03 8.512766571801246755e+03 7.689387883508730738e+03 7.126239184267302335e+03 6.728480753163247755e+03 6.346269348664473000e+03 5.847220679792134433e+03 5.242262135427591602e+03 4.663497251668834906e+03 4.225393261710382831e+03 3.923343745987492639e+03 3.644788834620067973e+03 3.305362436940259613e+03 2.950085713003068577e+03 2.664102401738479784e+03 2.447719375757351372e+03 2.232660257730331523e+03 2.002799949971260048e+03 1.804485614656616235e+03 1.642591298910032492e+03 1.483817687190139623e+03 1.332625688197262662e+03 1.204258152905350926e+03 1.086007144020557007e+03 9.756008619701484577e+02 8.786693625790009037e+02 7.895858760686617188e+02 7.090076882760166654e+02 6.366239446159752333e+02 5.708447618392178811e+02 5.118166720036654169e+02 4.585337540134033816e+02 4.104785671321039899e+02 3.672044322748638479e+02 3.282914405032612990e+02 2.933432063424322109e+02 2.619767200135979692e+02 2.338392824752652928e+02 2.086115041644046642e+02 1.860043549136560728e+02 1.657579017463316120e+02 1.476381055732929042e+02 1.314325250447624285e+02 1.169484506462966067e+02 1.040111608198491950e+02 9.246213060839650666e+01 8.215810665546331393e+01 7.296987630955514703e+01 6.478098473720514505e+01 5.748654483751767685e+01 5.099216596582981254e+01 4.521298338871749678e+01 4.007275335221453361e+01 3.550302140904990011e+01 3.144235814230841086e+01 2.783569442230885471e+01 2.463370031501177237e+01 2.179221524325155812e+01 1.927173113130510984e+01 1.703692405555526079e+01 1.505623024674271448e+01 -7.176815422031822891e+02 7.529516239833551481e+02 7.899507365680883595e+02 8.287635290195048583e+02 8.694781463118131342e+02 9.121863388292655372e+02 9.569847783726260104e+02 1.003975317113930373e+03 1.053263888675638327e+03 1.104960659240095310e+03 1.159181568159036487e+03 1.216048588530812822e+03 1.275688509824594576e+03 1.338233150685432975e+03 1.403821020471465772e+03 1.472597559326912005e+03 1.544713646482534841e+03 1.620325881713448553e+03 1.699598604361462549e+03 1.782704099061792704e+03 1.869820676975560445e+03 1.961133014122634904e+03 2.056834207282181069e+03 2.157125958775804520e+03 2.262216969410314505e+03 2.372323267571116048e+03 2.487669282258685598e+03 2.608488032106867649e+03 2.735020223299448389e+03 2.867514521228495141e+03 3.006227754413428556e+03 3.151425116315464948e+03 3.303379930013642024e+03 3.462373712809760946e+03 3.628694742113631492e+03 3.802638372856077694e+03 3.984508060103565185e+03 4.174615057643571163e+03 4.373275147143160211e+03 4.580808957835160072e+03 4.797542778952536537e+03 5.023807975067462394e+03 5.259936571046727295e+03 5.506261468025467366e+03 5.763116365850467446e+03 6.030834678510655067e+03 6.309742189530077667e+03 6.600157574259610556e+03 6.902392996469196987e+03 7.216752310388699698e+03 7.543521735151048233e+03 7.882970020405715331e+03 8.235346525683242362e+03 8.600879529078552878e+03 8.979768955442204970e+03 9.372185265092310146e+03 9.778264010367980518e+03 1.019810382899468459e+04 1.063175766637230481e+04 1.107923155909895104e+04 1.154047842696860062e+04 1.201539563383648601e+04 1.250381453902390967e+04 1.300549876812895855e+04 1.352013238015632669e+04 1.404731861402069262e+04 1.458656471325802158e+04 1.513728201441073725e+04 1.569876755327228602e+04 1.627020940052037986e+04 1.685068659212797138e+04 1.743915755680112125e+04 1.803438477029585920e+04 1.863498893415778366e+04 1.923960028568133202e+04 1.984672907190576007e+04 2.045430128688762125e+04 2.105991930192214568e+04 2.166127417750818859e+04 2.225602627074845077e+04 2.284172872810389163e+04 2.341577736755484148e+04 2.397513807291571356e+04 2.451650730857579401e+04 2.503632836410122763e+04 2.553086602041504375e+04 2.599616279860441500e+04 2.642812695840868764e+04 2.682249649764079004e+04 2.717491227604469168e+04 2.748074806495666053e+04 2.773532783061756709e+04 2.793392501942117815e+04 2.807192402717313962e+04 2.814475803501449991e+04 2.814813560779631734e+04 2.807806949779771094e+04 2.793109452756302926e+04 2.770438411811922197e+04 2.739592469740668457e+04 2.700476824808461242e+04 2.653109209266393736e+04 2.597665664964097596e+04 2.534461430264738738e+04 2.464021541153754515e+04 2.387019045218198153e+04 2.304369193572026415e+04 2.217116235477637383e+04 2.126561766396100211e+04 2.034063058087829268e+04 1.941135496399542535e+04 1.849279348095068053e+04 1.760185306669557031e+04 1.675277454950492756e+04 1.595428466518949790e+04 1.521455840412883845e+04 1.454770890480856178e+04 1.396056825600984848e+04 1.343953801421319076e+04 1.296910354641307276e+04 1.253502425005816076e+04 1.212103445402327998e+04 1.170670807537353539e+04 1.126516528472776008e+04 1.076676305431263972e+04 1.019145379846073592e+04 9.537496008884312687e+03 8.823902572883138419e+03 8.085857061351669472e+03 7.363812492939808180e+03 6.697882775753157148e+03 6.124904150814820241e+03 5.670522442172639785e+03 5.335096438965158086e+03 5.087119124798823577e+03 4.872283976379614614e+03 4.632853052553450652e+03 4.329394818557745566e+03 3.957667300437422455e+03 3.549718024855537806e+03 3.163287086144263867e+03 2.857369671889140591e+03 2.648142452411787417e+03 2.500367499347449211e+03 2.358364267621969702e+03 2.172937343709643301e+03 1.948145014573460458e+03 1.733081348791279197e+03 1.570285534033192562e+03 1.458048195538035770e+03 1.354539518933324189e+03 1.228405921555774739e+03 1.096379053268354937e+03 9.901024298876520788e+02 9.096905982651049953e+02 8.297692101845592560e+02 7.443458318945880592e+02 6.706452813726227760e+02 6.104795108035727935e+02 5.514728263910532178e+02 4.952831359210021560e+02 4.475757716932886296e+02 4.036279116100415649e+02 3.625953271144339283e+02 3.265704165570433020e+02 2.934620405706189672e+02 2.635145609452568465e+02 2.366124947679755337e+02 2.121649202393778069e+02 1.902265416790131098e+02 1.704232825308015151e+02 1.525628513712574090e+02 1.364792977614004030e+02 1.220166020433432124e+02 1.090274684080932133e+02 9.736954473740587446e+01 8.691174008573896970e+01 7.753534586815945318e+01 6.913293889969325789e+01 6.160791462299716414e+01 5.487329482869714781e+01 4.885012677493897115e+01 4.346678988662728926e+01 3.865834761419159094e+01 3.436588108661515406e+01 3.053614710697587498e+01 2.712112112603330871e+01 2.407752039804179134e+01 2.136636186453862152e+01 1.895256383539820533e+01 1.680458494636301126e+01 1.489408785003885249e+01 1.319563013091273262e+01 1.168638024909456341e+01 1.034587054961751917e+01 9.155766446575828610e+00 8.099654638551152530e+00 7.162851014683812245e+00 6.332226587634928627e+00 5.596049909588766802e+00 +1.951467953028518423e+03 2.047355662200237475e+03 2.147942571041839074e+03 2.253456176398166463e+03 2.364135257613643716e+03 2.480230454729989106e+03 2.602004382095142319e+03 2.729732090151051580e+03 2.863700248845566421e+03 3.004207685537056022e+03 3.151567934419391804e+03 3.306109914678594123e+03 3.468177597474039885e+03 3.638130510431554740e+03 3.816342384856674471e+03 4.003201908811370686e+03 4.199116428893365992e+03 4.404512629835699045e+03 4.619835263730736187e+03 4.845547698371227852e+03 5.082130323292906724e+03 5.330081557656835685e+03 5.589922443435890273e+03 5.862197031123128909e+03 6.147467952187092123e+03 6.446317458040083693e+03 6.759351243075480852e+03 7.087198880512271899e+03 7.430511096702673967e+03 7.789960546490367051e+03 8.166242217572323170e+03 8.560074100180570895e+03 8.972197356977507297e+03 9.403376579396694069e+03 9.854396751745349320e+03 1.032606388328500725e+04 1.081920465604906531e+04 1.133466646726639556e+04 1.187331381762450837e+04 1.243602811369298979e+04 1.302370101595955930e+04 1.363723510196097232e+04 1.427754329328277527e+04 1.494554742784306472e+04 1.564216730710496813e+04 1.636832047467135999e+04 1.712491523104660155e+04 1.791284980930371239e+04 1.873300572780607763e+04 1.958624465214885277e+04 2.047338927997971041e+04 2.139522271895423182e+04 2.235247710045197164e+04 2.334583113104266522e+04 2.437589597400594721e+04 2.544321078013503939e+04 2.654821876725417314e+04 2.769126449847312324e+04 2.887257199247020253e+04 3.009224200831472263e+04 3.135023346305057566e+04 3.264635654159926708e+04 3.398023583288770169e+04 3.535130762500211131e+04 3.675878093306988740e+04 3.820163888029805821e+04 3.967860832454846968e+04 4.118815529904353752e+04 4.272842235682344472e+04 4.429724065068752680e+04 4.589209737778806448e+04 4.751014023437849391e+04 4.914811976971145486e+04 5.080239990299563942e+04 5.246886791323556827e+04 5.414297103314798005e+04 5.581964163568593358e+04 5.749334152797888237e+04 5.915796683737868443e+04 6.080690887464614934e+04 6.243291713791269285e+04 6.402820836572236294e+04 6.558435051099031989e+04 6.709238473217263527e+04 6.854263163179717958e+04 6.992488923358105239e+04 7.122823302785726264e+04 7.244129152744697058e+04 7.355208350144402357e+04 7.454831989231127955e+04 7.541712961718917359e+04 7.614553495304225362e+04 7.672033761037420481e+04 7.712860375362024934e+04 7.735752102507845848e+04 7.739502327323805366e+04 7.722989105200165068e+04 7.685233759749012825e+04 7.625432651111189625e+04 7.543006357393684448e+04 7.437673072298415354e+04 7.309462719454399485e+04 7.158843764183382154e+04 6.986669480334398395e+04 6.794372915265845950e+04 6.583797611601816607e+04 6.357460993050544494e+04 6.118239692662088055e+04 5.869726202009318513e+04 5.615671080889238510e+04 5.360264109504184307e+04 5.107653895607747836e+04 4.862520712265850307e+04 4.628824159187838086e+04 4.408976473949585488e+04 4.205223488904365513e+04 4.021529693256410974e+04 3.859828452291293070e+04 3.716046562280177022e+04 3.586402007377146947e+04 3.468452190833451459e+04 3.356147061660000327e+04 3.241821117774700178e+04 3.118359173008571088e+04 2.979017428492434919e+04 2.819478904673878787e+04 2.639477945325599285e+04 2.443392059681978208e+04 2.239696705130679766e+04 2.039250383833575688e+04 1.854109985066492300e+04 1.695607455028435652e+04 1.570697737252052139e+04 1.478292821845026447e+04 1.409174999882137672e+04 1.349274520443049551e+04 1.283348384545998670e+04 1.199642890609135975e+04 1.096369957043357317e+04 9.832642209049390658e+03 8.765158551123942743e+03 7.917150703001349939e+03 7.336678026890303045e+03 6.928905133234997265e+03 6.534671515090148205e+03 6.020900205959144841e+03 5.398357830281325732e+03 4.802310245190764363e+03 4.351498895570451168e+03 4.040613111810966984e+03 3.753616473713538653e+03 3.404288014906017452e+03 3.038212320824746257e+03 2.743925265656750071e+03 2.521159905661893845e+03 2.299439811280600225e+03 2.062896829887563399e+03 1.858719144038708691e+03 1.691867189597268634e+03 1.528309382645006963e+03 1.372640522298225051e+03 1.240453245025059914e+03 1.118647174011389779e+03 1.004924970549397017e+03 9.050819982749140991e+02 8.133286020304833528e+02 7.303490051633388020e+02 6.557970654197931708e+02 5.880469272244947661e+02 5.272217320952285036e+02 4.723250227841121500e+02 4.228266696037733254e+02 3.782580494246099079e+02 3.381808359619576549e+02 3.021836909075457811e+02 2.698731115612395683e+02 2.408873435456494576e+02 2.148984695517662260e+02 1.916094662780907925e+02 1.707527281392904683e+02 1.520869602119289823e+02 1.353931634966151876e+02 1.204727180122471424e+02 1.071455868200013981e+02 9.524849252194762528e+01 8.463389660821435712e+01 7.516871449154093909e+01 6.673299623515957535e+01 5.921870191314177134e+01 5.252859984756372569e+01 4.657526869864059194e+01 4.128016609976695861e+01 3.657277036837887607e+01 3.238978901405398858e+01 2.867448370123524626e+01 2.537603204781595068e+01 2.244893961605063737e+01 1.985250669334041262e+01 1.755034521290202321e+01 1.550994150279742101e+01 +7.236032536356167384e+02 7.591626113902829047e+02 7.964652946040625920e+02 8.355958060789438377e+02 8.766428371399831576e+02 9.196994836598144047e+02 9.648633275264661506e+02 1.012236610374241081e+03 1.061925869142451802e+03 1.114042139978162368e+03 1.168702037715507913e+03 1.226028009991915496e+03 1.286148028132919308e+03 1.349195778900276537e+03 1.415310352764558502e+03 1.484636526952544273e+03 1.557326002745977348e+03 1.633537658458378928e+03 1.713437083364938871e+03 1.797196791260072359e+03 1.884995714843358655e+03 1.977019573425369799e+03 2.073462415929514009e+03 2.174526781913302784e+03 2.280422247561939912e+03 2.391365776648534847e+03 2.507582663974044863e+03 2.629306738914121070e+03 2.756779716139445554e+03 2.890251438438300738e+03 3.029979614400562241e+03 3.176230105006260146e+03 3.329277358749340237e+03 3.489404441795775710e+03 3.656901579948324979e+03 3.832066429099321340e+03 4.015204438973594279e+03 4.206628784506438024e+03 4.406658928097881471e+03 4.615620584502274141e+03 4.833844152168236178e+03 5.061664759580406098e+03 5.299421645131801597e+03 5.547457611103258387e+03 5.806114974665376394e+03 6.075735402593485560e+03 6.356656461781992220e+03 6.649211529456945755e+03 6.953727669145585423e+03 7.270524480362619215e+03 7.599906862121947597e+03 7.942164947932235009e+03 8.297570947041380350e+03 8.666377841701187208e+03 9.048812731728337894e+03 9.445075556118128588e+03 9.855331296378060870e+03 1.027970857848224659e+04 1.071828970886501884e+04 1.117111044931551442e+04 1.163815573953657258e+04 1.211935628118676686e+04 1.261457270582834826e+04 1.312359517417663847e+04 1.364613033273053952e+04 1.418180136160880284e+04 1.473013536441162796e+04 1.529056227435092842e+04 1.586239336001732408e+04 1.644482475087420244e+04 1.703692224228658233e+04 1.763762454435065592e+04 1.824572583084725193e+04 1.885987821381137110e+04 1.947855664031601191e+04 2.010007207144830318e+04 2.072254007784283749e+04 2.134390033043746735e+04 2.196188908123597139e+04 2.257405753591611938e+04 2.317771339090765105e+04 2.376996455229839557e+04 2.434768040367070353e+04 2.490753570217784363e+04 2.544593731554443366e+04 2.595909800688398172e+04 2.644296259783866844e+04 2.689330993938460233e+04 2.730569152794187539e+04 2.767554433891345980e+04 2.799809018200965147e+04 2.826851152884421026e+04 2.848190844257876597e+04 2.863347894987626205e+04 2.871846604156838657e+04 2.873239025238535760e+04 2.867108939018463934e+04 2.853093259430200851e+04 2.830893126623818898e+04 2.800292895617145405e+04 2.761188417605994982e+04 2.713591369833143835e+04 2.657675313119653583e+04 2.593756604364500890e+04 2.522367702934431509e+04 2.444193459735233046e+04 2.360167961090565950e+04 2.271358597012962127e+04 2.179099198183745102e+04 2.084782439374643582e+04 1.989964052506552616e+04 1.896184329816321770e+04 1.805180446973579819e+04 1.718422095304909089e+04 1.636805057777105685e+04 1.561163294020378271e+04 1.492968272279191115e+04 1.432937505827976383e+04 1.379559125353131094e+04 1.331429361148325916e+04 1.287641511500251909e+04 1.245949025795869238e+04 1.203505884667532882e+04 1.157671323137822401e+04 1.105941764719569073e+04 1.046714200949578662e+04 9.798899472928647810e+03 9.070942981469594088e+03 8.314735711449402515e+03 7.570591304230169044e+03 6.883268236961386719e+03 6.294839210742919022e+03 5.831119122650812642e+03 5.488071299923348306e+03 5.231476285248800195e+03 5.009098956948662817e+03 4.764351719978065375e+03 4.453599480886924539e+03 4.070206251860533484e+03 3.650308264043541840e+03 3.254011217682866572e+03 2.939193723904715171e+03 2.723696593080547245e+03 2.572313853813966034e+03 2.425956808912695124e+03 2.235222694306924041e+03 2.004106754381125938e+03 1.782828160460461277e+03 1.615467479783395675e+03 1.500052909415679324e+03 1.393506986727192725e+03 1.263821019148248524e+03 1.127917700170450416e+03 1.018665323643005195e+03 9.359650793148080083e+02 8.536529216616823987e+02 7.658377646555729825e+02 6.900379848257695130e+02 6.280952850095395661e+02 5.673754542746758034e+02 5.095843762335439919e+02 4.605106275060242069e+02 4.152908759138078381e+02 3.730722577707729783e+02 3.360060779307526673e+02 3.019432644003732662e+02 2.711376315116623346e+02 2.434606286706367939e+02 2.183088399204183645e+02 1.957277501061745966e+02 1.753476634510261363e+02 1.569717414199418499e+02 1.404259672575591367e+02 1.255475861115983633e+02 1.121838773226724442e+02 1.001887650599251458e+02 8.942796195136533299e+01 7.977973863942881394e+01 7.113383195857873886e+01 6.339089507414277591e+01 5.646134574545049389e+01 5.026387971244557917e+01 4.472475903866915559e+01 3.977714533250246376e+01 3.536042298861382704e+01 3.141981951722417321e+01 2.790592830440841254e+01 2.477421885221471598e+01 2.198458220603608382e+01 1.950092190542343928e+01 1.729078344619327368e+01 1.532500853188770051e+01 1.357741643717170987e+01 1.202451014649998307e+01 1.064522583408384016e+01 9.420695953358688257e+00 8.334030938339125782e+00 7.370121246109045288e+00 6.515458014043699286e+00 5.757970731033742240e+00 diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index b4cbb22ea..fd6b6da12 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -8,7 +8,7 @@ # load the external camb result to test against camb_result_filename = get_pkg_data_filename('data/camb_result.txt') -test_pkz = np.loadtxt(camb_result_filename) +test_pzk = np.loadtxt(camb_result_filename) # try to import the requirement, if it doesn't exist, skip test try: @@ -26,15 +26,17 @@ def test_camb(): ''' from skypy.power_spectrum import camb + Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*units.eV) + # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) - assert pkz.shape == (len(redshift), len(wavenumber)) - assert allclose(pkz, test_pkz, rtol=1.e-4) + pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) + assert pzk.shape == (len(redshift), len(wavenumber)) + assert allclose(pzk, test_pzk, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pkz = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965, 10.) - assert pkz.shape == (len(redshift), len(wavenumber)) - assert allclose(pkz, test_pkz[np.argsort(redshift), :], rtol=1.e-4) + pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) + assert pzk.shape == (len(redshift), len(wavenumber)) + assert allclose(pzk, test_pzk[np.argsort(redshift), :], rtol=1.e-4) diff --git a/skypy/power_spectrum/tests/test_class.py b/skypy/power_spectrum/tests/test_class.py index f83e16477..1e49d4c0f 100644 --- a/skypy/power_spectrum/tests/test_class.py +++ b/skypy/power_spectrum/tests/test_class.py @@ -25,22 +25,20 @@ def test_classy(): ''' from skypy.power_spectrum import classy - Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*u.eV) - redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pzk = classy(wavenumber, redshift, Pl15massless) + pzk = classy(wavenumber, redshift, Planck15) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pzk = classy(wavenumber, redshift, Pl15massless) + pzk = classy(wavenumber, redshift, Planck15) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk[np.argsort(redshift)], rtol=1.e-4) # also check scalar arguments are treated correctly redshift = 1.0 wavenumber = 1.e-1 - pzk = classy(wavenumber, redshift, Pl15massless) + pzk = classy(wavenumber, redshift, Planck15) assert np.isscalar(pzk) From eb73dc00d27e8ad94b56c51bc052c8334540b34c Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Mon, 28 Sep 2020 11:14:34 +0100 Subject: [PATCH 11/17] removed z_reio feature --- skypy/power_spectrum/_camb.py | 8 ++------ skypy/power_spectrum/tests/test_camb.py | 4 ++-- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 5295b6fc0..93467fbdc 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -8,7 +8,7 @@ def camb(wavenumber, redshift, cosmology, - A_s, n_s, z_reio): + A_s, n_s): r'''CAMB linear matter power spectrum. Compute the linear matter power spectrum on a two dimensional grid of redshift and wavenumber using CAMB [1]_. @@ -16,7 +16,7 @@ def camb(wavenumber, redshift, cosmology, Parameters ---------- wavenumber : (nk,) array_like - Array of wavenumbers in units of [Mpc^-1] at which to + Array of wavenumbers in units of Mpc-1 at which to evaluate the linear matter power spectrum. redshift : (nz,) array_like Array of redshifts at which to evaluate the linear matter power @@ -30,8 +30,6 @@ def camb(wavenumber, redshift, cosmology, n_s : float Cosmology parameter, spectral index of scalar perturbation power spectrum - z_reio : float - Cosmology parameter, redshift of re-ionisation Returns ------- @@ -87,8 +85,6 @@ def camb(wavenumber, redshift, cosmology, pars.InitPower.ns = n_s pars.InitPower.As = A_s - pars.Reion.redshift = z_reio - pars.NonLinear = model.NonLinear_none pk_interp = get_matter_power_interpolator(pars, diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index fd6b6da12..7839a70be 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -31,12 +31,12 @@ def test_camb(): # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) + pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965, 10.) + pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk[np.argsort(redshift), :], rtol=1.e-4) From a24b4fb318fb862eb7e8f9640fb5e5d258b9982b Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Tue, 29 Sep 2020 13:56:57 +0100 Subject: [PATCH 12/17] boulder at top of hill --- skypy/power_spectrum/_camb.py | 6 ++---- skypy/power_spectrum/tests/data/camb_result.txt | 4 ++-- skypy/power_spectrum/tests/test_camb.py | 9 +++------ skypy/power_spectrum/tests/test_class.py | 9 ++++++--- 4 files changed, 13 insertions(+), 15 deletions(-) diff --git a/skypy/power_spectrum/_camb.py b/skypy/power_spectrum/_camb.py index 93467fbdc..e7fac5ab0 100644 --- a/skypy/power_spectrum/_camb.py +++ b/skypy/power_spectrum/_camb.py @@ -7,8 +7,7 @@ ] -def camb(wavenumber, redshift, cosmology, - A_s, n_s): +def camb(wavenumber, redshift, cosmology, A_s, n_s): r'''CAMB linear matter power spectrum. Compute the linear matter power spectrum on a two dimensional grid of redshift and wavenumber using CAMB [1]_. @@ -48,8 +47,7 @@ def camb(wavenumber, redshift, cosmology, >>> wavenumber = np.array([1.e-2, 1.e-1, 1e0]) >>> A_s = 2.e-9 >>> n_s = 0.965 - >>> z_reio = 10. - >>> power_spectrum = camb(wavenumber, redshift, cosmology, A_s, n_s, z_reio) # doctest: +SKIP + >>> power_spectrum = camb(wavenumber, redshift, cosmology, A_s, n_s) # doctest: +SKIP References ---------- diff --git a/skypy/power_spectrum/tests/data/camb_result.txt b/skypy/power_spectrum/tests/data/camb_result.txt index 10df15576..62f5af514 100644 --- a/skypy/power_spectrum/tests/data/camb_result.txt +++ b/skypy/power_spectrum/tests/data/camb_result.txt @@ -1,2 +1,2 @@ -1.951467953028518423e+03 2.047355662200237475e+03 2.147942571041839074e+03 2.253456176398166463e+03 2.364135257613643716e+03 2.480230454729989106e+03 2.602004382095142319e+03 2.729732090151051580e+03 2.863700248845566421e+03 3.004207685537056022e+03 3.151567934419391804e+03 3.306109914678594123e+03 3.468177597474039885e+03 3.638130510431554740e+03 3.816342384856674471e+03 4.003201908811370686e+03 4.199116428893365992e+03 4.404512629835699045e+03 4.619835263730736187e+03 4.845547698371227852e+03 5.082130323292906724e+03 5.330081557656835685e+03 5.589922443435890273e+03 5.862197031123128909e+03 6.147467952187092123e+03 6.446317458040083693e+03 6.759351243075480852e+03 7.087198880512271899e+03 7.430511096702673967e+03 7.789960546490367051e+03 8.166242217572323170e+03 8.560074100180570895e+03 8.972197356977507297e+03 9.403376579396694069e+03 9.854396751745349320e+03 1.032606388328500725e+04 1.081920465604906531e+04 1.133466646726639556e+04 1.187331381762450837e+04 1.243602811369298979e+04 1.302370101595955930e+04 1.363723510196097232e+04 1.427754329328277527e+04 1.494554742784306472e+04 1.564216730710496813e+04 1.636832047467135999e+04 1.712491523104660155e+04 1.791284980930371239e+04 1.873300572780607763e+04 1.958624465214885277e+04 2.047338927997971041e+04 2.139522271895423182e+04 2.235247710045197164e+04 2.334583113104266522e+04 2.437589597400594721e+04 2.544321078013503939e+04 2.654821876725417314e+04 2.769126449847312324e+04 2.887257199247020253e+04 3.009224200831472263e+04 3.135023346305057566e+04 3.264635654159926708e+04 3.398023583288770169e+04 3.535130762500211131e+04 3.675878093306988740e+04 3.820163888029805821e+04 3.967860832454846968e+04 4.118815529904353752e+04 4.272842235682344472e+04 4.429724065068752680e+04 4.589209737778806448e+04 4.751014023437849391e+04 4.914811976971145486e+04 5.080239990299563942e+04 5.246886791323556827e+04 5.414297103314798005e+04 5.581964163568593358e+04 5.749334152797888237e+04 5.915796683737868443e+04 6.080690887464614934e+04 6.243291713791269285e+04 6.402820836572236294e+04 6.558435051099031989e+04 6.709238473217263527e+04 6.854263163179717958e+04 6.992488923358105239e+04 7.122823302785726264e+04 7.244129152744697058e+04 7.355208350144402357e+04 7.454831989231127955e+04 7.541712961718917359e+04 7.614553495304225362e+04 7.672033761037420481e+04 7.712860375362024934e+04 7.735752102507845848e+04 7.739502327323805366e+04 7.722989105200165068e+04 7.685233759749012825e+04 7.625432651111189625e+04 7.543006357393684448e+04 7.437673072298415354e+04 7.309462719454399485e+04 7.158843764183382154e+04 6.986669480334398395e+04 6.794372915265845950e+04 6.583797611601816607e+04 6.357460993050544494e+04 6.118239692662088055e+04 5.869726202009318513e+04 5.615671080889238510e+04 5.360264109504184307e+04 5.107653895607747836e+04 4.862520712265850307e+04 4.628824159187838086e+04 4.408976473949585488e+04 4.205223488904365513e+04 4.021529693256410974e+04 3.859828452291293070e+04 3.716046562280177022e+04 3.586402007377146947e+04 3.468452190833451459e+04 3.356147061660000327e+04 3.241821117774700178e+04 3.118359173008571088e+04 2.979017428492434919e+04 2.819478904673878787e+04 2.639477945325599285e+04 2.443392059681978208e+04 2.239696705130679766e+04 2.039250383833575688e+04 1.854109985066492300e+04 1.695607455028435652e+04 1.570697737252052139e+04 1.478292821845026447e+04 1.409174999882137672e+04 1.349274520443049551e+04 1.283348384545998670e+04 1.199642890609135975e+04 1.096369957043357317e+04 9.832642209049390658e+03 8.765158551123942743e+03 7.917150703001349939e+03 7.336678026890303045e+03 6.928905133234997265e+03 6.534671515090148205e+03 6.020900205959144841e+03 5.398357830281325732e+03 4.802310245190764363e+03 4.351498895570451168e+03 4.040613111810966984e+03 3.753616473713538653e+03 3.404288014906017452e+03 3.038212320824746257e+03 2.743925265656750071e+03 2.521159905661893845e+03 2.299439811280600225e+03 2.062896829887563399e+03 1.858719144038708691e+03 1.691867189597268634e+03 1.528309382645006963e+03 1.372640522298225051e+03 1.240453245025059914e+03 1.118647174011389779e+03 1.004924970549397017e+03 9.050819982749140991e+02 8.133286020304833528e+02 7.303490051633388020e+02 6.557970654197931708e+02 5.880469272244947661e+02 5.272217320952285036e+02 4.723250227841121500e+02 4.228266696037733254e+02 3.782580494246099079e+02 3.381808359619576549e+02 3.021836909075457811e+02 2.698731115612395683e+02 2.408873435456494576e+02 2.148984695517662260e+02 1.916094662780907925e+02 1.707527281392904683e+02 1.520869602119289823e+02 1.353931634966151876e+02 1.204727180122471424e+02 1.071455868200013981e+02 9.524849252194762528e+01 8.463389660821435712e+01 7.516871449154093909e+01 6.673299623515957535e+01 5.921870191314177134e+01 5.252859984756372569e+01 4.657526869864059194e+01 4.128016609976695861e+01 3.657277036837887607e+01 3.238978901405398858e+01 2.867448370123524626e+01 2.537603204781595068e+01 2.244893961605063737e+01 1.985250669334041262e+01 1.755034521290202321e+01 1.550994150279742101e+01 -7.236032536356167384e+02 7.591626113902829047e+02 7.964652946040625920e+02 8.355958060789438377e+02 8.766428371399831576e+02 9.196994836598144047e+02 9.648633275264661506e+02 1.012236610374241081e+03 1.061925869142451802e+03 1.114042139978162368e+03 1.168702037715507913e+03 1.226028009991915496e+03 1.286148028132919308e+03 1.349195778900276537e+03 1.415310352764558502e+03 1.484636526952544273e+03 1.557326002745977348e+03 1.633537658458378928e+03 1.713437083364938871e+03 1.797196791260072359e+03 1.884995714843358655e+03 1.977019573425369799e+03 2.073462415929514009e+03 2.174526781913302784e+03 2.280422247561939912e+03 2.391365776648534847e+03 2.507582663974044863e+03 2.629306738914121070e+03 2.756779716139445554e+03 2.890251438438300738e+03 3.029979614400562241e+03 3.176230105006260146e+03 3.329277358749340237e+03 3.489404441795775710e+03 3.656901579948324979e+03 3.832066429099321340e+03 4.015204438973594279e+03 4.206628784506438024e+03 4.406658928097881471e+03 4.615620584502274141e+03 4.833844152168236178e+03 5.061664759580406098e+03 5.299421645131801597e+03 5.547457611103258387e+03 5.806114974665376394e+03 6.075735402593485560e+03 6.356656461781992220e+03 6.649211529456945755e+03 6.953727669145585423e+03 7.270524480362619215e+03 7.599906862121947597e+03 7.942164947932235009e+03 8.297570947041380350e+03 8.666377841701187208e+03 9.048812731728337894e+03 9.445075556118128588e+03 9.855331296378060870e+03 1.027970857848224659e+04 1.071828970886501884e+04 1.117111044931551442e+04 1.163815573953657258e+04 1.211935628118676686e+04 1.261457270582834826e+04 1.312359517417663847e+04 1.364613033273053952e+04 1.418180136160880284e+04 1.473013536441162796e+04 1.529056227435092842e+04 1.586239336001732408e+04 1.644482475087420244e+04 1.703692224228658233e+04 1.763762454435065592e+04 1.824572583084725193e+04 1.885987821381137110e+04 1.947855664031601191e+04 2.010007207144830318e+04 2.072254007784283749e+04 2.134390033043746735e+04 2.196188908123597139e+04 2.257405753591611938e+04 2.317771339090765105e+04 2.376996455229839557e+04 2.434768040367070353e+04 2.490753570217784363e+04 2.544593731554443366e+04 2.595909800688398172e+04 2.644296259783866844e+04 2.689330993938460233e+04 2.730569152794187539e+04 2.767554433891345980e+04 2.799809018200965147e+04 2.826851152884421026e+04 2.848190844257876597e+04 2.863347894987626205e+04 2.871846604156838657e+04 2.873239025238535760e+04 2.867108939018463934e+04 2.853093259430200851e+04 2.830893126623818898e+04 2.800292895617145405e+04 2.761188417605994982e+04 2.713591369833143835e+04 2.657675313119653583e+04 2.593756604364500890e+04 2.522367702934431509e+04 2.444193459735233046e+04 2.360167961090565950e+04 2.271358597012962127e+04 2.179099198183745102e+04 2.084782439374643582e+04 1.989964052506552616e+04 1.896184329816321770e+04 1.805180446973579819e+04 1.718422095304909089e+04 1.636805057777105685e+04 1.561163294020378271e+04 1.492968272279191115e+04 1.432937505827976383e+04 1.379559125353131094e+04 1.331429361148325916e+04 1.287641511500251909e+04 1.245949025795869238e+04 1.203505884667532882e+04 1.157671323137822401e+04 1.105941764719569073e+04 1.046714200949578662e+04 9.798899472928647810e+03 9.070942981469594088e+03 8.314735711449402515e+03 7.570591304230169044e+03 6.883268236961386719e+03 6.294839210742919022e+03 5.831119122650812642e+03 5.488071299923348306e+03 5.231476285248800195e+03 5.009098956948662817e+03 4.764351719978065375e+03 4.453599480886924539e+03 4.070206251860533484e+03 3.650308264043541840e+03 3.254011217682866572e+03 2.939193723904715171e+03 2.723696593080547245e+03 2.572313853813966034e+03 2.425956808912695124e+03 2.235222694306924041e+03 2.004106754381125938e+03 1.782828160460461277e+03 1.615467479783395675e+03 1.500052909415679324e+03 1.393506986727192725e+03 1.263821019148248524e+03 1.127917700170450416e+03 1.018665323643005195e+03 9.359650793148080083e+02 8.536529216616823987e+02 7.658377646555729825e+02 6.900379848257695130e+02 6.280952850095395661e+02 5.673754542746758034e+02 5.095843762335439919e+02 4.605106275060242069e+02 4.152908759138078381e+02 3.730722577707729783e+02 3.360060779307526673e+02 3.019432644003732662e+02 2.711376315116623346e+02 2.434606286706367939e+02 2.183088399204183645e+02 1.957277501061745966e+02 1.753476634510261363e+02 1.569717414199418499e+02 1.404259672575591367e+02 1.255475861115983633e+02 1.121838773226724442e+02 1.001887650599251458e+02 8.942796195136533299e+01 7.977973863942881394e+01 7.113383195857873886e+01 6.339089507414277591e+01 5.646134574545049389e+01 5.026387971244557917e+01 4.472475903866915559e+01 3.977714533250246376e+01 3.536042298861382704e+01 3.141981951722417321e+01 2.790592830440841254e+01 2.477421885221471598e+01 2.198458220603608382e+01 1.950092190542343928e+01 1.729078344619327368e+01 1.532500853188770051e+01 1.357741643717170987e+01 1.202451014649998307e+01 1.064522583408384016e+01 9.420695953358688257e+00 8.334030938339125782e+00 7.370121246109045288e+00 6.515458014043699286e+00 5.757970731033742240e+00 +1.938237119497023514e+03 2.033480877732498129e+03 2.133392361215547226e+03 2.238199557662894222e+03 2.348140165780609550e+03 2.463461934271990685e+03 2.584425564318605211e+03 2.711305353383179863e+03 2.844386600502214606e+03 2.983966037629961647e+03 3.130356118426995636e+03 3.283885706961626056e+03 3.444896196361852617e+03 3.613742071863042383e+03 3.790796226269676026e+03 3.976450602317721859e+03 4.171111310496261467e+03 4.375199375636912919e+03 4.589156816082082514e+03 4.813447196225026346e+03 5.048550233739435498e+03 5.294962698503289175e+03 5.553203973099104587e+03 5.823816572887521943e+03 6.107362241921599889e+03 6.404422796309818295e+03 6.715602453952121323e+03 7.041528422230898286e+03 7.382849443325404536e+03 7.740236529852999411e+03 8.114383683174457474e+03 8.506008264109852462e+03 8.915848229233473830e+03 9.344662837033341930e+03 9.793233172329199078e+03 1.026236227395377318e+04 1.075287189380179552e+04 1.126560252952013070e+04 1.180140871696771683e+04 1.236115934974771517e+04 1.294573542229604936e+04 1.355602931667879238e+04 1.419293683224413871e+04 1.485735687757466258e+04 1.555018532401242010e+04 1.627231401032959184e+04 1.702462246242709807e+04 1.780797614018037348e+04 1.862321415258925117e+04 1.947114783561477088e+04 2.035255057221979223e+04 2.126815437614812981e+04 2.221863026244337016e+04 2.320458680502490097e+04 2.422655895182141467e+04 2.528500405861194304e+04 2.638028735243949995e+04 2.751267521303944523e+04 2.868230568908906935e+04 2.988918762532247274e+04 3.113319216862500616e+04 3.241404309916475540e+04 3.373127907583692286e+04 3.508425232988927019e+04 3.647210564252726181e+04 3.789376639598687325e+04 3.934790135253586050e+04 4.083291748009042931e+04 4.234691232737500832e+04 4.388768924672165303e+04 4.545276065604363976e+04 4.703931487822531199e+04 4.864400804544963466e+04 5.026311085654659109e+04 5.189291114155262767e+04 5.352937212295935024e+04 5.516690721634055808e+04 5.679906706545926863e+04 5.841962112008470285e+04 6.002224786865645729e+04 6.160034261237797909e+04 6.314687867814932542e+04 6.465366680613913195e+04 6.611179071123150061e+04 6.751165491678293620e+04 6.884318637208463042e+04 7.009572362174701993e+04 7.125824591953711933e+04 7.231925810725476185e+04 7.326700014909518359e+04 7.408900398171934648e+04 7.477267488089254766e+04 7.530529293028927350e+04 7.567444039118601358e+04 7.586781909309758339e+04 7.587387361757487815e+04 7.568188409962291189e+04 7.528254519445350161e+04 7.466827712552377488e+04 7.383369214652816299e+04 7.277626744111823791e+04 7.149651414886189741e+04 6.999922189002826053e+04 6.829293048596933659e+04 6.639181805428148073e+04 6.431404652589472244e+04 6.208430789542764251e+04 5.973076499842629710e+04 5.728850234947272838e+04 5.479409780120193318e+04 5.228838819919160596e+04 4.981179316813583864e+04 4.740984297836804762e+04 4.512087838092840684e+04 4.296838895033735753e+04 4.097437420007140463e+04 3.917681738631798362e+04 3.759408894518086890e+04 3.618954489654158533e+04 3.492138575760865933e+04 3.375124656008202874e+04 3.263532396794898523e+04 3.151861714397486503e+04 3.032874809207860017e+04 2.898592463560428223e+04 2.743618690896175031e+04 2.567485616834729444e+04 2.375313608352699521e+04 2.176574652607356620e+04 1.982156135466891283e+04 1.802855502204020013e+04 1.648584998787313452e+04 1.526245648914335470e+04 1.435930307142175116e+04 1.369156249758880585e+04 1.311307356588952280e+04 1.246842268501784565e+04 1.165150226515151189e+04 1.065089294878422879e+04 9.552852823646444449e+03 8.512766571801246755e+03 7.689387883508730738e+03 7.126239184267302335e+03 6.728480753163247755e+03 6.346269348664473000e+03 5.847220679792134433e+03 5.242262135427591602e+03 4.663497251668834906e+03 4.225393261710382831e+03 3.923343745987492639e+03 3.644788834620067973e+03 3.305362436940259613e+03 2.950085713003068577e+03 2.664102401738479784e+03 2.447719375757351372e+03 2.232660257730331523e+03 2.002799949971260048e+03 1.804485614656616235e+03 1.642591298910032492e+03 1.483817687190139623e+03 1.332625688197262662e+03 1.204258152905350926e+03 1.086007144020557007e+03 9.756008619701484577e+02 8.786693625790009037e+02 7.895858760686617188e+02 7.090076882760166654e+02 6.366239446159752333e+02 5.708447618392178811e+02 5.118166720036654169e+02 4.585337540134033816e+02 4.104785671321039899e+02 3.672044322748638479e+02 3.282914405032612990e+02 2.933432063424322109e+02 2.619767200135979692e+02 2.338392824752652928e+02 2.086115041644046642e+02 1.860043549136560728e+02 1.657579017463316120e+02 1.476381055732929042e+02 1.314325250447624285e+02 1.169484506462966067e+02 1.040111608198491950e+02 9.246213060839650666e+01 8.215810665546331393e+01 7.296987630955514703e+01 6.478098473720514505e+01 5.748654483751767685e+01 5.099216596582981254e+01 4.521298338871749678e+01 4.007275335221453361e+01 3.550302140904990011e+01 3.144235814230841086e+01 2.783569442230885471e+01 2.463370031501177237e+01 2.179221524325155812e+01 1.927173113130510984e+01 1.703692405555526079e+01 1.505623024674271448e+01 +7.176815422031822891e+02 7.529516239833551481e+02 7.899507365680883595e+02 8.287635290195048583e+02 8.694781463118131342e+02 9.121863388292655372e+02 9.569847783726260104e+02 1.003975317113930373e+03 1.053263888675638327e+03 1.104960659240095310e+03 1.159181568159036487e+03 1.216048588530812822e+03 1.275688509824594576e+03 1.338233150685432975e+03 1.403821020471465772e+03 1.472597559326912005e+03 1.544713646482534841e+03 1.620325881713448553e+03 1.699598604361462549e+03 1.782704099061792704e+03 1.869820676975560445e+03 1.961133014122634904e+03 2.056834207282181069e+03 2.157125958775804520e+03 2.262216969410314505e+03 2.372323267571116048e+03 2.487669282258685598e+03 2.608488032106867649e+03 2.735020223299448389e+03 2.867514521228495141e+03 3.006227754413428556e+03 3.151425116315464948e+03 3.303379930013642024e+03 3.462373712809760946e+03 3.628694742113631492e+03 3.802638372856077694e+03 3.984508060103565185e+03 4.174615057643571163e+03 4.373275147143160211e+03 4.580808957835160072e+03 4.797542778952536537e+03 5.023807975067462394e+03 5.259936571046727295e+03 5.506261468025467366e+03 5.763116365850467446e+03 6.030834678510655067e+03 6.309742189530077667e+03 6.600157574259610556e+03 6.902392996469196987e+03 7.216752310388699698e+03 7.543521735151048233e+03 7.882970020405715331e+03 8.235346525683242362e+03 8.600879529078552878e+03 8.979768955442204970e+03 9.372185265092310146e+03 9.778264010367980518e+03 1.019810382899468459e+04 1.063175766637230481e+04 1.107923155909895104e+04 1.154047842696860062e+04 1.201539563383648601e+04 1.250381453902390967e+04 1.300549876812895855e+04 1.352013238015632669e+04 1.404731861402069262e+04 1.458656471325802158e+04 1.513728201441073725e+04 1.569876755327228602e+04 1.627020940052037986e+04 1.685068659212797138e+04 1.743915755680112125e+04 1.803438477029585920e+04 1.863498893415778366e+04 1.923960028568133202e+04 1.984672907190576007e+04 2.045430128688762125e+04 2.105991930192214568e+04 2.166127417750818859e+04 2.225602627074845077e+04 2.284172872810389163e+04 2.341577736755484148e+04 2.397513807291571356e+04 2.451650730857579401e+04 2.503632836410122763e+04 2.553086602041504375e+04 2.599616279860441500e+04 2.642812695840868764e+04 2.682249649764079004e+04 2.717491227604469168e+04 2.748074806495666053e+04 2.773532783061756709e+04 2.793392501942117815e+04 2.807192402717313962e+04 2.814475803501449991e+04 2.814813560779631734e+04 2.807806949779771094e+04 2.793109452756302926e+04 2.770438411811922197e+04 2.739592469740668457e+04 2.700476824808461242e+04 2.653109209266393736e+04 2.597665664964097596e+04 2.534461430264738738e+04 2.464021541153754515e+04 2.387019045218198153e+04 2.304369193572026415e+04 2.217116235477637383e+04 2.126561766396100211e+04 2.034063058087829268e+04 1.941135496399542535e+04 1.849279348095068053e+04 1.760185306669557031e+04 1.675277454950492756e+04 1.595428466518949790e+04 1.521455840412883845e+04 1.454770890480856178e+04 1.396056825600984848e+04 1.343953801421319076e+04 1.296910354641307276e+04 1.253502425005816076e+04 1.212103445402327998e+04 1.170670807537353539e+04 1.126516528472776008e+04 1.076676305431263972e+04 1.019145379846073592e+04 9.537496008884312687e+03 8.823902572883138419e+03 8.085857061351669472e+03 7.363812492939808180e+03 6.697882775753157148e+03 6.124904150814820241e+03 5.670522442172639785e+03 5.335096438965158086e+03 5.087119124798823577e+03 4.872283976379614614e+03 4.632853052553450652e+03 4.329394818557745566e+03 3.957667300437422455e+03 3.549718024855537806e+03 3.163287086144263867e+03 2.857369671889140591e+03 2.648142452411787417e+03 2.500367499347449211e+03 2.358364267621969702e+03 2.172937343709643301e+03 1.948145014573460458e+03 1.733081348791279197e+03 1.570285534033192562e+03 1.458048195538035770e+03 1.354539518933324189e+03 1.228405921555774739e+03 1.096379053268354937e+03 9.901024298876520788e+02 9.096905982651049953e+02 8.297692101845592560e+02 7.443458318945880592e+02 6.706452813726227760e+02 6.104795108035727935e+02 5.514728263910532178e+02 4.952831359210021560e+02 4.475757716932886296e+02 4.036279116100415649e+02 3.625953271144339283e+02 3.265704165570433020e+02 2.934620405706189672e+02 2.635145609452568465e+02 2.366124947679755337e+02 2.121649202393778069e+02 1.902265416790131098e+02 1.704232825308015151e+02 1.525628513712574090e+02 1.364792977614004030e+02 1.220166020433432124e+02 1.090274684080932133e+02 9.736954473740587446e+01 8.691174008573896970e+01 7.753534586815945318e+01 6.913293889969325789e+01 6.160791462299716414e+01 5.487329482869714781e+01 4.885012677493897115e+01 4.346678988662728926e+01 3.865834761419159094e+01 3.436588108661515406e+01 3.053614710697587498e+01 2.712112112603330871e+01 2.407752039804179134e+01 2.136636186453862152e+01 1.895256383539820533e+01 1.680458494636301126e+01 1.489408785003885249e+01 1.319563013091273262e+01 1.168638024909456341e+01 1.034587054961751917e+01 9.155766446575828610e+00 8.099654638551152530e+00 7.162851014683812245e+00 6.332226587634928627e+00 5.596049909588766802e+00 diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index 7839a70be..6d141328f 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -1,10 +1,8 @@ import numpy as np from astropy.cosmology import Planck15 -from astropy import units from astropy.units import allclose from astropy.utils.data import get_pkg_data_filename import pytest -import pdb # load the external camb result to test against camb_result_filename = get_pkg_data_filename('data/camb_result.txt') @@ -26,17 +24,16 @@ def test_camb(): ''' from skypy.power_spectrum import camb - Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*units.eV) - # test shape and compare with the mocked power spectrum redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965) + pzk = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pzk = camb(wavenumber, redshift, Pl15massless, 2.e-9, 0.965) + pzk = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk[np.argsort(redshift), :], rtol=1.e-4) + \ No newline at end of file diff --git a/skypy/power_spectrum/tests/test_class.py b/skypy/power_spectrum/tests/test_class.py index 1e49d4c0f..ed53d8287 100644 --- a/skypy/power_spectrum/tests/test_class.py +++ b/skypy/power_spectrum/tests/test_class.py @@ -25,20 +25,23 @@ def test_classy(): ''' from skypy.power_spectrum import classy + Pl15massless = Planck15.clone(name='Planck 15 massless neutrino', m_nu=[0., 0., 0.]*u.eV) + redshift = [0.0, 1.0] wavenumber = np.logspace(-4.0, np.log10(2.0), 200) - pzk = classy(wavenumber, redshift, Planck15) + pzk = classy(wavenumber, redshift, Pl15massless) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk, rtol=1.e-4) # also check redshifts are ordered correctly redshift = [1.0, 0.0] - pzk = classy(wavenumber, redshift, Planck15) + pzk = classy(wavenumber, redshift, Pl15massless) assert pzk.shape == (len(redshift), len(wavenumber)) assert allclose(pzk, test_pzk[np.argsort(redshift)], rtol=1.e-4) # also check scalar arguments are treated correctly redshift = 1.0 wavenumber = 1.e-1 - pzk = classy(wavenumber, redshift, Planck15) + pzk = classy(wavenumber, redshift, Pl15massless) assert np.isscalar(pzk) + \ No newline at end of file From 2399ae7e6910634496509f85090ea0510044e46b Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Wed, 7 Oct 2020 15:50:31 +0100 Subject: [PATCH 13/17] added ipython notebooks for examples --- examples/abundance_matching.ipynb | 280 +++++++++++++++ examples/gravitational_wave_rates.ipynb | 325 +++++++++++++++++ examples/mccl_galaxies.ipynb | 446 ++++++++++++++++++++++++ 3 files changed, 1051 insertions(+) create mode 100644 examples/abundance_matching.ipynb create mode 100644 examples/gravitational_wave_rates.ipynb create mode 100644 examples/mccl_galaxies.ipynb diff --git a/examples/abundance_matching.ipynb b/examples/abundance_matching.ipynb new file mode 100644 index 000000000..5143158be --- /dev/null +++ b/examples/abundance_matching.ipynb @@ -0,0 +1,280 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from astropy.table import Table\n", + "from matplotlib import pyplot as plt\n", + "from matplotlib import rc\n", + "\n", + "rc('text', usetex=True)\n", + "rc('font', family='serif')\n", + "rc('font', size=14)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Abundance matching" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example runs a number of SkyPy modules to create a catalogue of halos, sub-halos and galaxies which are matched together using the Vale & Ostriker ()\n", + "\n", + "Running the `abundance_matching` example:\n", + "```bash\n", + "$ skypy abundance_matching.yml --format fits\n", + "```\n", + "generates an output catalogue for us to load in:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "halos = Table.read('halos.fits')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " name dtype \n", + "---------------- -------\n", + " halo_mass float64\n", + " halo_group int64\n", + " parent_halo bool\n", + "galaxy_magnitude float64\n", + "\n" + ] + } + ], + "source": [ + "print(halos.info)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here we make a quick visual check of the columns.\n", + "\n", + "We have asked for halo masses over a given range (at the same time as halo groupings into sub and parent halos, and galaxy magnitudes):\n", + "\n", + "```yaml\n", + "tables:\n", + " halos:\n", + " halo_mass, halo_group, parent_halo, galaxy_magnitude: !skypy.halo.abundance_matching.vale_ostriker\n", + " halo_kwargs:\n", + " m_min: 1.0E+9\n", + " m_max: 1.0E+12\n", + " resolution: 1000\n", + " size: 1000\n", + " wavenumber: $wavenumber\n", + " power_spectrum: $power_spectrum\n", + " growth_function: $growth_function\n", + " cosmology: $cosmology\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(halos[halos['parent_halo']]['halo_mass'], histtype='step', bins=np.logspace(9,12,50), label='Parent halos')\n", + "plt.hist(halos[~halos['parent_halo']]['halo_mass'], histtype='step', bins=np.logspace(9,12,50), label='Sub halos')\n", + "plt.xlabel('$M\\,[M_{\\odot}]$')\n", + "plt.xscale('log')\n", + "plt.yscale('log')\n", + "plt.legend()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We also asked to generate galaxy magnitudes:\n", + "```yaml\n", + " galaxy_kwargs:\n", + " redshift: $slice_z_mid\n", + " M_star: $M_star\n", + " alpha: -0.5\n", + " m_lim: 35\n", + " size: 1000\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(halos['galaxy_magnitude'], histtype='step', bins=50)\n", + "plt.xlabel('$m$')\n", + "plt.yscale('log')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can see the occupation numbers of each halo:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, 'Group')" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(halos['halo_group'], histtype='step', bins=50)\n", + "plt.xlabel('Group')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And see how the galaxy luminosity and halo mass are related:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, '$m$')" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist2d(halos['halo_mass'], halos['galaxy_magnitude'], bins=[np.logspace(9,12,50), 50])\n", + "plt.xscale('log')\n", + "plt.xlabel('$M\\,[M_{\\odot}]$')\n", + "plt.ylabel('$m$')" + ] + } + ], + "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 +} diff --git a/examples/gravitational_wave_rates.ipynb b/examples/gravitational_wave_rates.ipynb new file mode 100644 index 000000000..1e72749e1 --- /dev/null +++ b/examples/gravitational_wave_rates.ipynb @@ -0,0 +1,325 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from astropy.table import Table\n", + "from matplotlib import pyplot as plt\n", + "from matplotlib import rc\n", + "\n", + "rc('text', usetex=True)\n", + "rc('font', family='serif')\n", + "rc('font', size=14)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Gravitational wave rates" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example runs a number of SkyPy modules to create a catalogue of galaxies with compact binary merger rates according to the linear model of [Abadie et al (2010)](ttps://arxiv.org/abs/1003.2480) (Table III).\n", + "\n", + "Running the `merger_rates` example:\n", + "```bash\n", + "$ skypy merger_rates.yml --format fits\n", + "```\n", + "generates an output catalogue for us to load in:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "merger_rates = Table.read('merger_rates.fits')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "
\n", + " name dtype unit \n", + "---------- ------- ------\n", + " redshift float64 \n", + " magnitude float64 \n", + "luminosity float64 \n", + "bh_bh_rate float64 1 / yr\n", + "ns_bh_rate float64 1 / yr\n", + "ns_ns_rate float64 1 / yr\n", + "\n" + ] + } + ], + "source": [ + "print(merger_rates.info)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here we make a quick visual check of the columns.\n", + "\n", + "We have asked for redshifts and magnitudes over the given redshift range and magnitude limit:\n", + "\n", + "```yaml\n", + "z_range: !numpy.arange [0, 2.01, 0.1]\n", + "mag_lim: 30\n", + "\n", + "merger_rates:\n", + " redshift: !skypy.galaxy.redshift.schechter_lf_redshift\n", + " redshift: $z_range\n", + " M_star: $M_star_red\n", + " phi_star: $phi_star_red\n", + " alpha: $alpha_red\n", + " m_lim: $mag_lim\n", + " fsky: $fsky\n", + " magnitude: !skypy.galaxy.luminosity.schechter_lf_magnitude\n", + " redshift: $merger_rates.redshift\n", + " M_star: $M_star_red\n", + " alpha: $alpha_red\n", + " m_lim: $mag_lim\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, '$m$')" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist2d(merger_rates['redshift'], merger_rates['magnitude'], bins=50)\n", + "plt.xlabel('$z$')\n", + "plt.ylabel('$m$')" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$z$')" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX8AAAELCAYAAAAx94awAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAO+UlEQVR4nO3dvXIbRxaG4e9sOVEGs8RIVVwWdAcQFSmzycgpSV/BkndAyVewIu+AuASJqSPRzpyJyDfw2BsosotGsFUKzwZoyEMQf4P5A3Dep0plzpwh1J4afWh0N2bM3QUAiOUfbTcAANA8wh8AAiL8ASAgwh8AAiL8ASAgwh8AAvqq7QYs6+nTp76/v992MwBgY9zd3f3p7rvTahsT/vv7+/r48WPbzQCAjWFm/51VY9gHAAIi/AEgIMIfAAIi/AEgIMIfAAIi/AEgIMIfAAIi/AEgoI35khfQtldvf9an4edH+591nuiXN9+00CJgdYQ/sKRPw8/6/e13j/bvv/mxhdYA5TDsAwABEf4AEBDhDwABLRzzN7NDSZfu/mJif1fSsaSBpJ6kvrsPy9SATfSs82TquH/RiWAmlNGkueGfgv9eo5CedO3uR+m4TNKlpPOSNWDjzArmohPBTCijSXOHfdz91t0Hk/tT730nd1wm6bRMDQDQnFWXevY0+kTwQAr3lWrpjQBoDMMsiGzV8N+RNJzYdy+pU6IGNIphlsV4g9xea/0lLzM7k3QmSXt7ey23BiimqongNvEGub1WDf9pvfVxr37V2iPu3pfUl6SDgwNfsa0Ibl7vdZp5oV1EVRPBQB1WDf+BchO3Y+6emZlWqa3YDmChWb3XWTalV77KkMys35ml6BseNsdK4Z8LcklfJnPflakBUVT1yWKVIZmib4TYXsus8x+vyb+U9MHdb1P5xMwuJGWSXrp7fq3+qjVgrm2YgNyUdmK7zQ3/FPS3kl5PqWWSrtLmTRU1YJGIE5BVfVIA8tZ6tQ8APimgHtzYDQACIvwBICCGfYAtM2uOYFwDJMIf2DrMEWAZDPsAQECEPwAExLAPgMpsw5fwoiD80aqqwoJJzvUQ8Ut4m4rwR6uqCgt6lUAxjPkDQED0/LGWuJ9NDMwRtIfwx1riH34MzBG0h2EfAAiInj+AwhiW23yEP4DCGJbbfAz7AEBAhD8ABMSwD4DaMUewfgh/ALVra46A7xHMRvgD2Fp8j2A2wh/A2pk3TDStxz6vh4/pCH8Aa2fWkMysHvusHj5mY7UPAARE+ANAQIQ/AARE+ANAQEz4olKsqwY2A+GPSrGuGtgMpcLfzLqSDiXdS+pK6rv7MFc7ljSQ1Fu2BgCoX9me/7G7X403zOxS0uu0ee3uR2l/JulS0vkSNQBAzcpO+B5NbHekLz37nfFOd88knS6qAQCaUXrM38w+SDqRdCDpfdrd02goaPLY7rxaeiMAgKmqujvorNcZ1yIsTigV/u5+ZGZ3kn6T9O/cENCOpOHE4fcafTKYV3vAzM4knUnS3t5emaYC2AJVhfK816lqccK6r3wrO+F7qNEYf1fStZkpPwdQlrv3JfUl6eDgwKt6XQCo27qvfFs5/MdDOOOwN7NbSXdm1tf0nvy4xz+vhi3FwzyA9VKm538o6Xa84e5ZCv4djZZw7kz+QjpGs2ol2oI1tw4fcwH8rcxqn1uN3gAecPdsMsjTp4R34/qsGgCgGSv3/FMvPjOzC0mZRr3569whJ7naS3c/X7IGAKhZ2dU+N3NqmaTx5O/NsjUAaFOUp4hxbx8AyInyFDFu6QwAARH+ABAQ4Q8AATHmj7nW/SvqwLZo+t8a4Y+51v0r6kBT6r6p3LPOk0b/rRH+WAm3a0A0TdxUrkmEP1ayLhcwgNUw4QsAARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQD3OBpPnPDwWwfQh/SJr9rF4A24lhHwAIiPAHgIBKD/uY2bGkHUn3kobufpv2dyUdSxpI6knqu/twUQ0AUL9S4Z+Cv+vuVynQ30t6kcrX7n6UjsskXUo6X6IGAKhZ2Z7/pbs/lyR3z5SCP70R7IwPcvfMzE4lnc+rlWwLlsCqHgBSifA3s17+Z3cf5Mo9jYaBJn+nO6+W3kBQI1b1AJDKTfh2JQ3T0E9mZhdmdphqO5KGE8ffS+osqAEAGlBm2GdHUs/dbyTJzPqSfpP0dRUNS695JulMkvb29qp6WQAIr0zPP9NotY4kKa3W6aShnWk9+XGPf17tAXfvu/uBux/s7u6WaCoAIK9Mzz/T4xAfahTuA+UmdcfS5K5m1Uq0BQBQwMrhn4I8M7OOuw9Tjz9LnwCGKeQlfZnofZf7vak1VIdVPQDmKbvU80TSD2b2q6Tnkr7N18zsQqNPCC/d/XzJGirAqh4A85QK/9TLfz2jlkm6Sps3y9YAAPXj3j4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABfdV2A1DOq7c/69Pw86P9zzpPWmgNgE1RWfib2bW7n+e2u5KOJQ0k9ST13X24qIbHZgW8NAr5399+13CLAGy6SsLfzHqSziSd53Zfu/tRqmeSLnP1eTVM+DT8TMADqFRVY/5dScPxRurZ74y33T2TdLqoBgBoRunwN7Njd7+Z2N2TdD/l2O6CGgCgAaXCPwV2NqW0o9wngeReUmdBbfL1z8zso5l9/OOPP8o0FQCQU7bn33P3QSUtmcLd++5+4O4Hu7u7df01ABDOyuFvZoeSbmeUp/Xkxz3+eTUAQAPKrvY5NbPxzx0zO9PoDWGg3KTumLtn6fiptZJtAQAsaeXwd/cHvf60zr+f287XupLepd/LZtUAAM0ovc7fzDoarfGXmV1qtIY/k3RiZhcaTQi/zH8BbEENAFCz0uGfvpl7lf7k92e5fTfL1gAA9ePGbgAQEOEPAAER/gAQEOEPAAFxP/81wr35ATSF8F8j3LoZQFMY9gGAgAh/AAiI8AeAgAh/AAiI8AeAgAh/AAiI8AeAgAh/AAiI8AeAgAh/AAiI2zvUaN69en55800LLQKAEcK/RrPu1bP/5scWWgMAfyP8W/Cs82TqGwB37wTQFMK/BQz5AGgbE74AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABlfqSl5n1JB2mzZeS/uXuw1TrSjqWNJDUk9RfpgYAqN/K4W9mHUkH7n6Vto8l/STpRTrk2t2PUi2TdCnpfIkaAKBmZYZ9DiS9zm3fSuqZWSf17HfGBXfPJJ1KX3r9U2sAgGasHP7ufivpJLerm/YPNRrKuZ/8nRT882oAgAaUmvB190Fu83tJV+nnHUnDicPvJXUW1AAADajkrp5p/L83HsevipmdSTqTpL29vSpfGgBCq2qp5+VE8E/ryY97/PNqD7h7390P3P1gd3e3oqYCAEr3/M3sQmni18w6acx/oNyk7pi7Z2amWbWybQEALKdUzz8t77zJrdE/lR4HeZrMfbeoBgBoRpl1/l1J79PP492ZpH76+SR9KsgkvXT3/Dr+eTUAQM1WDv/Ug7cF9fHqn5tlawCA+nFvHwAIiPAHgIAIfwAIiPAHgIAIfwAIiPAHgIAIfwAIqJIbu0Xx6u3P+jT8/Gj/s84T/fLmmxZaBACrIfwL+DT8rN/ffvdo/6u3P2v/zY+P9j/rPGmiWQBQGOFfAXr9ADYNY/4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwABEf4AEBDhDwAB8SWvKebdxgEAtgHhP8Ws2zgAwLZg2AcAAiL8ASAgwh8AAiL8ASAgwh8AAiL8ASCg0Es9Wc8PIKrQ4c96fgBRtRL+ZtaVdCxpIKknqe/uwzbaAgARtdXzv3b3I0kys0zSpaTzltoCAOE0Hv6p178z3nb3zMxOVWP4M7YPAA+10fPvSbqf3GlmXXfP6vgLGdsHgIfaWOq5I2k4se9eUqfxlgBAUGu92sfMziSdpc3/mdl/Vnypp3apPytqVgRPJc5XAZyvYjhfxZTJr3/OKrQR/tN6+dM+Dcjd+5L6Zf9CM/vo7gdlXycKzlcxnK9iOF/F1HW+2hj2GSg34TtW13g/AOCxxsN/MuTT6p93TbcDACJra8z/xMwuJGWSXrp73Wv8Sw8dBcP5KobzVQznq5hazpe5ex2vCwBYY9zVEwAC2orwN7OumV2Y2WH6b6eKY7dVwfN1aWZnZtZJ/z1ssKlrIZ2nuyWOC39tSYXOV/hrS5LMrJeulwsze99Yfrn7xv+R9CH3c1ejeweVPnZb/xQ8X5eS/kp/Ltpuewvn6lCjb6V7led1W/8UPF+hr610DjqSznLbx5Lu5hxf2TW28WP+abXQe3d/kdv3l7t/XebYbVX0HJjZsbvfNNbANWVm7u42px7+2spbdL7SMeGvrfRp59rdn6ftjkZvhl/7xJ2Oq77GtmHYZ+a9gkoeu61WOgdm1qutRduBa2tFka8td7+VdJLb1U37h1MOr/Qa24bwL3KvIO4rVPwcdFPvJEtjtGH/oS7AtVUc15Ykdx/kNr+XdDXj0EqvsbW+tw/a5+5fLkQzu5b0QdLz9lqEbcG19VAa8ul5etZJ3bah57/0vYIKHrutCp2D/GoCH307m2GM6bi2CuLaeuRyQfBXeo1tQ/gXuVcQ9xUqcA7SR/KfmmjUFuDaKoBr66F0x4PX6efOjMMqvcY2Pvwn/8cn7xWU1sV2ljk2giLnS9JHpQsy1Y4lhV6dkce1VQzX1nTj//fcJO9prlbbNbbxSz2lBw+EH98rKH9RvddobWx/0bFRFDxfPY3Wbg8lPY92vlIP9UjShUYTcR/SCg2urSkKnq/Q15b05Zr5dWJ3llv6Wds1thXhDwAoZuOHfQAAxRH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q+UkB48/ld6CHcn6gNJsHkIf6CcjqRvJf0g6XTiqUzA2uLGbkBJ6Za7XYIfm4SeP1DCeJjH3Qc8rB2bhGf4AisyszNJLyS9NzNJ6mn2w7eBtcKwD7CC1OMfavRc1TuNHsDRyIO3gSoQ/gAQEGP+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AARH+ABAQ4Q8AAf0fOJ0hy/RK/LAAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(merger_rates['redshift'], histtype='step', bins=50)\n", + "plt.xlabel('$z$')" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$m$')" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(merger_rates['magnitude'], histtype='step', bins=50)\n", + "plt.xlabel('$m$')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We also asked to generate blue light luminosities for these objects:\n", + "```yaml\n", + " luminosity: !skypy.galaxy.luminosity.luminosity_from_absolute_magnitude\n", + " absolute_magnitude: $merger_rates.magnitude\n", + " zeropoint: Lsun_B\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(merger_rates['luminosity'], histtype='step', bins=np.logspace(5,12,50))\n", + "plt.xlabel('$\\phi\\,$[$L_{\\odot, B}$]')\n", + "plt.xscale('log')\n", + "plt.yscale('log')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And merger rates for three different types of compact binary merger:\n", + "```yaml\n", + " ns_ns_rate: !skypy.gravitational_wave.b_band_merger_rate\n", + " population: NS-NS\n", + " optimism: low\n", + " luminosity: $merger_rates.luminosity\n", + " ns_bh_rate: !skypy.gravitational_wave.b_band_merger_rate\n", + " population: NS-BH\n", + " optimism: low\n", + " luminosity: $merger_rates.luminosity\n", + " bh_bh_rate: !skypy.gravitational_wave.b_band_merger_rate\n", + " population: BH-BH\n", + " optimism: low\n", + " luminosity: $merger_rates.luminosity\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$R\\\\,$[yr$^{-1}$]')" + ] + }, + "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": [ + "plt.figure()\n", + "plt.hist(merger_rates['ns_ns_rate'], histtype='step', bins=np.logspace(-4,2,50), label='NS-NS')\n", + "plt.hist(merger_rates['ns_bh_rate'], histtype='step', bins=np.logspace(-4,2,50), label='NS-BH')\n", + "plt.hist(merger_rates['bh_bh_rate'], histtype='step', bins=np.logspace(-4,2,50), label='BH-BH')\n", + "plt.legend()\n", + "plt.xscale('log')\n", + "plt.yscale('log')\n", + "plt.xlabel('$R\\,$[yr$^{-1}$]')" + ] + } + ], + "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 +} diff --git a/examples/mccl_galaxies.ipynb b/examples/mccl_galaxies.ipynb new file mode 100644 index 000000000..47703a6e3 --- /dev/null +++ b/examples/mccl_galaxies.ipynb @@ -0,0 +1,446 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from astropy.table import Table\n", + "from matplotlib import pyplot as plt\n", + "from matplotlib import rc\n", + "\n", + "rc('text', usetex=True)\n", + "rc('font', family='serif')\n", + "rc('font', size=14)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## MCCL red galaxies" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example runs a number of SkyPy modules to create a catalogue of galaxies using our implementation of the MCCL model of [Herbel et al (2018)](https://arxiv.org/abs/1801.07615) and [Kacprzak et al (2020)](https://arxiv.org/abs/1906.01018).\n", + "\n", + "Running the `mccl_galaxies` example:\n", + "```bash\n", + "$ skypy mccl_galaxies.yml --format fits\n", + "```\n", + "generates an output catalogue for us to load in:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "red_galaxies = Table.read('red_galaxies.fits')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "
\n", + " name dtype shape unit\n", + "--------------------- ------- ----- ----\n", + " redshift float64 \n", + " magnitude float64 \n", + " physical_size float64 kpc\n", + " ellipticity float64 \n", + " angular_size float64 rad\n", + "spectral_coefficients float64 (5,) \n", + "\n" + ] + } + ], + "source": [ + "print(red_galaxies.info)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have asked to generate a table containing a number of columns for objects called red galaxies. Here we make a quick visual check of the columns.\n", + "\n", + "We have asked for redshifts and magnitudes over the given redshift range and magnitude limit:\n", + "\n", + "```yaml\n", + "z_range: !numpy.arange [0, 2.01, 0.1]\n", + "mag_lim: 30\n", + "\n", + "red_galaxies:\n", + " redshift, magnitude: !skypy.galaxy.schechter_lf\n", + " redshift: $z_range\n", + " M_star: $M_star_red\n", + " phi_star: $phi_star_red\n", + " alpha: $alpha_red\n", + " m_lim: $mag_lim\n", + " fsky: $fsky\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, '$m$')" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + }, + { + "ename": "TimeoutError", + "evalue": "Lock error: Matplotlib failed to acquire the following lock file:\n /Users/harrison/.matplotlib/tex.cache/bc400cd8ba1f12a777caa16d8c77291f.tex.matplotlib-lock\nThis maybe due to another process holding this lock file. If you are sure no\nother Matplotlib process is running, remove this file and try again.", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTimeoutError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/IPython/core/formatters.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, obj)\u001b[0m\n\u001b[1;32m 339\u001b[0m \u001b[0;32mpass\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 340\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 341\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mprinter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mobj\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 342\u001b[0m \u001b[0;31m# Finally look for special method names\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 343\u001b[0m \u001b[0mmethod\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mget_real_method\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprint_method\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/IPython/core/pylabtools.py\u001b[0m in \u001b[0;36m\u001b[0;34m(fig)\u001b[0m\n\u001b[1;32m 246\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 247\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'png'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mformats\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 248\u001b[0;31m \u001b[0mpng_formatter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfor_type\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mFigure\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mfig\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mprint_figure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfig\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'png'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 249\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'retina'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mformats\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0;34m'png2x'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mformats\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 250\u001b[0m \u001b[0mpng_formatter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfor_type\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mFigure\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mfig\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mretina_figure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfig\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/IPython/core/pylabtools.py\u001b[0m in \u001b[0;36mprint_figure\u001b[0;34m(fig, fmt, bbox_inches, **kwargs)\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0mFigureCanvasBase\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfig\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 131\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 132\u001b[0;31m \u001b[0mfig\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcanvas\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprint_figure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbytes_io\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkw\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 133\u001b[0m \u001b[0mdata\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mbytes_io\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgetvalue\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 134\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mfmt\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'svg'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/backend_bases.py\u001b[0m in \u001b[0;36mprint_figure\u001b[0;34m(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, pad_inches, bbox_extra_artists, backend, **kwargs)\u001b[0m\n\u001b[1;32m 2191\u001b[0m else suppress())\n\u001b[1;32m 2192\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mctx\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2193\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfigure\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2194\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2195\u001b[0m bbox_inches = self.figure.get_tightbbox(\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/artist.py\u001b[0m in \u001b[0;36mdraw_wrapper\u001b[0;34m(artist, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 41\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0martist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 42\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 43\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0martist\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_agg_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/figure.py\u001b[0m in \u001b[0;36mdraw\u001b[0;34m(self, renderer)\u001b[0m\n\u001b[1;32m 1861\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1862\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpatch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1863\u001b[0;31m mimage._draw_list_compositing_images(\n\u001b[0m\u001b[1;32m 1864\u001b[0m renderer, self, artists, self.suppressComposite)\n\u001b[1;32m 1865\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/image.py\u001b[0m in \u001b[0;36m_draw_list_compositing_images\u001b[0;34m(renderer, parent, artists, suppress_composite)\u001b[0m\n\u001b[1;32m 129\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnot_composite\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mhas_images\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0martists\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 131\u001b[0;31m \u001b[0ma\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 132\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 133\u001b[0m \u001b[0;31m# Composite any adjacent images together\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/artist.py\u001b[0m in \u001b[0;36mdraw_wrapper\u001b[0;34m(artist, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 41\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0martist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 42\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 43\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0martist\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_agg_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/cbook/deprecation.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*inner_args, **inner_kwargs)\u001b[0m\n\u001b[1;32m 409\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0mdeprecation_addendum\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 410\u001b[0m **kwargs)\n\u001b[0;32m--> 411\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minner_args\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0minner_kwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 412\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 413\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axes/_base.py\u001b[0m in \u001b[0;36mdraw\u001b[0;34m(self, renderer, inframe)\u001b[0m\n\u001b[1;32m 2745\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstop_rasterizing\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2746\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2747\u001b[0;31m \u001b[0mmimage\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_draw_list_compositing_images\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0martists\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2748\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2749\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclose_group\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'axes'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/image.py\u001b[0m in \u001b[0;36m_draw_list_compositing_images\u001b[0;34m(renderer, parent, artists, suppress_composite)\u001b[0m\n\u001b[1;32m 129\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnot_composite\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mhas_images\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0martists\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 131\u001b[0;31m \u001b[0ma\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 132\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 133\u001b[0m \u001b[0;31m# Composite any adjacent images together\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/artist.py\u001b[0m in \u001b[0;36mdraw_wrapper\u001b[0;34m(artist, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 41\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0martist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 42\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 43\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0martist\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_agg_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axis.py\u001b[0m in \u001b[0;36mdraw\u001b[0;34m(self, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 1163\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1164\u001b[0m \u001b[0mticks_to_draw\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_update_ticks\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1165\u001b[0;31m ticklabelBoxes, ticklabelBoxes2 = self._get_tick_bboxes(ticks_to_draw,\n\u001b[0m\u001b[1;32m 1166\u001b[0m renderer)\n\u001b[1;32m 1167\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axis.py\u001b[0m in \u001b[0;36m_get_tick_bboxes\u001b[0;34m(self, ticks, renderer)\u001b[0m\n\u001b[1;32m 1089\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_get_tick_bboxes\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mticks\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1090\u001b[0m \u001b[0;34m\"\"\"Return lists of bboxes for ticks' label1's and label2's.\"\"\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1091\u001b[0;31m return ([tick.label1.get_window_extent(renderer)\n\u001b[0m\u001b[1;32m 1092\u001b[0m for tick in ticks if tick.label1.get_visible()],\n\u001b[1;32m 1093\u001b[0m [tick.label2.get_window_extent(renderer)\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axis.py\u001b[0m in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m 1089\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_get_tick_bboxes\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mticks\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1090\u001b[0m \u001b[0;34m\"\"\"Return lists of bboxes for ticks' label1's and label2's.\"\"\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1091\u001b[0;31m return ([tick.label1.get_window_extent(renderer)\n\u001b[0m\u001b[1;32m 1092\u001b[0m for tick in ticks if tick.label1.get_visible()],\n\u001b[1;32m 1093\u001b[0m [tick.label2.get_window_extent(renderer)\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/text.py\u001b[0m in \u001b[0;36mget_window_extent\u001b[0;34m(self, renderer, dpi)\u001b[0m\n\u001b[1;32m 898\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 899\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mcbook\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_setattr_cm\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfigure\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdpi\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdpi\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 900\u001b[0;31m \u001b[0mbbox\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minfo\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdescent\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_get_layout\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_renderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 901\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_unitless_position\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 902\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_transform\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtransform\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/text.py\u001b[0m in \u001b[0;36m_get_layout\u001b[0;34m(self, renderer)\u001b[0m\n\u001b[1;32m 291\u001b[0m \u001b[0mclean_line\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mismath\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_preprocess_math\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mline\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 292\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mclean_line\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 293\u001b[0;31m w, h, d = renderer.get_text_width_height_descent(\n\u001b[0m\u001b[1;32m 294\u001b[0m clean_line, self._fontproperties, ismath=ismath)\n\u001b[1;32m 295\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/backends/backend_agg.py\u001b[0m in \u001b[0;36mget_text_width_height_descent\u001b[0;34m(self, s, prop, ismath)\u001b[0m\n\u001b[1;32m 225\u001b[0m \u001b[0mtexmanager\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_texmanager\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 226\u001b[0m \u001b[0mfontsize\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mprop\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_size_in_points\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 227\u001b[0;31m w, h, d = texmanager.get_text_width_height_descent(\n\u001b[0m\u001b[1;32m 228\u001b[0m s, fontsize, renderer=self)\n\u001b[1;32m 229\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mw\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mh\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0md\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/texmanager.py\u001b[0m in \u001b[0;36mget_text_width_height_descent\u001b[0;34m(self, tex, fontsize, renderer)\u001b[0m\n\u001b[1;32m 421\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 422\u001b[0m \u001b[0;31m# use dviread.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 423\u001b[0;31m \u001b[0mdvifile\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmake_dvi\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfontsize\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 424\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mdviread\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mDvi\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdvifile\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m72\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0mdpi_fraction\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mdvi\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 425\u001b[0m \u001b[0mpage\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdvi\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/texmanager.py\u001b[0m in \u001b[0;36mmake_dvi\u001b[0;34m(self, tex, fontsize)\u001b[0m\n\u001b[1;32m 306\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexists\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdvifile\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 307\u001b[0m \u001b[0mtexfile\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmake_tex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfontsize\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 308\u001b[0;31m \u001b[0;32mwith\u001b[0m \u001b[0mcbook\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_lock_path\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtexfile\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 309\u001b[0m self._run_checked_subprocess(\n\u001b[1;32m 310\u001b[0m [\"latex\", \"-interaction=nonstopmode\", \"--halt-on-error\",\n", + "\u001b[0;32m/usr/local/Cellar/python@3.8/3.8.5/Frameworks/Python.framework/Versions/3.8/lib/python3.8/contextlib.py\u001b[0m in \u001b[0;36m__enter__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 111\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 112\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 113\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mnext\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgen\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 114\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mStopIteration\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 115\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mRuntimeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"generator didn't yield\"\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/cbook/__init__.py\u001b[0m in \u001b[0;36m_lock_path\u001b[0;34m(path)\u001b[0m\n\u001b[1;32m 1803\u001b[0m \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msleeptime\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1804\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1805\u001b[0;31m raise TimeoutError(\"\"\"\\\n\u001b[0m\u001b[1;32m 1806\u001b[0m \u001b[0mLock\u001b[0m \u001b[0merror\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mMatplotlib\u001b[0m \u001b[0mfailed\u001b[0m \u001b[0mto\u001b[0m \u001b[0macquire\u001b[0m \u001b[0mthe\u001b[0m \u001b[0mfollowing\u001b[0m \u001b[0mlock\u001b[0m \u001b[0mfile\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1807\u001b[0m \u001b[0;34m{\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mTimeoutError\u001b[0m: Lock error: Matplotlib failed to acquire the following lock file:\n /Users/harrison/.matplotlib/tex.cache/bc400cd8ba1f12a777caa16d8c77291f.tex.matplotlib-lock\nThis maybe due to another process holding this lock file. If you are sure no\nother Matplotlib process is running, remove this file and try again." + ] + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist2d(red_galaxies['redshift'], red_galaxies['magnitude'], bins=50)\n", + "plt.xlabel('$z$')\n", + "plt.ylabel('$m$')" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$z$')" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(red_galaxies['redshift'], histtype='step', bins=50)\n", + "plt.xlabel('$z$')" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$m$')" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(red_galaxies['magnitude'], histtype='step', bins=50)\n", + "plt.xlabel('$m$')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We also asked to generate physical sizes:\n", + "```yaml\n", + " physical_size: !skypy.galaxy.size.early_type_lognormal\n", + " magnitude: $red_galaxies.magnitude\n", + " a: 0.60\n", + " b: -4.63\n", + " M0: -20.52\n", + " sigma1: 0.48\n", + " sigma2: 0.25\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$d\\\\,$[kpc]')" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(red_galaxies['physical_size'], histtype='step', bins=50)\n", + "plt.xlabel('$d\\,$[kpc]')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Ellipticities:\n", + "```yaml\n", + " ellipticity: !skypy.galaxy.ellipticity.beta_ellipticity\n", + " e_ratio: 0.45\n", + " e_sum: 3.5\n", + " size: !len [$red_galaxies.redshift]\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$|e|$')" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.hist(red_galaxies['ellipticity'], histtype='step', bins=50)\n", + "plt.xlabel('$|e|$')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Angular sizes:\n", + "```yaml\n", + " angular_size: !skypy.galaxy.size.angular_size\n", + " physical_size: $red_galaxies.physical_size\n", + " redshift: $red_galaxies.redshift\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$\\\\theta\\\\,$[rad]')" + ] + }, + "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": [ + "plt.figure()\n", + "plt.hist(red_galaxies['physical_size'], histtype='step', bins=50)\n", + "plt.xlabel('$\\\\theta\\,$[rad]')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And coefficients for the combination of spectral templates (which can be used to create an SED):\n", + "```yaml\n", + " spectral_coefficients: !skypy.galaxy.spectrum.dirichlet_coefficients\n", + " alpha0: [2.461, 2.358, 2.568, 2.268, 2.402]\n", + " alpha1: [2.410, 2.340, 2.200, 2.540, 2.464]\n", + " weight: [3.84e+09, 1.57e+06, 3.91e+08, 4.66e+10, 3.03e+07]\n", + " redshift: $red_galaxies.redshift\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, '$c_{i}$')" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "for spc in red_galaxies['spectral_coefficients'].T:\n", + " plt.hist(spc, histtype='step', bins=50)\n", + "plt.yscale('log')\n", + "plt.xlabel('$c_{i}$')" + ] + } + ], + "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 +} From 3c574921148279818cb843e2b9d019287279630f Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Wed, 7 Oct 2020 16:35:36 +0100 Subject: [PATCH 14/17] fixed state, Vale & Ostriker reference --- examples/abundance_matching.ipynb | 14 ++++----- examples/mccl_galaxies.ipynb | 47 ++++++------------------------- 2 files changed, 15 insertions(+), 46 deletions(-) diff --git a/examples/abundance_matching.ipynb b/examples/abundance_matching.ipynb index 5143158be..e7a92e2f6 100644 --- a/examples/abundance_matching.ipynb +++ b/examples/abundance_matching.ipynb @@ -27,7 +27,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "This example runs a number of SkyPy modules to create a catalogue of halos, sub-halos and galaxies which are matched together using the Vale & Ostriker ()\n", + "This example runs a number of SkyPy modules to create a catalogue of halos, sub-halos and galaxies which are matched together using the [Vale & Ostriker (2004)](https://ui.adsabs.harvard.edu/abs/2004MNRAS.353..189V/abstract).\n", "\n", "Running the `abundance_matching` example:\n", "```bash\n", @@ -101,7 +101,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 4, @@ -110,7 +110,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -153,7 +153,7 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -195,7 +195,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -208,7 +208,7 @@ ], "source": [ "plt.figure()\n", - "plt.hist(halos['halo_group'], histtype='step', bins=50)\n", + "plt.hist(halos['halo_group'], histtype='step', bins=halos['halo_group'].max())\n", "plt.xlabel('Group')" ] }, @@ -236,7 +236,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] diff --git a/examples/mccl_galaxies.ipynb b/examples/mccl_galaxies.ipynb index 47703a6e3..6a16988d1 100644 --- a/examples/mccl_galaxies.ipynb +++ b/examples/mccl_galaxies.ipynb @@ -54,7 +54,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "
\n", + "
\n", " name dtype shape unit\n", "--------------------- ------- ----- ----\n", " redshift float64 \n", @@ -109,40 +109,9 @@ "metadata": {}, "output_type": "execute_result" }, - { - "ename": "TimeoutError", - "evalue": "Lock error: Matplotlib failed to acquire the following lock file:\n /Users/harrison/.matplotlib/tex.cache/bc400cd8ba1f12a777caa16d8c77291f.tex.matplotlib-lock\nThis maybe due to another process holding this lock file. If you are sure no\nother Matplotlib process is running, remove this file and try again.", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mTimeoutError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/IPython/core/formatters.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, obj)\u001b[0m\n\u001b[1;32m 339\u001b[0m \u001b[0;32mpass\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 340\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 341\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mprinter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mobj\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 342\u001b[0m \u001b[0;31m# Finally look for special method names\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 343\u001b[0m \u001b[0mmethod\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mget_real_method\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprint_method\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/IPython/core/pylabtools.py\u001b[0m in \u001b[0;36m\u001b[0;34m(fig)\u001b[0m\n\u001b[1;32m 246\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 247\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'png'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mformats\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 248\u001b[0;31m \u001b[0mpng_formatter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfor_type\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mFigure\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mfig\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mprint_figure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfig\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'png'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 249\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'retina'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mformats\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0;34m'png2x'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mformats\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 250\u001b[0m \u001b[0mpng_formatter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfor_type\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mFigure\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;32mlambda\u001b[0m \u001b[0mfig\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mretina_figure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfig\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/IPython/core/pylabtools.py\u001b[0m in \u001b[0;36mprint_figure\u001b[0;34m(fig, fmt, bbox_inches, **kwargs)\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0mFigureCanvasBase\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfig\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 131\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 132\u001b[0;31m \u001b[0mfig\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcanvas\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprint_figure\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbytes_io\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkw\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 133\u001b[0m \u001b[0mdata\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mbytes_io\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgetvalue\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 134\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mfmt\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'svg'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/backend_bases.py\u001b[0m in \u001b[0;36mprint_figure\u001b[0;34m(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, pad_inches, bbox_extra_artists, backend, **kwargs)\u001b[0m\n\u001b[1;32m 2191\u001b[0m else suppress())\n\u001b[1;32m 2192\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mctx\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2193\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfigure\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2194\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2195\u001b[0m bbox_inches = self.figure.get_tightbbox(\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/artist.py\u001b[0m in \u001b[0;36mdraw_wrapper\u001b[0;34m(artist, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 41\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0martist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 42\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 43\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0martist\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_agg_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/figure.py\u001b[0m in \u001b[0;36mdraw\u001b[0;34m(self, renderer)\u001b[0m\n\u001b[1;32m 1861\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1862\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpatch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1863\u001b[0;31m mimage._draw_list_compositing_images(\n\u001b[0m\u001b[1;32m 1864\u001b[0m renderer, self, artists, self.suppressComposite)\n\u001b[1;32m 1865\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/image.py\u001b[0m in \u001b[0;36m_draw_list_compositing_images\u001b[0;34m(renderer, parent, artists, suppress_composite)\u001b[0m\n\u001b[1;32m 129\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnot_composite\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mhas_images\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0martists\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 131\u001b[0;31m \u001b[0ma\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 132\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 133\u001b[0m \u001b[0;31m# Composite any adjacent images together\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/artist.py\u001b[0m in \u001b[0;36mdraw_wrapper\u001b[0;34m(artist, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 41\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0martist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 42\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 43\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0martist\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_agg_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/cbook/deprecation.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*inner_args, **inner_kwargs)\u001b[0m\n\u001b[1;32m 409\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0mdeprecation_addendum\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 410\u001b[0m **kwargs)\n\u001b[0;32m--> 411\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0minner_args\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0minner_kwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 412\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 413\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axes/_base.py\u001b[0m in \u001b[0;36mdraw\u001b[0;34m(self, renderer, inframe)\u001b[0m\n\u001b[1;32m 2745\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstop_rasterizing\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2746\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2747\u001b[0;31m \u001b[0mmimage\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_draw_list_compositing_images\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0martists\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2748\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2749\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclose_group\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'axes'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/image.py\u001b[0m in \u001b[0;36m_draw_list_compositing_images\u001b[0;34m(renderer, parent, artists, suppress_composite)\u001b[0m\n\u001b[1;32m 129\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnot_composite\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mhas_images\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0ma\u001b[0m \u001b[0;32min\u001b[0m \u001b[0martists\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 131\u001b[0;31m \u001b[0ma\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 132\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 133\u001b[0m \u001b[0;31m# Composite any adjacent images together\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/artist.py\u001b[0m in \u001b[0;36mdraw_wrapper\u001b[0;34m(artist, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 41\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0martist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 42\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 43\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0martist\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_agg_filter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axis.py\u001b[0m in \u001b[0;36mdraw\u001b[0;34m(self, renderer, *args, **kwargs)\u001b[0m\n\u001b[1;32m 1163\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1164\u001b[0m \u001b[0mticks_to_draw\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_update_ticks\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1165\u001b[0;31m ticklabelBoxes, ticklabelBoxes2 = self._get_tick_bboxes(ticks_to_draw,\n\u001b[0m\u001b[1;32m 1166\u001b[0m renderer)\n\u001b[1;32m 1167\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axis.py\u001b[0m in \u001b[0;36m_get_tick_bboxes\u001b[0;34m(self, ticks, renderer)\u001b[0m\n\u001b[1;32m 1089\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_get_tick_bboxes\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mticks\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1090\u001b[0m \u001b[0;34m\"\"\"Return lists of bboxes for ticks' label1's and label2's.\"\"\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1091\u001b[0;31m return ([tick.label1.get_window_extent(renderer)\n\u001b[0m\u001b[1;32m 1092\u001b[0m for tick in ticks if tick.label1.get_visible()],\n\u001b[1;32m 1093\u001b[0m [tick.label2.get_window_extent(renderer)\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/axis.py\u001b[0m in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m 1089\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_get_tick_bboxes\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mticks\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrenderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1090\u001b[0m \u001b[0;34m\"\"\"Return lists of bboxes for ticks' label1's and label2's.\"\"\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1091\u001b[0;31m return ([tick.label1.get_window_extent(renderer)\n\u001b[0m\u001b[1;32m 1092\u001b[0m for tick in ticks if tick.label1.get_visible()],\n\u001b[1;32m 1093\u001b[0m [tick.label2.get_window_extent(renderer)\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/text.py\u001b[0m in \u001b[0;36mget_window_extent\u001b[0;34m(self, renderer, dpi)\u001b[0m\n\u001b[1;32m 898\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 899\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mcbook\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_setattr_cm\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfigure\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdpi\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdpi\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 900\u001b[0;31m \u001b[0mbbox\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minfo\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdescent\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_get_layout\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_renderer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 901\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_unitless_position\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 902\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_transform\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtransform\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/text.py\u001b[0m in \u001b[0;36m_get_layout\u001b[0;34m(self, renderer)\u001b[0m\n\u001b[1;32m 291\u001b[0m \u001b[0mclean_line\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mismath\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_preprocess_math\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mline\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 292\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mclean_line\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 293\u001b[0;31m w, h, d = renderer.get_text_width_height_descent(\n\u001b[0m\u001b[1;32m 294\u001b[0m clean_line, self._fontproperties, ismath=ismath)\n\u001b[1;32m 295\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/backends/backend_agg.py\u001b[0m in \u001b[0;36mget_text_width_height_descent\u001b[0;34m(self, s, prop, ismath)\u001b[0m\n\u001b[1;32m 225\u001b[0m \u001b[0mtexmanager\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_texmanager\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 226\u001b[0m \u001b[0mfontsize\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mprop\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_size_in_points\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 227\u001b[0;31m w, h, d = texmanager.get_text_width_height_descent(\n\u001b[0m\u001b[1;32m 228\u001b[0m s, fontsize, renderer=self)\n\u001b[1;32m 229\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mw\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mh\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0md\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/texmanager.py\u001b[0m in \u001b[0;36mget_text_width_height_descent\u001b[0;34m(self, tex, fontsize, renderer)\u001b[0m\n\u001b[1;32m 421\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 422\u001b[0m \u001b[0;31m# use dviread.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 423\u001b[0;31m \u001b[0mdvifile\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmake_dvi\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfontsize\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 424\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mdviread\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mDvi\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdvifile\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m72\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0mdpi_fraction\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mdvi\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 425\u001b[0m \u001b[0mpage\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdvi\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/texmanager.py\u001b[0m in \u001b[0;36mmake_dvi\u001b[0;34m(self, tex, fontsize)\u001b[0m\n\u001b[1;32m 306\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexists\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdvifile\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 307\u001b[0m \u001b[0mtexfile\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmake_tex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfontsize\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 308\u001b[0;31m \u001b[0;32mwith\u001b[0m \u001b[0mcbook\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_lock_path\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtexfile\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 309\u001b[0m self._run_checked_subprocess(\n\u001b[1;32m 310\u001b[0m [\"latex\", \"-interaction=nonstopmode\", \"--halt-on-error\",\n", - "\u001b[0;32m/usr/local/Cellar/python@3.8/3.8.5/Frameworks/Python.framework/Versions/3.8/lib/python3.8/contextlib.py\u001b[0m in \u001b[0;36m__enter__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 111\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 112\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 113\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mnext\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgen\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 114\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mStopIteration\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 115\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mRuntimeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"generator didn't yield\"\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/local/lib/python3.8/site-packages/matplotlib/cbook/__init__.py\u001b[0m in \u001b[0;36m_lock_path\u001b[0;34m(path)\u001b[0m\n\u001b[1;32m 1803\u001b[0m \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msleeptime\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1804\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1805\u001b[0;31m raise TimeoutError(\"\"\"\\\n\u001b[0m\u001b[1;32m 1806\u001b[0m \u001b[0mLock\u001b[0m \u001b[0merror\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mMatplotlib\u001b[0m \u001b[0mfailed\u001b[0m \u001b[0mto\u001b[0m \u001b[0macquire\u001b[0m \u001b[0mthe\u001b[0m \u001b[0mfollowing\u001b[0m \u001b[0mlock\u001b[0m \u001b[0mfile\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1807\u001b[0m \u001b[0;34m{\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mTimeoutError\u001b[0m: Lock error: Matplotlib failed to acquire the following lock file:\n /Users/harrison/.matplotlib/tex.cache/bc400cd8ba1f12a777caa16d8c77291f.tex.matplotlib-lock\nThis maybe due to another process holding this lock file. If you are sure no\nother Matplotlib process is running, remove this file and try again." - ] - }, { "data": { + "image/png": "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\n", "text/plain": [ "
" ] @@ -177,7 +146,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -211,7 +180,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -261,7 +230,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -308,7 +277,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -354,7 +323,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -402,7 +371,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] From 7ddb554b85269e562381d6d86460e6c06f0b473d Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Sat, 10 Oct 2020 11:50:43 +0100 Subject: [PATCH 15/17] added semicolons to supress extra output --- examples/abundance_matching.ipynb | 50 +++--------- examples/gravitational_wave_rates.ipynb | 68 ++++------------ examples/mccl_galaxies.ipynb | 100 ++++-------------------- 3 files changed, 39 insertions(+), 179 deletions(-) diff --git a/examples/abundance_matching.ipynb b/examples/abundance_matching.ipynb index e7a92e2f6..42903b04d 100644 --- a/examples/abundance_matching.ipynb +++ b/examples/abundance_matching.ipynb @@ -27,7 +27,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "This example runs a number of SkyPy modules to create a catalogue of halos, sub-halos and galaxies which are matched together using the [Vale & Ostriker (2004)](https://ui.adsabs.harvard.edu/abs/2004MNRAS.353..189V/abstract).\n", + "This example runs a number of SkyPy modules to create a catalogue of halos, sub-halos and galaxies which are matched together using the [Vale & Ostriker (2004)](https://ui.adsabs.harvard.edu/abs/2004MNRAS.353..189V/abstract) method.\n", "\n", "Running the `abundance_matching` example:\n", "```bash\n", @@ -100,17 +100,7 @@ "outputs": [ { "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -128,7 +118,7 @@ "plt.xlabel('$M\\,[M_{\\odot}]$')\n", "plt.xscale('log')\n", "plt.yscale('log')\n", - "plt.legend()" + "plt.legend();" ] }, { @@ -153,7 +143,7 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -168,7 +158,7 @@ "plt.figure()\n", "plt.hist(halos['galaxy_magnitude'], histtype='step', bins=50)\n", "plt.xlabel('$m$')\n", - "plt.yscale('log')" + "plt.yscale('log');" ] }, { @@ -185,17 +175,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, 'Group')" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -209,7 +189,7 @@ "source": [ "plt.figure()\n", "plt.hist(halos['halo_group'], histtype='step', bins=halos['halo_group'].max())\n", - "plt.xlabel('Group')" + "plt.xlabel('Group');" ] }, { @@ -226,17 +206,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0, 0.5, '$m$')" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -252,7 +222,7 @@ "plt.hist2d(halos['halo_mass'], halos['galaxy_magnitude'], bins=[np.logspace(9,12,50), 50])\n", "plt.xscale('log')\n", "plt.xlabel('$M\\,[M_{\\odot}]$')\n", - "plt.ylabel('$m$')" + "plt.ylabel('$m$');" ] } ], @@ -272,7 +242,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.5" + "version": "3.7.4" } }, "nbformat": 4, diff --git a/examples/gravitational_wave_rates.ipynb b/examples/gravitational_wave_rates.ipynb index 1e72749e1..049e1925f 100644 --- a/examples/gravitational_wave_rates.ipynb +++ b/examples/gravitational_wave_rates.ipynb @@ -54,7 +54,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "
\n", + "
\n", " name dtype unit \n", "---------- ------- ------\n", " redshift float64 \n", @@ -106,17 +106,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0, 0.5, '$m$')" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -131,7 +121,7 @@ "plt.figure()\n", "plt.hist2d(merger_rates['redshift'], merger_rates['magnitude'], bins=50)\n", "plt.xlabel('$z$')\n", - "plt.ylabel('$m$')" + "plt.ylabel('$m$');" ] }, { @@ -141,17 +131,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$z$')" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -165,27 +145,17 @@ "source": [ "plt.figure()\n", "plt.hist(merger_rates['redshift'], histtype='step', bins=50)\n", - "plt.xlabel('$z$')" + "plt.xlabel('$z$');" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 6, "metadata": {}, "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$m$')" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYwAAAELCAYAAADKjLEqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAO9ElEQVR4nO3dv3IbR4IH4F9fXaIMq7IiVflU9BtwqUjZFRU5lbRPcPIbyLtPcKTeQHyDtZVeJFnZRSsxv2C53kCRt7gIrkphX4DBGQZBoPGHxAD8viqUNdPDUbdHgx+ne6an1FoDAIv8y7YrAMBuEBgANBEYADQRGAA0ERgANBEYADT5121XoNVXX31VHz16tO1qAOyMT58+/aPW+mBT+9uZwHj06FE+fvy47WoA7IxSyt83uT9dUgA0ERgANBEYADQRGAA0ERgANBEYADQRGAA0ERgANNmZB/e4WU9OPuTz8MuV9Q8H9/Lff/z3LdQI6BuBccfMC4afT769sv7RH//rNqoF7ACBccd8Hn6ZGQwAiwgM5no4uDfzKkNXFdw9AoO5rgsFXVVw97hLCoAmAgOAJrqkWImxDbh7BAYrMbYBd48uKQCaCAwAmggMAJoIDACaCAwAmggMAJoIDACaCAwAmggMAJoIDACaCAwAmiycS6qUcpjkuFt8nOQ/aq3DruwgybMk50kOk5ytW8ZuMykh7K+5gVFKGSQ5qrW+7pafJfkpye+7Td7UWp92ZRdJTpN8t2YZO+y6UHhy8kGQwI5bdIVxlOT7JGfd8vskP3ZBcr/7JElqrRellBdJvuuuIJYu20B76Cmz28LumzuGUWt9n+T5xKqDbv0wo66ky+mf6QJh1TIAemrhoHet9Xxi8Q9JXnd/vp9kOLX5ZZLBGmUA9FTzC5S6bqjD8djDbSilvEzyMkm+/vrr2/prAZhhmdtqT6fCYtZVwfjqYdWy36i1ntVaj2qtRw8ePFiiqgBsWtMVRinlVUaD3ymlDLoxjPNMDF6PdYPYWaVsmYoDcLsWXmF0t9K+nXhO4kVy9Qu+G7T+YZ0yAPpr0XMYB0l+7P48Xn2RX2+zfd5dfVwkeVxrnbw1dtUyAHpobmB0VwNlQfn4rqm3mygDoJ/MJQVAk+bbatktT04+5PPwy5X1Dwf3tlAbYB8IjD31efglP598u+1qAHtElxQATQQGAE10SbFV3p8Bu0NgsFWmPYfdoUsKgCYCA4AmAgOAJsYwdpwH9IDbIjB2nAf0gNuiSwqAJgIDgCYCA4AmAgOAJgIDgCYCA4AmAgOAJgIDgCYCA4AmAgOAJqYGoZe8WAn6R2DQS16sBP2jSwqAJgIDgCYCA4AmAgOAJgIDgCYCA4AmAgOAJgIDgCYe3GOneAIctkdgsFM8AQ7bo0sKgCYLA6OUclxK+TRj/Wkp5WUpZdD993ii7KCU8qr72VellEFLGQD9NTcwuhC4THJ4zSanSf6WZFBrfT+x/k2t9XW37m23XUsZAD01NzBqre9rrefXFP+l1vq77vN6vLKUcpDk/sQ+LpK8WFQGQL+tPehdSjmcCpXDjK5Kprc7mFfWhQczPDn5kM/DLzPLHg7u3XJtgLtqncA46LqsPpZSTpP8uQuO+0mGU9teJhksKLuilPIyycsk+frrr9eo6m77PPySn0++3XY1gDtu5bukxuMQtdZhkjdJftxYrX79O85qrUe11qMHDx5sevcALGHlwJi8u6nrTjroFmddMYyvLOaVAdBjKwVG1xX10zXF426p3+hCZV4ZAD226hXGxyTfjxdKKc8yukX2ypd/N9j9w6IyAPpt7qB3dyXxtPvzaZJ343GLUsplKeVVRt1J39Ran0/86POu7CLJ41rrd41lAPTU3MDoHq57n4mriYmy84y6mGb93EWS8bMZb1vLAOgvc0kB0MRsteyF66Y9H5eZ+hzWJzDYC/MCwdTnsBm6pABoIjAAaCIwAGgiMABoIjAAaCIwAGgiMABoIjAAaCIwAGgiMABoIjAAaCIwAGgiMABoIjAAaGJ6c/bede/K8J4MWI7AYO9dFwrekwHL0SUFQBOBAUATgQFAE4EBQBOD3txZ7p6C5QgM7ix3T8FydEkB0ERgANBEYADQRGAA0MSgd488OfmQz8MvV9Y/HNzbQm0Afktg9Mjn4Zf8fPLttqsBMJMuKQCaCAwAmggMAJosDIxSynEp5dOM9QellFdd+atSymDdMgD6a+6gdynlOMllksMZxW9qrU+77S6SnCb5bs0yAHpq7hVGrfV9rfV8en0p5SDJ/YntLpK8WKcMgH5bdQzjMKMrj9/oAmHVMgB6bNXAuJ9kOLXuMslgjTIAeqzXd0mVUl6WUj6WUj7+8ssv264OwJ226pPes64KxlcPq5ZdUWs9S3KWJEdHR3XFusJSvFgJZls1MM4zMXg9Vmu9KKVklbIV6wEb58VKMNtKXVLTX/DdoPUP65QB0G8tz2GMn5k4TfKu1vq+K35eSnmV5CLJ41rr5LMUq5YB0FNzA6MLh/dJvp9RdpHkdbf4dhNlAPRXr++SAqA/vA8DGrl7irtOYEAjd09x1+mSAqCJwACgicAAoInAAKCJQe8teHLyIZ+HX66sfzi4t4XaALQRGFvwefglP598u+1qACxFlxQATQQGAE0EBgBNBAYATQx6w5rMMcVdITBgTeaY4q7QJQVAE4EBQBOBAUATgQFAE4EBQBOBAUATt9XCDfF8BvtGYMAN8XwG+0aXFABNBAYATQQGAE0EBgBNBAYATdwlBbfM7bbsKoEBt8zttuwqXVIANBEYADTRJQU9YWyDvhMY0BPGNug7XVIANFnrCqOUcprkr0l+SPIiyUWt9X1XdpDkWZLzJIdJzmqtw0VlAPTTJq4wTpP8LclgHBadN7XW1926t912LWUA9NC6gfGXWuvvus/r8cruCuL+eLnWepHRFcjcMgD6ayNjGKWUw6lVh0kuZ2x3sKAMgJ5aNzAOSinHSS5KKacTwXE/yXBq28skgwVlv1FKeVlK+VhK+fjLL7+sWVUA1rHWoPdUN9SbJO+SfLNupSb2f5bkLEmOjo7qpvZ7W56cfMjn4Zcr6x8O7m2hNuwqz2fQF+veJTUY391Ua72Y6FaadcUwvrKYV7ZXPg+/5OeTb7ddDXac5zPoi5W7pLquqJ+uKT7PxMD2WDfAPa8MgJ5aZwzjY5LvxwullGcZ3SJ75cu/u/L4YVEZAP21cpdUrXVYSrkspbzKqDvpm1rr84lNnndlF0ke11q/aywDoIfWHfQ+z6iLaVbZRZLxoPjb1jIA+slcUgA0MVst7Ci323LbBAbsKLfbctt0SQHQRGAA0ERgANBEYADQRGAA0ERgANBEYADQxHMYsGeue6BvXOahPlYlMGDPzAsED/WxDoGxAd6sx64wnQjrEBgb4M167ArTibAOg94ANBEYADQRGAA0ERgANBEYADQRGAA0cVst4PkMmggMwPMZNNElBUATgQFAE11SwLWMbTBJYADXMrbBJF1SADQRGAA00SW1BO+9gBFjG3eTwFiC917AiLGNu0mXFABNXGEAG6Orar8JDGBjrguFJycfBMkeEBjAjTPmsR+2EhillIMkz5KcJzlMclZrHW6jLrO4Gwrgqm1dYbyptT5NklLKRZLTJN9tqS5XuBsKbocxj91y64HRXV3cHy/XWi9KKS/So8AAbseyYx7XETC3YxtXGIdJLqdXllIOaq0XW6gP0DPLfvkbVL8d2wiM+0mGU+sukwxuuyLGKmA/bOpKZRV3KZR6fZdUKeVlkpfd4v+WUv7nNv7evycpf9roLr9K8o+N7rFf9r19yf63cd/bl9xQG2/g+2Id0238t03ufBuBMetqYtZVR2qtZ0nObr5KN6uU8rHWerTtetyUfW9fsv9t3Pf2Jdq4CduYGuQ8E4PeY8YvAPrt1gNjOhi6u6Z+uO16ALCcbY1hPC+lvEpykeRxrXXfb6nd+W61Bfa9fcn+t3Hf25do49pKrfUm9w/AnjC9OQBNBMaGlFIOSymvus+PpZRBS9mM/ZyWUl6WUgbdf49vo/4tFrTxoFt/3P13MGc/zdvetq5On2asn3vcprbt7TFM5raxud47egz34jxM5rbxZs/DWqvPmp+MbhN+ObH8LMmnRWXX7Os0yT+7z6ttt62ljd3yu4k/H2Q0X9h1+2re9pbbeJzRTAR1Rlmd8Zl5fPp6DBva2FzvXTuG+3IeNhzDGz0Pt974ffh0B/CvE8uD7gtlMK/smn0923Z7VmjjwfTJl+Sf1+ynedsttrXOqPOzqXUv5/x8L4/hvDYuU+8dPYZ7cR4uaOONn4e6pDag1vo+yfOJVQfd+uG8snn7LKUcbriaa1nQjmvnB5uxq2W27YvLWuvb8UIp5VkabgXv2zFs1VDvnTuG+3IeLnDj56HA2JBa6/nE4h+SvG4pm+Gg6y+96PpRe/MPdk47lpkfrDdzibWa/FLp+nnvL/ii6e0xXKC13jt3DJP9OQ/nuPHzsNdzSe2i7gvlsHbv+2gtG6u1vp7Y/k2Sd0m+2XxNV9fSjj32pyT/OW+DXTiGs+xqvZe1L+fhNgiMObrJD+f9I3nXXepOOp3zD3Fe2fjvHIx/e62jd4Xc6GX+htrYPD/YktuubcX2zXNca/1+wd+5C8dw1n5a673rx3BfzsNpN38ebnvgZp8+SV6lG0TL1GDavLKJbY5zdSCqbrtdi9qRPR/0njo+7xb8bO+P4aw6LVPvHT+Ge3EeXnMMDXrvim4g9G39tW/7RWPZwcT9zx+TfD/9czdX6+Vc1466YH6wyTYu2rbnDjPjN7BdOoZzzK33PhzDfTkPr3Mb56GpQTag+5/916nVF7XWb+aVdT/7Y0a/tZ51y4cZ/YYzTPJNXdD9cVsa2nGQ0b3t4/nBJk+46TZeu+02dYOcTzP6LfR1proBum6DQZ3o3+7W78QxTOa3cV69d/0Y7st5mCw8hjd6HgoMAJrokgKgicAAoInAAKCJwACgicAAoInAAKCJwACgicAAoInAAKCJwACgienNoVE3cdtxksdJ/pzRdNAHGc3Fc9ktH2Y0wd3FNbuBneUKA9od1dGrWl8m///az/dJ3mQ0kd37jCare7a1GsINEhjQaGLW04/119d9jq8oht3y75Ocz/p52HUCA5ZznNHrOseeTi0f1+Xe/gY7Q2DAcp5m1A01djz1Pon3pZRB984C2CsCA5YzGHdHdYPgk91Pw+7jKoO95AVKADRxhQFAE4EBQBOBAUATgQFAE4EBQBOBAUATgQFAE4EBQJP/A/+CVx1v60xEAAAAAElFTkSuQmCC\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -199,7 +169,7 @@ "source": [ "plt.figure()\n", "plt.hist(merger_rates['magnitude'], histtype='step', bins=50)\n", - "plt.xlabel('$m$')" + "plt.xlabel('$m$');" ] }, { @@ -221,7 +191,7 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -237,7 +207,7 @@ "plt.hist(merger_rates['luminosity'], histtype='step', bins=np.logspace(5,12,50))\n", "plt.xlabel('$\\phi\\,$[$L_{\\odot, B}$]')\n", "plt.xscale('log')\n", - "plt.yscale('log')" + "plt.yscale('log');" ] }, { @@ -263,22 +233,12 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": {}, "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$R\\\\,$[yr$^{-1}$]')" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXYAAAEOCAYAAACdLzzJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAW2UlEQVR4nO3dT2wc53nH8d/rVGkpt+JKcWxUdBhlqUMNRDlQ61OAHowljCLQjaSPPWl59oWkT9FNXl5y5uZSHy3ypvogcJFLYaBARAK1i6go4IWTmiqspNRKjUGgLvr0sLPMLjmz3B3Ov33n+wEMaWf/vdYIP7565pn3dWYmAIA/Xsl7AACAZBHsAOAZgh0APEOwA4BnCHYA8AzBDgCe+bO8ByBJr732mt24cSPvYQDAVNnf3/+DmX3/9PFCBPuNGzf0+PHjvIcBAFPFOffbsOOUYgDAMwQ7AHiGYAcAzxDsAOCZXIPdOXfHOdd68eJFnsMAAK/k2hVjZg8lPazVanfzHAeA8718+VLPnj3Tt99+m/dQSuHSpUt6/fXXdeXKlYnfW4h2RwDF9vLlS3399deam5vTzMyMnHN5D8lrZqbj42MdHh5K0sThTo0dwLmePXumubk5Xb58mVDPgHNOly9f1tzcnJ49ezbx+5mxI1fv7r6rp988Hfv111+9rkfLj5L58l/ckl787uzx2Xnp/c/Hf/2o93jgpx/+Sj//21l98+ffkzv6n7He893vvKK/+evJSwgYNjMzE6v0RbAjE1EBfv3V6/r878cPxHd339Wtj26FPjdx6L/4nXQv5ML9L25J92bPHp+dD3+9FP76gvrph7/SYfd47NfPVWb0g6uX9dYPro79ns++6sYYGU6L+68jgh2ZePrN04kCPMqo4I4K/JEz8zBxZt6z89E/DAo2kz/sHuvLD3820XuePHmS0miQBoIdE5u0fCL1ZtOZmHSmnZSo8M5xJh81M5+rzOQwGmSJYMfEkpp9pyLtAC+gUQE+6cw8qe9Oy1xlRp9uvjPWazudjra3t7W1taWdnR0tLy+fHN/Y2FCn01Gz2VS9XtfBwYHa7bYqlYokqVarqdPpnLwny89OAsGOSKPq4rkZcQHz+vx8aDkm0Quuk8qgRBOntJKUSb/7s6+6+smbldjfd2Pzk7FfW61W9cEHH0iS7t69exKk1WpVOzs72t3dVb1elyTdv39fOzs7J+/d2NjQwsJCLp+dBIIdkQo5M4+64CkpKroja+9ZKGCJJk/f/c4roRdW0+yiee+999TpdLS2tqbt7e2T4/0Z9MHBwZn3rK2tqd1u5/rZF5FrsDvn7ki6c/PmzTyHARTeqJLHNNXMo8I77S6aX/7yl/rRj36ktbU1LS4uDj1XrVbVbrfVbrdPZtnValWrq6u5f3ZcLCmAYpq0k2WE669eL16JZkJ5llt8UKlU1Gw2dffuXe3v74c+t7S0pGq1qnq9HhrSeXx2XJRiUEwjSi6TigrvXEs0EehkSU+j0Ti54Lm+vn7mudXVVT148EB7e3u6ffu29vf3xw7gND87DoIdxbxI6ruIi6of22t688MvchhQOezs7Oj27dtDHSndbleVSkWVSkWNRkONRkOtVuvkoufKyoq63a6kXhllsJZ+0c9OC8FeIknd/ZmoBEsuUyXiouqbJb2ompVqtapGo6G1tTVtbGxI6rUoShqaQa+urp4E77gBHOez00Kwl8i0dbkAF3V0dHTmWLPZPNNuuLGxob29vZPHjx8/1tLSUm6ffVEEO7JR1pl5hKha+pd/kcNgCiCqDbL/XJxWyP7NQt1uV81mc2jWfLqcsra2plarpWvXruno6EjdbvdMrTyrz04CwY5sMDMfEtnlci/zoVzIXGVmopuGkvi+cfVvFgrTbz2UemWSSS9kpvnZSSDYPTNqHRcuhmbP9y6XcW/vv4iL3q1aRgS7Z3Kto5+3XnnBZNHfTv858pBKsDvn6pKOJL1nZhtpfEfZFbJFccrKLdPU3w5MIvFgd84tSloysw3nXNM5t2hmZxdMwIUUssOlxHwvuWC6nBvswey7aWa3Tx2vSlqWdCBpUVLLzLpBiB845yqSuoQ6yiCxkssUbdiB4hoZ7AMllbDLuttmthS8riOpKWkteFyRVJf06yQHi4KgdTE9rAaJBIwMdjNrS2f33Qtm69cGXtdxzq0qCHYz60radc5tO+eWzWw34XGXBrV0lF0eS/1Ou7g19kX1ZvJDBsoznSDMv5BUjT88UEsvDl+Wzp02eS31O83iBvs1Sd1Tx44kVSTtSqoGZZwFM1uLPTrkq6Qll6g2yP/7XkVfbv5TDiMCJpN4V4yZdSR1goeR24Q45xqSGpI0P+93UEytkpZcaIPEtIsb7P3Z+aCwWXwkM2tJaklSrVazmOPwRiFr6cB5Rt2UloYJuoPS3sy62Wyq1Wqp2WyevG9/f18rKysnywoMvm59fV1ra2uqVqva2trS/fv3VavVtLGxMbQMQRKc2fmZ6pwzM3MDj6uSdgZbIJ1zz83sapxB1Go1e/z4cZy3euPWR7eKV0u/N1vKGXtULf2v3tos7l29KbdCPnnyRG+99dbZJ7L+OzLwfeMsNdDtdnX//n21Wi09f/586Lnd3d2T4F5ZWQndcLrRaIz87KtXr2owQ/vHBjfSCHudJC0sLKjZbEb+8OiL/LOX5JzbN7Pa6eOxZuxBF8zgh1clPZj0c9jztCBKWkuPEtWTfuujzRxGExgV3LRCjpTlhtOVSkWLi4tqt9vnLv7V34AjDeP0sfd71ZuS9votkJJWnHPr6tXT345zkbSMe54WsuRS0lo6yiOrDae73e7IEk5Wxuljb0s6s95LcJF0K3hIn/qYCrlIV0ln5iiPNDec7s/su92uPv74Y+3s7KhaPdvl3Wq1hh73d1dKQ66rO1KKyRgz8yGs71IuaW04PXjhs1KpaHt7W7Va7UyZ5XS9Pmrv1CTkGuy+lmJYE306sKRu+aS5mbXUC/m9vT3dvXs39X1NR2E99hRwt2ixMDNHX5qbWfctLCxodzff6jSlGHiPmbmfxllDJo8Npwd75kfpdrsn/xJIGqWYCyhkh8uU7WKUJGbm5XLeGjJpb2bdbDYlSVtbW0M3KC0uLp48N/i6jY2NoRuU+jdQVSqVfG5QStu03qDETUXFcmPzk1Rn5oU831Im5zzyJpkC3nnq2x6pmd2ghAKgdRFFwOYfhUSNfVrRugggAjX2MRSylg4AESjFjIH2RUjR67T3n4ta7hfIGsGOqZLnLkajgpu12lEk1NiLjoukQ+hJB85Hjb3ouEgKYEKUYgZwkRRTaXY+fE32DDbgQDER7AO4SIqpFBXebMBRWgQ7ConlAYD4CHYUEhdJp8OoJarTMElbaRYbThd2U2szy+0/SXcktW7evGlF8ON/+HHeQzjr51fyHkEufrjxj3kPYSK+/935zW9+E3o86//vcb7vX/7j+cnvnz9/br2YszPH9vf3R77OzKxardrOzs7I70v7O6L+7M3MJD22kGx9JZkfD/GY2UMza8zOUgsEkIz+cr6ffdXVvx72Oso++6qrf/vPl5KGN5w+T9wNp7P4jlEoxRQF/epAIgaX8+3+Ze/Xn7xZOVnON4sNp/Pe1JpgLwr61YHUtNttdX7/R/37pf9NbcPpIm1qXcpgp1+9OOh+QRbq9frJOu1pbThdpE2tSxns9KsXB90vyFrcDaenaVPrUgZ7rqilA7mLs+H0NG1qzSJgWaOW7qWoJX1ZzreYsthwOs9Nrb1dBGzUjRPU0pG0qPBmOd/8nN5w+o/2Xf3z1cuJbjhd1E2tvd3MuswbD0+TtDegzluufw8T/LsWtaFyke88PW1aN7lmM2sAmaLMVEy53nkKAEgeM3Zkgn51IDtTH+yFvNkoqqVRKm1bI/3qQHamPtgLebMRLY3wkJnJOZf3MEolbnPL1Ac7gAgJbpl36dIlHR8f6/LlywkNDuM4Pj7WpUuXJn4fwY7ERNXRJWrpuUhwy7zXX39dh4eHmpub08zMDDP3lJmZjo+PdXh4qDfeeGPi93PnKRJDHd1fV670lsJ9+vSpvv3225xHE8/Xz4/15L+nZ4Jx6dIlvfHGGyd/9pPw9s5TAMm6cuVKrJApir/z/Ga4QfSxA4BnCHYA8AzBDgCeoSvmIlhbHUABEewXwY1IAAqIYAdQCnOVGd3Y/CT0+Keb7+QwovQQ7ABKISq8w8J+2nHxFAA8w4wdE2MJXqDYEg9251xFUl1SV9KSpPtm1k36e5Aflg4Aii2NGfuqpCMzazvnloLHrRS+Jzu0NQKYIucGu3OuLqlpZrdPHa9KWpZ0IGlRUsvMumY2GOJVSdsJjjcftDUCmCIjgz0I9SP1gvu0bTNbCl7XkdSUtDbw3op6M/dOYqMFAJxrZLCbWVvSmbWXg9n6tYHXdZxzqxoIdkkNM1sTUGLXX72uWx/dCj3+aPlRDiNCGcStsS+qN5Mf4pyrBiG/rKCu7pyr939AAGUTFd5hYQ8kJW6wX1Ov62XQkaRKvyYvqRuUY5i1TynaGoHplHhXTDA7Xzjvdc65hqSGJM3P011SRLQ1AtMpbrAfSaqcOhY2i48UdM+0JKlWq8XbijtptDUC8EDcYD/QwMXTvqnvgKGtEWUwOx++ofXsfPQG2JgqsYI9uEB68jjoknkw6eewmTWQg6jwDgt7TKWRi4A55+rOuWbw+2ZwYbRvxTm3HnTArMVpbTSzh2bWmJ3lLxQAJGWcPva2pI2Q5zqStoKHu3G+nBk7ACQv12V7mbEDQPJYjx0APEOwA4Bnct1ogxp7MXCHKeCXXIPdzB5Kelir1e7mOY6y4w5TwC+UYgDAM+x5CqDU5iozurH5SeRzn26+k/GILq6cNXbWhAEQGBXcUYFfdOWssbMmDACPUWMHAM8Q7ADgmXLW2EuKfnWgHMpZYy8p+tWBcqAUAwCeIdgBwDMEOwB4xt87T6NuQpK4EQmA1/ztiuEmJAAlxQ5KAOAZf0sxQIFdf/W6bn10K/T4o+VHOYwIPiHYgRxEhXdY2AOTItg9E3V3qcQdpkBZEOye4e5SAPSxA4Bncg1259wd51zrxQvaEgEgKX4sAnYvpF2Sm5AAlJQfNXZuRAKAE9TYAcAzBDsAeIZgBwDPEOwA4Bk/Lp6WEPuXAohCsE8p7jBF4mbno1uH3/88+/EgNoK94JiZIzNR4R0W9ig0fzfa8AQzcwCTYqMNAPAMXTEA4BmCHQA8Q7ADgGcIdgDwDMEOAJ4h2AHAMwQ7AHiGYAcAzxDsAOCZVJYUcM5VJK2aWSuNz/cRa8IASEpaa8VUJa1JItjHxJowAJJybinGOVd3zu2HHK8659aD59eDWbokycwOJB0lO1QAwDhGztidc3X1Anox5OltM1sKXteR1FRvlg4AyNHIGbuZtYPZ9xDnXFXStYHXdSStJj88AMCk4nbFLCqk1BIEPgAgR3GD/Zqk7qljR5IqkuScW5ZUC34FAGQola4YM9uVtDvqNc65hqSGJM3Pz6cxDAC4kLnKjG5sfhJ6/NPNd3IY0XjiBvvJ7HxA2Cw+UtDj3pKkWq1mMccBAKmJCu+wsC+SuMF+oIGLp33BRdSx+brnadTNRlLxf9IDmH6xgt3MOs65k8fBRdMHMT7noaSHtVrtbpxxFNWom42K/pMewPQbp4+936velLRnZu3g6RXn3LqkjqS3zYwedgAogJHBHoR4W9JGyHMdSVvBw5EXSqP4WooBgDzlurqjmT00s8bs7GyewwAAr7BsLwB4hmAHAM/kGuzOuTvOudaLFy/yHAYAeIUaOwB4hlIMAHiGYAcAz1BjBwDPUGMHAM9QigEAzxDsAOCZVDbaGFcZ14oZtXA/ACQh12D3ddneUViLHUDaKMUAgGcIdgDwDMEOAJ4h2AHAM3TFABhtdl66F3ET4ey89P7n2Y4H56IrBsBoo4I7KvCRK0oxAOAZgh0APEOwA4BnCHYA8AzBDgCeod0RKJDrr17XrY9uTfyeR8uPUhoRwoxazK8I60HR7ggUSJyAnvQHAS4uKrzDwj4PlGIAwDMEOwB4hmAHAM8Q7ADgGYIdADxDsAOAZwh2APAMwQ4AnuHO0wv46Ye/0mH3+MzxucpMDqMBgB7uPL2Aw+6xvvzwZ3kPAwCGUIoBAM8Q7ADgGYIdADxDsAOAZwh2APAMwQ4AniHYAcAzBDsAeIZgBwDPpHLnqXOuIakjqWpmrTS+AwAQLvEZu3NuWdKRmbWDx/WkvwMAEO3cYHfO1Z1z+yHHq8659eD5dedcJXjqbUnd4PcdSUtJDRYAcL6RpZhgtn0kaTHk6W0zWwpe15HUlLQmqRK8p6+SxEABAOMZOWM3s7aZHZw+7pyrSro28LqOpNXgYXfwOf1p9g4AyEDcGvuihmflkk4C/9f60yy9Kmkv5ncAAGKIG+zXdHYmfiSpYma7kq71L5r2L6ICALKRSrvjOC2OQUtkQ5Lm5+fTGEakUTsffbr5zkSvB0ptdl66Nxt+/P3Psx8PJMUP9iOdvSgaNouPFIR/S5JqtZrFHEcsUTsf3dj8ZKLXA6UXFd5hYY/MxC3FHGj4Aqmkk4uoY3PO3XHOtV68eBFzGACA02IF++kADy6aPojxOQ/NrDE7y093AEjKOH3s/V71pqS9gYuhK865dfVuQnrbzNZSHSkAYCwjgz0I8bakjZDnOpK2goe7cb7cOXdH0p2bN2/GeTsAIESuqztSigGA5LFsLwB4hmAHAM/kGuy0OwJA8pxZpvcGhQ/Cud9L+m3e4yiA1yT9Ie9BYAjnpJg4Lz0/NLPvnz5YiGBHj3PusZnV8h4H/oRzUkycl9GosQOAZwh2APAMwV4s46yKWXfOLQZ3AiN945yTSrBaKbIzdF44B8MI9gI5b7lj59yipKVgV6vF4DFSNM4S1OptKMOSGhkKOS+cgwEEe4pibAQ+kpkdmNlG8Ppu2LaFGC3pcyL1zotCdhRDPHHOEedgWCobbSD2RuDjfG5FUl29LQgxgbTOCZLDOUoG7Y4pc86ZmbmBx1VJO2Z2e+DYczO7Gvw+rE54FGw5OPi52+qtthlrAbYyS+OcOOf2+qGDi5v0HAWPOQcBZuzZi9wI3Mw6o2q6/WWSg0D5Qr26Ii4u9jlBZkaeoxzGU2jU2LMXuRH4GO/dldQN/rm6YGZb570BY7nIOZFzbllSLfgV6Rh5jjgHw5ixT5FgZtKfnbRHvRbZCf4FRUksR5yDYczYs3fhjcCROM5J8XGOJkCwZy+RjcCRKM5J8XGOJkCwZyypjcCRHM5J8XGOJkONPSVsBF48nJPi4xwlgz52APAMpRgA8AzBDgCeIdgBwDMEOwB4hmAHAM8Q7EBK2NUHeSHYUVr9LQZT3IlqaFcf59xy8H2VlL4PkMQNSvBMMEPeVm9PzH311hdZUG+ThtM7TtUk3TezbhpjMbMD59zRwONd55zEGidIGcEO3zxQL8QHZ8pV9UL+auS7AI8Q7PBNTeFLGleS/qJxd7sCskawwzdL6q0EOGhDUuKbkrCzEoqKi6fwTV3SfwU72TeCRaP2zGxj1JuCC5tfBHvJ9jtavggudtaD3zeC/3bGGQi7+iAvzNjhm8X+hsdBbX1b0sp5bwoubF5T70KrzKzrnNvol1Wcc21Jt81szTn3eJyBsKsP8sKMHd4Ilnw9KcMEa3h3Ja2O8/6gtLIcfFZVwyWdrnoXYBXSXQMUCsEOnyzp7IXT0N3tR9gNLoouhuzOM8nnALkh2OGTuqS9U8eqkjpBzbwyxmdsq3extZvs0IDsEOyYekFo93fWWTwV4FvqtUDWx7kRKZiltwd27emXeOqS3gt+DxQaF08x9YLADm1nPK8bJsLQrD8I+dsxPgfIBTN2QJJzbts5V3XO1bnBCNOOYAd6djT5hVagkCjFoMweS/rAObc3WFNPS9Bts6DwJQ+AxDgzy3sMAIAEUYoBAM8Q7ADgGYIdADxDsAOAZwh2APAMwQ4Anvl/XRWHpRyB1gQAAAAASUVORK5CYII=\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -297,7 +257,7 @@ "plt.legend()\n", "plt.xscale('log')\n", "plt.yscale('log')\n", - "plt.xlabel('$R\\,$[yr$^{-1}$]')" + "plt.xlabel('$R\\,$[yr$^{-1}$]');" ] } ], @@ -317,7 +277,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.5" + "version": "3.7.4" } }, "nbformat": 4, diff --git a/examples/mccl_galaxies.ipynb b/examples/mccl_galaxies.ipynb index 6a16988d1..138b1009e 100644 --- a/examples/mccl_galaxies.ipynb +++ b/examples/mccl_galaxies.ipynb @@ -101,17 +101,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0, 0.5, '$m$')" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -126,7 +116,7 @@ "plt.figure()\n", "plt.hist2d(red_galaxies['redshift'], red_galaxies['magnitude'], bins=50)\n", "plt.xlabel('$z$')\n", - "plt.ylabel('$m$')" + "plt.ylabel('$m$');" ] }, { @@ -136,17 +126,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$z$')" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -160,7 +140,7 @@ "source": [ "plt.figure()\n", "plt.hist(red_galaxies['redshift'], histtype='step', bins=50)\n", - "plt.xlabel('$z$')" + "plt.xlabel('$z$');" ] }, { @@ -170,17 +150,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$m$')" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -194,7 +164,7 @@ "source": [ "plt.figure()\n", "plt.hist(red_galaxies['magnitude'], histtype='step', bins=50)\n", - "plt.xlabel('$m$')" + "plt.xlabel('$m$');" ] }, { @@ -220,17 +190,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$d\\\\,$[kpc]')" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -244,7 +204,7 @@ "source": [ "plt.figure()\n", "plt.hist(red_galaxies['physical_size'], histtype='step', bins=50)\n", - "plt.xlabel('$d\\,$[kpc]')" + "plt.xlabel('$d\\,$[kpc]');" ] }, { @@ -267,17 +227,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$|e|$')" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -291,7 +241,7 @@ "source": [ "plt.figure()\n", "plt.hist(red_galaxies['ellipticity'], histtype='step', bins=50)\n", - "plt.xlabel('$|e|$')" + "plt.xlabel('$|e|$');" ] }, { @@ -313,17 +263,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$\\\\theta\\\\,$[rad]')" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -337,7 +277,7 @@ "source": [ "plt.figure()\n", "plt.hist(red_galaxies['physical_size'], histtype='step', bins=50)\n", - "plt.xlabel('$\\\\theta\\,$[rad]')" + "plt.xlabel('$\\\\theta\\,$[rad]');" ] }, { @@ -361,17 +301,7 @@ "outputs": [ { "data": { - "text/plain": [ - "Text(0.5, 0, '$c_{i}$')" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -387,7 +317,7 @@ "for spc in red_galaxies['spectral_coefficients'].T:\n", " plt.hist(spc, histtype='step', bins=50)\n", "plt.yscale('log')\n", - "plt.xlabel('$c_{i}$')" + "plt.xlabel('$c_{i}$');" ] } ], @@ -407,7 +337,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.5" + "version": "3.7.4" } }, "nbformat": 4, From de318523b6fad49e548c30fbb1b93a32b7874f7f Mon Sep 17 00:00:00 2001 From: Ian Harrison Date: Fri, 16 Oct 2020 16:14:19 +0100 Subject: [PATCH 16/17] fixed name of grav waves example --- examples/gravitational_wave_rates.ipynb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/gravitational_wave_rates.ipynb b/examples/gravitational_wave_rates.ipynb index 049e1925f..38ff0db97 100644 --- a/examples/gravitational_wave_rates.ipynb +++ b/examples/gravitational_wave_rates.ipynb @@ -29,9 +29,9 @@ "source": [ "This example runs a number of SkyPy modules to create a catalogue of galaxies with compact binary merger rates according to the linear model of [Abadie et al (2010)](ttps://arxiv.org/abs/1003.2480) (Table III).\n", "\n", - "Running the `merger_rates` example:\n", + "Running the `gravitational_wave_rates` example:\n", "```bash\n", - "$ skypy merger_rates.yml --format fits\n", + "$ skypy gravitational_wave_rates.yml --format fits\n", "```\n", "generates an output catalogue for us to load in:" ] From c600da40e11a22e85828e0a5dbf43bab90cffcd9 Mon Sep 17 00:00:00 2001 From: Richard R <58728519+rrjbca@users.noreply.github.com> Date: Tue, 27 Oct 2020 14:43:01 +0000 Subject: [PATCH 17/17] Revert whitespace changes --- skypy/power_spectrum/tests/test_camb.py | 2 +- skypy/power_spectrum/tests/test_class.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/skypy/power_spectrum/tests/test_camb.py b/skypy/power_spectrum/tests/test_camb.py index 34f3a1648..f26e5d3fb 100644 --- a/skypy/power_spectrum/tests/test_camb.py +++ b/skypy/power_spectrum/tests/test_camb.py @@ -35,4 +35,4 @@ def test_camb(): redshift = [1.0, 0.0] pzk = camb(wavenumber, redshift, Planck15, 2.e-9, 0.965) assert pzk.shape == (len(redshift), len(wavenumber)) - assert allclose(pzk, test_pzk[np.argsort(redshift), :], rtol=1.e-4) \ No newline at end of file + assert allclose(pzk, test_pzk[np.argsort(redshift), :], rtol=1.e-4) diff --git a/skypy/power_spectrum/tests/test_class.py b/skypy/power_spectrum/tests/test_class.py index ed53d8287..f83e16477 100644 --- a/skypy/power_spectrum/tests/test_class.py +++ b/skypy/power_spectrum/tests/test_class.py @@ -44,4 +44,3 @@ def test_classy(): wavenumber = 1.e-1 pzk = classy(wavenumber, redshift, Pl15massless) assert np.isscalar(pzk) - \ No newline at end of file