diff --git a/Examples/SN_simulation.ipynb b/Examples/SN_simulation.ipynb index 7bb214e..be9e8f1 100644 --- a/Examples/SN_simulation.ipynb +++ b/Examples/SN_simulation.ipynb @@ -66,7 +66,7 @@ "
\n", "
\n", "

Client

\n", - "

Client-8c78dd7a-657a-11ef-b70b-743af432e7cc

\n", + "

Client-530615c9-657c-11ef-9715-743af432e7cc

\n", " \n", "\n", " \n", @@ -97,7 +97,7 @@ " \n", "
\n", "

LocalCluster

\n", - "

24bea346

\n", + "

697db56b

\n", "
\n", " \n", "
\n", @@ -134,11 +134,11 @@ "
\n", "
\n", "

Scheduler

\n", - "

Scheduler-3a8b009f-4a10-4d20-aa18-c040e33dd89c

\n", + "

Scheduler-fde265c5-104f-446a-a138-34559d572aca

\n", " \n", " \n", " \n", "
\n", - " Comm: tcp://127.0.0.1:37383\n", + " Comm: tcp://127.0.0.1:36685\n", " \n", " Workers: 4\n", @@ -180,7 +180,7 @@ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", @@ -225,7 +225,7 @@ "
\n", - " Comm: tcp://127.0.0.1:42055\n", + " Comm: tcp://127.0.0.1:44799\n", " \n", " Total threads: 4\n", @@ -188,7 +188,7 @@ "
\n", - " Dashboard: http://127.0.0.1:41511/status\n", + " Dashboard: http://127.0.0.1:33569/status\n", " \n", " Memory: 3.83 GiB\n", @@ -196,13 +196,13 @@ "
\n", - " Nanny: tcp://127.0.0.1:36695\n", + " Nanny: tcp://127.0.0.1:38857\n", "
\n", - " Local directory: /tmp/dask-scratch-space/worker-p9t0x0t2\n", + " Local directory: /tmp/dask-scratch-space/worker-hueh4hm2\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", @@ -270,7 +270,7 @@ "
\n", - " Comm: tcp://127.0.0.1:43617\n", + " Comm: tcp://127.0.0.1:41627\n", " \n", " Total threads: 4\n", @@ -233,7 +233,7 @@ "
\n", - " Dashboard: http://127.0.0.1:35463/status\n", + " Dashboard: http://127.0.0.1:41393/status\n", " \n", " Memory: 3.83 GiB\n", @@ -241,13 +241,13 @@ "
\n", - " Nanny: tcp://127.0.0.1:40197\n", + " Nanny: tcp://127.0.0.1:33827\n", "
\n", - " Local directory: /tmp/dask-scratch-space/worker-l832wzu0\n", + " Local directory: /tmp/dask-scratch-space/worker-ydkiusbn\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", @@ -315,7 +315,7 @@ "
\n", - " Comm: tcp://127.0.0.1:37749\n", + " Comm: tcp://127.0.0.1:44025\n", " \n", " Total threads: 4\n", @@ -278,7 +278,7 @@ "
\n", - " Dashboard: http://127.0.0.1:46605/status\n", + " Dashboard: http://127.0.0.1:37305/status\n", " \n", " Memory: 3.83 GiB\n", @@ -286,13 +286,13 @@ "
\n", - " Nanny: tcp://127.0.0.1:39807\n", + " Nanny: tcp://127.0.0.1:34301\n", "
\n", - " Local directory: /tmp/dask-scratch-space/worker-02k1ch1s\n", + " Local directory: /tmp/dask-scratch-space/worker-x8lhgvu8\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", @@ -364,7 +364,7 @@ "" ], "text/plain": [ - "" + "" ] }, "execution_count": 2, @@ -522,8 +522,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "CPU times: user 8.91 s, sys: 443 ms, total: 9.35 s\n", - "Wall time: 8.94 s\n" + "CPU times: user 9.56 s, sys: 507 ms, total: 10.1 s\n", + "Wall time: 9.59 s\n" ] } ], @@ -773,17 +773,17 @@ "\n", "-----------------------------------------------------------\n", "\n", - "1000 SNIa lcs generated in 5.3 seconds\n", - "Sim file write in 0.4 seconds\n", - "117 SNIIpl lcs generated in 1.2 seconds\n", + "1000 SNIa lcs generated in 5.2 seconds\n", + "Sim file write in 0.3 seconds\n", + "117 SNIIpl lcs generated in 1.1 seconds\n", "Sim file write in 0.0 seconds\n", - "5 SNIIb lcs generated in 0.3 seconds\n", + "5 SNIIb lcs generated in 0.2 seconds\n", "Sim file write in 0.0 seconds\n", "21 SNIIn lcs generated in 0.3 seconds\n", "Sim file write in 0.0 seconds\n", "17 SNIc lcs generated in 0.3 seconds\n", "Sim file write in 0.0 seconds\n", - "7 SNIb lcs generated in 0.3 seconds\n", + "7 SNIb lcs generated in 0.2 seconds\n", "Sim file write in 0.0 seconds\n", "8 SNIc_BL lcs generated in 0.2 seconds\n", "Sim file write in 0.0 seconds\n", @@ -824,13 +824,13 @@ { "data": { "text/plain": [ - "[,\n", - " ,\n", - " ,\n", - " ,\n", - " ,\n", - " ,\n", - " ]" + "[,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ]" ] }, "execution_count": 11, @@ -1008,10 +1008,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1026,8 +1026,8 @@ " \n", " \n", " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1044,8 +1044,8 @@ " \n", " \n", " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1062,8 +1062,8 @@ " \n", " \n", " \n", - " \n", - " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1080,10 +1080,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1118,10 +1118,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1136,10 +1136,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1154,10 +1154,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1172,10 +1172,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1190,10 +1190,10 @@ " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -1211,31 +1211,31 @@ "text/plain": [ " time fluxtrue fluxerrtrue flux fluxerr \\\n", "ID epochs \n", - "0 0 58012.244898 0.305674 182.174132 -24.921924 182.241682 \n", - " 1 58014.285714 1.471778 81.018348 -23.627923 81.154968 \n", - " 2 58016.326531 2.900189 13.866707 -0.421725 13.777049 \n", - " 3 58018.367347 8.680345 430.407747 -607.830993 431.103212 \n", - " 4 58020.408163 13.210611 161.030858 -64.963515 161.191470 \n", + "0 0 58012.244898 0.305674 182.174132 290.509545 182.968900 \n", + " 1 58014.285714 1.471778 81.018348 -110.240621 81.686851 \n", + " 2 58016.326531 2.900189 13.866707 -1.396243 13.812371 \n", + " 3 58018.367347 8.680345 430.407747 -123.178896 430.540739 \n", + " 4 58020.408163 13.210611 161.030858 17.620613 161.044550 \n", "... ... ... ... ... ... \n", - "999 33 58091.836735 6.214402 663.915783 251.444285 664.100442 \n", - " 34 58093.877551 1.447700 751.928879 371.586957 752.174966 \n", - " 35 58095.918367 1.394434 158.296518 164.948255 158.812283 \n", - " 36 58097.959184 1.344201 680.281466 439.695361 680.603573 \n", - " 37 58100.000000 1.290721 402.707042 -108.155245 402.839703 \n", + "999 33 58091.836735 6.214402 663.915783 191.156012 664.055050 \n", + " 34 58093.877551 1.447700 751.928879 840.938846 752.486897 \n", + " 35 58095.918367 1.394434 158.296518 -75.561942 158.530612 \n", + " 36 58097.959184 1.344201 680.281466 -395.858725 680.571368 \n", + " 37 58100.000000 1.290721 402.707042 394.780904 403.195303 \n", "\n", " mag magerr zp zpsys gain skynoise band fieldID \\\n", "ID epochs \n", - "0 0 NaN NaN 25 ab 1 182.173293 ztfr 1 \n", + "0 0 18.842099 0.683819 25 ab 1 182.173293 ztfr 1 \n", " 1 NaN NaN 25 ab 1 81.009263 ztfr 1 \n", " 2 NaN NaN 25 ab 1 13.761709 ztfg 1 \n", " 3 NaN NaN 25 ab 1 430.397656 ztfr 1 \n", - " 4 NaN NaN 25 ab 1 160.989787 ztfg 1 \n", + " 4 21.884947 9.923145 25 ab 1 160.989787 ztfg 1 \n", "... ... ... .. ... ... ... ... ... \n", - "999 33 18.998896 2.867585 25 ab 1 663.911101 ztfr 1 \n", - " 34 18.574849 2.197772 25 ab 1 751.927917 ztfg 1 \n", - " 35 19.456631 1.045348 25 ab 1 158.292113 ztfg 1 \n", - " 36 18.392120 1.680609 25 ab 1 680.280478 ztfg 1 \n", - " 37 NaN NaN 25 ab 1 402.705440 ztfg 1 \n", + "999 33 19.296530 3.771729 25 ab 1 663.911101 ztfr 1 \n", + " 34 17.688089 0.971536 25 ab 1 751.927917 ztfg 1 \n", + " 35 NaN NaN 25 ab 1 158.292113 ztfg 1 \n", + " 36 NaN NaN 25 ab 1 680.280478 ztfg 1 \n", + " 37 18.509110 1.108878 25 ab 1 402.705440 ztfg 1 \n", "\n", " fwhm_psf sig_zp \n", "ID epochs \n", @@ -1279,16 +1279,2079 @@ "metadata": {}, "outputs": [ { - "ename": "ValueError", - "evalue": "Set vpec_dist xor hosts", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", - "File \u001b[0;32m:34\u001b[0m\n", - "File \u001b[0;32m~/Documents/Soft/snsim/snsim/simu.py:168\u001b[0m, in \u001b[0;36mSimulator.__init__\u001b[0;34m(self, param_dic, print_config)\u001b[0m\n\u001b[1;32m 164\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m object_name \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mconfig:\n\u001b[1;32m 165\u001b[0m \u001b[38;5;66;03m# -- Get which generator correspond to which transient in snsim.generators\u001b[39;00m\n\u001b[1;32m 166\u001b[0m gen_class \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mgetattr\u001b[39m(generators, object_genclass)\n\u001b[1;32m 167\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_generators\u001b[38;5;241m.\u001b[39mappend(\n\u001b[0;32m--> 168\u001b[0m \u001b[43mgen_class\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 169\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mconfig\u001b[49m\u001b[43m[\u001b[49m\u001b[43mobject_name\u001b[49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 170\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcosmology\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 171\u001b[0m \u001b[43m \u001b[49m\u001b[43mtime_range\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 172\u001b[0m \u001b[43m \u001b[49m\u001b[43mcmb\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcmb\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 173\u001b[0m \u001b[43m \u001b[49m\u001b[43mz_range\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mz_range\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 174\u001b[0m \u001b[43m \u001b[49m\u001b[43mvpec_dist\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mvpec_dist\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 175\u001b[0m \u001b[43m \u001b[49m\u001b[43mhosts\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mhosts\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 176\u001b[0m \u001b[43m \u001b[49m\u001b[43mmw_dust\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmw_dust\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 177\u001b[0m \u001b[43m \u001b[49m\u001b[43mgeometry\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msurvey\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_envelope\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 178\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 179\u001b[0m )\n\u001b[1;32m 180\u001b[0m \u001b[38;5;66;03m# -- Cadence sim or n fixed\u001b[39;00m\n\u001b[1;32m 181\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mforce_n\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mconfig[object_name]:\n", - "File \u001b[0;32m~/Documents/Soft/snsim/snsim/generators.py:116\u001b[0m, in \u001b[0;36mBaseGen.__init__\u001b[0;34m(self, params, cosmology, time_range, z_range, vpec_dist, hosts, mw_dust, cmb, geometry)\u001b[0m\n\u001b[1;32m 114\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_vpec_dist \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m 115\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m--> 116\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mSet vpec_dist xor hosts\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 118\u001b[0m \u001b[38;5;66;03m# -- If no hosts need to define a z_range\u001b[39;00m\n\u001b[1;32m 119\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m hosts \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n", - "\u001b[0;31mValueError\u001b[0m: Set vpec_dist xor hosts" + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/blc56/Documents/Soft/snsim/snsim/hosts.py:104: UserWarning: Simulation redshift range does not match host file redshift range\n", + " warnings.warn(\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _______..__ __. _______. __ .___ ___. \n", + " / || \\ | | / || | | \\/ | \n", + " | (----`| \\| | | (----`| | | \\ / | \n", + " \\ \\ | . ` | \\ \\ | | | |\\/| | \n", + " .----) | | |\\ | .----) | | | | | | | \n", + " |_______/ |__| \\__| |_______/ |__| |__| |__| \n", + "================================= Version : 0.5.0 ====== \n", + "-----------------------------------------------------------\n", + "\n", + "SIM NAME : Test_simulation_SNIa_galaxynoise\n", + "CONFIG FILE : No config file\n", + "SIM WRITE DIRECTORY : ./\n", + "SIMULATION RANDSEED : 1234\n", + "\n", + "-----------------------------------------------------------\n", + "\n", + "SURVEY FILE : ./survey_file_example.csv\n", + "\n", + "First day in survey_file : 58000.00 MJD / 2017-09-04 00:00:00.000\n", + "Last day in survey_file : 58100.00 MJD / 2017-12-13 00:00:00.000\n", + "\n", + "Survey effective duration is 100.00 days\n", + "\n", + "Survey envelope area is 57.74 squared degrees (0.1 % of the sky)\n", + "\n", + "No cut on survey file.\n", + "\n", + "-----------------------------------------------------------\n", + "\n", + "OBJECT TYPE : SNIa\n", + "SIM MODEL(S) :\n", + "- salt2 vT23 from sncosmo\n", + "\n", + "Peak mintime : 58000.00 MJD\n", + "\n", + "Peak maxtime : 58100.00 MJD\n", + "\n", + "Redshift distribution computed\n", + "Use intrinsic scattering model : G10\n", + "\n", + "\n", + "\n", + "Rate lambda z: 3e-5 /Mpc^3/year (only for redshifts simulation)\n", + "\n", + "\n", + "-----------------------------------------------------------\n", + "\n", + "Ligthcurves cuts :\n", + "- At least 1 epochs between -20 and 50 rest-frame phase in any band\n", + "\n", + "-----------------------------------------------------------\n", + "\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "1\n", + "2000 SNIa lcs generated in 10.9 seconds\n", + "Sim file write in 0.7 seconds\n", + "\n", + "-----------------------------------------------------------\n", + "\n", + "OUTPUT FILE(S) : \n", + "- ./Test_simulation_SNIa_galaxynoise_SNIa.parquet\n", + "\n", + "CPU times: user 11.8 s, sys: 502 ms, total: 12.3 s\n", + "Wall time: 12 s\n" ] } ], @@ -1300,19 +3363,19 @@ " 'sigM': 0.1,\n", " 'sct_model': 'G10',\n", " 'force_n': 2000 ,\n", - "\n", " 'model_name': 'salt2',\n", " 'alpha': 0.14,\n", " 'beta': 2.9,\n", " 'dist_x1': 'N21',\n", " 'dist_c': [-0.055, 0.023, 0.150]}\n", "\n", - "host_conf ={\n", - " 'host_file': './test_mock_nbody_new.parquet',\n", + "hosts_conf ={\n", + " 'host_file': './test_mock_nbody.parquet',\n", " 'key_dic': {'vpec_true': 'vpec'}, #attention this depend on your mock file \n", " 'distrib': 'mass_sfr',\n", " \"host_noise\" : True, #True if you want the noise given by host galaxy for that you need the galaxy mag in the\n", - " #observed bands + sersic radii a,b of the host galaxy in the host file}\n", + " #observed bands + sersic radii a,b of the host galaxy in the host file\n", + " }\n", "\n", "config_dic = {'data': {'write_path': './',\n", " 'sim_name': 'Test_simulation_SNIa_galaxynoise',\n", @@ -1322,7 +3385,7 @@ " 'z_range': [0.01, 0.3]},\n", " 'snia_gen': snia_gen,\n", " 'cosmology': cosmology,\n", - " 'host':host_conf,\n", + " 'hosts':hosts_conf,\n", " 'cmb': cmb,\n", " 'dask': {'use': True,\n", " 'nworkers': 4}#parameters to use dask, nworkers depends on your machine\n", @@ -1334,41 +3397,342 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "8f097d63", + "execution_count": 20, + "id": "123b30cb", "metadata": {}, - "outputs": [], - "source": [ - "host = snsim.SnHost(host_conf)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "56eece4e", - "metadata": {}, - "outputs": [], - "source": [ - "sim.samples[0].sim_lcs.columns" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "a6d7520d", - "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "
\n", - " Comm: tcp://127.0.0.1:43627\n", + " Comm: tcp://127.0.0.1:38277\n", " \n", " Total threads: 4\n", @@ -323,7 +323,7 @@ "
\n", - " Dashboard: http://127.0.0.1:45829/status\n", + " Dashboard: http://127.0.0.1:45823/status\n", " \n", " Memory: 3.83 GiB\n", @@ -331,13 +331,13 @@ "
\n", - " Nanny: tcp://127.0.0.1:46491\n", + " Nanny: tcp://127.0.0.1:42753\n", "
\n", - " Local directory: /tmp/dask-scratch-space/worker-30638ycb\n", + " Local directory: /tmp/dask-scratch-space/worker-leo04qyf\n", "
58012.2448980.305674182.174132-24.921924182.241682NaNNaN290.509545182.96890018.8420990.68381925ab158014.2857141.47177881.018348-23.62792381.154968-110.24062181.686851NaNNaN2558016.3265312.90018913.866707-0.42172513.777049-1.39624313.812371NaNNaN2558018.3673478.680345430.407747-607.830993431.103212-123.178896430.540739NaNNaN2558020.40816313.210611161.030858-64.963515161.191470NaNNaN17.620613161.04455021.8849479.92314525ab158091.8367356.214402663.915783251.444285664.10044218.9988962.867585191.156012664.05505019.2965303.77172925ab158093.8775511.447700751.928879371.586957752.17496618.5748492.197772840.938846752.48689717.6880890.97153625ab158095.9183671.394434158.296518164.948255158.81228319.4566311.045348-75.561942158.530612NaNNaN25ab158097.9591841.344201680.281466439.695361680.60357318.3921201.680609-395.858725680.571368NaNNaN25ab158100.0000001.290721402.707042-108.155245402.839703NaNNaN394.780904403.19530318.5091101.10887825ab1
\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
timefluxtruefluxerrtruefluxfluxerrmagmagerrzpzpsysgainskynoisebandfieldIDfwhm_psfsig_zphost_noise
IDepochs
0058000.00000022.303816481.538271-331.336690481.859045NaNNaN25ab1473.860685ztfg10.50.0185.514979
158002.04081636.920155604.439188-691.093413604.980087NaNNaN25ab1598.328409ztfg10.50.0185.514979
258004.08163351.964188651.3435681452.306236652.41764717.0948540.48774425ab1645.665114ztfg10.50.0185.514979
358006.12244967.949620560.730183-810.213920561.391665NaNNaN25ab1554.109362ztfg10.50.0185.514979
458008.16326581.857603545.895562-578.382546546.350153NaNNaN25ab1539.079518ztfg10.50.0185.514979
......................................................
1999758091.83673552.707658682.3658871215.441650683.21734317.2881650.61030825ab1663.911101ztfr10.50.01157.455742
858093.87755177.705930768.2877851259.487426769.05650117.2495150.66296225ab1751.927917ztfg10.50.01157.455742
958095.91836788.413481223.467627-37.541817223.353774NaNNaN25ab1158.292113ztfg10.50.01157.455742
1058097.95918494.413609698.333021-107.327823698.342268NaNNaN25ab1680.280478ztfg10.50.01157.455742
1158100.00000095.089054432.504148-157.550904432.576351NaNNaN25ab1402.705440ztfg10.50.01157.455742
\n", + "

60094 rows × 16 columns

\n", + "" + ], + "text/plain": [ + " time fluxtrue fluxerrtrue flux fluxerr \\\n", + "ID epochs \n", + "0 0 58000.000000 22.303816 481.538271 -331.336690 481.859045 \n", + " 1 58002.040816 36.920155 604.439188 -691.093413 604.980087 \n", + " 2 58004.081633 51.964188 651.343568 1452.306236 652.417647 \n", + " 3 58006.122449 67.949620 560.730183 -810.213920 561.391665 \n", + " 4 58008.163265 81.857603 545.895562 -578.382546 546.350153 \n", + "... ... ... ... ... ... \n", + "1999 7 58091.836735 52.707658 682.365887 1215.441650 683.217343 \n", + " 8 58093.877551 77.705930 768.287785 1259.487426 769.056501 \n", + " 9 58095.918367 88.413481 223.467627 -37.541817 223.353774 \n", + " 10 58097.959184 94.413609 698.333021 -107.327823 698.342268 \n", + " 11 58100.000000 95.089054 432.504148 -157.550904 432.576351 \n", + "\n", + " mag magerr zp zpsys gain skynoise band fieldID \\\n", + "ID epochs \n", + "0 0 NaN NaN 25 ab 1 473.860685 ztfg 1 \n", + " 1 NaN NaN 25 ab 1 598.328409 ztfg 1 \n", + " 2 17.094854 0.487744 25 ab 1 645.665114 ztfg 1 \n", + " 3 NaN NaN 25 ab 1 554.109362 ztfg 1 \n", + " 4 NaN NaN 25 ab 1 539.079518 ztfg 1 \n", + "... ... ... .. ... ... ... ... ... \n", + "1999 7 17.288165 0.610308 25 ab 1 663.911101 ztfr 1 \n", + " 8 17.249515 0.662962 25 ab 1 751.927917 ztfg 1 \n", + " 9 NaN NaN 25 ab 1 158.292113 ztfg 1 \n", + " 10 NaN NaN 25 ab 1 680.280478 ztfg 1 \n", + " 11 NaN NaN 25 ab 1 402.705440 ztfg 1 \n", + "\n", + " fwhm_psf sig_zp host_noise \n", + "ID epochs \n", + "0 0 0.5 0.01 85.514979 \n", + " 1 0.5 0.01 85.514979 \n", + " 2 0.5 0.01 85.514979 \n", + " 3 0.5 0.01 85.514979 \n", + " 4 0.5 0.01 85.514979 \n", + "... ... ... ... \n", + "1999 7 0.5 0.01 157.455742 \n", + " 8 0.5 0.01 157.455742 \n", + " 9 0.5 0.01 157.455742 \n", + " 10 0.5 0.01 157.455742 \n", + " 11 0.5 0.01 157.455742 \n", + "\n", + "[60094 rows x 16 columns]" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "sim.samples[0].sim_lcs.galaxy_noise" + "sim.samples[0].sim_lcs" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1db0d35b", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/Examples/test_mock_nbody.parquet b/Examples/test_mock_nbody.parquet index 8c7d44d..bdde3f6 100644 Binary files a/Examples/test_mock_nbody.parquet and b/Examples/test_mock_nbody.parquet differ