diff --git a/README.md b/README.md index f41f7724c..4e4f5f91a 100644 --- a/README.md +++ b/README.md @@ -10,9 +10,10 @@ A few papers on how it works: - 1-D radiative transfer: [Mirocha et al. (2012)](http://adsabs.harvard.edu/abs/2012ApJ...756...94M) - Uniform backgrounds \& global 21-cm signal: [Mirocha (2014)](http://adsabs.harvard.edu/abs/2014MNRAS.443.1211M) -- Galaxy luminosity functions: [Mirocha, Furlanetto, & Sun (2017)](http://adsabs.harvard.edu/abs/2016arXiv160700386M) +- Galaxy luminosity functions: [Mirocha, Furlanetto, & Sun (2017)](https://ui.adsabs.harvard.edu/abs/2017MNRAS.464.1365M/abstract) - Population III star formation: [Mirocha et al. (2018)](http://adsabs.harvard.edu/abs/2018MNRAS.478.5591M) - Rest-ultraviolet colours at high-z: [Mirocha, Mason, & Stark (2020)](https://ui.adsabs.harvard.edu/abs/2020arXiv200507208M/abstract) +- Near-infrared background and nebular emission: [Sun et al. (2021)](https://ui.adsabs.harvard.edu/abs/2021MNRAS.508.1954S/abstract) Plus some more applications: @@ -26,15 +27,22 @@ risk! Correctness of results is not guaranteed. ## Citation -If you use ARES in paper please reference [Mirocha (2014)](http://adsabs.harvard.edu/abs/2014MNRAS.443.1211M) if it's an application of the global 21-cm modeling machinery and [Mirocha et al. (2012)](http://adsabs.harvard.edu/abs/2012ApJ...756...94M) if you use the 1-D radiative transfer. Note that for some applications, ARES relies heavily on lookup tables and publicly-available software packages that should be referenced as well. These include: - -- [CAMB](https://camb.readthedocs.io/en/latest/) -- [hmf](https://hmf.readthedocs.io/en/latest/) -- Collisional coupling coefficients from [Zygelman (2005)](https://ui.adsabs.harvard.edu/abs/2005ApJ...622.1356Z/abstract). -- Lyman-alpha transition probabilities from [Pritchard \& Furlanetto](https://ui.adsabs.harvard.edu/abs/2006MNRAS.367.1057P/abstract). +If you use ARES in paper please reference [Mirocha (2014)](http://adsabs.harvard.edu/abs/2014MNRAS.443.1211M) if it's an application of the global 21-cm modeling machinery and [Mirocha et al. (2012)](http://adsabs.harvard.edu/abs/2012ApJ...756...94M) if you use the 1-D radiative transfer and/or SED optimization. For galaxy semi-analytic modeling, please have a look at [Mirocha, Furlanetto, & Sun (2017)](http://adsabs.harvard.edu/abs/2016arXiv160700386M), [Mirocha, Mason, & Stark (2020)](https://ui.adsabs.harvard.edu/abs/2020arXiv200507208M/abstract), and [Mirocha (2020)](https://ui.adsabs.harvard.edu/abs/2020MNRAS.499.4534M/abstract), and for PopIII star modeling, see [Mirocha et al. (2018)](http://adsabs.harvard.edu/abs/2018MNRAS.478.5591M). Please also provide a link to [this page](https://github.com/mirochaj/ares) as a footnote. +Note that for some applications, ARES relies heavily on lookup tables and publicly-available software packages that should be referenced as well. These include: + +- Code for Anisotropies in the Microwave Background ([CAMB](https://camb.readthedocs.io/en/latest/)). +- The Halo Mass Function ([hmf](https://hmf.readthedocs.io/en/latest/)) package (see [Murray et al.(2013)](https://arxiv.org/abs/1306.6721)). +- Lookup tables and fitting formulae for the fraction of photo-electron energy deposited in heat, ionization, excitation from [Shull \& van Steenberg (1985)](https://ui.adsabs.harvard.edu/abs/1985ApJ...298..268S/abstract), [Ricotti, Gnedin, \& Shull (2002)](https://ui.adsabs.harvard.edu/abs/2002ApJ...575...33R/abstract), and [Furlanetto \& Stoever (2010)](https://ui.adsabs.harvard.edu/abs/2010MNRAS.404.1869F/abstract) (see `secondary_ionization` parameter, values of 2, 3, and 4, respectively). +- Collisional coupling coefficients for the 21-cm line from [Zygelman (2005)](https://ui.adsabs.harvard.edu/abs/2005ApJ...622.1356Z/abstract). +- Wouthuysen-Field coupling coefficients for the 21-cm line from [Chuzhoy, Alvarez, & Shapiro (2006)](https://ui.adsabs.harvard.edu/abs/2006ApJ...651....1C/abstract), [Furlanetto \& Pritchard (2006)](https://ui.adsabs.harvard.edu/abs/2006MNRAS.372.1093F/abstract), and [Hirata (2006)](https://ui.adsabs.harvard.edu/abs/2006MNRAS.367..259H/abstract) (see `approx_Salpha` parameter, values of 2, 3, and 4 respectively). +- Lyman-alpha transition probabilities from [Pritchard \& Furlanetto (2006)](https://ui.adsabs.harvard.edu/abs/2006MNRAS.367.1057P/abstract). +- Stellar population synthesis model options include starburst99 ([Leitherer et al. (1999)](https://ui.adsabs.harvard.edu/abs/1999ApJS..123....3L/abstract)) and BPASS versions 1 ([Eldridge \& Stanway (2009)](https://ui.adsabs.harvard.edu/abs/2009MNRAS.400.1019E/abstract)) and 2 ([Eldridge et al. (2017)](https://ui.adsabs.harvard.edu/abs/2017PASA...34...58E/abstract),[Stanway \& Eldridge (2018)](https://ui.adsabs.harvard.edu/abs/2018MNRAS.479...75S/abstract)) (via `pop_sed` parameter, values `'starburst99'`, `'bpass_v1'`, and `'bpass_v2'`, respectively). + +Feel free to get in touch if you are unsure of whether any of these tools are being used under the hood for your application. + ## Dependencies You will need: @@ -46,6 +54,7 @@ You will need: and optionally, +- [camb](https://camb.readthedocs.io/en/latest/) - [hmf](https://github.com/steven-murray/hmf) - [mpi4py](http://mpi4py.scipy.org) - [pymp](https://github.com/classner/pymp) @@ -57,6 +66,10 @@ and optionally, - [shapely](https://pypi.python.org/pypi/Shapely) - [descartes](https://pypi.python.org/pypi/descartes) +If you'd like to build the documentation locally, you'll need: + +- [numpydoc](https://numpydoc.readthedocs.io/en/latest/) +- [nbsphinx](https://nbsphinx.readthedocs.io/en/0.8.8/) Note: **ares** has been tested only with Python 2.7.x and Python 3.7.x. @@ -70,7 +83,7 @@ cd ares python setup.py install ``` -**ares** will look in ``$ARES/input`` for lookup tables of various kinds. To download said lookup tables, run: +**ares** will look in ``ares/input`` for lookup tables of various kinds. To download said lookup tables, run: ``` python remote.py @@ -143,4 +156,6 @@ Additional contributions / corrections / suggestions from: - Matteo Leo - Emma Klemets - Felix Bilodeau-Chagnon +- Venno Vipp +- Oscar Hernandez - Joshua Hibbard diff --git a/ares/analysis/GalaxyPopulation.py b/ares/analysis/GalaxyPopulation.py index 357644b10..b9ad9b758 100644 --- a/ares/analysis/GalaxyPopulation.py +++ b/ares/analysis/GalaxyPopulation.py @@ -562,8 +562,8 @@ def PlotColors(self, pop, axes=None, fig=1, z_uvlf=[4,6,8,10], ## # Plot models ## - Ms = np.arange(6, 13.+dMst, dMst) - mags = np.arange(-25, -12-dmag, dmag) + Ms = np.arange(2, 13.+dMst, dMst) + mags = np.arange(-30, 10-dmag, dmag) mags_cr = np.arange(-25, -10, dmag) hst_shallow = b14.filt_shallow hst_deep = b14.filt_deep @@ -603,7 +603,7 @@ def PlotColors(self, pop, axes=None, fig=1, z_uvlf=[4,6,8,10], _ax = ax_uvlf if show_MUV: - phi = pop.LuminosityFunction(z, mags) + _mags, phi = pop.get_lf(z, mags) uvlf_by_pop[h][z] = phi if not fill: @@ -617,7 +617,7 @@ def PlotColors(self, pop, axes=None, fig=1, z_uvlf=[4,6,8,10], else: _ax2 = ax_smf - phi = pop.StellarMassFunction(z, bins=Ms) + _bins, phi = pop.StellarMassFunction(z, bins=Ms) smf_by_pop[h][z] = phi if not fill: @@ -1754,7 +1754,7 @@ def _MegaPlotPop(self, kw, pop, redshifts=None, include_colors=True, for j, z in enumerate(redshifts): # UVLF - phi = pop.LuminosityFunction(z, _mags) + _mags_, phi = pop.LuminosityFunction(z, _mags) ax_phi.semilogy(_mags, phi, color=colors[j], drawstyle='steps-mid') # Binned version diff --git a/ares/physics/Cosmology.py b/ares/physics/Cosmology.py index 179a3ca68..d99853384 100755 --- a/ares/physics/Cosmology.py +++ b/ares/physics/Cosmology.py @@ -31,7 +31,7 @@ 'primordial_index': 'ns', } -class Cosmology(InitialConditions): +class Cosmology(object): def __init__(self, pf=None, **kwargs): if pf is not None: self.pf = pf @@ -111,23 +111,24 @@ def __init__(self, pf=None, **kwargs): # 'sigma_8':self.sigma8, # 'n': self.primordial_index} + @property + def _ics(self): + if not hasattr(self, '_ics_'): + self._ics_ = InitialConditions(pf=self.pf) + self._ics_.prefix = self.get_prefix() + return self._ics_ + def nH(self, z): return self.nH0 * (1. + z)**3 def nHe(self, z): return self.nHe0 * (1. + z)**3 - @property - def path_ARES(self): - if not hasattr(self, '_path_ARES'): - self._path_ARES = ARES - return self._path_ARES - @property def path_Planck(self): if not hasattr(self, '_path_Planck'): name = self.pf['cosmology_name'].replace('planck_', '') - self._path_Planck = self.path_ARES \ + self._path_Planck = ARES \ + '/input/planck/base/plikHM_{}'.format(name) return self._path_Planck @@ -250,7 +251,7 @@ def _load_planck(self): s = "# Set cosmological parameters to values in {}th element of".format(num) s += " concatenated array made from the following files:" print(s) - path_str = path.replace(self.path_ARES, '$ARES') + path_str = path.replace(ARES, '$ARES') print("# {}_{}_?.txt".format(path_str, prefix)) return @@ -276,7 +277,7 @@ def get_prefix(self): @property def inits(self): if not hasattr(self, '_inits'): - self._inits = self.get_inits_rec() + self._inits = self._ics.get_inits_rec() return self._inits def TimeToRedshiftConverter(self, t_i, t_f, z_i): diff --git a/ares/physics/HaloMassFunction.py b/ares/physics/HaloMassFunction.py index 384017493..0b593b247 100755 --- a/ares/physics/HaloMassFunction.py +++ b/ares/physics/HaloMassFunction.py @@ -538,7 +538,7 @@ def _load_hmf(self): if self.pf['verbose'] and rank == 0: name = self.tab_name - print("# Loaded {}.".format(name.replace(self.cosm.path_ARES, '$ARES'))) + print("# Loaded {}.".format(name.replace(ARES, '$ARES'))) if self.pf['hmf_func'] is not None: if self.pf['verbose']: diff --git a/ares/physics/Hydrogen.py b/ares/physics/Hydrogen.py index 42493ef04..2e9574dbe 100644 --- a/ares/physics/Hydrogen.py +++ b/ares/physics/Hydrogen.py @@ -585,7 +585,7 @@ def DifferentialBrightnessTemperature(self, z, xavg, Ts, Tr=0.0): @property def inits(self): if not hasattr(self, '_inits'): - self._inits = self.cosm.get_inits_rec() + self._inits = self.cosm._ics.get_inits_rec() return self._inits def saturated_limit(self, z): diff --git a/ares/physics/InitialConditions.py b/ares/physics/InitialConditions.py index 699671c4b..3153c42e7 100644 --- a/ares/physics/InitialConditions.py +++ b/ares/physics/InitialConditions.py @@ -15,6 +15,7 @@ import os import re import numpy as np +from ..data import ARES try: import camb @@ -34,19 +35,29 @@ class InitialConditions(object): """ This should be inherited by Cosmology. """ + def __init__(self, pf): + self.pf = pf + + @property + def prefix(self): + return self._prefix + + @prefix.setter + def prefix(self, value): + self._prefix = value + def get_inits_rec(self): """ Get recombination history from file or directly from CosmoRec. """ - fn = '{}/input/inits/inits_{}.txt'.format(self.path_ARES, - self.get_prefix()) + fn = '{}/input/inits/inits_{}.txt'.format(ARES, self.prefix) # Look for table first, then run if we don't find it. if os.path.exists(fn): z, xe, Tk = np.loadtxt(fn, unpack=True) if self.pf['verbose']: name = fn - print("# Loaded {}.".format(fn.replace(self.path_ARES, '$ARES'))) + print("# Loaded {}.".format(fn.replace(ARES, '$ARES'))) return {'z': z, 'xe': xe, 'Tk': Tk} else: if self.pf['verbose']: @@ -86,9 +97,9 @@ def _run_CosmoRec(self, save=True): # pragma: no cover CR_pars = [self.pf[par] for par in _pars_CosmoRec] # Correct output dir. Just add provided path on top of $ARES - CR_pars[-2] = '{}/{}/'.format(self.path_ARES, CR_pars[-2]) + CR_pars[-2] = '{}/{}/'.format(ARES, CR_pars[-2]) - fn_pars = 'cosmorec_{}.dat'.format(self.get_prefix()) + fn_pars = 'cosmorec_{}.dat'.format(self.prefix) # Create parameter file for reference to_outputs = CR_pars[-2] @@ -119,8 +130,8 @@ def _run_CosmoRec(self, save=True): # pragma: no cover 'Tk': data[:,2][-1::-1], } - fn_out = '{}/input/inits/inits_{}.txt'.format(self.path_ARES, - self.get_prefix()) + fn_out = '{}/input/inits/inits_{}.txt'.format(ARES, + self.prefix) np.savetxt(fn_out, data[-1::-1,0:3], header='z; xe; Te') diff --git a/ares/populations/GalaxyEnsemble.py b/ares/populations/GalaxyEnsemble.py index 67280c601..f1677009f 100755 --- a/ares/populations/GalaxyEnsemble.py +++ b/ares/populations/GalaxyEnsemble.py @@ -2030,7 +2030,7 @@ def get_mags(self, z, MUV=None, wave=1600., cam=None, filters=None, # Either load previous result or compute from scratch fil = filters if cached_result is not None: - M, mags = cached_result + M, mags, xph = cached_result else: # Take monochromatic (or within some window) MUV L = self.get_lum(z, wave=wave, window=window, load=load) @@ -2064,10 +2064,11 @@ def get_mags(self, z, MUV=None, wave=1600., cam=None, filters=None, mags = np.array(mags) else: + xph = None mags = M + magcorr if hasattr(self, '_cache_mags_'): - self._cache_mags_[kw_tup] = M, mags + self._cache_mags_[kw_tup] = M, mags, xph ## # Interpolate etc. @@ -3601,7 +3602,7 @@ def load(self): f.close() if self.pf['verbose']: - print("# Loaded {}.".format(fn_hist.replace(self.cosm.path_ARES, '$ARES'))) + print("# Loaded {}.".format(fn_hist.replace(ARES, '$ARES'))) else: # Assume pickle? @@ -3611,7 +3612,7 @@ def load(self): f.close() if self.pf['verbose']: name = fn_hist + '.pkl' - print("# Loaded {}.".format(name.replace(self.cosm.path_ARES, '$ARES'))) + print("# Loaded {}.".format(name.replace(ARES, '$ARES'))) if self.pf['verbose']: print("# Read `pop_histories` as dictionary") diff --git a/ares/populations/Population.py b/ares/populations/Population.py index b33667b4b..61690d68e 100755 --- a/ares/populations/Population.py +++ b/ares/populations/Population.py @@ -420,7 +420,8 @@ def is_emissivity_scalable(self): if (self.affects_cgm) and (not self.affects_igm): if self.pf['pop_fesc'] != self.pf['pop_fesc_LW']: - print("# WARNING: revisit scalability wrt fesc.") + if self.pf['verbose']: + print("# WARNING: revisit scalability wrt fesc.") #print("Not scalable cuz fesc pop={}".format(self.id_num)) # self._is_emissivity_scalable = False # return False diff --git a/ares/sources/SynthesisModel.py b/ares/sources/SynthesisModel.py index ce9c228cc..bf01b3438 100644 --- a/ares/sources/SynthesisModel.py +++ b/ares/sources/SynthesisModel.py @@ -707,7 +707,7 @@ def data(self): self._litinst._load(**self.pf) if self.pf['verbose']: - print("# Loaded {}".format(_fn.replace(self.cosm.path_ARES, + print("# Loaded {}".format(_fn.replace(ARES, '$ARES'))) else: if self.pf['source_sed_by_Z'] is not None: @@ -720,7 +720,7 @@ def data(self): if self.pf['verbose']: for _fn_ in _fn: - print("# Loaded {}".format(_fn_.replace(self.cosm.path_ARES, '$ARES'))) + print("# Loaded {}".format(_fn_.replace(ARES, '$ARES'))) # Shape is (Z, wavelength, time)? to_interp = np.array(_tmp) diff --git a/ares/util/ParameterBundles.py b/ares/util/ParameterBundles.py index ee23137ec..352f876ba 100755 --- a/ares/util/ParameterBundles.py +++ b/ares/util/ParameterBundles.py @@ -583,18 +583,19 @@ def __add__(self, other): if self.verbose: if type(other[key]) in [int, float, np.float64]: - msg1 = "UPDATE: Setting {0} -> {1:9.2e}".format(key.ljust(20), + msg1 = "UPDATE: Setting {0} -> {1:9.2e}".format(key, other[key]) else: - msg1 = "UPDATE: Setting {0} -> {1}".format(key.ljust(20), + msg1 = "UPDATE: Setting {0} -> {1}".format(key, str(other[key]).ljust(12)) if type(tmp[key]) in [int, float, np.float64]: - msg2 = "previously {0} = {1:9.2e}".format(str(key).ljust(20), + msg2 = " previously {0} = {1:9.2e}".format(str(key), tmp[key]) else: - msg2 = "previously {0} = {1}".format(str(key).ljust(20), tmp[key]) + msg2 = " previously {0} = {1}".format(str(key), tmp[key]) - print(line('{0} [{1}]'.format(msg1, msg2))) + print(line('{0}'.format(msg1))) + print(line('[{0}]'.format(msg2))) tmp[key] = other[key] diff --git a/ares/util/PrintInfo.py b/ares/util/PrintInfo.py index 491cf7cce..066a7c6ec 100755 --- a/ares/util/PrintInfo.py +++ b/ares/util/PrintInfo.py @@ -10,6 +10,7 @@ """ +import os import numpy as np from ..data import ARES from types import FunctionType @@ -30,10 +31,22 @@ rank = 0 size = 1 + +settings = {'width': 76, 'border': 2, 'pad': 1, 'col': 6} + +HOME = os.environ.get('HOME') +if os.path.exists('{!s}/.ares/printout'.format(HOME)): + col1, col2 = np.loadtxt('{!s}/.ares/printout'.format(HOME), unpack=True, + dtype=str) + + for i, row in enumerate(col1): + settings[col1[i].strip()] = int(col2[i].strip()) + # FORMATTING -width = 110 -pre = post = '#'*4 +width = settings['width'] +pre = post = '#' * settings['border'] twidth = width - len(pre) - len(post) - 2 +pad = settings['pad'] # e_methods = \ @@ -111,7 +124,7 @@ def tabulate(data, rows, cols, cwidth=12, fmt='{:.4e}'): tmp = col.center(cwidth[i+1]) hnames.extend(list(tmp)) - start = len(pre) + cwidth[0] + 3 + start = len(pre) + cwidth[0] + settings['pad'] hdr[start:start + len(hnames)] = hnames @@ -145,7 +158,7 @@ def tabulate(data, rows, cols, cwidth=12, fmt='{:.4e}'): numbers += (fmt.format(data[i][j])).center(cwidth[j+1]) numbers += ' ' - c = len(pre) + 1 + cwidth[0] + 2 + c = len(pre) + 1 + cwidth[0] + settings['pad'] d[c:c+len(numbers)] = list(numbers) d_s = '' @@ -502,13 +515,13 @@ def print_pop(pop): def _rad_type(sim, fluctuations=False): rows = [] - cols = ['sfrd', 'sed', 'radio', 'O/IR', 'Ly-a', 'LW', 'Ly-C', 'X-ray', 'RTE'] + cols = ['sfrd', 'sed', 'radio', 'O/IR', 'Lya', 'LW', 'LyC', 'Xray', 'RTE'] data = [] for i, pop in enumerate(sim.pops): rows.append('pop #%i' % i) if re.search('link', pop.pf['pop_sfr_model']): junk, quantity, num = pop.pf['pop_sfr_model'].split(':') - mod = 'link:%s:%i' % (quantity, int(num)) + mod = '%s->%i' % (quantity, int(num)) else: mod = pop.pf['pop_sfr_model'] @@ -525,7 +538,7 @@ def _rad_type(sim, fluctuations=False): if is_src: tmp.append('x') else: - tmp.append(' ') + tmp.append('-') # No analog for RTE solution for fluctuations (yet) if fl: @@ -567,17 +580,20 @@ def print_sim(sim, mgb=False): print("#"*width) return - print(line('-'*twidth)) + cw =print(line('-'*twidth)) print(line('Source Populations')) print(line('-'*twidth)) data, rows, cols = _rad_type(sim) - tabulate(data, rows, cols, cwidth=[8,12,8,8,8,8,8,8,8,8], fmt='{!s}') + + cw = settings['col'] + cwidth = [cw+1, cw+4] + [cw] * 8 + tabulate(data, rows, cols, cwidth=cwidth, fmt='{!s}') #print line('-'*twidth) #print line('Fluctuating Backgrounds') #print line('-'*twidth) - # + #cw = #data, rows, cols = _rad_type(sim, fluctuations=True) #tabulate(data, rows, cols, cwidth=[8,12,8,8,8,8,8,8,8,8], fmt='{!s}') @@ -593,12 +609,12 @@ def print_sim(sim, mgb=False): print(line('Notes')) print(line('-' * twidth)) - s1 = "+ pop_calib_lum != None, which means".format(i) - s1 += ' changes to pop_Z will *not* affect UVLF.' - s2 = ' Set pop_calib_lum=None to restore "normal" behavior' - s2 += ' (see S3.4 in Mirocha et al. 2017).' - print(line(s1)) - print(line(s2)) + s1a = "+ pop_calib_lum != None, which means changes to pop_Z".format(i) + s1b = ' will *not* affect UVLF. Set pop_calib_lum=None to restore' + s1c = ' "normal" behavior (see S3.4 in Mirocha et al. 2017).' + print(line(s1a)) + print(line(s1b)) + print(line(s1c)) ct += 1 # Other noteworthy things? diff --git a/ares/util/SetDefaultParameterValues.py b/ares/util/SetDefaultParameterValues.py index 94e515336..a563d52e8 100644 --- a/ares/util/SetDefaultParameterValues.py +++ b/ares/util/SetDefaultParameterValues.py @@ -209,8 +209,9 @@ def PhysicsParameters(): "approx_He": False, "approx_sigma": False, "approx_Salpha": 1, # 1 = Salpha = 1 - # 2 = Chuzhoy, Alvarez, & Shapiro (2005), + # 2 = Chuzhoy, Alvarez, & Shapiro (2006), # 3 = Furlanetto & Pritchard (2006) + # 4 = Hirata (2006) "approx_thermal_history": False, "inits_Tk_p0": None, diff --git a/docs/README b/docs/README deleted file mode 100644 index c4adff9e3..000000000 --- a/docs/README +++ /dev/null @@ -1,3 +0,0 @@ -Eventually, it'd be nice to have figures throughout the documentation. My really hacky way of doing this is to run generate_figures.py, and upload the files by hand (in batch) to a public Dropbox folder, which allows the files to have permanent share-able links. - -This depends on the script rst_to_py.py that I wrote to translate .rst files to, you guessed it, Python scripts. That way we can run each .rst file as a script, and harvest any figures it generates. diff --git a/docs/examples/example_crb_uv.ipynb b/docs/examples/example_crb_uv.ipynb index 1e3b14672..4f77c91ce 100644 --- a/docs/examples/example_crb_uv.ipynb +++ b/docs/examples/example_crb_uv.ipynb @@ -170,7 +170,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 6, diff --git a/docs/examples/example_crb_xr.ipynb b/docs/examples/example_crb_xr.ipynb index d60085c6e..543fee12c 100644 --- a/docs/examples/example_crb_xr.ipynb +++ b/docs/examples/example_crb_xr.ipynb @@ -180,7 +180,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 6, @@ -295,7 +295,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 10, diff --git a/docs/examples/example_grid.ipynb b/docs/examples/example_grid.ipynb index 6c2af3e03..659f647bb 100644 --- a/docs/examples/example_grid.ipynb +++ b/docs/examples/example_grid.ipynb @@ -200,7 +200,8 @@ "name": "stderr", "output_type": "stream", "text": [ - "grid: 0% | | ETA: 0:02:12 " + "\r", + "grid: N/A% | | ETA: --:--:-- " ] }, { @@ -215,184 +216,184 @@ "name": "stderr", "output_type": "stream", "text": [ - "grid: 8% |###### | ETA: 0:02:28 " + "grid: 8% |### | ETA: 0:02:38 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #1: Mon Sep 27 18:22:30 2021\n" + "Checkpoint #1: Tue Feb 8 14:50:36 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 16% |############# | ETA: 0:02:14 " + "grid: 16% |####### | ETA: 0:02:26 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #2: Mon Sep 27 18:22:43 2021\n" + "Checkpoint #2: Tue Feb 8 14:50:51 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 24% |################### | ETA: 0:02:01 " + "grid: 24% |########### | ETA: 0:02:12 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #3: Mon Sep 27 18:22:56 2021\n" + "Checkpoint #3: Tue Feb 8 14:51:05 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 32% |########################## | ETA: 0:01:48 " + "grid: 32% |############### | ETA: 0:01:58 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #4: Mon Sep 27 18:23:09 2021\n" + "Checkpoint #4: Tue Feb 8 14:51:19 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 40% |################################# | ETA: 0:01:35 " + "grid: 40% |################### | ETA: 0:01:44 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #5: Mon Sep 27 18:23:22 2021\n" + "Checkpoint #5: Tue Feb 8 14:51:33 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 48% |####################################### | ETA: 0:01:22 " + "grid: 48% |####################### | ETA: 0:01:31 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #6: Mon Sep 27 18:23:35 2021\n" + "Checkpoint #6: Tue Feb 8 14:51:49 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 56% |############################################## | ETA: 0:01:09 " + "grid: 56% |########################### | ETA: 0:01:17 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #7: Mon Sep 27 18:23:48 2021\n" + "Checkpoint #7: Tue Feb 8 14:52:03 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 64% |#################################################### | ETA: 0:00:56 " + "grid: 64% |############################### | ETA: 0:01:03 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #8: Mon Sep 27 18:24:01 2021\n" + "Checkpoint #8: Tue Feb 8 14:52:18 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 72% |########################################################### | ETA: 0:00:43 " + "grid: 72% |################################## | ETA: 0:00:48 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #9: Mon Sep 27 18:24:14 2021\n" + "Checkpoint #9: Tue Feb 8 14:52:32 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 80% |################################################################## | ETA: 0:00:30 " + "grid: 80% |###################################### | ETA: 0:00:34 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #10: Mon Sep 27 18:24:27 2021\n" + "Checkpoint #10: Tue Feb 8 14:52:48 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 88% |######################################################################## | ETA: 0:00:17 " + "grid: 88% |########################################## | ETA: 0:00:20 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #11: Mon Sep 27 18:24:40 2021\n" + "Checkpoint #11: Tue Feb 8 14:53:04 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 96% |############################################################################### | ETA: 0:00:05 " + "grid: 96% |############################################## | ETA: 0:00:05 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #12: Mon Sep 27 18:24:52 2021\n" + "Checkpoint #12: Tue Feb 8 14:53:20 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 100% |##################################################################################| Time: 0:02:40 \n" + "grid: 100% |################################################| Time: 0:03:03 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Processor 0: Wrote test_2d_grid.*.pkl (Mon Sep 27 18:24:57 2021)\n", - "Calculation complete: Mon Sep 27 18:24:57 2021\n", - "Elapsed time (min) : 2.67\n" + "Processor 0: Wrote test_2d_grid.*.pkl (Tue Feb 8 14:53:26 2022)\n", + "Calculation complete: Tue Feb 8 14:53:26 2022\n", + "Elapsed time (min) : 3.06\n" ] } ], @@ -423,19 +424,19 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Analysis: Model Set ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Basic Information ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### path : ./ ####\n", - "#### prefix : test_2d_grid ####\n", - "#### N-d : 2 ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### param #00: tanh_xz0 ####\n", - "#### param #01: tanh_xdz ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## Analysis: Model Set ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Basic Information ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## path : ./ ##\n", + "## prefix : test_2d_grid ##\n", + "## N-d : 2 ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## param #00: tanh_xz0 ##\n", + "## param #01: tanh_xdz ##\n", + "############################################################################\n", "\n" ] } @@ -675,7 +676,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 16, diff --git a/docs/examples/example_grid_analysis.ipynb b/docs/examples/example_grid_analysis.ipynb index 158ff420a..aebeaee07 100644 --- a/docs/examples/example_grid_analysis.ipynb +++ b/docs/examples/example_grid_analysis.ipynb @@ -32,19 +32,19 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Analysis: Model Set ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Basic Information ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### path : ./ ####\n", - "#### prefix : test_2d_grid ####\n", - "#### N-d : 2 ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### param #00: tanh_xz0 ####\n", - "#### param #01: tanh_xdz ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## Analysis: Model Set ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Basic Information ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## path : ./ ##\n", + "## prefix : test_2d_grid ##\n", + "## N-d : 2 ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## param #00: tanh_xz0 ##\n", + "## param #01: tanh_xdz ##\n", + "############################################################################\n", "\n" ] } @@ -157,7 +157,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "id": "47a414bf", "metadata": {}, "outputs": [ @@ -185,7 +185,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "id": "e35992b7", "metadata": {}, "outputs": [ @@ -214,7 +214,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 6, "id": "31f716a3", "metadata": {}, "outputs": [ @@ -254,7 +254,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 7, "id": "22b24df3", "metadata": {}, "outputs": [ @@ -292,10 +292,17 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 8, "id": "edc18c3e", "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "test_2d_grid.blob_0d.nu_D.pkl exists! Set clobber=True or remove by hand.\n" + ] + }, { "data": { "text/plain": [ @@ -306,7 +313,7 @@ " fill_value=1e+20)" ] }, - "execution_count": 10, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -326,7 +333,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 9, "id": "4cf26a9a", "metadata": {}, "outputs": [ @@ -368,7 +375,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 10, "id": "5813370f", "metadata": {}, "outputs": [], @@ -386,7 +393,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 11, "id": "697e73e9", "metadata": {}, "outputs": [], @@ -405,7 +412,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 12, "id": "1c1702de", "metadata": {}, "outputs": [ @@ -414,19 +421,19 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Analysis: Model Set ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Basic Information ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### path : ./ ####\n", - "#### prefix : test_2d_grid ####\n", - "#### N-d : 2 ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### param #00: tanh_xz0 ####\n", - "#### param #01: tanh_xdz ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## Analysis: Model Set ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Basic Information ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## path : ./ ##\n", + "## prefix : test_2d_grid ##\n", + "## N-d : 2 ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## param #00: tanh_xz0 ##\n", + "## param #01: tanh_xdz ##\n", + "############################################################################\n", "\n", "Saved result to slice_0 attribute.\n" ] @@ -446,7 +453,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 13, "id": "6f090839", "metadata": {}, "outputs": [ @@ -464,7 +471,7 @@ "" ] }, - "execution_count": 18, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, @@ -495,7 +502,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 14, "id": "01f3436a", "metadata": {}, "outputs": [ @@ -521,10 +528,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "id": "21259010", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "ax = None\n", "for kwargs in kwargs_list[0:3]:\n", @@ -543,15 +563,15 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "id": "f6d8cf70", "metadata": {}, "outputs": [], "source": [ "import pickle\n", - " f = open('problematic_models.pkl', 'wb')\n", - " pickle.dump(kwargs_list, f)\n", - " f.close()" + "f = open('problematic_models.pkl', 'wb')\n", + "pickle.dump(kwargs_list, f)\n", + "f.close()" ] }, { diff --git a/docs/examples/example_gs_multipop.ipynb b/docs/examples/example_gs_multipop.ipynb index e7c994f3b..e905a97e0 100644 --- a/docs/examples/example_gs_multipop.ipynb +++ b/docs/examples/example_gs_multipop.ipynb @@ -118,25 +118,25 @@ "text": [ "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Source Populations ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### sfrd sed radio O/IR Ly-a LW Ly-C X-ray RTE ####\n", - "#### pop #0 : fcoll yes x x x ####\n", - "#### pop #1 : link:sfrd:0 yes x ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Physics ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### cgm_initial_temperature : [10000.0] ####\n", - "#### clumping_factor : 1 ####\n", - "#### secondary_ionization : 1 ####\n", - "#### approx_Salpha : 1 ####\n", - "#### include_He : False ####\n", - "#### feedback_LW : False ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Source Populations ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## sfrd sed radio O/IR Lya LW LyC Xray RTE ##\n", + "## pop #0 : fcoll yes - - x x x - ##\n", + "## pop #1 : sfrd->0 yes - - - - - x ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Physics ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## cgm_initial_temperature : [10000.0] ##\n", + "## clumping_factor : 1 ##\n", + "## secondary_ionization : 1 ##\n", + "## approx_Salpha : 1 ##\n", + "## include_He : False ##\n", + "## feedback_LW : False ##\n", + "############################################################################\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n" ] }, @@ -144,7 +144,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "gs-21cm: 100% |###############################################################################| Time: 0:00:02 \n" + "gs-21cm: 100% |#############################################| Time: 0:00:04 \n" ] }, { @@ -254,27 +254,27 @@ "text": [ "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Source Populations ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### sfrd sed radio O/IR Ly-a LW Ly-C X-ray RTE ####\n", - "#### pop #0 : fcoll yes x x x ####\n", - "#### pop #1 : link:sfrd:0 yes x ####\n", - "#### pop #2 : fcoll yes x x x ####\n", - "#### pop #3 : link:sfrd:2 yes x ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Physics ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### cgm_initial_temperature : [10000.0] ####\n", - "#### clumping_factor : 1 ####\n", - "#### secondary_ionization : 1 ####\n", - "#### approx_Salpha : 1 ####\n", - "#### include_He : False ####\n", - "#### feedback_LW : False ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Source Populations ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## sfrd sed radio O/IR Lya LW LyC Xray RTE ##\n", + "## pop #0 : fcoll yes - - x x x - ##\n", + "## pop #1 : sfrd->0 yes - - - - - x ##\n", + "## pop #2 : fcoll yes - - x x x - ##\n", + "## pop #3 : sfrd->2 yes - - - - - x ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Physics ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## cgm_initial_temperature : [10000.0] ##\n", + "## clumping_factor : 1 ##\n", + "## secondary_ionization : 1 ##\n", + "## approx_Salpha : 1 ##\n", + "## include_He : False ##\n", + "## feedback_LW : False ##\n", + "############################################################################\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n" ] @@ -283,7 +283,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "gs-21cm: 100% |###############################################################################| Time: 0:00:03 \n" + "gs-21cm: 100% |#############################################| Time: 0:00:04 \n" ] }, { diff --git a/docs/examples/example_gs_phenomenological.ipynb b/docs/examples/example_gs_phenomenological.ipynb index 48a56c305..ae47a23d5 100644 --- a/docs/examples/example_gs_phenomenological.ipynb +++ b/docs/examples/example_gs_phenomenological.ipynb @@ -32,18 +32,18 @@ "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", "Phenomenological model! Not much to report...\n", - "##############################################################################################################\n", + "############################################################################\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", "Phenomenological model! Not much to report...\n", - "##############################################################################################################\n" + "############################################################################\n" ] }, { @@ -169,18 +169,18 @@ "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", "Phenomenological model! Not much to report...\n", - "##############################################################################################################\n" + "############################################################################\n" ] }, { "data": { "text/plain": [ "(,\n", - " )" + " )" ] }, "execution_count": 3, @@ -240,14 +240,6 @@ "id": "2fd2336a", "metadata": {}, "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\r", - "grid: N/A% | | ETA: --:--:-- " - ] - }, { "name": "stdout", "output_type": "stream", @@ -260,16 +252,16 @@ "name": "stderr", "output_type": "stream", "text": [ - "grid: 100% |##################################################################################| Time: 0:00:14 \n" + "grid: 100% |################################################| Time: 0:00:18 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Processor 0: Wrote test_Ja_pl.*.pkl (Mon Sep 27 18:25:24 2021)\n", - "Calculation complete: Mon Sep 27 18:25:24 2021\n", - "Elapsed time (min) : 0.25\n" + "Processor 0: Wrote test_Ja_pl.*.pkl (Tue Feb 8 14:52:54 2022)\n", + "Calculation complete: Tue Feb 8 14:52:54 2022\n", + "Elapsed time (min) : 0.309\n" ] } ], @@ -299,19 +291,19 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Analysis: Model Set ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Basic Information ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### path : ./ ####\n", - "#### prefix : test_Ja_pl ####\n", - "#### N-d : 2 ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### param #00: pq_func_par1[0] ####\n", - "#### param #01: pq_func_par2[0] ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## Analysis: Model Set ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Basic Information ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## path : ./ ##\n", + "## prefix : test_Ja_pl ##\n", + "## N-d : 2 ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## param #00: pq_func_par1[0] ##\n", + "## param #01: pq_func_par2[0] ##\n", + "############################################################################\n", "\n", "# Loaded test_Ja_pl.000.blob_0d.z_C.pkl\n" ] diff --git a/docs/examples/example_gs_standard.ipynb b/docs/examples/example_gs_standard.ipynb index 3ee647bc1..d1c6cd0b0 100644 --- a/docs/examples/example_gs_standard.ipynb +++ b/docs/examples/example_gs_standard.ipynb @@ -57,26 +57,26 @@ "text": [ "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Source Populations ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### sfrd sed radio O/IR Ly-a LW Ly-C X-ray RTE ####\n", - "#### pop #0 : fcoll yes x x ####\n", - "#### pop #1 : link:sfrd:0 yes x ####\n", - "#### pop #2 : link:sfrd:0 yes x ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Physics ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### cgm_initial_temperature : [10000.0] ####\n", - "#### clumping_factor : 1 ####\n", - "#### secondary_ionization : 1 ####\n", - "#### approx_Salpha : 1 ####\n", - "#### include_He : False ####\n", - "#### feedback_LW : False ####\n", - "##############################################################################################################\n" + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Source Populations ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## sfrd sed radio O/IR Lya LW LyC Xray RTE ##\n", + "## pop #0 : fcoll yes - - x x - - ##\n", + "## pop #1 : sfrd->0 yes - - - - - x ##\n", + "## pop #2 : sfrd->0 yes - - - - x - ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Physics ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## cgm_initial_temperature : [10000.0] ##\n", + "## clumping_factor : 1 ##\n", + "## secondary_ionization : 1 ##\n", + "## approx_Salpha : 1 ##\n", + "## include_He : False ##\n", + "## feedback_LW : False ##\n", + "############################################################################\n" ] } ], @@ -111,7 +111,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "gs-21cm: 100% |###############################################################################| Time: 0:00:02 \n" + "gs-21cm: 100% |#############################################| Time: 0:00:03 \n" ] } ], @@ -140,7 +140,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 4, @@ -185,7 +185,7 @@ "data": { "text/plain": [ "(,\n", - " )" + " )" ] }, "execution_count": 5, @@ -328,6 +328,16 @@ "id": "e66400a8", "metadata": {}, "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + }, { "data": { "image/png": "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\n", @@ -355,8 +365,7 @@ " label=r'$f_X=%.2g, f_{\\ast}=%.2g$' % (fX, fstar))\n", " \n", " \n", - "ax.legend(loc='lower right', fontsize=14) \n", - "pl.savefig('ares_gs_diy_param_study.png')" + "ax.legend(loc='lower right', fontsize=14) " ] }, { diff --git a/docs/examples/example_litdata.ipynb b/docs/examples/example_litdata.ipynb index 7fb21eae3..d6cdb996f 100644 --- a/docs/examples/example_litdata.ipynb +++ b/docs/examples/example_litdata.ipynb @@ -55,6 +55,7 @@ " 'test_schaerer2002',\n", " 'song2016',\n", " 'whitaker2012',\n", + " 'blue_tides',\n", " 'atek2015',\n", " 'mortlock2011',\n", " 'bouwens2017',\n", @@ -81,6 +82,7 @@ " 'duncan2014',\n", " 'daddi2007',\n", " 'starburst99',\n", + " 'park2019',\n", " 'oesch2014',\n", " 'eldridge2017',\n", " 'bowler2020',\n", @@ -102,6 +104,7 @@ " 'bpass_v2',\n", " 'bowman2018',\n", " 'sun2020',\n", + " 'gruppioni2020',\n", " 'rojasruiz2020',\n", " 'stefanon2019',\n", " 'kusakabe2020',\n", @@ -353,30 +356,31 @@ "text": [ "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Source Populations ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### sfrd sed radio O/IR Ly-a LW Ly-C X-ray RTE ####\n", - "#### pop #0 : sfe-func yes x x x x ####\n", - "#### pop #1 : link:sfrd:0 yes x x ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Notes ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### + pop_calib_lum != None, which means changes to pop_Z will *not* affect UVLF. ####\n", - "#### Set pop_calib_lum=None to restore \"normal\" behavior (see S3.4 in Mirocha et al. 2017). ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Physics ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### cgm_initial_temperature : 20000 ####\n", - "#### clumping_factor : 3 ####\n", - "#### secondary_ionization : 3 ####\n", - "#### approx_Salpha : 3 ####\n", - "#### include_He : True ####\n", - "#### feedback_LW : False ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Source Populations ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## sfrd sed radio O/IR Lya LW LyC Xray RTE ##\n", + "## pop #0 : sfe-func yes - - x x x - x ##\n", + "## pop #1 : sfrd->0 yes - - - - - x x ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Notes ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## + pop_calib_lum != None, which means changes to pop_Z ##\n", + "## will *not* affect UVLF. Set pop_calib_lum=None to restore ##\n", + "## \"normal\" behavior (see S3.4 in Mirocha et al. 2017). ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Physics ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## cgm_initial_temperature : 20000 ##\n", + "## clumping_factor : 3 ##\n", + "## secondary_ionization : 3 ##\n", + "## approx_Salpha : 3 ##\n", + "## include_He : True ##\n", + "## feedback_LW : False ##\n", + "############################################################################\n", "# Loaded $ARES/input/bpass_v1/SEDS/sed.bpass.constant.nocont.sin.z020\n", "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -387,14 +391,14 @@ "name": "stderr", "output_type": "stream", "text": [ - "gs-21cm: 100% |###############################################################################| Time: 0:00:02 \n" + "gs-21cm: 100% |#############################################| Time: 0:00:03 \n" ] }, { "data": { "text/plain": [ "(,\n", - " )" + " )" ] }, "execution_count": 8, @@ -577,7 +581,17 @@ "outputs": [ { "data": { - "image/png": "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\n", + "text/plain": [ + "Text(0, 0.5, '$f_{\\\\ast}$')" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXEAAAEWCAYAAACQdqdGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAtZElEQVR4nO3dd3hUVf7H8fdJo/cikFBD7yV0EFAsq6CIrIiuBVFEsaG7imXXdVd/lnV1V7FhxUIHBSs2EKVIDb0mlCSEEkqAFNLO748b1xgTSJnkTvm8nicPM2cmd74zJB8O5557jrHWIiIivinI7QJERKTkFOIiIj5MIS4i4sMU4iIiPkwhLiLiwxTiIiI+TCEuIuLDFOIiIj7M50PcGNPCGPO2MWau27WIiJQ3V0PcGPOOMeawMWZzvvZLjTE7jDG7jTGTz3YMa22stXZc2VYqIuKdQlx+/feAKcD7vzQYY4KBV4CLgHhgtTFmIRAMPJ3v+2+x1h4un1JFRLyPqyFurV1qjGmWr7kXsNtaGwtgjJkJXGmtfRoYVs4lioh4Nbd74gUJB+Ly3I8Hehf2ZGNMHeApoJsx5uHcsM//nPHAeIAqVar0aNu2rWcrFhEpY2vXrk2y1tbL3+6NIW4KaCt0qUVr7VFgwtkOaK2dCkwFiIqKsmvWrClVgSIi5c0Ys6+gdm+cnRIPNM5zPwI44FItIiJezRtDfDXQyhjT3BgTBlwLLHS5JhERr+T2FMMZwAqgjTEm3hgzzlqbBdwFLAK2AbOttVs88FrDjTFTk5OTS3soERGvYQJtZx+NiYuILzLGrLXWRuVv98bhFBERKSKFuIiID1OIi4j4MG+cJ14mjDHDgeEtW7Z0uxQRr5CTY4mOP8GizQf5eushkk6foV2D6rRvVJ32DZ0/W9avSsXQYLdLlbPQiU2RAJKVncPK2GN8tSWRr7cc4vCpM4QEwbjwOLqG7iPxVA77k7OYm9GH01QmMugQfRpa2rXtQN8u7YmsX93ttxCwCjuxGTA9cZFAtv3gSeavS+CT9QkcPnWGiqFBDG5dn2sbHWLg9icJPpJnFm8QjBs/no2nq1N11YsMin8DlkHGT8EcCKpHRtVGJF3+Dt1aNyM4aQecOQW1m0PlOmAKuuBaypJCXMRPHTl1hgXRCcxfl8DWxJOEBBkGt6nP6I5VGNi4AhXrt4BjsbAzCK58BdoOA5sDWWdoXKUejYNDoNkkODiU44kxxO/dyalDewhNTmT0e5upUy2G16pPI+po7rV4YdWcMK/XFkZOdQL9ZCJUqAYVqrr7YfgxDaeI+BFrLWv3HWfain18tTmRzGxLl4gajOwewRVNs6i18U1Y9z40Px+um/XLNxWrB336TBaLtx/mi02J7Ni+mWY5++lY6Sj9a5+ibdgRqodmY27+3Hnyh1fD7m+hRmMn3Ou3hfAe0OGqMnj3/q2w4RSFuIgfSMvIZkF0AtNW7GNb4kmqVQxhVI8IruvVhFbEwbL/wKa5Tlh3ugb63QXndSj166acyeK77Yf5fOMBFu84QkZWDs3qVGZk9wiu6hZO42Mr4MA6OLIDDm+HpB0Q0QvG5ob8zOshOBQadILzOjl/VmugYZkCBHyI55mdctuuXbvcLkfEI5JOn+Gdn/bw4cp9nEzPom2DatzQtykjuoZTJSzYCcMlz8Ky/0KPm6HvnVAjokxqOZWeyVebDzJ/XQIrYo8C0KtZbUZ2D+fyzg2pVjEUsrMg/QRUqev8D2DuWEhYCyf2/3qg7jfCFS87t3d982uwB7iAD/FfqCcu/uDAiTSmLo1l5ur9nMnK4ZL2DRjbvxm9mtXCxHwPPz4PvSdAhxGQfhJysqBy7XKrL/54KguiDzBvXTyxR1KoHBbMsM4NGd2zCd2b1MTk72mnJ8OhLZC4EepEQquLnPH0F3LX/q/WECKiIKIntLkc6gbeVGGFeC6FuPiyvUkpvLYkhvnr47EWRnQLZ8KgSFrWrQzbP4Mf/w2J0VA9Ai550vWxZ2st6+NOMHt1HAs3HCA1I5vW51VldM8mjOwWTq0qYYV/c9YZSFjnvJ+EtRC/Bo7vgaumQpfRkLQLVk2FJn2gST+o3rDc3pcbFOK5FOLiiw4mp/Pf73Yya3UcIcFBXNuzMePPb0FErcrOE6ZfCzu/hNqRMGASdB4NIWcJSBecPpPFZxsOMGN1HBviThAWEsTwzo24oW9TukTU+H3vvCApSRBSwZnxsv0LmHcrZKY4j9VsCk36woV/LbMhIzcpxHMpxMWXJKdl8sYPMbyzbA/ZOZY/9WnKHYMjqV85BDbPg3bDIawybP8cMtOcnneQ919huS3xJNN/3s/8dfGkZGTTKbwGN/RpyvAujagUVoz6szPh4CbYvxL2r4C4VTBxJVSqBavfhn3LoflAaDYQarfw6ROmCvFcCnHxBemZ2Xy4ch9TFu/mRGomI7o24oGL29C4RihsnAVLn3eGFq58Fbpd73a5JXb6TBYfr0/ggxV72XnoNNUrhjC6Z2Nu7NuMxrUrF/+AeadL/vQirHwNTh9y7lcPh1YXw7AXfTLMFeK5FOLi7RZvP8zjC7ew/1gqA1vV5aFL29KxYTXYMB1+eA5O7IOGXWDQZGjzB58MpPystazac4z3V+7jq80HsdZyUfvzGNu/Ob2b1y7aUEvBB4aju2HvjxD7g3Mx0+gPnMc+vsM52Rs5BJoOgNCKnntDZSDgQ1xTDMXbxR9P5YlPt/LN1kNE1qvC36/owMBWuZubWwvvXOKc7Bv8MLS+xC/CuyAHTqTxwcp9zFi1nxOpmbRvWJ2x/ZtxRddGVAjx0FBRTg58NAr2/gTZZyCkEjQbAD3HOf8weqGAD/FfqCcu3uZMVjZv/biHl7/fhcFwz4WtGNevCWE7FsDyl+D6uVC1PqQcdXqOfhre+aVlZPNJdALvLtvDzkOnqVetAjf1bcr1vZuefVZLcWSkwr5lzlWlu76BXrdBnzucz3rpv5x/LJv294qTxArxXApx8SY/xx7l4fmbiE1K4Q8dG/DY5e0IP/gdfP8UHNkG9dvDVW9Aw85ul+oaay0/7U7izR/3sHTnESqFBvPHqAjGDWhO0zpVPPtiOdnOieHYJTB9NGSlO2vCtLwAWl/qrC9T0Z2VHBXiuRTi4g3SMrJ5btF23lu+l8a1KvOPKzswOLIGvHsZJKyBOq1gyMPQ/ioI0t4tv9h+8CRv/biHBdEJZOVYLmnfgAmDI+nauKbnXywjBfYshR1fws5FcPog3LPemeVyZIcz1bFWM8+/biEU4rkU4uK21XuP8Zc5G9h7NJWb+jZlcu9QKjVo4zy46FGo3w46XwvBWmS0MIdOpjNt+d7/LTfQp0VtJgyKZFDreiU/CXo21sLhrb+uNzP7Rti6AM7rCG0vh3ZXOI+V4VCXQjyXQlzckp6ZzfOLdvD2sj2E16zElAsr0HXnS04v745lHlmQKtCcPpPFjJ/38/ZPezh4Mp22DaoxYVAkwzo3JCS4DP8Hc2wP7PgCtn3mzE/HQsuL4E9zy+wlFeK5FOLihq0HTnL3jHXEHElhYrcw7gueQ+jm2VChOgy411nnJMzD47sBJCMrh0+iE3jjhxhijqTQuHYlJgyK5OruEWW/vdzpI86SByEVoOt1kJUBb10ILQZBh5HQqJtHeugBH+KaYihusNby4cp9/PPzbdSsFMqLI1vTf8FA5+rK3rc7l8iX48JU/i4nx/LttkO8siSGDXEnqF+tArcNbMF1vZtQpUI5DU+dTIRP74GYxZCT6YybdxgJUWOhZpMSHzbgQ/wX6olLeUlOzeSheRtZsmUf9zfaysixf6ZutYqw7VNo1B1qhLtdot+y1rIi5iivLNnNst1HqVEplJv7NeOW/s2pUTm0fIpIO+4Mt2yZ71xoNPZLaNK7xIdTiOdSiEt5WLvvOPdNX0P/lK/5a+WPqZJxBG79HiJ6uF1awFm//zivLI7h222HqFohhBv6NuXWAc2pU7VC+RWRkgSVapdqppFCPJdCXMqStZa3f4xlxaKZPBI2k0i7H8Kj4OJ/QtN+bpcX0LYlnuSVxbv5fFMiFUKCuL53U24/vwX1q3v35fa/UIjnUohLWUnLyObh+Rv5MnovP1d5gGrVqhN80d+h/ZUBc5WlL9h9+DSvLtnNgugDBAcZru3ZmAmDImlUs5LbpZ2VQjyXQlzKwoG4GJZ/9BSPJF/JPRe1584OWQTVifSKy7WlYPuOOhtszF0bT5Ax/DEqgjuHtCTcS8NcIZ5LIS4edeY0cZ8/Q92NUwm22Wy88H2izr/c7aqkGOKPp/Lakhhmr4kDYFSPCO4c3LJkS+GWIYV4LoW4eERODnbDdNK+/DuVM46wOKQ/LcY8T9PI9m5XJiV04EQary2JYdbqOHKsZVSPCCYO8Z4wV4jnUoiLJ2RlZnL4hX4cSsnhq/C7mXjT9VSvWE5T16RMHUxO5/UfYpi+aj85OdYZZvGCnrlCPJdCXErs+F744TlSBj/B3Z/sZcP2XYwa2JWH/tCOoCCduPQ3B5PTeW3Jbmascnrmbod5wIe4rtiUEjtzGn56AZZPwZogHq80mQ+TWvHEFR24oW8zt6uTMpaYnMbrS2KYsSoOi+WPUY25a0jLcp/NEvAh/gv1xKXIrHX2s/zmcTh9kJOtr+aGfX9gV1o1plzXjQvanud2hVKOEpPTeHVxDDNX78dguLZXY+4c3JIGNcpnnrlCPJdCXIplxnVwKpGNnR/h+q9yqBgazLs396RjeA23KxOXxB9P5ZXFMcxZE0dQkOH63k24Y3Ak9auVbZgrxHMpxOWsTh2C7/8B/SdB3ZaQnsxXu05zz8yNNKtbmXfH9vLaecRSvuKOpfLy97uYty6B0GDDjX2bcfv5Lcrscv7CQlxbhogAZGfC8pfh5R6wYRbErwZg9uaT3Dk9mo7h1Zlzez8FuPxP49qVeW5UF767fxCXdWzIWz/GMvC5xfxr0XaSUzPLrQ71xEViFsOXD0LSTmdh/0ufgboteevHWJ78fBsDW9XljRt6UDlMO+1I4XYfPsV/vt3FZxsTqVYhhFsHtuCWAc2o5qGppxpOyaUQl9/56hHY8bkT3q0vxQIvfLOTl7/fzWWdGvDi6K5UCCnjjQXEb2w/eJIXv9nJoi2HqFk5lAmDIrmxb9NSdwIU4rkU4kJmujN00qQPNB/obIhrgiG0Ijk5lic+3cK0FfsYHdWY/xvZiWDNAZcS2BSfzL+/2cGSHUeoW7UCE4dEMqZXkxLvNKQxcRGAXd/Aq31g8ZOw+1unLawKhFYkO8fy0LyNTFuxj/Hnt+CZqxXgUnKdImrw3thezJ3Ql5b1q/DEp1sZ8vwS5q2N9+jraJBPAsPxffDVw86wSZ1WcMMnEDnkfw9n51genLuReeviuffCVtw3tFXZ7JouASeqWW1mju/L8t1JPP/1DmKTTnv0+ApxCQw7v4LYxTD079Bn4m+WiM3Osfxlzgbmr09g0tDW3Du0lXt1it/q17Iu8yLrkJnt2SFshbj4r5jvISMV2g2DqHHQdtjv9rXMys7hz3M28En0AR64qDV3X6gAl7JjjCEsxLP/wwuYMXFjzHBjzNTk5GS3S5GydvIAzBkLH1wFy19yLp8PDikwwO+f7QT4Xy5powAXnxQwIW6t/dRaO75GDV0u7beys2DFKzClJ2z/HIY8CjcuLHBrtKzsHCbN3sDCDQd46NK2TBzS0oWCRUpPwyniP/YuhUWPOBfsXPYc1G5R4NNyciwPztvIpxsOMPkPbZkwKLKcCxXxHIW4+La04xC3ClpfApEXwNivnPnfhcwssdbyt4Wbmb/OOYmpABdfFzDDKeJnrHXWOJnS0xn/TjvutDfte9YAf/rL7Xy4cj+3D2rBPRdqCEV8n3ri4nuSdsPnk2DPUgiPgmEvQqVa5/y2/3y7i6lLY7mpb1MmX9pW88DFLyjExbekJMEbAyEoFC5/AXqMhaBz/4fyjR9i+O93u/hjjwgeH95BAS5+QyEuviFpF9RtBVXqwrD/QIvBUK1oO+t8sHIfT3+5nWGdG/LM1Z21H6b4FY2Ji3dLPQafTHTGvvctd9q6jC5ygH+28QB/W7CZC9vW58XRXbUWivgd9cTFO1kLG2fDoochPRkGTIKGXYt1iJ92JTFpVjRRTWsx5bruhAarzyL+RyEu3mn2jbBtIUT0hOH/hfM6FOvbN8af4PYP1hBZrypv3diTSmFaD1z8k0JcvEd2FgQFO1MEW14Izc+HqFuctmKIPXKase+uplaVMKbd0osalT2zs4qIN9L/L8U7JKyFqYNh4yznfo+boddtxQ7wQyfTueHtVQC8f0svzqtetjuQi7hNPXFx15nTsPgp+Pl1qHpekeZ7FyY5LZMb317FidQMZo7vS4t6VT1YqIh3UoiLe2J/gAV3QfJ+Z6nYoY9DxZItUHYmK5vbP1hDbNJp3hvbi04RWuhMAoNCXNyTkQKhleCWRc56JyVkreWhuRtZGXuM/4zuSv+WdT1YpIh3U4hL+fll2mDaMehzB7S9DFpdBMGlO/H4/Nc7/rcm+Ihu4ef+BhE/ohObUj5O7IePRsHH4521vnNynPZSBvj0n/fzyuIYxvRqzJ2DtSKhBJ6A6YkbY4YDw1u21Mp15SonG1a/Bd8+4dy/9NncWSel7z8s3n6Yvy7YzKDW9fjnlR21HooEpIDpiWtnH5cc2QFfTXbGvCeuhD4Tij1tsCCb4pOZOH0dbRtU45XruxOiqzElQAVMT1zKUXams0lx60vgvPZw22Jo2KXQdb6L68CJNG6ZtppalcN45+aeVK2gH2MJXOq+iGcdWO9ctDP9Gji0xWlr1NVjAZ5yJotx09aQlpHNOzf31MU8EvDUhRHPyEyDJc/A8pehSj0Y/VGx1zs5l+wcy70zo9lx8CTv3NyTNg2qefT4Ir5IIS6ll5MD71wCiRug2w1w8ZNQqabHX+aZL7fx7bZDPHFFBwa3qe/x44v4IoW4lFxGqnOxTlAQ9L3L6YFHDimTl5qxaj9v/riHG/s25aZ+zcrkNUR8kcbEpWRiFsOrvWHDDOd+52vKLMCX7U7ir59s5vzW9fjbsPZl8hoivkohLsWTngwL74YPRkBwGNRuUaYvF3PkNHd8uJbmdasw5bpumkooko+GU6ToYhbDJ3fC6YPQ/14Y/LAznFJGktMyuW3aGkKCg3jn5p5Ur6h1wUXyU4hL0WWmOasMXvshhPco05fKzrHcPWM9+4+lMv22PjSuXblMX0/EVynE5ey2fw7JCdB7fO6CVRdDcNn/2Dz9xTaW7jzC0yM70at57TJ/PRFfpQFGKVjqMZh3K8y8zjl5mZ3ltJdDgM9ZE8dbP+3hpr5NGdOrSZm/nogvU09cfm/bp/DZJEg77ox7D7i/XMIbYO2+4zz68Wb6RdbhMc1EETknhbj81rFYmH2Tc7XlDZ9Ag47l9tKJyWnc/sFaGtSoyCvXdSdUM1FEzkkhLo7EDc4iVbVbwA0fQ9N+pV7ruzjSM7MZ//5a0jKymH5bb2pVCSu31xbxZerqBLqUozBnLLxxPuxb4bS1GFSuAW6t5ZH5m9iUkMx/ru1G6/O0JopIUaknHsj+N/Z9AoY8BhFRrpTx7rK9zF+fwKShrbmo/Xmu1CDiqxTigerTe2Hte9Cgc7mPfee1IuYoT32xjYvan8fdF2jXJZHiUogHqoZdYcijMGBSuQ6d5JVwIo2J09fRrE5lXrimC0FB2l5NpLgU4oEi9ZizTVrzQdDteoga62o56ZnZTPhgLZlZOUy9MYpquqRepEQU4oFg5yJYeA+kJnl8o4aSsNbyyMfOicy3bowisl5Vt0sS8VkKcX+WdgIWPQrRH0L9DnDdLGerNJdNW76X+eucE5lDdSJTpFQU4v4sbpVzyfzAP8OgByGkgtsVsXrvMZ78fBtD2+lEpognKMT9zZlTsH8ltLoIWl8M96yDWs3crgqAwyfTufOjdUTUqsQLo3UiU8QTfP5iH2PMCGPMm8aYBcaYi92ux1V7foTX+sGsP8Hpw06blwR4ZnYOE6ev43R6Fm/cEKW1wUU8xNUQN8a8Y4w5bIzZnK/9UmPMDmPMbmPM5LMdw1r7ibX2NuBmYHQZluu9MlLhiwdh2jAICoEbF0BV79pI+P++2Mbqvcd55upO2qVexIPcHk55D5gCvP9LgzEmGHgFuAiIB1YbYxYCwcDT+b7/FmttbpeTx3K/L7BknYGpgyFpB/S6HYY+DmFV3K7qNxZEJ/Dusr2M7d+MK7uGu12OiF9xNcSttUuNMc3yNfcCdltrYwGMMTOBK621TwPD8h/DGGOAZ4AvrbXryrhk75GTDUHBzsnKqLHO1MHm57td1e9sP3iSyfM20bNZLR65rJ3b5Yj4HW8cEw8H4vLcj89tK8zdwFBglDFmQkFPMMaMN8asMcasOXLkiOcqdcuBaHh9AMR879zvc4dXBvjJ9EwmfLCWqhVDtLSsSBlxezilIAVNWbCFPdla+xLw0tkOaK2dCkwFiIqKKvRYXi87E378Nyz9F1SpR8EflXew1vLn2RuIO57GjNv6UL96RbdLEvFL3hji8UDjPPcjgAMu1eI9Dm+Hj2+HxGjoPBr+8CxUquV2VYV688dYvt56iMcub6c9MkXKkDeG+GqglTGmOZAAXAtc525JXmDfT5AcB9d8AO2vcLuas1q15xjPfrWDP3RswLgBzd0uR8SvuT3FcAawAmhjjIk3xoyz1mYBdwGLgG3AbGvtFjfrdM2xPbDrW+d21Di4a43XB/jhU+ncNX0dTWpX5rlRnXHOO4tIWSl1T9wYE2qtzcx/uyistWMKaf8C+KK0teVljBkODG/Z0gcu9bYW1r4Lix6DyrXhnvXOcrGVvXtYIis7h3tmrOdkeibvj+ullQlFykGpeuK50/uWGWNqGWOuBJ7zTFmeZ6391Fo7vkaNGm6XcnYnD8BHo5wddxr3hFu+cm297+L69zc7WRl7jKdGdKJtg+pulyMSEErVE7fWWmPMq8CzOPO7L/NIVYHq1CF4ta9zAc9lzztDKEG+MS3v262HeG1JDGN6NebqHhFulyMSMEoc4saYbsA9OPPcrseZ2/2kMQZr7S0eqi8wZGc6ve1q58GA+6DtcKjrA8M+ueKOpXL/7Gg6hlfn8eHur1cuEkhK082Lxblkfg6QBJzOvR94l76Xxs5F8FI3OLjJuT9gkk8F+JmsbO6avg4LvHpdDyqGBrtdkkhAKXGIW2uTrbVrgZE4PfKNQERum9cxxgw3xkxNTk52uxTHmVPObjvTr4EK1cH4Zvg9/cV2NsQn869RXWhSp7Lb5YgEnHOGuDFmmTGmwLNUuSc2Y6y1c4AHgToers9jvOrE5r7l8Fp/WP8B9L8Pxi+G89q7XVWxfbEpkfeW72XcgOZc2rGB2+WIBKSijIn3ACoBJ40xW4B+1tpkcE5sAv+Xe/sA8G5ZFepXdn8HxsDYL6FJH7erKZG9SSk8OHcjXRvX5KFL27pdjkjAKspwSiwwPPd2O8D9Pb58UeJG2LfCuT3oIZiwzGcDPD0zmzs/WkdIsOGV67sTFuIbM2hE/FFRfvseB6YYYxJwFqKabIwZZYyJLNvS/ER2Fix9Ht68AL5+1LmQJyQMKvjuDu//+GwrWxNP8sI1XQivWcntckQC2jmHU6y1c4wxS3HW8n4TGADcClQxxpwCooH1wDpr7QdlWGupuHLF5tEY+HgCxK+CDlfB5S84wyg+bEF0AtN/3s+EQZFc0FY71Yu4zTjD2kV8sjEbgAustUeNMa2Bbnm+ulprvf63Oioqyq5Zs6bsX+jwdnhziDP/+7J/Q6dRPh/gsUdOM/zln2jfqDozbutDiNYHFyk3xpi11tqo/O3FutjHWtslz+2dwE5gVunL8yPZWRAcAvXaQN+J0GMs1PD9LcnSM7OZOH09YSFBvDSmmwJcxEvoN9GTtnwMU6IgOd7pdV/wmF8EODjj4NsST/LC6K40rKFxcBFvoRD3hLQTMO82mHOzs1FDdobbFXnUpxsOMP3n/dw+qAVD2tR3uxwRycMbN4XwLbFL4JM74dRBGPwwDHzAZ1YdLIo9SSk8PH8TPZrW4s8Xt3G7HBHJRyFeWhtnQ2gluPUbCO/hdjUelZ6ZzcTc+eAvj+mmjY5FvFDAhLhHpxgmboDgMKjfztnr0gRDmP+tG/LU59vYmniSt2+KopHmg4t4pYDpWnlk7ZTfXLjzmNNWoZpfBviXmxL5YOU+bhvYnAvbef3MUZGAFTA98VI7FutcuBP3868X7vipuGOpPDhvI10a1+Qvl2hdFBFvphAvivi1MG04BIXAyLf84sKdwmRk5XDXjPUATBnTTeuiiHg5hXhRNOgEXcc4GzbU8O+tx57/egcb4k7w6vXdaVzb/4aJRPyNQrwoQsLg8n+7XUWZW7zjMFOXxnJ97yZc1qmh2+WISBHo/8oCwMHkdB6YvYG2Darx12G+t0GFSKBSiAvZOZb7Zq0nLSObKdd11z6ZIj4kYELc6/bY9CIvf7+LlbHH+MeVHWhZ33fXORcJRAET4l61x6YX+Tn2KC99t4sRXRsxqod/n7QV8UcBE+Lye8dTMrh3ZjRNalfmyas6Yfx02qSIP9PslABlreUvczdyNOUM8+/oT9UK+lEQ8UXqiQeo91fs49tth3jo0rZ0itAQk4ivUogHoC0Hknnq821c0LY+4wY0d7scESkFhXiASc3I4u4Z66lZOZR/jeqscXARH6eB0ADz+IIt7ElK4aNbe1OnagW3yxGRUlJPPIAsiE5gztp47hrSkn6Rdd0uR0Q8IGBCPNAv9tl/NJVHP95Mj6a1uPfCVm6XIyIeEjAhHsgX+2Rm53D3zPUYA/+9tish2mZNxG9oTDwAvPDNTjbEneCV67oTUUvLy4r4E3XJ/NxPu5J4/YcYxvRqzOWdtbysiL9RiPuxo6fPMGl2NJH1qvK3YR3cLkdEyoCGU/yUtZY/z9lAclom08b2olKYlpcV8Ufqifupd5ftZfGOIzx6WTvaN6rudjkiUkYU4n5oc0Iyz3y5naHt6nNj36ZulyMiZUgh7mdSM7K4Z+Z6alUJ5blRXXRZvYif05i4n/nHp1vZk5TCh+N6U7tKmNvliEgZU0/cj3yxKZGZq+O4/fxI+rfUZfUigUAh7icSTqQxed5GukTU4IGLW7tdjoiUk4AJcX9eOyU7xzJpZjTZOZaXxnQjVJfViwSMgPlt9+e1U6Z8v5tVe4/xzxEdaVqnitvliEg5CpgQ91dr9h7jv9/tZETXRozsrt3qRQKNQtyHJadlcu/MaMJrVeKfIzq6XY6IuEBTDH2UtZbHPtnMwZPpzJnQl2oVQ90uSURcoJ64j5q/LoFPNxxg0tBWdG9Sy+1yRMQlCnEftDcphb8t2Eyv5rW5Y3BLt8sRERcpxH1MZnYO985cT3CQ4cXRXQkO0mX1IoFMY+I+5j/f7mRDfDKvXt+d8JqV3C5HRFymnrgPWRFzlFeXxDA6qjGXddIuPSKiEPcZJ1IzuH92NM3rVOFvw9u7XY6IeAkNp/gAay0Pz99E0ukzzL+jP1Uq6K9NRBzqifuA2Wvi+HLzQR64uA2dIvxv2QARKTmFuJeLOXKavy/cSr/IOowf2MLtckTEyyjEvVhGVg73zYymQmgQL1zTlSBNJxSRfDS46sX+/c0ONiUk8/qfetCgRkW3yxERL6SeuJdavjuJqUtjGdOrMZd2bOB2OSLipRTiXuh4SgaTZkfTvG4V/jpM0wlFpHABE+K+srOPtZbJ8zdyLCWDl67tRuUwjXiJSOECJsR9ZWefWavjWLTlEH++uA0dw727VhFxX8CEuC+IPXKaJz51phPepumEIlIECnEvkZGVw72aTigixaQBVy/x4rc7NZ1QRIpNPXEvsCLmKK//EMO1PTWdUESKRyHusuTUTO6fHU2zOppOKCLFp+EUF1lreeTjTRw5dYZ5d/TT6oQiUmzqibto3roEPt+UyP0Xt6ZL45pulyMiPkgh7pJ9R1N4fMFmejevze3nR7pdjoj4KIW4C5zNjqO12bGIlJoGYV3w8ve7iY47wctjutFImx2LSCmoJ17O1uw9xpTvdzGyezjDuzRyuxwR8XEK8XJ0Mj2T+2ZFE16rEk9c0cHtckTED2g4pRw9vmALicnpzL69L9Uqhrpdjoj4AfXEy8mC6AQ+Xp/A3Re0pEfTWm6XIyJ+QiFeDuKPp/LYJ5vp3qQmdw1p6XY5IuJHFOJlLDvHcv+sDeTkWP4zuhshwfrIRcRzNCZexl7/IYZVe4/x/B+70KROZbfLERE/o25hGdoYf4IXv9nJ5Z0acnX3cLfLERE/pBAvI6kZWdw3M5q6VSvw1FUdMUZXZYqI52k4pYz887Nt7Dmawke39qZm5TC3yxERP6WeeBn4estBZqzaz/iBLegXWdftckTEjynEPezwyXQmz99E+4bVuf/i1m6XIyJ+TiHuQdZa/jJ3IylnsnhpTFcqhAS7XZKI+DmfD3FjTDtjzOvGmLnGmDvcrGXa8r38sPMIj13ejpb1q7lZiogECFdD3BjzjjHmsDFmc772S40xO4wxu40xk892DGvtNmvtBOAaIKos6z2bnYdO8X9fbueCtvX5U5+mbpUhIgHG7Z74e8CleRuMMcHAK8AfgPbAGGNMe2NMJ2PMZ/m+6ud+zxXAT8B35Vu+40xWNvfMWE+1CiE8e3VnTScUkXLj6hRDa+1SY0yzfM29gN3W2lgAY8xM4Epr7dPAsEKOsxBYaIz5HJhehiUX6PlFO9h+8BRv3xRFvWoVyvvlRSSAeeM88XAgLs/9eKB3YU82xgwGRgIVgC8Kec54YDxAkyZNPFSmY9nuJN78cQ9/6tOEC9ud59Fji4icizeGeEFjEbawJ1trlwBLznZAa+1UYCpAVFRUoccqrhOpGTwwewOR9arw6GXtPXVYEZEic3tMvCDxQOM89yOAAy7VUihrLY98vImjKWf477XdqBSm6YQiUv68McRXA62MMc2NMWHAtcBCl2v6nXnrEvhi00Huv6gNHcNruF2OiAQot6cYzgBWAG2MMfHGmHHW2izgLmARsA2Yba3d4mad+e0/msrjCzbTu3ltxp/fwu1yRCSAuT07ZUwh7V9QyEnKkjLGDAeGt2xZup11srJzuG/WeoKCDC+M7kpwkKYTioh7vHE4pUxYaz+11o6vUaN0Qx+vLolh3f4TPDmiI+E1K3moOhGRkgmYEPeE9fuP89/vdjGiayOu7KpNHkTEfQrxIko5k8WkWdE0qF6RJ67s6HY5IiKAd84T90r//Gwr+46lMvO2PtSoFOp2OSIiQAD1xI0xw40xU5OTk4v9vV9tPsjM1XFMGBRJ7xZ1yqA6EZGSCZgQL+mJzZwcy/Nf76BjeHUmDdUmDyLiXTSccg5BQYbpt/UmLSObsJCA+TdPRHyEQrwI6ler6HYJIiIFUtdSRMSHKcRFRHxYwIR4aWaniIh4q4AJcU9ddi8i4k0CJsRFRPyRQlxExIcpxEVEfJix1mNbTvoEY8wRYF+ephpA8llu//JnXSCpBC+Z95jFeTx/+9nu5681b1t51n2utsLeg6fq9tRnnb/Nn35G8t5W3cV73O3fyabW2nq/a7XWBvQXMPVst/P8uaa0xy/O4/nbz3Y/f61u1X2utsLeg6fq9tRnXZSfC1/9GVHdvvs7WdiXhlPg03PczttW2uMX5/H87We7X1CtbtR9rrbC3oOn6vbUZ52/zZ9+RvLeVt3Fe9zt38kCBdxwSkkZY9ZYa6PcrqO4VHf58cWaQXWXN0/XrZ540U11u4ASUt3lxxdrBtVd3jxat3riIiI+TD1xEREfphAXEfFhCnERER+mEC8hY8xAY8zrxpi3jDHL3a6nKIwxTYwxC40x7xhjJrtdT1EZY9obY2YbY14zxoxyu55zMca0MMa8bYyZm6etijFmmjHmTWPM9W7WV5hC6v5dm7cppO4RuZ/1AmPMxW7WV5BCam6XmylzjTF3FPlgnpx07utfwDvAYWBzvvZLgR3AbmByvsdGALf7Qs3A0F9qBd73lc8aeAAYmHt7obfXm+exuXlu3wAMz709y1fqPlubj9RdC3jbx2oOKk7N5faX4gtfwPlA97x/CUAwEAO0AMKADUD7PI/PBqr7Qs1AHWAx8D0w1lc+a6A+8ArwL2CZt9eb5/G8If4w0DX39nRfqftsbT5S97+B7r5SM3AFsBy4rqivq+GUPKy1S4Fj+Zp7AbuttbHW2gxgJnAlOMMTQLK19mT5VvqrYtY8FnjcWnsBcHn5VvpbxanbWnvYWjsRmEzJ1pwoteL+bBQgHojIvV1uv3ceqNsVpa3bOJ4FvrTWrivbah2e+KyttQuttf2AIg+5KcTPLRyIy3M/PrcNYBzwbrlXdG6F1fwVcI8x5nVgrwt1nUuBdRtjmhljpgLv4/TGvUVh9dbJ/Yy7GWMezn1sPnC1MeY1yujy62Ioct2FvBe3FOfzvhtn+HCUMWZCOdeZV3E+68HGmJeMMW8AXxT1BbTb/bmZAtosgLX28XKupagKrNlauxnw5hODhdW9FxhfzrUURWH1HgUm5GtMwfmfkDcoTt2/a3NRcep+CXipXKo6u+LUvARYUtwXUE/83OKBxnnuRwAHXKqlqHyxZvC9un2t3l+o7vJT5jUrxM9tNdDKGNPcGBMGXAssdLmmc/HFmsH36va1en+hustP2ddcnmecvf0LmAEkApk4/4KOy22/DNiJc5b5Ubfr9PWafbFuX6tXdQdOzVoAS0TEh2k4RUTEhynERUR8mEJcRMSHKcRFRHyYQlxExIcpxEVEfJhCXETEhynERUR8mEJcApYxZo4xxhpjphfw2IO5jx0txvGeMMbML6vjixREV2xKwDLG7Mm9mWqt7ZCnPRzYBiQDW621lxTxeBuBf1lrPyiL44sURD1xCUjGmDpAM+BtoLUxpkKeh18EPsZZA2N1EY8XCbQDPiuL44sURiEugapn7p/TgBycbeAwxgwFLgaeAZoDa4p4vJHAEmvt8TI6vkiBFOISqKKAeGttHLAZ6JK7VOgU4K/8ugb0avjfriszznK8q3B61yU6vkhJaWcfCVQ9+bUXvB7oDDQC0oFXgYeAg9bahNzndM193u8YYxri7KX4x1IcH2PM+Tg7GNUGvgZettZml+ZNiv9TT1wCVRS/9oLX4QxxPAJMzA3OKH471NEFqGuM+cEYc8gYMzzPYyOANXkDubjHN8aMBO4H/o6zSW42zvrUImelEJeAk9tzbsRve8odgLnW2mW5bXlDGJye+Alr7SCcvTJvzPPYSPIMpZTw+A8AY6y1u621x621LwP7jTEXlOa9iv9TiEsg+uWk4y8h+zNQj9zNmI0x9XHGrNfk3g8B6gPP5j4/BDia+1gtYDC/HQ8v7vFrAInW2jRjzDBjzJLc71sCdCrlexU/pzFxCURRwB5r7TEAa20OkJTvcfg1hNsDm/KMT3cGNuXeHgbstNbuLMXxTwINjDEGWAxszG1vC8SW6B1KwNDFPiLnYIy5AehorX0o9/5snJOOPxpjPga2WGsfK+VrPAJUAf5qrc0xxvQBngOGWmszSvkWxI+pJy5ybl347cyUzvzaW14BzP/ddxTf0zgnNpc5HXL2AH9UgMu5qCcuIuLDdGJTRMSHKcRFRHyYQlxExIcpxEVEfJhCXETEhynERUR8mEJcRMSHKcRFRHzY/wP9r/z0TWLTpgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] diff --git a/docs/examples/example_pop_dusty.ipynb b/docs/examples/example_pop_dusty.ipynb index 81e30700f..601612518 100644 --- a/docs/examples/example_pop_dusty.ipynb +++ b/docs/examples/example_pop_dusty.ipynb @@ -182,7 +182,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 5, @@ -191,7 +191,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAETCAYAAAA/NdFSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA1eklEQVR4nO3deXhU5dn48e+dkIRFCLKFPYBCAAUXIopLRQUFq8W6VcS2KkIXfW3fVuuC/YntS3F9Wxd8LSriguDaulRrpTYugC2LyB5BwhKWhEXDErLfvz/OBCZhJpmZnJkzk7k/1zUXmWfOnLkhh/PMs92PqCrGGGOST4rXARhjjPGGVQDGGJOkrAIwxpgkZRWAMcYkKasAjDEmSVkFYIwxScoqAGOMSVJWARhjTJJq4XUAbhORNsCTQAWQp6pzPA7JGGPiUkK0AERklogUi8iqeuVjRCRfRDaIyJ2+4suB11V1EvC9mAdrjDEJIiEqAGA2MMa/QERSgRnAWGAwMF5EBgM9ga2+w6pjGKMxxiSUhKgAVPUTYG+94uHABlXdqKoVwDxgHFCIUwlAgvz9jDHGC4k8BtCDI9/0wbnxnw48BjwhIt8F3gn2ZhGZDEwGaNOmzbCBAwdGMVRjTFMsWbqU3GHDmnxMOMfFu6VLl+5W1c5NOUciVwASoExV9SBwQ2NvVtWZIrIDuLRbt27DlixZ4nqAxhiXiNDo/9FQjgnnuDgnIpubeo5E7iIpBHr5Pe8JbA/nBKr6jqpOzszMdDUwY4yJpvIqd4Y3E7kCWAz0F5G+IpIOXAO8Hc4JRORSEZlZUlISlQCNMcZty7d+y7kP5rlyroSoAERkLrAIyBGRQhGZqKpVwC3AB8Ba4FVVXR3Oea0FYIxJJG8uK+TqPy+iRWqgHvDwSTLvCCYilwKXHn/88ZPWr1/vdTjGmGBEoLF7VSjHhHNcHKmqruGBv6/j6U8LGNGvIzMmnErHYzKWqmpuU86bEC2AaLEWgDEemzrVuSFPnep1JHGrpLSSG2Yv5ulPC/jxiGxemDicDm3SXTm3tQCsBWCMt9z6dt8MWwAbivdz0/NL2PbtIX4/7kSuGd778GsiYi2AprAWgDEmXv1zbRGXzVjIgfJq5k0+o87N3y2JvA6gyfxaAF6HYowxAKgqT+Z9zcP/yOfE7pn8+YfD6N6+VVQ+K6krAFV9B3gnNzd3ktexGGOSV3lVNfk797OisIT5a4vIy9/FuJO788AVQ2mZlhq1z03qCsAYY2KtsrqGr4r2s7KwhBXbSlhZWMK6nfuorHbGJTq0Sefuiwcy6Zx+iLgz3TOYpK4ArAvIGBMLuw+U8/by7fxt5Q5WbiuhoqoGgLYtWzC0ZyYTz+7HST0zGdIzkx7tW0X9xl8rqWcB1crNzdXmkBvEmITUTGcBlVVW89G6Yt5YWkjeV7uorlFO6N6OM4/ryJCe7RnaI5Psjq0jvtm7MQsoqVsAxhjjJlVl2ZZveWNZIe9+uZ19ZVVktcvgpnP6cvkpPcnp2tbrEOuwCsAYY5po+7eHeH1pIW8uK2TTnlJapqUw5oSuXH5qT846vhOpKbHp0glXUlcANgZgjIlUVXUNH60rZt7ireTlF1OjcEa/Dvz8vOO5eEg3jsmI/9urjQFgYwDGeCrBxgC27i3llcVbeXXJVor3l9OlbQZX5/biB6f1oleH1hGfN1w2BmCMiV9Tp8J998G99yZ8rp+Kqhrmry1i7n+28NmG3QgwMqcL15zWi/MHdqFFamImVbAWANYCMCZqYvntPgotgLU79vHG0kL+8sU29hysoHtmS64+rRdX5/aK2urcUFkLwBhjXLZrfzlvLd/GG8u2sXbHPtJShfNyujB+eG++M6Bz3A7oRsIqAGNM0iurrOafa4t5Y1khH/vm7A/tmcl93zuBS0/q7lr65XiT1BWAzQIyJonMmQNTpjg/9+kD06ax5rxLeenfmw/P2e/ariWTzunHFaf2oH9WfM3ZjwYbA8DGAIyJmlj079fe2DdvhuxsmDYNJkw4+pjJk6G09HBReXpLbr/wZv5x8gWMPbEbl5/agzOPi985+/W5MQZgFQBWARgTNdGuAALc2GndGmbOrFsJ9OnjVBD1lHTpDgWbyGyd1vDnxyHbEMYY07zNmePcvMH5c86cuq9PmVL35g/O89quHh/dsiXg6TN37UjIm79brAIwxsSn2m/3td/cN292nvtXAkFu7LXl35ZW8MDf17G9XefAx/V2f5etRBLyILCI3B3B+WeoakkE74uYiPQDpgCZqnplLD/bmKThxiKvAIOydbptGvp2X3tc794Bu3aqe/bk0Q+/4rnPCjhQUUW3627lulnTSDl06MhBrVs7n5nMVDWkB1ADbAEKQnxUAf1CPb/vM2YBxcCqeuVjgHxgA3BniOd6PdTPHTZsmBpjwgSRH/PSS6qtWzuv1z5at3bKa4nUfb32IdLgecrSW+ovv3ebZt/xrt70/GJdu6PkyLHZ2c5x2dl1PysBAUs0jPtroEfIg8AiUgN0VdXiEI/fD5ykqhtD+gDnPd8BDgAvqOqJvrJU4CtgNFAILAbGA6nA9HqnuLE2PhF5XUNsAdggsDERaMrgbZBBWbKzYdOm0I8Byp5/kao77uKYom0UtuvME6NupO2NP+K6M7LJ7tgmsrgTQKxXAj8CHAzj+EeBb8IJRlU/EZE+9YqHAxtqKxIRmQeMU9XpwCXhnN8YEyca6bsHnO6ZQDN8fN0264v28+Lnm3lzYxcOXP9nNj1wCQvnL+Xek7rTKj16++g2JyEPAqvq7aoacgWgqveoalgVQBA9gK1+zwt9ZQGJSEcReQo4RUTuauC4ySKyRESW7Nq1y4UwjTGHNTZ7J9jgq3/5hAnOdM7sbOd5djY6cyZ5uaO59unPGf3HT5j3n62MHpzFmz8/E4CrT+tlN/8wNNoCEGe/sqsABV4HzgfGAWuBP6tqTVQjhECrMoK231R1D/DTxk6qqjNFZAdwaXp6+rAmxGeM8Vd/bn7t7B04MnjbyLf7wyZMcB4ivPXXBTz18UbWPreYru1acvtFOfzgtF50OiYj+n+nZiqUFsAM4ErgR8CLODfXJcBInG6haCsEevk97wlsd+PEqvqOqk7OzMx043TGGAhtbn6Ab/dHLd4CDlVU8/zCTQD8Yt5yKqqqefDKoXzym/O4+bzj7ebfRI0OAovIClUdKiJpwE6gu6qWi0gLYJmqDnU1IGcM4F2/QeAWOIPAFwDbcAaBr1XV1S58Vm0uoEnr169v6umMSS7BBlNTUgKXi0BNgA6DAOf55mAFLyzazPOLNrH3YAWbHriEf6zawahBWaQES9UQZ5vCR1usVgJXAahqJc4Nv9z3vApnaqhrRGQusAjIEZFCEZno+5xbgA9wup1edePmD9YCMCagqVOdm2Sw+f1u9O8HsedAOb9/dw1nPfARf5z/Faf0as+rPxkBwIUndA1+8zcRCaUF8E+cWTcH6pV3wfmmPjyK8UWVtQCMCaIpuXdCzc/j91llFVXMWlDAk//6mkOV1Yw7uTs/+c5x5HRt23A8ocQc6XFxztNkcCLSFme1bWFTAogHtg7AmHqaMn8fQsvQCdTUKCmpKZw1/Z9s+/YQowZlcdfFAzmu8zGhxRPuMeEcF+c8TQanqvsT/eYvIpeKyMySkphmqzAmcYUyfx+cm/311zs/X399wJv/fwr28solEwH4+ccv8vKk03nmx7lH3/xN1ITdAhCRcar6VpTi8YS1AIypp6ktgAYU7D7I/e+v5YPVRYenc37/lB4N9+9bC+AoXrUA6qdfSFjWAjCmnsYGeKdNc/rz/YWQVG3PgXIWbNjN1LdXM/p/P+bT9bv59egB/Ou2kVwxrGfDN//awehIk86ZoCJpAaxV1UFRiscT1gIwhtAHb+fMgZtvhpISyMyEGTMOv15ZXcPGXQdZu2Mfa3fuY+2O/azbsY/i/eUApAj84LRe/PfoAXRp29Ld+K0FEP45IqgA1qjq4KZ8aLyxCsAYmtS98+ayQp75tIANxQeoqHZmh6enptA/6xgGdm3HoG5tGdStHYO6tYveButWAYTNNoW3TeGNcYQ6wOvnYHkVv31rFW8u28aQHpnceHbfwzf7vp3akJZqe07Fs6SuAFT1HeCd3NzcSV7HYozngmyuEmwB15rt+7hl7jI27T7IL0f157/O7+/dhur+4wQ2VhCySKrn/a5HYYzxXogDvKrKS59v5rInF3CgrIo5N53BL0cN8O7mD85NX9Vu/mEKuwJQ1dOjEYgxpgkaS98QCv8EbSIBE7TtK6vklpe/4J6/rmJEv46894tzGHFcxyaHb7wR8Urg5sBSQZhmpbHBzSbu4/vl1m+5Ze4ytn9bxu0X5TD5nH6JmZvHBoGPnCOSCkBEXgWWq+of6pXfCZyiqj9oSlCxZrOATLPg5mIpP6rKs58V8MDf19GlbUseG38Kw7KPbUKgHrMK4LBIB4HPBf4QoPx94BeRh2OMiRffHKzg7S+389rSrazato8LB2fx0JUnkdk6zevQjEsirQAycTZvr68USOCvBsYkt8rqGv61rpg3lhXy0bpiKquVwd3a8cAVQ7g6txfOBoEJzGYL1RFpBfA1MBrYUK98NFDQpIiMMTGlqqzevo83lhXy9vLt7DlYQadjMvjxiD5cMawng7q18zpE99iNv45IK4AngQdEpCXwIc4evRcBU4EpDbzPGBOuxgZva1Mvg7OaN0jq5fpKSit5fVkhry3Zyrqd+0lPTWHU4C5cOawn3+nfmRa2iKvZa8p+APcBtwMZOBu3lwGPqOpv3QsvumwWkEkYTdmgpd551mwr4cXPN/GXL7ZRVlnDSb3ac+Wwnlw6tBvtW0cpTYNxnacbwvgCaA2c4Hu6RlUPNiUYr9gsIBP3mpieuerFl6i4405a79hGYbvO/PH860m77jp+OCKbE7rblqiJKB5yASlwyPezq/sDG2NC0Ej+nh0lh1g2fQbn/+89tK50MnL23LeLhz+YgVx5EnQfGqtITRyKqJNPRDJE5E/AXuBLYAWwV0Qe9Y0LGGNioLpDj4DlVR2688t5X3D2A//ipP97kFa+m38tOVR6ZNzAJK1IR3meAMYDtwJDfI9bgauBx90JzRjTmK+ZSDUZdcqqyWD5oet5Z8UObjq7Lz327w785gayfJrkEGkFcDVwo6o+raprVHW1qj4N3OR7zTMicpmIPC0ib4nIhV7GYkyjGsvh08gOXdv3jiSf2ygjC0UoI4t8bmN/6QXMvuE07rp4EBIkm2ewLJ8meUSaCmIXcLaq5tcrHwh8pqqdIgpGZBZwCVCsqif6lY8BHgVSgWdU9f4QznUs8LCqTmzsWBsENp5qwgyfRX0WUb65/Ki3pvZM55ytZ4Z8HpN4vNoTGOAZ4FfityzQ9/OtwLNNiGc2MMa/QERSgRnAWGAwMF5EBovIEBF5t96ji99b7/G9z5jENGVK3Zs2OM/9+u77TetHSuu6/42lVQoD7j/uSIF/lk8ImOXTJKdIWwDPAlcCe4D/+IpPAzoCr+M3I0hVJ4d57j7Au7UtABEZAUxV1Yt8z+/ynTfg5vS+iuh+4ENVnR/KZ1oLwHgqWAsgJSVwuQjUOP/Fqqpr+L/bltJt1n467UshvXcGx/2hH1kTssL7LJNwvJwG2g9Y5vu59krb4nv4ffXAjSutB7DV73kh0NCeBP8FjAIyReR4VX0q0EEiMhmYDNDb+kJNPGpkh679ZZXc/PIXfJKxi5/OO45OF+/kzM0jYhykSWQRVQCqep7bgTQgUPapoBWLqj4GPNbYSVV1JjATnBZAxNEZEy3TpgXuu582jW3fHmLi7MWsLz7A9MuHcMZ71WwGCqYW0HdqX89CNoklEZJ9FAK9/J73BLa7cWIRuVREZpaUlLhxOmPC08gMn8N995nOSl3NzCT/948wte3JXPr4Z2z75hDP3zCc8cN703dqX0bqyIZv/v6ZMI0hzDEAEakI5ThVjTihSIAxgBbAV8AFwDZgMXCtqq6O9DP8PstyARlvzJlDzY2TSKk4dLioJr0VKbOerjM4e6C8io/zd/Hhmp18tK6YfWVVZLRI4TsDOnP7RTkMyGrrRfQmDsQ8F5CI1ACbgOdw+vsDUtXnIwpGZC4wEugEFAH3quqzInIx8CecaaCzVHVa0JNEwAaBjetqM3Ru2eL02dfL0FndqRepewqPetumrCz6zpt3+HlqudLzX6Uc2zqNCwZlMXpwFuf070Tr9KZmcTGJzosKYBzOwOloYD5OH/o7qlrdlCC8Yi0AExUhzLtXSUECDGXViJD60Ud1yj7vPYRh2cdaemZTR8zXAajqW6r6XZyZPotx0j5sFZFpIpJwI0+q+o6qTs7MtGyIxkUhzN8vpwuBbOlydPnp/Trazd9ERURXlapuVdV7gWzgJ8B3gPUi0t7F2KLOBoFNVDSQobOiqob5a4pYe8xNR+XwOZiRwd033RSDAI1xNPVrxTnANUAusBBnU5iEYS0AExVB1pUc6tqd06bN56YXlvDEhSNZm3okh8+mrCwm3XYbc0eNinGwJpmFPZIkIp2B64FJQAfgReAUVV3nbmjR5zcG4HUopjkJMH+/plUr7hl+LdkdW/PfowZwdv9O7J03hMU3X0R1STXnzWvgfMZESVgtABF5DWdV7ndx9v/toar/nYg3f7AWgImSevP3a9q1Y+olv+TVK8fyzolVfJxxkLTUFLImZHHOt+cwUkeSlZYW8FTByo1xQyTTQLfgzMsPSlUTKg2zTQM1YZkzB26+GUpKnJv8jBlBE6uVVVbTPu9TygPcx7PS0th51llRDtY0V17kAnoBd/L7xAXrAjJhqz/Fs6TEeQ5HVQKqyt1vrqQ8SF62osrKKAZqTOOatCl8c2EtABOyEDdhB/jzx18z/f11bB7TJujpdORIV8MzycPL/QCMSU6NbMJe66N1Rdz/93V8d0i3GARlTGQi3RT+VRG5O0D5nSLyStPDMiZOhbC94vqi/dw6dzmDu7Xj4atOilFgxoQv0hbAucB7Acrfx1kUlhBsIZgJ27RpTloHPwczMrj2uuuQvDwkL48Ba5eSf1Y6T/8ol1bpqR4FakzjIq0AMoEDAcpLgWMjDye2bBqoCVu97RWDLeCqShe6t28FBJ/KaVM8jdciTSn4NU5CuA31ykcDBU2KyJg4UztR4vAW2BMmwPr1cN99dTJ3BmNTPU28irQCeBJ4QERaAh/iTA29CGdx2JQG3mdMfJs6Fe67D+69F6ZOpaZGmfziEuavLSajRQot01KdP1ufS8YjeTSjWdEmCUW6JeQMEekCTAMe9hWXA4+o6uNuBWdMTM2ZA7NnOz/Png39+/NK/3OYv7aYq4b1pEObdMoqqymvqjn853z2exmxMU0S8a4SqnqviDwAnOArWqOqB90Jy5gYq7/Aa/NmdNJklo+9hTMuuowHrxx6pAvIz1N5ebGN0xgXNWlbIVUtxdkXICHZSmBzWIAc/nKolFvnP8eh//ttwJs/OAO5gVb02gCvSQS2EhhbCWyAlBQI8H9BRZCaGg8CMqZhthLYGLcEWeClvXrFOBBjYscqAJOUiuYUsajPIvJS8ljUZxElF//mqAVe1S1bkfKHPxz1vk/bf0qe5PFp+08pmlMUy7CNcZVVACbpFM0pIn9yPuWby0GhfHM5Xz5/IiU/fojKns43/r2dupH6zNN1MnzWvq+6pBqA6pJq8ifnWyVgElazqwBEZJCIPCUir4vIz7yOx8SfjVM2UlNat1+/prSGNX87hevucVJZ1RQUHJXeOdj7Nk7ZGN2AjYmSJlUAIjLJrUB855slIsUisqpe+RgRyReRDSJyZ0PnUNW1qvpT4GqcvYpNMpg6FUScPxtRvqU8YHnZ1nL+XbAXgE7HZBz1erD3BSs3Jt41tQXwW1eiOGI2MMa/QERSgRnAWGAwMF5EBovIEBF5t96ji+893wM+A/7pcnwmXtXe+EOoADJ6H31zB/imnfLgyjeDnifY+4KVGxPvGq0ARGRFkMdKIMheR5FR1U+AvfWKhwMbVHWjqlYA84BxqrpSVS+p9yj2nedtVT0TCLxPn2le5sxxNmoB5885cwIf52sl9Bv2BSmt6176VenwxrkVnDzrT8500AAVQL9p/Y56X0rrFPpN69fUv4ExnghlIVgWTp6fb+qVC7DQ9YiO1gNnI/pahcDpwQ4WkZHA5UAGgVNW1x43GZgM0DtYjncT/wKs4GXyZKpqlMe6DqdL2wxGHNeRfp3aIL48P1lv/BzmFLFxykan+6ZbGs+cup9TftaHAVltD5+664IFdRd59QD+Bh1K4I3LICM7g37T+pE1wdXvQcbETCgVwPtAW1VdXv8FEfnM9YiOFmgJZtDVa6qaB+Q1dlJVnQnMBGchWISxGa8FWMFLaSkHb7uDx26Yebioc9sMzujXkceBjbsO0PfaLmRNyKK8qpqxj35KZXU6z53fv85pgu3Zu9eXPbzr9V3t5m8SWqMVgKpe38BrV7saTWCFgP9qnJ7AdjdObKkgmoEgWzS2K97Bcw+2oUWPdHZPymT/jr8y+qHHAEg/vh//76KJ7Lv8alRh466DzL7htLA2bxmpI92I3hhPhZ0LSETGqepb0QgmiMVAfxHpC2wDrgGujeHnm3jWu3fATdrL6YIoVBdWMPB/5pEjj5BScQiAnvt2cc9bf+J3CnOOO5tLT+rOyJwusY7cGM9FMgtouutR+IjIXGARkCMihSIyUVWrgFuAD4C1wKuqutqNz7MdwZqBAFs0VpPBRm46/Lxv5dOHb/61MirKmPTpc2we04YnupUc3s6x64IFMQnbmHgQSTbQwGkRXaCq44OUv0cDA7qRsi6gZqB2sdaUKbB5M4foQgGTKObIFo0ZFAd8a+/io8uD9fsb0xxF0gJoNgOm1gJoJiZMYNvytQB8eOwrdW7+4HQHBbKlS8PdPraXr2numrQfQKKzFkDzUFOj/PrV5cwD+k3vy95fba6TsqEgbVKdMQCAgxkZ3H3TTQHOdoTt5Wuau2aXCygc1gJoHp75bCOfb3TWD574k2xyZuaQkZ0B4szV7/DcLaTMehqys503ZGcz6bbbmDtqVANnNab5i6QF0Gw2QbUWQOJbs30fD32QzxP5volpU6eSNXVqgPn5E5zxAhHYtIm5tpWjMeFXAKoadBVuolHVd4B3cnNzXU1qZ2KjrLKaX77yBce2Tuesl56ANs7Cr6NW8PpkpaWx0+9n28rRJLukHgMwie3+99fxVdEBXrhxOMe2ST9cHmwmj3+59e8bk+RjACZxffzVLmYv3MQNZ/XhOwM6ex2OMQkpohaAiKwn8HRQBcqAr4CnVfUfTYgt6mwMIEH4krhx770U9f8Z6+/8mprCch49tg2nDu7gdXTGJKxIWwCvAV2APcC7vsduX9lHQAfgfd8NNm7ZLKAE4UvNXNT/Z6y9aR1VhRUIQuY3UPCz9bYlozERirQCyASeVNURqvor3+NMnI1b0lT1AuBh4B63AjXmy199BWV1G562JaMxkYu0ArgGeC5A+fMcSdT2IjAwwvPHhIhcKiIzS0pKvA7FNKDkkDN4m1ZcFfD1+lsyBl3BW1Hh/BDCrmHGJINIZwGlAgOA9fXKB3CkUikHaohjNg00/q3dsY+fvrSUj4GqrBakFVUfdUz9LRkbnOGjzSaTiTFNFmkL4FXgGRG5XkQGichAEbkBZ4OVeb5jRgDr3AjSJKc3lxXy/ScXUFbp3PSHPjLAtmQ0xkWRtgBuxZnt8xSQhpMhtAL4M3CH75hlQMPJVowJoLyqmt+/u4aXPt/Cr3ct5ucfOr2NFb8+iaf++6Z6KRxqyErbwE53t6c2JilEVAGoahlwq4jcCdTOodygqqV+x6xyIT6TZIr3lTHpxaV8ufVbHq1ew/fmPYT4tnzsVVTE0w8/DFCnErAUzsZEJuKVwCJyLDAGyAbSfWUAqOrv3AjOJJdtL+5g6S/y+eU3inbL5NyKxw7f/Gu1KS/nD888Y4ncjHFBpAvBTgP+jtP10w7YhbMGoBTYASREBWALweJH0Zwi1k3Kp105gCA7qkhhW8BjA23kYowJX6SDwA8BbwCdgEPAWTgtgS84MgYQ92whWPxYc/t6UuvO5ox4IxdjTGgirQBOBv6oqjU4Uz3TVbUQ5+b/B5diM0li695S2HF0P/5GbqKaulM8Q9nIxRgTmkgrgGqcWT8AxUAv38+7cVoCxoSkvKqaW15exjcBGmHFjOLrjnce3shla1ZWwI1cLIWzMZGJdBB4BU4r4Gvgc+BuEUkBJgH57oRmksH099bxZWEJx9x1PCm/K6qzlWNK6xQyH/0ZTJgKIvTauZOXgZc9i9aY5iXSFsA0nFYAwG9xBoDfB87BWSPgKRFpIyJLReQSr2Mxwb23cgezF25i4tl9ufCOnKO2csyZmRNgZy9jjFsiXQcw3+/nTcAJItIB+EY18rX2IjILuAQoVtUT/crHAI/ipKB4RlXvb+RUd+CsVjZxatPug/zm9RWc3Ks9d4xxUkZlTciyG74xMeTajmCquteF08wGngBeqC0QkVScLKOjgUJgsYi8jVMZTK/3/huBocAaoKUL8ZgoKKus5udzltEiVZgx4VTSW9i+RMZ4oSkLwS4CLsDp/qnzP1hVfxTJOVX1ExHpU694OM4q442+z50HjFPV6TithfpxnQe0AQYDh0TkPd9sJRMnfvfuGtbs2Mes63Pp0b6V1+EYk7QiXQj2P8DdOIPBOwm8O5hbegBb/Z4XAkE3plfVKb4Yrwd2B7v5i8hkYDJA79693YrVNOKt5dt4+d9b+Om5x3H+QOvuMcZLkbYAJgPXq+oLjR7ZdBKgrNEKR1VnN/L6TJzspeTm5lqO4BjYUHyAu95cyWl9juW2Cwd4HY4xSS/SCqAGWOhmIA0o5Mg6A4CewHY3TmypIGJHVbn7zZVktEjh8fGn0iK1br9/1wULAiZ1y0pLazi/vzEmYpGOvj1J7FI9Lwb6i0hfEUnH2Y3s7Rh9tnHJh2uK+M+mvfz6why6Zh49Ph8so6dl+jQmeiJtAfweeFdEvsQZB6jzv1RVb4zkpCIyFxgJdBKRQuBeVX1WRG4BPsCZ+TNLVVdHGHcdtiNYbFRW13D/39fRr3MbrjmtV+NvMMbERKQVwO+AsTjTLbvh0iCwqo4PUv4e8J4bn+HPuoBi45XFW9m46yAzfzjsqK4fY4x3Iq0AbgFubGygNd5ZCyD6DpRX8af5X3FtcTtanbWevJJ1pGamMmDGAFv0ZYzHIv06VgF85mYgXhCRS0VkZklJidehNFszP9nI8f+u5sJ5NVSXONlDqkuqyZ+cT9GcIo+jMya5RVoBzAQmuhmIF2w/gOgq2lfG059s5Ieft4JDdXsJa0pr2Dhl4+HnwTJ6WqZPY6In0i6gbsAVvtXAX3L0IPDkpgZmEt+f5n9FVU0NbfYEHiIq33JkBxib6mlM7EVaARwHLPf93KfeawmzqMoGgaPnq6L9vLJ4Kz8+sw8ZvfdRvrn8qGMyemcEeKcxJlYizQZ6ntuBeMEGgaPn/vfX0SajBbee35+Kad+QPzn/qFz//ab18zBCY4xr2UCNqbXw6918tK6YO8YM5Ng26XTts4Giv9VPyVRDVtoGdmIzgYzxSsiDwCJysYiEPCInIheKSFynZLZZQO6rqVGmv7eO7pktueGsPoCt8jUmXoUzC+gdoH0Yx78OdA8rmhizWUDue2fFdlZuK+G2i3JomZbqdTjGmAaE0wUkwP+KyKEQj7cRviRTXlXNQx/kM7hbOy47uYfX4RhjGhFOBfAJTibOUC0EQq0sPGGzgNz1wsLNFH5ziJcmDiUlJVAWb2NMPAm5AlDVkVGMwxM2C8g935ZW8PhH6/nOgM6c3b+T1+EYY0JgmbmMK57M+5r95VXcNXbgUa/ZKl9j4pNNAzVNtq+skpc+38y4k7ozqFu7o16vXeU7taCA+zZv5t7sbKb27RvrMI0x9VgFYJrs1cVbKa2oZuLZDS/smtq3r934jYkj1gVkmqS6Rnlh0WZ+vrIte3p9QcHUAq9DMsaEKKkrAFsI1nT/WlfMlr2lDJ7uzKTqO9W+4RuTKCKuAEQkR0TGisjlInKOiBzjZmCxYAvBmm72wk2M2diKjpduBmBRn0WW59+YBBHWGICI9AF+DlwHZOEsDqtVJSKfAU8Br6lqwmQFNZH5qmg/VW99w9UftqK83Mn2Wb65nPzJ+QC245cxcS6cXEAPAauAHOBu4EQgE2fFbzfgYpzFX/cDy0XkVNejNXFl9sJNXPVJOinlDW/2YoyJT+G0ANoCA1R1e4DXinyP+cA9InIVMAhY1vQQTTwqKa3kzWWFjN7fKuDr/pu9GGPiUzgrgX8axrGvRRZO04nISOD3wGpgnqrmeRVLc/bKki2UVdaQ2j2Nmm1HZ/W0zV6MiX9xNQtIRGaJSLGIrKpXPkZE8kVkg4jc2chpFDgAtAQKoxVrMquqruH5hZs5vW8Hch44npTWdS8j2+zFmMTQ5ApARGb7cv+7UZnMBsbUO38qMAMYCwwGxovIYBEZIiLv1nt0AT5V1bHAHcB9LsRk6pm/tpht3x7ihrP6kDUhi5yZOWRkZ1AjkJGdQc7MHBsANiYBuLES+DPgN8BsEXkTeFlVF0ZyIlX9xDfTyN9wYIOqbgQQkXnAOFWdDlzSwOm+wVJSR8XshQX0aN+KUYOy6LpgAUU9Kp2qG4ByYC1ZCzbYRu/GxLkmf2tX1WdUdRRwCpAPPCwiG0VkuogMbXKE0APY6ve80FcWkG9dwp+BF4EnGjhusogsEZElu3btciHM5LB2xz4+37iXH43IpkVqiu32ZUwCc20MQFWLVPVxVT0TGIfTlfOFC6cOlFg+6BoDVX1TVX+iqj9oaABYVWeqaq6q5nbu3NmFMJPD7AWbaJmWwg9O6+V1KMaYJnKtAhCRDBG5QkRex5kOugr4rgunLgT87zY9gUBTUcNmqSDCs/dgBX9dvo3vn9KT9q3TvQ7HGNNETR4DEJGxwLU4g7SfAXOBH6qqW7uBLQb6i0hfYBtwje/zTIzNW7yF8qqaw5u9G2MSmxstgN8AHwPHq+plqvpKpDd/EZkLLAJyRKRQRCaqahVwC/ABsBZ4VVVXuxC35QIKQ1V1DS8u2sxZx3dkQFZbr8MxxrjAjVlAeUB34FYRAad/fjfwsaquCedEqjo+SPl7wHtNC/Notidw6D5YXcSOkjJ+N+7EOuVZaWkBB3xtty9j4p8bFcCBAGU9gVdE5BFVne3CZ0SF7QkcutkLC+jVoRXnD+xSp9x/qqfk5aEjR8Y4MmNMpJpcAajqI4HKReRBnNbB7KZ+RrRYCyA0q7aVsHjTN9zz3UGkpgSalGWMSURRSwWhqnE/tcbGAEIze+EmWqenclWuTf00pjmJWgUgIqOBvdE6v4mNsspq3vlyO5ed0oPMVsH79acWFNT50xgT/9yYBrqSoxdmdcSZsvmjpp4/mqwLqHGLNu6hvKqGi07o2uBxtuG7MYnHjUHg+vl4FNijqgddOHdU2SBw4z7O30XLtBRO79vB61CMMS4Ld0vIXcASnMVZS4DFqro5GoGZ+JCXX8yIfh1pmZbqdSjGGJeF2wLoiJOSeQBwD6AispO6lcISVd3tapRRYl1ADSvYfZCT36rksgWlFGwuoO9U6+IxpjkJdxD4TqA98AnOlo9jcHL1VwGTcBZrFbkYX1TZLKCG5eUX89eznUVedvM3pvkJqwJQ1QdxbvytcVI29Aemq+oVqpoNZNFwjn6TQPLyd9G3UxuvwzDGREnY00BVdbuq/gC4GvgvYKmInOF7bZeqvu9yjMYDZZXVfL5xDyNzLFW2Mc1VxOsAVHU+MBR4DfiHiDwrIm7MKooZSwcdXO30z5E5XRo/2BiTkCKqAEQkTUROAsbjDAxvBq4H2rkXWvTZGEBwNv3TmOYvrApARF7yLfw6APwbuBXIBJ4EzlJVW/nbTOTlF3NtUTu+6P8fABb1WUTRnIQZ3zfGhCDcLptrgQLgPuB5Vd3mfkjGawW7D9L1k3LO/jCF8nJnkXf55nLyJ+cDkDUhy8vwjDEuCbcL6A2cPXr/B9giIptF5A0RuVNERolIe9cjNDGXl1/MlZ+kk1JeN8NHTWkNG6ds9CgqY4zbwp0GepWq9gM64ez3OxNIxdmx6x/AHhFZ73qUUWKDwIHl5e+i477Al0b5lvIYR2OMiZaIBoFVda+q/l1Vp/m2geyJsyvY94GXXY0wimwQ+Gi10z/LOwe+NDJ6Z8Q4ImNMtLiWDlpVd6rq26p6r1vnNLFXO/2z5R3dSGld9/JIaZ1Cv2n9PIrMGOO2kCsAERkWxrEtRWRQZCEZL9VO/zzj1n7kzMwhI9v5xp+RnUHOzBwbADamGQmnBfCWiPxFRC4SkYDvE5EeInIXsB44K9AxJr75Z//MmpDFiE0jABixaYTd/I1pZsKZBpqDkwzuJaCliHyBs+lLGdABOAHoi7MP8HhV/czdUEPjq5x+j7MobYmqPu9FHImoYPdBNu0p5YazLPGbMckg5BaAqh5U1d8CPYEf4qR+bgl0A/bhZAU9QVUviPTmLyKzRKRYRFbVKx8jIvkiskFE7mzkNOOAHkAlUBhJHMkqL78YwPL/GJMkws7do6rlwF99D7fNBp4AXqgtEJFUnMplNM4NfbGIvI0z/XR6vfffiNNSWaSqfxaR14F/RiHOZqk2+2d2R8sAakwyiCh5m4ikA3cA5wIVOPsDzFPVTU0JRlU/EZE+9YqHAxtUdaPvs+cB41R1OgFST4tIoS8mgOqmxJNMaqd/jh/e2+tQjDExEuk00KdxxgP2+x43Afki8kuX4vLXA9jq97zQVxbMm8BFIvI4TsUUkIhMFpElIrJk165d7kSawI5k/7TuH2OSRcgtABF5FvgC+BK4HLhKVd/ze30s8JyI7FPVWS7GKAHKNECZ84JqKTCxsZOq6kyclczk5uYGPV+yODz9s19Hr0MxxsRIOC2ANjgpH/6FsyPYn0Rkjoj8SkTOBRYAPwF+43KMhUAvv+c9ge1unNhSQRxhm78bk3zCmQV0jaoOxJleeQh4C6eP/UZgPvAN8BhwnIjc7lsv0M2FGBcD/UWkr2/s4RrgbRfOa3xqp3/a5i/GJJdItoQsxbnhp6vqj1T1RJxK4RzgWZzZOdfiVBBhTcMUkbk4ew3niEihiExU1SqclscHwFrgVVVdHW7cQf4ulgsIm/5pTLKKdAvH24DPROQ4nCmatYvC+gCbVPUU3/aQA8M5qaqOD1L+HvBeoNeaQkQuBS49/vjj3T51QrHpn8Ykp0izgW4ATsVZbPVXnJv/RpwtIm/zHVOlqquCnSMeWAvgyPTPcwfYt39jkk3Em7ir6nbg+75NYM4AMoB/q+pOl2KLOmsB2PRPY5JZk9NBq+q3vr0B3kqkmz9YCwCc6Z8ZLWz6pzHJyLX9AExiyssv5szjbPqnMckoqSuAZF8HUPhNKZv2lPId6/83JikldQWQ7F1AKwudiu/U3sd6HIkxxgtJXQEkuxXbSkhLFQZ2a+t1KMYYDyR1BZDsXUArC0sYkNWWjBbW/29MMkrqCiCZu4BUlRWF3zK0Z/L93Y0xjqSuAJLZlr2l7CurYkiP9l6HYozxiFUASWqFbwDYWgDGJK+krgCSeQxg1bYS0lNTGJBlA8DGJKukrgCSeQxgRWEJg7q1Jb1FUl8CxiQ1+9+fhGpqlFXbShhi3T/GJDWrAJLQpj0H2V9exVAbADYmqVkFkIRWbnPGPKwFYExyS+oKIFkHgVcUlpDRIoX+XY7xOhRjjIeSugJI1kHglYUlDO7ejhapSf3rNybp2R0gyVTXKKu3lzC0R3JVesaYo1kFkGQKdh/gYEU1Q3q29zoUY4zHrAJIMrYC2BhTK+I9geOViJwDTMD5uw1W1TM9DimurCgsoVVaKsd1tgFgY5JdXLUARGSWiBSLyKp65WNEJF9ENojInQ2dQ1U/VdWfAu8Cz0cz3kS0clsJJ/ZoR2qKeB2KMcZjcVUBALOBMf4FIpIKzADGAoOB8SIyWESGiMi79R5d/N56LTA3VoEngqrqGlZvL7EMoMYYIM66gFT1ExHpU694OLBBVTcCiMg8YJyqTgcuCXQeEekNlKjqvmjGm2g27DpAWWUNQ3q28zoUY0wciKsKIIgewFa/54XA6Y28ZyLwXEMHiMhkYLLv6QERyW/knJ2A3Y0cE4pMwI2VZxHHc/kDRxU1HlNoPUbR/TeSiLqtms3vLYB4i8mteCD+YorH31tOk8+gqnH1APoAq/yeXwU84/f8h8DjHsS1xKXzzIyneOIxJrfiiceY7PeWmDE1199bvI0BBFII9PJ73hPY7lEsbnjH6wACiLeY4i0esJhCEW/xgMXUoESoABYD/UWkr4ikA9cAb3scU8RUNW5++bXiLaZ4iwcsplDEWzxgMTUmrioAEZkLLAJyRKRQRCaqahVwC/ABsBZ4VVVXexDeTA8+syHxFg9YTKGIt3jAYgpFvMUDLsQkvr4kY4wxSSauWgDGGGNixyoAY4xJUlYBNEBEHhKRdSKyQkT+IiLt/V4bKiKLRGS1iKwUkZZex+R7vbeIHBCR22IRT0MxichoEVnq+/dZKiLnexmP77W7fClF8kXkoljE4/vcq3zXSo2I5PqVp4nI875/o7UicpeX8fhe8+raDhqT73Uvru1gvzevru2Gfm/hX9tuzW1tjg/gQqCF7+cHgAd8P7cAVgAn+Z53BFK9jMnv9TeA14Db4uDf6RSgu+/nE4FtHsczGPgSyAD6Al/H8Pc2CGfhTh6Q61d+LTDP93NrYBPQx8N4vLy2A8bk97oX13awfyevru1g8UR0bVsLoAGq+g91ZiEBfI6zBgGcG8wKVf3Sd9weVa32OCZE5DJgIxDTWVLBYlLVL1S1ds3GaqCliGR4FQ8wDudmW66qBcAGnFQjUaeqa1U10GpzBdqISAugFVABRD2FSQPxeHltB4vJy2s7YEweXtvB/o0iuratAgjdjcD7vp8HACoiH4jIMhH5jdcxiUgb4A7gPo9iqeX/7+TvCuALVS33MJ5AaUV6xDie+l4HDgI7gC3Aw6q618N44uXaPiyOru1gvLq2/UV0bSdCLqCoEpH5QNcAL01R1bd8x0wBqoA5vtdaAGcDpwGlwD9FZKmq/tPDmO4D/qiqBySynDnRiKn2vSfgdMVc6HE8gf5hXJsHHUpMAQwHqoHuwLHApyIyX33JDz2Ix/NrOwDPr+0G3uvJtR3obQHKGr22k74CUNVRDb0uIj/GyTp6gfo623Bq149VdbfvmPeAUwFX/pNEGNPpwJUi8iDQHqgRkTJVfcLDmBCRnsBfgB+p6tduxNKEeKKaVqSxmIK4Fvi7qlYCxSKyAMjF6e7wIh5Pr+0gPL22g/Hq2g4iomvbuoAaICJjcJqe31PVUr+XPgCGikhrX9/tucAaL2NS1XNUtY+q9gH+BPzBrf8gkcbkm33zN+AuVV0Qi1gaigcnhcg1IpIhIn2B/sB/YhVXEFuA88XRBjgDWOdhPJ5d28F4eW0H49W13YDIru1YjFwn6gNnIGUrsNz3eMrvtetwBn9WAQ/GQ0x+x0wltjMlAsYE3IPTv73c79HF49/bFJwZEvnA2Bj+G30f51taOVAEfOArPwZnZstqnBvt7V7G43vNq2s7aEx+x8T62g72e/Pq2m7o9xb2tW2pIIwxJklZF5AxxiQpqwCMMSZJWQVgjDFJyioAY4xJUlYBGGNMkrIKwBhjkpRVAMaEQUReExEVkZcDvPYb32t7vIjNmHDZOgBjwiAiBb4fS1X1BL/yHjh7VpcAa1Q1ZnsNGBMpawEYEyIR6Qj0AZ4FBtRL//tHnLwwlcDi2EdnTPisAjAmdKf5/nweqMHZhAMRGYWTDfJ+nM04lngSnTFhsgrAmNDlAoWquhUnT85JIpIOPAH8liPZGBeLSB8RWeX/ZhG5TUSmikieiHy33muTROSFGPwdjDnMKgBjQncaR77dfwEMBW4DyoAncSqInaq6rZHzvAyMr1d2DTDXvVCNaZxVAMaELpcj/fvLcLp97gZuVmfbxFxC6/55DRgrIq0ARKQrcALwoesRG9MAqwCMCYGIdMPZtcu/BXAC8LoeyQfvX0EEparfAAtwNqwBuBp4U4/sY2xMTFgFYExoageAayuAfwOdgckAItIFZwyg9vVg86try/27gcb7nhsTU1YBGBOaXKBAfRu2q2qNqu5W1Qq/1+FIBbAH6FDvHB2A3b6f3wbOEZGhQDecFoExMWULwYyJEhFZAtytqv8QkUycm/w1qrrK9/pLwIk4uzrd4WGoJklZBWBMlIjIYJwpoh0AAR5T1Wf9Xh8LvAecoqrLPQnSJDWrAIwxJknZGIAxxiQpqwCMMSZJWQVgjDFJyioAY4xJUlYBGGNMkrIKwBhjkpRVAMYYk6SsAjDGmCRlFYAxxiSp/w+oOhETg8nYSgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] @@ -208,8 +208,8 @@ "ax = obslf.PlotLF(z=6, round_z=0.2)\n", "\n", "# Now, the predicted/calibrated UVLF\n", - "mags = np.arange(-25, -5, 0.1)\n", - "phi = pop.LuminosityFunction(6, mags)\n", + "mags = np.arange(-30, 10, 0.5)\n", + "_mags, phi = pop.LuminosityFunction(6, mags)\n", "\n", "ax.semilogy(mags, phi)" ] @@ -219,132 +219,36 @@ "id": "113f0bb2", "metadata": {}, "source": [ - "The main difference between these models and the simpler models (from, e.g., the ``mirocha2017`` parameter bundle) is access to UV colours. The following high-level routine will make a plot like Figure 4 from the paper:" + "The main difference between these models and the simpler models (from, e.g., the ``mirocha2017`` parameter bundle) is access to UV colours. To access them, you can do, e.g., " ] }, { "cell_type": "code", "execution_count": 6, - "id": "45e3a2f0", + "id": "fdf5f4b1", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "/Users/jordanmirocha/Dropbox/work/soft/miniconda3/lib/python3.7/site-packages/numpy/ma/core.py:2826: UserWarning: Warning: converting a masked element to nan.\n", - " order=order, subok=True, ndmin=ndmin)\n", - "/Users/jordanmirocha/Dropbox/work/soft/miniconda3/lib/python3.7/site-packages/numpy/core/_asarray.py:171: UserWarning: Warning: converting a masked element to nan.\n", - " return array(a, dtype, copy=False, order=order, subok=True)\n", - "/Users/jordanmirocha/Dropbox/work/soft/miniconda3/lib/python3.7/site-packages/numpy/core/_asarray.py:102: UserWarning: Warning: converting a masked element to nan.\n", - " return array(a, dtype, copy=False, order=order)\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "# WARNING: finkelstein2015 wavelength=1500.0A, not 1600A!\n", - "# WARNING: parsa2016 wavelength=1500.0A, not 1600A!\n", - "# WARNING: weisz2014 wavelength=1700.0A, not 1600A!\n", - "# WARNING: vanderburg2010 wavelength=1500.0A, not 1600A!\n", - "# Shifting stellar masses by 0.25 dex (Chabrier -> Salpeter) for source=stefanon2017\n", - "# Shifting stellar masses by 0.25 dex (Chabrier -> Salpeter) for source=duncan2014\n", - "# WARNING: finkelstein2015 wavelength=1500.0A, not 1600A!\n", - "# Shifting stellar masses by 0.25 dex (Chabrier -> Salpeter) for source=stefanon2017\n", - "# Shifting stellar masses by 0.25 dex (Chabrier -> Salpeter) for source=duncan2014\n", - "# WARNING: finkelstein2015 wavelength=1500.0A, not 1600A!\n", - "# WARNING: bowler2020 wavelength=1500.0A, not 1600A!\n", - "# WARNING: stefanon2019 wavelength=1500.0A, not 1600A!\n", - "# WARNING: mclure2013 wavelength=1500.0A, not 1600A!\n", - "# WARNING: rojasruiz2020 wavelength=1500.0A, not 1600A!\n", - "# WARNING: morishita2018 wavelength=1500.0A, not 1600A!\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:02 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n", - "l(nu): 100% |#################################################################################| Time: 0:00:00 \n", - "l(nu): 2% |# | ETA: 0:00:02 " - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING: Estimating slope at z=7 from only two points: ['F125W' 'F160W']\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "l(nu): 100% |#################################################################################| Time: 0:00:01 \n" + "l(nu): 100% |###############################################| Time: 0:00:01 \n", + "l(nu): 100% |###############################################| Time: 0:00:00 \n" ] }, { "data": { - "image/png": "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g88jjDErjTErDx48CICXlxfPPfcc33//Pfv37+eMM85gzpw5NVZnpVS90Ty//cnbIlxdobomNBT+/BOuvRYefRRuuglOnswLXMctdvoD5cLpQxYsWEC3bt148cUXNX2IUqpOq0x/uy4SESZMmECzZs244447XF0dpVxORIiJiaFr167MmjWLe+65h82bN3P99ddjjHF19ep34FpzXCulnCU2FsLCrNdhYdb7us4Y87MxJt7ONrqC12kMfAncJyLH7B0jItEiEi4i4S1atCjy2cUXX8zatWsZNGgQEyZMYNy4cZw4caLS96WUUsUcym9/8rZoV1eotqhIX7tRI5g7F557Dj75xBqJvXt39dUtP33Ipk2buOiii3jsscfo06cPP//8c/UVqpRSFeQu/e3KGjJkSEE6Dnvbeeed55RyKmLmzJn8+uuvvP/++zRq1KjGy1fKnWzatInzzz+fm2++mfbt27Ny5UpeffVVmjRp4uqqFfBydQVcKW+Rnfnh4eG3ubouSqnaKzYWIiIgP81yQoL1HmDsWNfVq7qJyIVVvYYxxhurEx0rIl9V9jqtWrXip59+IioqiunTp7N8+XI+++wz+vTpU9UqKqWUqqSK9rWNgSlToFcv6+9neDgwt3rrWDh9yD333MPw4cO59tpreffdd93qS5tSqn5yp/52ZVx55ZUMHz68xP7333+fxMREhg0bVpPVYdOmTTz22GPce++9nHvuufz66681Wr5S7iI9PZ1nn32WGTNm0KhRI95++21uu+02PDzcb3xzvQ5cK6WUM0ydeiponS893dpflwPXVWWseUfvAZtE5L9VvZ6npydPPfUU5557LmPGjGHgwIG89tprREREuMUUJ6WUUuUzciQsWwajRsF+4Ior4JlnoHfv6ivzsssu4/zzz+fll1/m6aefZseOHXz//fc0b968+gpVSqlq5uz+dkU99NBDJfY9/PDDJCYmMn78eJ566imnlJOdnY23t3epx+Tk5HDzzTcTEhLCc88955RylaotsrKyWLFiBb/99hu//fYbf/31F2lpadxyyy289NJLBAUFubqKDrlfKL0GaaoQpZQzJCZWbH99YIy50hizGxgMLDTG/JC3v7UxZlHeYUOAm4HzjTH/5G2XlXLNcrXZQ4cO5Z9//mHo0KHccccd3HDDDRw7ZndGpFJKlYe/MSbaGDPS1RWp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\n", "text/plain": [ - "
" + "" ] }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "axes = obslf.PlotColors(pop, fig=2)" - ] - }, - { - "cell_type": "markdown", - "id": "3c15ddfa", - "metadata": {}, - "source": [ - "This will take order $\\simeq 10$ seconds, as modeling UV colours requires synthesizing a reasonbly high resolution ($\\Delta \\lambda = 20 \\unicode{x212B}$ by default) spectrum for each galaxy in the model, so that there are multiple points within photometric windows. You can adjust the keyword arguments ``z_uvlf`` and ``z_beta`` to see different redshifts, while ``sources`` will control the datasets being plotted.\n", - "\n", - "**NOTE:** Computing colors from fits in the [Calzetti et al. 1994](https://ui.adsabs.harvard.edu/abs/1994ApJ...429..582C/abstract>) windows requires higher resolution, given that these windows are each only $\\Delta \\lambda \\sim 10 \\unicode{x212B}$ wide. Adjust the ``dlam`` keyword argument to increase the wavelength-sampling used prior to photometric UV slope estimation.\n", - "\n", - "To access the magnitudes and colours more directly, you can do something like" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "id": "fdf5f4b1", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 7, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAVwAAAD4CAYAAACg7F5gAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAABG/ElEQVR4nO29aYxs6Xnf939r37qq97tf3uEMd3okMTeSEilWINISM6bESKECQVBCkx8GAhKHtqNIHjAf4g8OIlNIJIiB7QEdx4aIWDFlQkakSCSdMIsgMhqaI5rD4ZCz3nVu79XdtS9vPvz7j+d03+q+d2713s8PKHTVOW+d81Z11b+e87zPEmKMcBzHcQ6e1FFPwHEc56zggus4jnNIuOA6juMcEi64juM4h4QLruM4ziGROeoJ7MXs7Gy8du3aUU/DcRznofnGN76xFGOcG7XvWAvutWvX8Nxzzx31NBzHcR6aEMIbu+1zl4LjOM4h4YLrOI5zSLjgOo7jHBIuuI7jOIeEC67jOM4hcayjFPaT4RDY2OANAKangVLpaOfkOM7Z4swI7tIScO8e0Ovx8fIycPUqMDV1tPNyHOfscCZcCu02sL5uYgsAgwFFuN8/unk5jnO2OBOCOxhsF1sxHI7e7jiOcxCcCcEtFIBs9v7tudzo7Y7jOAfBmRDcwYALZI0GsLoK1OvcXqsB6TRdDp0O4M0vHMc5SE79olmzCaytUWgB+nKrVboTXn8deOklWsC5HDA5CZw7B2RO/bviOM5RcOqlZX2dt6Ul4M03ue3ePVq7jQZdClNTFNulJYrvzMyRTtlxnFPKqRbc4ZCieu8esLhoUQmpFNBqcX+1ym3tNlAsUpxdcB3HOQhOteBKWNNpRiOEQH/uYEB/bb9vi2YKD0unj26+juOcbk71otlwCFQqdBOkUrRg02mg26VFm0rRdwtQeFMpYG5k2WDHcZzxOZUWbqtFUU2nKbYXLlBgb93iIlomA+TzQLlMS7dU4mLZ+fMUZcdxnIPg1Anu6ioFVwwGVkNhZYW+3IkJCxWbnQXe+U732zqOc/CcKsHt9baLrbZ1OvTf5vN0HXQ6vL++Tit4cpICnE5TjOVmcBzH2U9OleAm6yJ0OpbooHCvVIquhX6fj3s9YGGBVm6txu3dLv24HovrOM5+c6oWzWSZdrsUWi2OxQhsbtJnm8lwMW0woACXSvwrYqSf13EcZ785VXZcOs242hs3bFulQuFdX6fYzs5SbC9dot+23+f21VXeL5W8Tq7jOAfDqRJcgAI7N2f+WbkVAEt6mJpiRMLMDMetrNCyjZHPUZqv4zjOfjKWSyGE8AshhBdCCMMQwvUHjE2HEL4ZQvjfxjnnw1CpMLwrk6F1m89z0SwECurmJrPPFhYoriFQbEPg81ZXvWyj4zj7z7g+3G8D+HkA//dDjP0UgBfHPN9DUSxa6FeMFN7z5xmhUC7TepXrYGOD7Xamp2nxFov08bbbhzFTx3HOEmO5FGKMLwJACGHPcSGEywD+KoC/C+BvjXPOh2VigoKaTlN419YsvbffpxUryzabpcjGaDVyPTTMcZz95rB8uL8F4NcATDxoYAjhaQBPA8DVq1fHPvH6OpMdWi3WwQ2BQpzPc3+pBNy+bdln6TRw7Rrvd7u0gHs9CnC16uFijuM8Og90KYQQvhJC+PaI20cf5gQhhI8AWIgxfuNhxscYn40xXo8xXp8bo7DBxgbwrW+xWaQ69E5P09rNZunnVfJDPm9xuufP0+3Q7/O5nY65GJaWvEi54ziPzgPttRjjh8Y8x48B+NkQwlMACgCqIYTfjTH+8pjH3RWl8K6t0UpVUZq5OdZVyGQosJ0Orddmk37dQoEWMEDB3imuEl6vt+A4zqNw4IkPMcZnYoyXY4zXAPwigP/joMR2MGAEQqtFC1WlFodDblNI2PS0Fa5ZXaUwLy7ytrHBcald3hm3cB3HeVTG8kiGEH4OwO8AmAPwhyGE52OMPx1CuAjgczHGp/Zjkg/D2hot1XabvtpMhpZoo2Fpvhsb5j6IkS121tf5/F6P41Mpq6fQaOx8vXyu4zjOozBulMIXAXxxxPY7AO4T2xjjVwF8dZxzjqLZtHRcRRdsbnKb0nxrNSs63mrxsdwG6vrQ6/F+Pk/BnpqiIA8GfFwq0V3R61lWmwuw4zgPy6lYc+907H4qRXdBsgyjFsLqdbNa19cpyDFyAa1WozjX60yIKJW4rVg0N8K9e3RPABTolRVgfv7+yIUYKcqZzO6uCcdxzh6nQnB3tsXJZOinrVQonIMBhXR1lfvabfPZKv623aZAV6s8RrNJF0KtRvFcXaVFLLeDaDbtOXpcr1vmWqXC4zqO45wK+6tc3i6CaqdTrZoYJn20y8u0TlstimEIwN27FMly2dJ6Wy26JpaW+HdjwxpRjqLfpy9ZFnGMfE63e2Av3XGcE8SpsXBnZ+kuGAxolUo483k+fvNNCm6nY2m7k5MWi7uxwed/73sUyre9DbhyhdsBq8uggji1GrcnQ8SSro0k7bZnrjmOc0oEF6AgSgQBuhI2Ny3W9tIliucrr5i7QKm9Sm549VXWUygUaAG32+ZSiJHW8cYGLdmZGVrP6voL7O6v9U7AjuMAp0hwdxKC1VPodimit29TbEsluhDkz11dNT/uygrFOZejACs6IZvlMXI5Ws+1mqUHi0KB45Muh3TaEyUcxyGnVnCFogq6XYpkNmtCfO8etw+HFM9ej/s3NqwIeSZDv20ux225HKMYVlaA972PrgxZ0ZkMLd9Gwx5XKh6p4DgOOfWCmwzNUj8ztUa/eJFiWq1SJOt1CnC3azV1SyUKairF7cvLZg33+xTc+Xkev9PholmhwOfNzbk7wXEc49QLbghMYFCkQTZrvcympqyL7+wsXQvr63QZXLxIS7jXs75oybTfapXbX3uNi2/tNvD973NMucxjr60BTzzBx47jOKdecAG6C86dM9fBcGiie+4cIxiWl5kg8e538zlXrtBtkMtRPIdDinYIJrCbm7RgWy2O3djg9uGQ47JZ+orn5ynYhcL9fl/Hcc4OZ0JwAQre7CytVkUapFJcRJuYsOywXA74wAfoYlhcpKhevmxFy1dXKaTFIsfLeu10KMi9Ho+7skJfb60GPPkkxzUatIwrlaN9LxzHORrOjOAWChTPfJ63wYDWqYqPZ7O8ZTLASy9x/5tvUmjX1ym6TzzBjsCqNFYo0CIeDrkA12jwHKUSn7e4yOe9/jr9uefPm8vhAU0yHMc5hZwZwZ2YoAgq6UFFZ5aWLO1XrgCJcbdrSQsLC3Qz/OiPctxwyPThK1co2vm8LZ41GlYgR/HASvOVUFervqDmOGeNMyO4w6H1LlO7nOVlWq+tloWPqTqYOvjmcpZBls1aB+BikSFggwHFulqlQKvWbr9P3286zfGtFoV5epr3VbtBIWXewsdxTj9n4us9GFihGoDCOBjwNjVlpR0Bip5q5A4GFhpWLnOfQswGAwpno8Gb4nlFuUxBVo3e5WVaw9PTtHIHA+C736XQyurtdOh2cHeD45xOzoTgNhrbxVDVwyYmKIC9Hq3PQoELa80mBXowsIaTqRQFttWi1Toc0kUwGNDdoPCzYpHhYFNTlkyR9B33ehy/sEAf8eXLVkZyOGQEhGemOc7p5EwI7mDAvzFSaOXHVY+yTIaLWuvrFOerV4G3v537ul1aq7dumeW7uspjnjtnbofhkILd7dKXe+ECIxUyGcb0qrfaygqf32ya+LbbfI5CyhzHOZ2cCcHN5cw6ldiGQMGrVGjlLi5aJ9+JCQrf7CwFs9mkUAIU2pUVK+VYKFidXLkXqlUeX+6DqSkrWL62xuOoYWW/b22A1KrdcZzTyZnI8i+VKHBJsVWdXC2mTUzQ5wrQAlWEQr9vi2a6Lz9uNstjVyp0G/T7vJ/NUsyHQwrx5qZZx50OfwDUSWJjg1Y3QP+tL5o5zunlTHy9ZW0OBhS4XM5qIyT9u70ereDpaT5WkoOs0RDov52Z4XNVdeyNN0yEi0Xg8cethkM+T5FVJES1ypjdiQnrm5ZO06Vw7tzRvD+O4xwOY1m4IYRfCCG8EEIYhhCu7zFuMoTwhRDCd0MIL4YQ/p1xzvuoaEFK4pjL0W2gmFy5GNJpi2IArApYoWA9065do3h///uM5V1aohW7vs6yjq0WxbpSMWEtl3nOfN7auJfLrDo2NXV/VbHBgMdbWaGV7C3aHedkM66F+20APw/gHz5g3G8D+OMY48dCCDkApTHP+0hks9s7Q6iqV4wUYgkmQDGUAKbTXFRTm/WJCQrs3bvW0XdlxeosNJt87o/8CK3kYtFicTMZWrkzM1Y0fZTYqnaDRL/d5m129tDeLsdx9plx26S/CABhj8DREEIVwF8G8Ne2ntMFcGRdvrJZimKSEHhJPzFB4VNc7NISH+dyDBvrdKy+7XBoVrCSJ7TAlrSa02kLQdO5cjkKrVwUwP31FZpNE1vR7XIOvrDmOCeTw1g0ezuARQD/OITwzRDC50IIuxYsDCE8HUJ4LoTw3OLi4iFMzygW6SqYn+f9K1d4X8kL8ssOBnQJqPrYYGBdelWkPBlypuI47Tata8Xr5nL0F8/M2EKb3AY7xVbstt1xnOPPAwU3hPCVEMK3R9w++pDnyAD4AIC/H2P8IQANAH97t8ExxmdjjNdjjNfn5uYe8hT7RyplCRHT01zIqtUojipks75u1m65bK3Yh0OOlaW8sMBjKrLh8mUeT9bsE08wRrfT4ULa4iL/tlq7W7Fu3TrOyeWBLoUY44fGPMctALdijF/fevwF7CG4x4HhkP5aCWWjYYXLFdGQStGv2+1SYC9fpoU6N2cdfjud7WnC5TItZrkRQrC6ugCtW1Ucu3KFQq60Y4WyecEbxzm5HHhYWIzxzRDCzRDCu2KMLwH4IIDvHPR5x0GZYKkUha7RsNTddpvi+fjjVl0slaJI3r1rMb3DIcVRbdVv3zbBnJ7mmKkpCjPA8Ssr1oDy1i1aw/PzPJ8E33Gck8tYghtC+DkAvwNgDsAfhhCejzH+dAjhIoDPxRif2hr61wF8fitC4VUAnxjnvAdJo0GxU8UwhXWl01wIU7WxXM4yy1TMvFaz6IZUis9ttVi4ZnXVmlMqzbdet8U1pfpq/TFG4M4dLvBJcHM5b0rpOCeZcaMUvgjgiyO23wHwVOLx8wB2jdM9LsRIKzNZe2Fjg9Zot7u9qEy5zNvmJkU1BAqzKoG1WhTitTXLZut0uH9y0sR7OOSxb9/msdSGPZXi8+t1E3u19pmb84pijnMSOROZZg9Lp0Nxy2Ts0h7g/StXeF9FamSZyg+raIRymQJar5srAqBlqtbrspobDVq+Cwu0Zvt9iqqEO52mAAOWZqz7XlHMcU4eLrgJJI6TkxRMXeJPTFjthZ1MTNB6VXEbwMK90mlbeEulaO2mUhTrTIbniJHWcKnEx6kUrWoV1UmiJAuvKOY4JxMX3AT5PMUTYGysuvuqdc5uyOJVcRy1Vlfxci2Gqfmk6jpIZOt1S6JYXub+yUkuqq2u8phKmNA8Hcc5ebjg7mBmhhZmq0XXQDpN0atU7r+MV31d+XDlo9XiWCZDd0GnQzHVolerRVFOp63T79KS1V7Q/tVVq1Q2P28Lc15RzHFOJv7V3YFETZlkgIlfCOa7BegiaLV4v15npEG1aqLbalFkJydp5dZq1qJdsb63b5tgq5vEYMBzTk9bNbGZGYq4L5Y5zsnFA4xGMBiYZZmk0bD7w6GJLWD3VVMBoKBqbDZrMb3qEAxYm55MxqIQBgPrJtztcl8yZMxxnJOJC+4IdiuD+LDbKxXr7KsCNYpQGAzog43RepjJb6xECtXQDYFWs7Y7jnOycZfCCDIZKyaTpJQoKqlog3bbRLLd5jbV2VXX3laLKb7dLsPLlpfNtdBo8HzyGas9T6lkNXOHw+3ndhznZOKCuwvT0/TRytJUkZokCh9rt3m/36d4qu6BQsmSMbRqVJnPW2+04ZBNJ5vN7cXOczn+nZ/fbgUPh75w5jgnEf/a7oIWquQuGHVJn0pxUSvJqPHJ6IbBgB0e1tetMllSaNUpYnaWtRSmp80FoYU5wLpISIgdxzn+uOA+gLfqO33Q+FSKYj41RRFdX6d7oVbj40zGohOmpqy78MICU38LBYpsv8/FtwfFCDuOc3xwwT1kSiW6FGKky0GdgHM5E2K5Eu7eNReEIhmaTbov1BdNbgzHcY4//lU9JJK+15kZa6t+7RpLPTabVgCn0wG+9z1atSsr9B8PhxaLu7lp2WYeveA4JwcX3ENAVqpcBpOT2+skqIdaOk33wmBAsZVIb25SdFdXLXoBoG/YC5I7zsnBBfeA2diga6Dfp1VaLFI4z53j/laLi2ES17U1qxYmi1dug1zOWvl0u/c3w3Qc53jjgnuADAYsZq4stE7HhFIZZGtrFNdm0/qlKS63UKBlq4gGFSGfmrLnAh6j6zgnBRfcAySZCiwUk5tKWbGbbpfC3O1yf7dL63Zzk2FjV65sz17TsZtN+ngvX7a2647jHF9ccA+Qfp8Cmay5ANA6zWSsvboqiqmNej7PBTKACRGzszyGQsPUPV7iq/TfnfVzHcc5XngthQMkn7di5Kq1W6mY/zaft95pgFUNk5AmSzGmUtu7P2gRLp+n2LbbXpjccY47YwluCOEXQggvhBCGIYRde5aFEP7m1rhvhxD+lxBCYbexp4lSieIpv+vsLN0DyciC6WlLAy4U+LfXo392MODfV15h9TB1AQasd1q7Tct3aWl0hTPHcY4P47oUvg3g5wH8w90GhBAuAfgvALw3xtgKIfyvAH4RwP885rmPPWqtPjGxe6vzUokiOzHBfW++yUWyixfpKmg0aLmqkE06TeEGOF5WrVr45PPe1ddxjivjdu19EQDCg1drMgCKIYQegBKAO+Oc96Qhn+0oUilaubdvW32EEGixqmtEvc79Fy9yX7cLXLpklcQKBboq5FrwqAXHOZ4c+KJZjPF2COE3AdwA0ALwpRjjl3YbH0J4GsDTAHD16tWDnt6xIJ+nSOZyFOAbN8ylMBjQ0lWzSrXpUXGdEDh2aclq76oOr+M4x4sHXnyGEL6y5Xvdefvow5wghDAF4KMAHgNwEUA5hPDLu42PMT4bY7weY7w+Nzf3sK/jxBOjuQIkmErzVeeIVIr7ikWKrxIlul3uD4ECvbl5JC/BcZwH8EALN8b4oTHP8SEAr8UYFwEghPAvAPy7AH53zOOeKgoFCx9TYkSzaSUcOx3ur9U4tlRipbCNDVq1mQzHqTfaxMSRvhzHcUZwGHG4NwD8aAihBLoUPgjguUM474miVqPF2unQep2fZ2cIgOK6sEB3QibD7LNz5yxed2eLH3cnOM7xZCzBDSH8HIDfATAH4A9DCM/HGH86hHARwOdijE/FGL8eQvgCgH8NoA/gmwCeHXfip41UiuKpqIMYabmqjsK1a9aOZ2KCC2lq26MuE2JnO3fHcY4HIe7WGfEYcP369fjcc2fXGF5YsMpgotulpRujJTvk89ZfTU0q02lzPziOc3iEEL4RYxyZl+ARm8cYVQOLkbd+n4La71sb9Y0NLpwVi7R0VSd3MGBVssHgqGbvOM5OvJbCMaXfp8sgRroS+n1arMvLjEJQiBhAd8Ibb5iFW6lYC592mz5fx3GOHhfcY8rqKlN8Q+BCWq9nroS7d+nznZy0mNzXX7eGknfvUnCfeMIX0BznOOGCewzp9ymwAH20ui+Lt1KhlTscsjyjukIoBVguh0LBCuU4jnP0uA/3GJK0SlMpS4hQndy5Od6U2ruxwdCxbpd+3V6P21Uv13Gc44EL7jEknd4eXaAkBtVIyGQYp9toUFxLJbod1P13cpL+3lKJNRgWFlgUZ23NSzg6zlHiLoVjytQULVdll83O0lWwvMxIhJUVinIqxbE3blBwtW1ujgto9TpdEAD3DwZW3NxxnMPFBfeYEoLVyU0yMUHRTadZZUz+3be9jZZvNsvndLsU4XSa9xVaNjvLqAWPz3Wcw8cF94SRy1F0b93iIpoy0apV4AMfoMtApR4VtbC4SKs3Ri6uFQrAe9/rdXMd57BxwT1htNvAnTvbF8NitDbqwyFdCLkcreQbNyxjrVymVdztMophfv7oXofjnEVccE8QzSYFdHnZMs8KBVqyvR5FOJ+noA6HFN1+32rralujYR2DPU7XcQ4PF9wTQoxcAFPd3BAotPm8dQBWyx0lSijrrFCw3mq5HK1kF1vHOXxccE8IvR5FslCgaKbTFNRez8LIWi3z6W5sWPued76T1rEEulzeveWP4zgHh3/tTggqwZjPc9Gs37f+ZRcvcjGs0eDYdJqxuCpkMzFBMW63eYzZWYaSOY5zuLjgnhBSKboH7t6lsMpaffxxCurNmya4g4GlAedydDFUq4zNrVY9LMxxjgoX3BNELkehLZXMjaC03ulpCmy3y6wy1dFVg8pKhXUVslmrHuZ+XMc5XFxwTxCdDgVUroLk9lKJftp+35pKKoIBsN5omQyjFhYXOa5cZst1jXMc5+BwwT1B7JaooKiF2VlavpWKhYCJ4ZDjNjctDXgwoF+32QTe8x63dh3noHHBPUGUSlaGUWSzFNl6nY/VYFINKMX0NAV3ZYX7kq3VJybomlAa8WBgvdLc8nWc/WPcJpKfAfAzALoAXgHwiRjj2ohxHwbw2wDSYHPJ/26c855VVJRmc5OuA4WHLS5yf7/PwuVTUxy7scHts7OWVdZo0Krtdjkml+M4teLZ3OSCmygUKNaO44zPuBbulwE8E2PshxB+A8AzAH49OSCEkAbwPwL4KwBuAfjzEMK/jDF+Z8xzn0nUHFIsLNDiXVszq3VzE3j3uxkuJneDCIFj1Ts0k2H1sGzWohuUOJFOc1yzaaUhHcd5dMYqXxJj/FKMUX1lvwbg8ohhPwzg5RjjqzHGLoB/BuCj45zXMQYDCqzEFuD91VUKpsS217Nx8/PcJ59woWBVxep1Pndz0+53Oof/uhznNLKfPtxPAvi9EdsvAbiZeHwLwI/s43nPNLncdrHVNnV9SKVo0TabHNfp0Kp9/PHtVvHqKse3WtuP1e1aCUjHccbjgYIbQvgKgPMjdn06xvgHW2M+DaAP4POjDjFiW9zjfE8DeBoArl69+qDpnXlqNeDePYu7VfhXCLx1uxRb7VNhG7XrqdWsIHmzSX9ut0uLt1RiDYZs1mN2HWc/eKDgxhg/tNf+EMLHAXwEwAdjjKOE9BaAK4nHlwHc2eN8zwJ4FgCuX7++qzA7JJMBHnuMGWgAY3RDYGiYBBegyN65w7KM9TpdERMTTAFOpzlmY4PPKZe3F79pNGj5at/OouiO4zwc40YpfBhcJPuJGGNzl2F/DuAdIYTHANwG8IsAfmmc8zrbKRaBy5cpjDHycbHIfSpSs7hIodXimOJv83mK9YULJtSApf7W69b5VwXM02nLVnMc5+EZ14f7WQB5AF8OvN78WozxV0IIF8Hwr6e2Ihj+cwB/AoaF/U8xxhfGPK+zA5Ve3EmhQFHd3ORjWbzVKrfFSOt1cZEWr9r29HrmgpArodWyfaWSuxgc560yluDGGJ/YZfsdAE8lHv8RgD8a51zOozM9TT/tcMhbv8/Fs+HQOkVUKnQvhGDirdq6a2tW7jGd5vOXlhjf66LrOA+Pd7U6AyjtV8Vt5F6oVCigjQbdDIMBoxVk3YbA5ywvsxrZ669TeAsFjtkZ0eA4zt644J4RYqQvVv7emRm6EAYDCqsKm09N8a+sV6UTt9vm+5VbQpERjuM8HF5L4Qwg67VW49+ZGS6YyZLduQgWo7XhuXPH4nkB/pX4jvIZO46zO27hngEaDfpcFxfNoi2X6bNVr7R795jWq8I4hYI1m8xk+Hg4pNjKB6zGlI7jPBxu4Z5yNjboEigULFIhRlq3qpmQStF3K0v44kVbTIuRwpvJWPnHGOlqqNd5/NlZ75HmOA+Df01OOcoy0wJZp0OBLZcZfdDr0SerkK9slr7dGDlWbgjta7Xo511bo+jmchTyyckjfJGOc0JwwT3lJHP/lBChNF2FdCkMTH3TYmQVsrU1iqkaTq6uWreJ1VW6IaanWQxnlOCqNoP8xbkc43/d9+ucVVxwTznFojWXFErdLRS2F75Rz7SFBeCVV8zqbTTYhkfpwhsb9OUCDBnL5+lWSBYrr9fpE15a2l5ScnmZ0RK7da9wnNOMf+xPOdWqZYWFQAGu1WiRViq8pVLmoy0Wab3KJ6vuwIMBBbpWM7EFbAFufZ0C3elQoFXoPEYusq2tcbwy2xznLOIW7iknBIqrLEy5EbJZWprJ7DJZr+oGoUU0Fb5JpynEzaaFk01NWR1ddYbY2Li/1kLSD+w4ZxW3cM8ISZ9tcptqLYRg7oM7d9hqPZXitnqd1moqxe0vv2yZaqkUcOvWdr/sYMDjFArbz6nsNRXWcZyzhlu4DgAK69ISL/fzeVqpvR4FUkkOmQzFcm6Oz1G9hcFgewseZael07Sgdb9YpIvD/bfOWcUF1wFgpR37fUv7VfyufLiiUOD+YpFuhGx2uyWbyzFyQV1/Z2dtwc1xzjIuuGeMGGmVqui4UMaYFstyOYpppWL90ACKbLtNEZ6a4t+ZmftdB9PTngzhODvxr8QZotWi71WCW62aPzWfp5CqiI0Wzspl4O1vZ8zt2prVzK3VrPGkfLlqTFkq3S/ojuO44J4Z+n2GewmVYszlrHhNr8cIhOlpE1L5ZmdmKNitFoW6UABWVriv2+Xxh0MKeLfLMR6R4DjbccE9IyRjZ5O0WtZWZ3KSFqwKk/f7bL+j2FqNaTYptmrDEyMfx0jxXl0Fbt+mH7dW4zgVvcnnPdPMObu44J4Rdluw2hkxkE6bO+DGDbogOh0mNihSYXqaPl0lTKyu8nE+z/uqk7uxYXG8yUaVlYo3onTOJh6gc0YoFu8X11Rq95jYbpciC5iAJrfl87R6Fxe5bX2dft6NDTtGjLSG6/Xtx97c3B714DhnBbdwzwipFMOzFF+rqmC7Wb69Hq3XXm/7Apja7vT7FNtOh7dmk+J98yZw9SrHxmhWbipF14LcEDuP6zhngbEs3BDCZ0II3w0hfCuE8MUQwuSIMVdCCP9nCOHFEMILIYRPjXNO59HJZBjKNT/Pv3uFbWWzFjubz3Os0oTX1ymmU1MWkTAzw4W3EBjNMBzyfqtFi/bWLbobtNDmC2rOWWRcl8KXAbw/xvgkgO8BeGbEmD6A/zLG+B4APwrgPwshvHfM8zoHTC7HBS8lQVy+DLzjHSxOns9bnO1gwL8xctvjj1s5x16PIqySj50O3RIKJ6vXLeHCcc4C47ZJ/1Li4dcAfGzEmLsA7m7d3wghvAjgEoDvjHNu5+CZnqYF2+3SIlVthFaLFuzEBK3WTofjVSeh3eb4fp9iXC5zTLVK8W21tvtwm81Hb7k+GPA82aynDDvHn/304X4SwO/tNSCEcA3ADwH4+h5jngbwNABclTPQOTKSfldRLtM3m8nQ8n39dVq91Sqt1mrVCtjcu0dLWfG8b75p1vDEBLep5brGqLxjjBTw3XzNspAB7q9W769S5jjHiQcKbgjhKwDOj9j16RjjH2yN+TToOvj8HsepAPh9AH8jxri+27gY47MAngWA69ev+8XmMUQCqJ5m57c+HaurJpD37lkZRy2yLSxwXzpNoVQmG8D9Kli+vs7jVCr0/w6H93eUSMYGA9YMs1DwxTjn+PJAwY0xfmiv/SGEjwP4CIAPxjjaGxdCyIJi+/kY4794lIk6x4vhkMLY6/FxrcbL+pUVCx+LkdvKZctCm5mhqG5ucuz8PIVViRaNBsfKws1mKerZrBVSB8yNsZNOZ3vlMsc5TowbpfBhAL8O4GdjjM1dxgQA/wjAizHG/36c8znHg0aDgqn2PL0eIxMKBVq1gwH9uCpmru7AgIWaqfRjv8+xElD9ZMfILDe5DdbWLMIBsIW3nf5gt26d48y4ywyfBTAB4MshhOdDCP8AAEIIF0MIf7Q15scA/CcAfnJrzPMhhKfGPK9zhKinWdKv2u9T+Go1WrSplPl1220K9N27vKXT1nxyepruArXdkb9YEQ2AFUjvdKxtjwrx1OuMB242GVmhJpeOcxwZN0rhiV223wHw1Nb9/xeAV0I9JdTrbATZbFIQh0Pzw4ZAl0EqxfY9rRYt03aboWLKTGs2gcces0LlyZKRpRLvN5tWi1ftgQAT9m6X52o0LBNO4WiOc1zxTDPnoel0zJWgy/sYuRA2OWmLZ8vLltjQ79OK3digIE5M8LmNBo+Tz1u7nm7X4n+feILP3RnqlcvZYlkqZZEOgGevOccfF1znoVFkQIx0FSgeN5UC3vY2czHMz3OBbHnZBFL1ctfXzT0gy7ZYtK4Rs7P08547x6iHZIffUonH223BbD8KniuiQpl1jrOfuOA6D00ms92vKn9ppWLJBwDFtVajKG9sMERM9RYACm+MJrzDIW+lkvlnFxZ4XwXNJcoAXRhanBPF4viCu7nJ+eq8tZo3vHT2Fxdc56EpFq0bhMjldo99VTJCNksBVTv2Usm6AisjrV6ngA+HLAuZTtvz5YoQEsNWy2o97BRGRTs8rJWarIQGcB7JAu2Osx+44DoPTQh0Hdy8af7WYpECuldabS4HXLtGq7TTocCeO0ef62BA14O6+q6vW/NKgO6IXs8K5XS7FEJZt8qEazQY39vtUmwLBYvdTS667cZuBdo9rtfZT1xwnbdEPk/RVYJCobC3IN29SyFcXrYW60rlBbiApu6+jQaFNJvlmOHQtiv1Nym2AIXyzh2eYzCgpSyBvnDB/MdJC3kUu/1geH0GZz9xwXXeMtns/am2o7h3j4ILUCxv3eK2+Xn+BUx4tWAmcU76Y9NpCr1CwpIoQSKVokDL3bG5yWOXy/z7IMFViJq6FwOcg8f1OvuJC65zYCQzwxTitb5Oq7hcplDKD6vOv0rn7fdpqebzFMN8fru12Wyai2Jjg77eEKxA+nD41vy4KtC+uWkLgLsVzWk2bd7lsouy8/C44DoHRrKyxuamFbNJpSimasuu6IP1dQpYJkNXgARN1cfSaY5fXbUFLpV/XF2lQCpsLJs1IUy6PGI0P2/ymDrWgyx3+ZhFu804450V1RxnFC64zoExM8PuvYDVUiiXKYCLi9u7SgwGFK3hkIKZLIC+sQF8//tWrlHWZa/Hce02M9r0PPmKk/UZVAB9dZVirqaYU1P8qwy5vYhxe4UykVzkc5y9cMF1Doz5eYrha6+Z+MkazOdpkc7OUsgqFVrAb75JH676ofX7/Lu6SoHOZq2amKqTqRh6rcbjVyrbW/isr9Oq7XYp7Gp02e3ynCHweA/y80q4d+INMZ2HxQXXOTBipPX4jndQ3JaXaZ2m0wwT0+W4Koh961tWT0FFyG/cMP8swOfcvGnuAy10yderEo+ZjPlxi0Vr7dPvbxfNTodWdzK2eDcUNyxrXSQL7mguHt0wHvpxO23vowuuc2CospeSE6anrSiNUngVCqbU33SaY+QCeO01xuxWKtbqfTCwqIV02oRwOOS+TofnVMJCq8Xn5/NWShIw8YyRvtupqQd/waemaFWrYE4+T8FeXDQhDoHj3M3waNTr9hmQ2+e0JJ+44DoHxs4VfiUpTEzY5XulYqFYb7xB61Upwd2uZbetrVk2mqIa5K9VgXKJr8RYxEhLWBZxJsO/CwtsiilhXF6m7zeJOkmoboQs5kzG5pAsxK7naBFP7eZVstLZm83N7X5yFUra+X85qbjgOgeGUn6TPk41mkwiIbpyhSKYrBp24YKFknU6/Hvu3PYOESqmMxhYckS9zv0S6FyOVlM6TetaKcnJBbNej+fI561wumorNJsMY+t2LXutVGJPt7U1CrIiH1Recn7eIiWaTYpGUnS1COeibCSLFQllJJ4GK9cF1zkwVB9Xi1aZDIVxtyIzly9T4NbW+BwJpkRrOKTYXrxoUQ5qHNlomNi+9JLV4F1aMp9qr8e/ly+b6CpMTah1kHzDt29z7lpYq9c57soVJm+89pp1n1CWXKlkfdk098GAolup2LmWl7f7jlstivJJqFLWbpu/ej+FcLcfnJPwnjwMLrjOgZLJ0Hf7MGgxbX2d1uXCAgVuft5KJs7NUWR7PbvM7PVsUW5piccZDm2RDqDILi1ZQsVwaCnFm5sUyXSa21ZXKY4S/5UVE22Vo1xassW+Ws2qm83M8HylEs+9uMhxSvYQ7fb9C3WqEazQuVEJFcmqa8kxw6F14VA7+4NA72vShTI5uX/1Jsrl+8tvynd/GnDBdY4V8ou22xYqVq9ThCcnKW6pFEVXyGXR7VoR8slJC/sqFimIsnJXVnhslV9cXqYwqui5OggD5l5QdIXSfZW0obGpFM/VblN0BwOKda1myRij5izUMkhuhVbrfiFrNm3BT89RokZyu7Lm9qM+8E7kAklSr/N93A+RLxSsO4hqJSevCk46LrjOsSOX4y1Jso+Zaia02xSxXM4W0pTRBlCMmk1zJaTT1iF4Y4P35e4olShag8F2P6KsWsCSLWRxVatc5MtktvdgS9YFVppysWghaYraSKKFouTr3tjYLriKHxbNpsUsKxa5WDS3yMNeWbwVVletgFAuZy4iJaHshn6MUin7HwB8T9RFRLHZxeJ4dYh1xZPLbY/HPg6MJbghhM8A+BkAXQCvAPhEjHFtl7FpAM8BuB1j/Mg453XOHspGk2BNTFgVsclJVjBbXOT+27fN//ue91AglpZ4HC289fvc3u9bHK6aUCpOV+J76RIfa1w+TytsY4PPkS8zl7MFHi2s1esUlHqd51OqsvzZsqS1KLS8bMXYkxaxxgCcX6+3vX4vwHOofq/Sl/Xe7YWuDLLZvUWz3d5e+L3b5Y/U3Nze1vTamv0IAnxPZ2c5zxs3+JpTKUutvnr10a3lnefKZPhZOS6x0eNauF8G8EyMsR9C+A0Az4Bt00fxKQAvAqjust9x9iT5RQIsoUFfqGrVLKZ2mwJy4QLF+M4dZrEBHPvSSxbvOTtLq2tjw/ytEhAdO5OxurrDoVnNIViEgdKEtdB38yaPORxyTrJ4n3yS45OxwYMB59TvWy2I8+c5ToKezfKYKys8bggUu27XigMpdrXX4w+SQvEUY6wrg1SK75+qsyncbWpq92aczab5WCW68q3rSqBe535dTSg6JInC9JSy3emYr38w4PNGFSx6EPJvKx5boYWKiZ6cPPoOHuN27f1S4uHXAHxs1LgQwmUAfxXA3wXwt8Y5p+MAFA1FDEiMBgNLZMhkLIkin2e228wMfbl37lA4lpcpSu02H09OWoqvhFDuDV3aLy2ZmKvgufqfabsWroZDiuPCgkVT3LjBv+9/P38AlFp87x4tP3UxVsjYxATH6/WurFiiyPKyFXO/d8/6xamx59wc/165Quu6ULD3rF7n+RsNClylYplyoxbslBqdSvF9lHtH0ReLiybkIVjHjJ1WuqjXWa5T7+FgwPHz89bRQw1Ip6f3tnjVh67T4XugSnKbm3zvVNFtbe1gFxQfhv304X4SwO/tsu+3APwagAdkqwMhhKcBPA0AV69e3a+5OaeAUsniYtfXzSoLwfyvyZ5kulSu1yk6ExO2AKYvqermKmrgL/6CYiGhqFbN0tKCUTbL8UqukK9QlvHEBMdPTVFgCwXOU+FTCwvAn/85xWZ93XygnQ6fo95xjQYtWkVdLC7S6lViR71uPxiKS9axbt+2RJF792jp12oUn9df5/7FRc7n8mWrZ6GFu3LZes4tLHAO2SzfXy3UKcmk2eQ5Gg3Ov1q1ZBKJdLLOsH6Ebt1isoss4bU1jp+cpPgCPGa/b+Fycr1INFdXebx0mmNXVvg5WVqyRUa5SpI/okfFAwU3hPAVAOdH7Pp0jPEPtsZ8GkAfwOdHPP8jABZijN8IIfz7DzpfjPFZAM8CwPXr10eUCnHOKspO04p8qWTbBoP76yS02xSVUolJC+fOmZVbrVJcJFDtNr/UgwHFSIs7suDUVy0EszR1Wa/Fsmp1e7NLVTZbWbGFuakpizOWhSgB7/Ws8I4Wp9bXLbVZ0RCTkxQ41RuW4CvmWdaefL1yZQAUudde47kVuaHU5slJq3zW6dCC3ty0mOSZGb5HSsfWD4yscrk21tct4QTga15d5TE2Nvi/0OV/v8/3o1y2BJdWi++dwtzW1vg69AOnbMVmk6+n0eDx2m1b8NQCY6lk/7O5uaNPnnig4MYYP7TX/hDCxwF8BMAHYxxVSwk/BuBnQwhPASgAqIYQfjfG+MuPMmHnbKNL7Exmu7jKapFoKElhZoZf1sVFbr9wgbd2mzctUsl/2O9TODY3+eWUGKv4jeo/KDQq2aE4l+N+WVwqjCNRS6e3t41fW7MIB1lgstIVfiYxlkX94ovWybjbNVdFt0shUs3hEEygUim+npUV4NVXeX5Z7aurnMdjj1mySKfD1ycfq0RLYnx+y/zqds1FodRqwKJIksXjz53jcV991eoJy6+tuGd1bb55c3s0iaxVuUjUMimVsh+zGO0HRD+WSudW1qAW6o6ScaMUPgwukv1EjLE5akyM8RlwMQ1bFu6vutg645BKUWSShcBl7UoolaLbaJh7QNbm/Dy/nIoYkP92OKR/N0bz625uUkwWF/nFVciVaitMTm5frNNl+L17tNIuXbKFJomzyk7KtaF6Ee97H7drkez1183SVPqyQp7ku63VrEuG6lKsrZnlrU7I3S7HaNFMAl0omBWstGS9ZoV/DYfW2v7uXQphq8V5tduc+/w856PzKgsweX4t0MkKLRZ5vF6PP4Jyu9y5w/MOBvwhVPTFxgbHzM/zKkR+9M1Nc20A/JHVD6D83HJZ6JhyAR024/pwPwsgD+DLgdcPX4sx/koI4SKAz8UYnxp3go4zCn2htFBTLlv5xSee4JdfIrnzumtigpZcschxN25st4jPnzd3RNKqVSPLuTmLblC/tVu3+Bz5hDc2KMzpNOem2g0XL9qiztQUz6kWQbUaBfzmTet4oaaYIfBHQoKjqAmtwD/+OMfotWxsmK9TzThLJb42VUmTxZ1Oc7su4/VjohA6JWIoTE7JJ7L+dfn+l/6SddqQi+DePathIb+sFvbSaR4rn+f7ns/zB/H11y26Q+6OWo2veTCw90WCK9+1KtKpTKfeA/2gvPwyX+PVq5b0sltExkExbpTCE7tsvwPgPrGNMX4VwFfHOafjCFloSVQcRym7ChECTBxlEc7McGytxi95scgvrKp8vfyyRQNoIU4hV8Ui/77xBo8t/+NgQBFXMfXZWQrXxITFsV66ZJfQWuyp1bhtYcGsNrVu18KRVtsVj6yEh3LZVvXn561tfKtlf9XO/rHH+B4phljWXrlsFrBSa+WWUDeNVIrHfuMN7lNHDi2o9fsmnBJCuRzkw5XvVwWBLl60/0kI/JHL5eyqQP5y/WhUKjxWu81jra9zHpqfrOxczs6hOOFGg9vrdT5HTUazWW7TlYFcRAcRt+uZZs6pQmm0mQytths3LLNLfj+JdK1mq+ePPWZhWLmchVHdvr29ipisxkKBX/ZGgyKj5IZOx778smp1CT8zYzUYlDyhlN9Ll3jOV16xGOD1dYrk5KTV2G02zSqtVCgm73oXH+uSvV63y/pLl3g8pSLL76rECi2obW7yB0LWIUCr+cYNCp4EdWnJfMz1Ot9j+beV7acfCP1gDIf8IVEESalEoZerR1XZNjcpuHJDaB7ysateRtJ1o4XS2Vlzj1QqnM+5cxYaqLBBCbt+rO7d47kbDfPvbmzwdc3O7v/n0wXXOVVUq9uztR57jF82ZTLpchjgF2962i5dFxdNgNttiu+FC9Z9QkkFgFlcCqYvFPjlVeH0apVfWPlddaldqZgPs9ejhaXn37hhSRUSQ10WA5b1pkpn738/RfjNNyl+i4v0f8oV0O3y8ZNP0pJst7nvHe+gJQzwvXrlFSvqDlhkhBblpqctOUPza7Uodm++yWNns9vD9QC+14OBxdzqRwvga3jsMUv5rVb5g3PhAp8vX28+bwudIQAvvGCRJuvrFveczfJ9HAwstE5Wq2KNAb6uUslaP2WztNhbLZ5DLgZZzvudGuyC65wqsll+qWRdKdBdVb5Goe3T0/yCymqqVCi6qq07HFIoZCkvLVmcb7/PL2vy0leX5ErD1eW+LDjF7CpDSyUPMxmOV2WuyUlb6b9wgaI7NcXtKysUveHQFqyWlsyHms9TWCoVnl9WsnzD6hU3GJjfWO+jYoHl61WUwmBAgdzctLA5LYBJqAALIXvjDZ5rZsauDmThyzUTo7kGnnvOzp3Nct4XLvB5em2yoNfWrGC9/OavvGIxxQrZK5X4vskKv3WLx5bLpd83d4ZSx0fGXI2JC65z6tiryPleaLVdhWBeftmKiqtNjwTvjTc4ZmPDUoRrNesgIX+t0mdLJc5BK+ZaLGq3+eVXyUilKq+vUwwrFV7eSthU31cLXy+8QNGpVCwqoVi0UDMlTag+bzptca31Oq3yxUUmPyhSo9vlNtWc0Hun92Jqiu/B0hLnfvcuzyXxn53l+6gqYoC5D+QeUUaYriq0MFerAe9+N105tdr2xImFBR5b76GiSKpV6+S8tGTNRTMZjpub4/9NC60LC3x/JifNl50s29luW22M/cYF13F2oDjPixct80r+2PPn+WXViv6lSxSGe/d4/+pVy0pbWLCFJSUQKNIhn7dg/dlZW+ipVChs6mqRz/Ocq6vWGUKClc3yGG++ScFQPQi5JOTjVE0BRTs0GpxvsuawxFg1GJaXLQpCZSLn5ijWamUkP6hC1157zfyu3S7no+cr3VrHrlT49+5dzk9uAFnRb3+7ZZ4lrV25f1RfeHKS/yv5frWoGYK5bjY3+f698QZ/CLRIpv3yP+t16Yf1IHDBdZxdmJ+3dOBMxhIAFLEwM2PFUS5ftvAjgGOvXLEFMHWfkG/55k0Lg5ILIkZLYpie5n5ZY/oRkF8xRqtDoPhTJW2ouIysuOGQ/mG9BrktVIym1aJFKX90v28hZFpgvHyZz7t0ydogyUJUrKuahsrfrZ501SoFcX3dFrTqdeBP/9SKyshiVfibyj8qoUK1hVUjVz3lLlzg+1AomD836Sfv9/k6X36Zc03WWX79deC9791+rMce44/dQZV1dMF1nF0IgcKzs5uBYlOHw+2XnRcvmi+1UKDIyOJT1MTEBK1LHVNW6vq6ZdAprE1FZXT5r27Hw6FZlkq51UJZr0fRWFuzTC75nwHzxarjseZfLltVMWVp3bplc2m1WHVNSRCKyy2VuH152RILlNYrH7WEXh02lKYs/7TeZy3Q6fjKQltYsEv9QoHCu7lpIWL6AZKrRinViriQfzYZV6wKZwqNkyumVDL3iELY5I/fD1xwHectougGLTyl0xSWnTHB09PmCpCoaMFMyNqSVSsLGNgemK9LZsWP1uvmWpALQeFWypJTTYRslq2LFPKmWgyqTzA7a9aoFqJ0U1+2d76Ti1HFol3KywqVtTw/by2CslnO9fJli3dW8ZgbN+yHQOm3chVMT/PK4NYtqwWhDL+1NcsSlH9XoXqKB56c5LGvXLFwL/0AbG5a6rdcOJpjOm1NT5eX7f/T6/G2X8XcXXAd5xHQYoziOkehHmwqp5jM+kqOmZ83MZELQ5arhG1mxlKCVT4SsFY+KkepS3N1ulB4mSIDVJx8dtaiLIpFHl8lGm/etAQA+UK1+FavW9jd1JRFhZTLFCWJVbXK1z41xXPJB/vKK5a0IatXx1aGnMLlNKdWi35q+VgBWqDnzm1vvKkfJIA/HAp3O3eO89C8BwPr2tHp8AdAiSV6LUmUZLEfdRhccB1nDB7mUjP5RU3Wk1XoWi7HJAOt6EsYVQktnba2M8mMrAsXLPxLLXrkkpBbQHOUBbe8bJawFq5KJXNLKOVYxXLkBlC7H1VqU+hUp0NXilJqFUcrK1g/ANPTXLTqdKxITbXKY6jmQj7P9+XePfMJq8yl3BpictLig5XsAHCMUqcVx3z3Ls9x7Zr9wKkS3PKyuUH046OC80nkShkXF1zHOSAaDSswnvQFV6tchd/Y4Jd9ctLKEiprS2FkO5HAy8+pQjcq/ZjNWv1a1ZlVZbDFRQqMfKtPPMHn6ZJZc5iaouDducPzyTpX9lqnY4tbisctl3lpns3a4pVKPq6u8jm1GhfdVINBBW6UGry2Zlanaimoyaesf/nH5+b4Q6NWS+obJ5eIfrBUlL7RsGy0+Xm+L60WrVtZvPk8zzsxsb1xpea3H7jgOs4BsL6+vZqZiujocnVUHYhRzRN3c1kUi5aZBlis8Py8pbAKJTbMzZlgtlrWxqfZtFjWd7/bMtTUaWJqilas/LwrK1a8RmUy1Wo+BIu51WX+uXMWIdDrmUDrx2JqyvqzqRKbwrNCoNXc63GuirqYnuZxlcWm6l+tliW7aMFL1GpcUJTveG3NFjlVrEjheIpGyWT2t8CNC67jHAC6xN+5bad/cDeUEpushiYXg/arK7EsQaW2Ku5Xl8r5PK1EiaFW4FWvd37eLMlOB/jBH7RatLKEY6QfVcVzAOumoOIzO1u/y88sC1+JIEraUKyu0pBVVUxp1YWC1SmenaXghsD5K2JhdtaiOwAe/1vfsvjmUomv6cIFLqSpS7PEP4l+vObnt4fP7ScuuI6zz2hRaCfJ6IQHsbpqaanqlCDh1bZR7eSHQxMqodA0gII2O2uCNT9vvkkV/kmnGeqljguyXB9/3GJjV1bs0ls/BKo6BlixICFrV92TFYKV7KzR71uWYK3Gm8pjdruWpCGBbbVokU5PW/eLCxc4j+ef5+vL5Xjs8+c5Xk1CVV9BJR/lU062uPdqYY5zAtDlrBbFxMN2jB0MTGyTqJwgwOMnXRY6r0K0NAdtS85HIrqzA4JcCFqE0t8QLBSuULACQUpyUIKFWtjonKLf58LV7dsWShaj+Yrl75WPtlq1hTNVMisWrTCOwrtUU6FaNV/ycMg5//iP80dL3T/u3NluNRcKFsOrQjd6L+7dszC9/cYF13EOgORiEWBCNQ5JX24uZ0VblPkm14Gsa1mz6TTFTeIoq3LnQlAqRdFUptrFi1ZYRgkDgFXwUu2DZFt5gOdR/7Vymdbnysr21OMY+fwnnrAqZqp9kM/T16pIjlzOOlIIJTGo2DtgKdKrqxTQVMoiIRQqp9bzIVCEVQtDNYU7HYvEUP3h/cQF13EOAIV/qUPBW7k8VaF0ibXYmfFWqVAUFCO6sLDdlaH+aMrmUubag0iKzE4hlW+6VBp9rNXV7eFbKuotf7KqkOXznJeiGmRlKk1ZAqjaCHpfJLqplHWn0A/R5ibfc9X/FYopnpuz5BP9ACQL3yTrL6gz8n4L7gF4KRzHEclg/bfC1JT5ODMZq3OwE12+JztbJBnlmngUVGBdqbLr6xZZIBQpkURdF5K+UUVoSMyURZb0catsokQaMJeD/LzN5nbR73Rotcrvm6Rc5ns6M8PHyk5T12RVSQOsJoRXC3OcM4Laob+V8arvkGS/4kdHRV0onEyMEnyVoJyY2C6qauAJjO47B1hVNmXZ7YzbTS5sqdyj6iMke9wpUkO91nYmosh3rVC5TIbnPIgCNmMJbgjhMwB+BkAXwCsAPhFjXBsxbhLA5wC8H0AE8MkY45+Nc27HcQxlfqmHGGAVxvaDUYK4c5tEcKfoX7xolqSKlyttWPMchbar2/FOWi2rByFXhCzbVMp8ukp+6Ha5IAbwvhbvNjaspZJCyC5efPB78iiM61L4MoD3xxifBPA9bLVDH8FvA/jjGOO7AfwAgBfHPK/jODsolyky8k2qeeJ+MMqdMaqB59TUdgHVYuH0tNULlk9ZaKEsSTIEbjck2vLxapFs5xj5uZM/EAq1W1vjj1S1yhC5uTnedrpG9oux/h0xxi8lHn4NwMd2jgkhVAH8ZQB/bes5XdAidhxnnxkVm7sfVKsUKQmRyiTuRJllqg38sII/PW1RFJnM/Zf+o8jleC6FxykMLka6CORSGCWeatuuyAz5lpXwIHfGfrOfPtxPAvi9EdvfDmARwD8OIfwAgG8A+FSMcYRXyHGc44isV3Vv2GshUKUP3+rxHzaKIknSqlV2nVKPCwVGboxKjVb/tmR8ssLhgP0pVDNyvg8aEEL4Sgjh2yNuH02M+TSAPoDPjzhEBsAHAPz9GOMPAWgA+Nt7nO/pEMJzIYTnFhcX3/ILchzn4HirIW6HhbokK8Z4etqENplpJ+QXVliaUEjew6Zgv1UeaOHGGD+01/4QwscBfATAB2Mc2efyFoBbMcavbz3+AvYQ3BjjswCeBYDr168fQN9Mx3FOI/IF77Ro02mKq+raKopBrYBSKavjcO0axx7Uj8q4UQofBvDrAH4ixtgcNSbG+GYI4WYI4V0xxpcAfBDAd8Y5r+M4ziiUWJFEqcxJqzVZbEfxzlNT+5/osJNxfbifBZAH8OXAn5WvxRh/JYRwEcDnYoxPbY376wA+H0LIAXgVwCfGPK/jOM59VCpmyYpq9X6rV7Uh+n2zeverb9lejBul8MQu2+8AeCrx+HkA18c5l+M4zoNIpxnepbKV6ua7G5nM/pdg3AvPNHMc51QRwu6LXlplOgxrdhQuuI7jnHpiZIJDq8X7xeL9CRiHwTEM8HAcx9lfVGtBFq5azR82LriO45x6RmWbHVT67l644DqOc+oZ5To4Cj+uC67jOKeencXbd9t20PiimeM4px4VL1cZx2Jx/0pXvhVccB3HORM8SnGc/cZdCo7jOIeEC67jOM4h4YLrOI5zSLjgOo7jHBIuuI7jOIeEC67jOM4hEUY3aTgehBAWAbzxiE+fBbC0j9N5VHwe2/F5bMfnsZ3TMI+3xRjnRu041oI7DiGE52KMR16D1+fh8/B5+DyEuxQcx3EOCRdcx3GcQ+I0C+6zRz2BLXwe2/F5bMfnsZ1TPY9T68N1HMc5bpxmC9dxHOdY4YLrOI5zSJw6wQ0hfCaE8N0QwrdCCF8MIUzu2H81hLAZQvjVo5hHCOGvhBC+EUL4N1t/f/Io5rG175kQwsshhJdCCD99wPP4hRDCCyGEYQjhemJ7NoTwT7bejxdDCM8cxTy29j0ZQvizrf3/JoRQOIp5bO0/rM/pbv+Xw/6c7vV/ObTP6Y7z/mAI4WshhOdDCM+FEH547IPGGE/VDcBPAchs3f8NAL+xY//vA/jnAH71KOYB4IcAXNy6/34At49oHu8F8BcA8gAeA/AKgPQBzuM9AN4F4KsArie2/xKAf7Z1vwTgdQDXjmAeGQDfAvADW49njuL9OILP6W7vx2F/Tnebx6F+TnfM6UsA/oOt+08B+Oq4xzx1BchjjF9KPPwagI/pQQjhPwTwKoDGUc0jxvjNxPYXABRCCPkYY+cw5wHgo6DQdQC8FkJ4GcAPA/izA5rHiwAQ7m8kFQGUQwgZAEUAXQDrBzGHB8zjpwB8K8b4F1vjlg9qDg+Yx2F/TkfO4wg+p7u9H4f6Od05LQDVrfs1AHfGPeCpcyns4JMA/ncACCGUAfw6gL9zlPPYwX8E4JsH9SF+wDwuAbiZ2Hdra9th8wVQWO4CuAHgN2OMK0cwj3cCiCGEPwkh/OsQwq8dwRyO+nO6G4f9OU1ylJ/TvwHgMyGEmwB+E8DY7q4TaeGGEL4C4PyIXZ+OMf7B1phPA+gD+PzWvr8D4H+IMW6OsioOcR567vvAS/yfOqJ5jHoTxooRfJh5jOCHAQwAXAQwBeD/CSF8Jcb46iHPIwPgxwH82wCaAP5VCOEbMcZ/dcjzOJLP6R7PPdTP6ainjdi2b7Gse80JwAcB/M0Y4++HEP5jAP8IwIfGOd+JFNwY454vOoTwcQAfAfDBuOWAAfAjAD4WQvh7ACYBDEMI7RjjZw95HgghXAbwRQD/aYzxlUc9/5jzuAXgSmLYZYx5yfSgeezCLwH44xhjD8BCCOFPAVwHL6kPcx63APxfMcYlAAgh/BGADwB4ZMF9xHkc+ud0Nw77c7oL+/45TbLXnEII/xTAp7Ye/nMAnxv3fKfOpRBC+DB4SfazMcamtscY/70Y47UY4zUAvwXgvx3nQ/yo89iKEvhDAM/EGP/0oM7/oHkA+JcAfjGEkA8hPAbgHQD+v4OezwhuAPjJQMoAfhTAd49gHn8C4MkQQmnLn/wTAL5z2JM47M/pbhz253QPjvJzegf8HADATwL4/thHPIzVvsO8AXgZ9Pk8v3X7ByPG/Dc4+NXfkfMA8F+DPsvnE7f5o3g/wMumVwC8hK3V2AOcx8+B1koHwD0Af7K1vQJaDy+AAvdfHcU8tvb98tY8vg3g7x3VPA75c7rb/+WwP6d7/V8O7XO6Y04/DuAbYJTE1wH8W+Me01N7HcdxDolT51JwHMc5rrjgOo7jHBIuuI7jOIeEC67jOM4h4YLrOI5zSLjgOo7jHBIuuI7jOIfE/w/qOBRz/PSPfQAAAABJRU5ErkJggg==\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -356,43 +260,57 @@ } ], "source": [ - "mags = pop.Magnitude(6., presets='hst')\n", - "beta = pop.Beta(6., presets='hst')\n", - "\n", + "filt, mags = pop.get_mags(6., presets='hst', wave=1600., )\n", + "beta = pop.get_beta(6., presets='hst')\n", "pl.scatter(mags, beta, alpha=0.1, color='b', edgecolors='none')" ] }, { "cell_type": "markdown", - "id": "ac22159d", + "id": "d3994a68", "metadata": {}, "source": [ - "which computes the UV slope $\\beta$ using the *Hubble* filters appropriate for the input redshift (see Table A1 in the paper).\n", + "This will take order $\\simeq 10$ seconds, as modeling UV colours requires synthesizing a reasonbly high resolution ($\\Delta \\lambda = 20 \\unicode{x212B}$ by default) spectrum for each galaxy in the model, so that there are multiple points within photometric windows.\n", "\n", - "**NOTE:** Other ``presets`` include ``'jwst'``, ``'jwst-w'``, ``'jwst-m'``, and ``'calzetti1994'``.\n", + "This example computes the UV slope $\\beta$ using the *Hubble* filters appropriate for the input redshift (see Table A1 in the paper).\n", "\n", + "**NOTE:** Other ``presets`` include ``'jwst'``, ``'jwst-w'``, ``'jwst-m'``, and ``'calzetti1994'``." + ] + }, + { + "cell_type": "markdown", + "id": "ac22159d", + "metadata": {}, + "source": [ "You can bin points in the $M_{\\text{UV}}-\\beta$ plane, if you prefer it, via the ``return_binned`` keyword argument," ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "id": "50d956c7", "metadata": {}, "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "l(nu): 100% |###############################################| Time: 0:00:00 \n" + ] + }, { "data": { "text/plain": [ "" ] }, - "execution_count": 8, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWMAAAD4CAYAAAA5FIfVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAARG0lEQVR4nO3df6zddX3H8edrYEBRgwldm4KsLrgfyNh0d07mtjbSbawiDAYJM25s/MFMdHM/jNiQxfjHTDaMuoRtpnEzyyAzC7NxGUVo3SqbEedFGLYWCWrEWqqX/XJKNkTe++OeyqWcc++593vuPZ9zzvORnNDz/X7u/bx7y/fVTz/fz/dzUlVIksbre8ZdgCTJMJakJhjGktQAw1iSGmAYS1IDTh13Acs566yzatu2beMuQ5KGdu+99z5WVZtW+3VNh/G2bduYn58fdxmSNLQkX17L1zlNIUkNMIwlqQGGsSQ1wDCWpAYYxpLUgE5hnOTqJIeTPJVkboW2pyS5L8k/dOlTkqZR15HxIeBK4O4h2r4FONKxP0maSp3CuKqOVNXnV2qX5BzgtcAHuvQnSdNqo+aM3we8DXhqpYZJrk8yn2R+YWFhVZ3s2LH4kqRJs2IYJzmQ5FCf1+XDdJDkUuDrVXXvMO2rak9VzVXV3KZNq36iUJIm0oqPQ1fVzo59vBq4LMku4HTghUluqao3dPy+kjQ11n1viqraDewGSLIDeOuog3jLFvja155+nyz+d/NmOH58lD1J0vrourTtiiRHgYuA25Pc2Tu+Ncm+URQ4jKVBPMxxSWpNp5FxVe0F9vY5fgzY1ef4QeBglz5H5cSNvoMHx1mFJC3yCTxJaoBhLEkNMIwlqQFTEcabN6/uuCS1pumPXRrWieVr3pSTNKmmYmQsSZPOMJakBkzFNMUJTk9ImlSOjCWpAYaxJDXAMJakBkzVnPEw3OFNUotmbmTsDm+SWjRzYSxJLTKMJakBhrEkNcAwXoGfOC1pI8xcGLvDm6QWzdzStvXa4c0d4yR1MXMjY0lqkWEsSQ0wjCWpAYaxJDXAMJakBszcaopRc+MhSaPgyLij1W485EMkkvrpFMZJrk5yOMlTSeaWaXdmktuSPJjkSJKLuvS7EbZsWRzlfvzji69k8bVly7grkzSNuo6MDwFXAnev0O5PgI9W1Q8BPwoc6djvunOrTUkbqdOccVUdAciJidI+krwQ+Fng13tf8wTwRJd+R8En5SS1ZCPmjL8fWAA+mOS+JB9IcsYG9CtJE2PFME5yIMmhPq/Lh+zjVOAVwJ9X1cuBbwFvX6a/65PMJ5lfWFgYsovxceMhSaOw4jRFVe3s2MdR4GhVfar3/jaWCeOq2gPsAZibm6uOfa+79dp4SNJsWfdpiqo6DnwlyQ/2Dl0MfG69++3KEa+kjdR1adsVSY4CFwG3J7mzd3xrkn1Lmv4WcGuSB4AfA97Vpd+NcPw4VMH27YuvqsWXD3JIWg9dV1PsBfb2OX4M2LXk/f3AwHXIs2C1T+o57SHNFp/A2yCuW5a0HPemGBFHsJK6cGQsSQ0wjCWpAYaxJDXAMN4grluWtBxv4K1gVDfmfFJP0nIcGUtSAwxjSWqA0xSN8TP1pNnkyLgxPqknzSbDWJIaYBhPOD9tWpoOhrEkNcAwlqQGuJpig630sMfmzf1v1vmknjTdDOPG+KSeNJucppCkBhjGktQAw1iSGmAYS1IDvIE3odzDQpoujownlHtYSNPFMJakBjhN0SjXF0uzxZGxJDXAMJakBnQK4yRXJzmc5Kkkc8u0+91eu0NJ/ibJ6V36lZ82LU2briPjQ8CVwN2DGiQ5G/htYK6qLgBOAa7p2O/MO34cqmD79sVX1eLLZW3SZOp0A6+qjgDkxCLX5ft5bpJvA88DjnXpV5KmzbrPGVfVV4F3A48AjwL/XVV3DWqf5Pok80nmFxYW1rs8SWrCimGc5EBvrvfk1+XDdJDkRcDlwEuArcAZSd4wqH1V7amquaqa27Rp07C/D0maaCtOU1TVzo597AS+VFULAEk+DPwUcEvH7ytJU2MjlrY9ArwqyfOyOLl8MXBkA/qVpInRdWnbFUmOAhcBtye5s3d8a5J9AFX1KeA24DPAZ3t97ulUtSRNma6rKfYCe/scPwbsWvL+HcA7uvQlSdPMJ/BmyI4dT3+2nqS2uFHQhHNDIWk6ODKWpAYYxpLUAMNYkhpgGEtSAwxjSWqAYSxJDXBp2wzYsuWZnxp9YsfTzZvd/1hqhSPjGbA0iIc5LmnjGcaS1ADDWJIaYBhLUgMMY0lqgGE8AzZvXt1xSRvPpW0z4MTytRPbZ66009uw7SSNjiNjSWqAYSxJDTCMJakBhrEkNcAwlqQGuJpihrg6QmqXI2NJaoBhLEkNMIwlqQHOGeu73IReGp9OI+MkNyV5MMkDSfYmOXNAu0uSfD7Jw0ne3qVPrR83oZfGp+s0xX7ggqq6EHgI2H1ygySnAH8K/CJwPvArSc7v2K8kTZVOYVxVd1XVk7239wDn9Gn2SuDhqvpiVT0BfAi4vEu/asOOHU9vKiSpm1HewLsOuKPP8bOBryx5f7R3rK8k1yeZTzK/sLAwwvIkqV0r3sBLcgDY0ufUjVX1kV6bG4EngVv7fYs+x2pQf1W1B9gDMDc3N7CdJE2TFcO4qnYudz7JtcClwMVV1S88jwIvXvL+HODYaorUxti8uf/NOjehl9Zfp6VtSS4BbgC2V9XjA5p9GnhpkpcAXwWuAV7fpV+tj9VuQi9pdLquM74ZOA3Yn8VFqfdU1RuTbAU+UFW7qurJJG8G7gROAf6yqg537Fdj5HpkafQ6hXFVnTfg+DFg15L3+4B9XfpSO1yPLI2ej0NLUgMMY0lqgGEsSQ0wjCWpAYaxVm3QumPXI0tr5xaaWjXXI0uj58hYkhrgyFjPMuqRriNoaWWGsdbMcJVGx2kKSWqAYSxJDTCMJakBhrEkNcAwlqQGGMaS1ACXtmnduAm9NDxHxlo3bkIvDc8wlqQGGMaS1ADDWJIaYBirGTt2PL2pkDRrDGOtGzehl4bn0jatGzehl4bnyFiSGuDIWGPnwyGSI2M1wIdDpI5hnOSmJA8meSDJ3iRn9mnz4iT/lORIksNJ3tKlT0maRl1HxvuBC6rqQuAhYHefNk8Cv19VPwy8CnhTkvM79qsZ5zI4TZtOc8ZVddeSt/cAV/Vp8yjwaO/X/5PkCHA28LkufWtyuIpCWtko54yvA+5YrkGSbcDLgU8t0+b6JPNJ5hcWFkZYniS1a8UwTnIgyaE+r8uXtLmRxemIW5f5Ps8H/g74nar6xqB2VbWnquaqam7Tpk2r+91oIvlwiDTENEVV7VzufJJrgUuBi6uqBrR5DotBfGtVfXgthWp6+XCI1HHOOMklwA3A9qp6fECbAH8BHKmq93TpT5KmVdc545uBFwD7k9yf5P0ASbYm2ddr82rgV4HX9Nrcn2RXx34laap0XU1x3oDjx4BdvV//C5Au/Wg2OD2hWebj0JooPjqtaeXj0JooPjqtaWUYS1IDDGNJaoBhLEkNMIw11dxQSJPCMNZE8dFpTSuXtmmi+Oi0ppVhrKm02vXIhrvGzWkKTSXXI2vSGMaS1ADDWJIaYBhLUgMMY0lqgKspNJFWWvWweXP/m3Unr0d2Fzi1wjDWVBp2PfJqV124BE7rxWkKSWqAI2NNNUewmhSOjCWpAYaxJDXAaQrNNFddqBWGsWaaqy7UCqcpJKkBjoylEXLrTq2VI2NphNZz604/Qmq6GcaS1IBO0xRJbgJeBzwBfAH4jar6rwFtTwHmga9W1aVd+pVGbVR7XUhr1XVkvB+4oKouBB4Cdi/T9i3AkY79SWNx/DhUwfbti6+qxVeLy9qczphMnUbGVXXXkrf3AFf1a5fkHOC1wB8Cv9elT2karOZGn2ucZ8Mo54yvA+4YcO59wNuAp0bYn9ScQdMWJx9fzY0+P89vNqw4Mk5yANjS59SNVfWRXpsbgSeBW/t8/aXA16vq3iQ7hujveuB6gHPPPXel5lJThn2IZBrN4u95lFYM46raudz5JNcClwIXV1X1afJq4LIku4DTgRcmuaWq3jCgvz3AHoC5ubl+308am2GDZhyB5BrnydZpmiLJJcANwGVV9Xi/NlW1u6rOqaptwDXAPw4KYklrt17TGd4Q3Bhd54xvBl4A7E9yf5L3AyTZmmRf5+okzbRZ+oug62qK8wYcPwbs6nP8IHCwS5/SNFjNuuVRr3FuYXWGUyTP5t4U0his5kbfqG8KDjudMWxotxDu08DHoSX1NWxot7D0btjpjFG3GyVHxtKUmKZHtmdxtG0YS1NiEtY4DxuyLYy2N5phLI3RagKzxXBdrVkM2WEZxtKMmcXpjEm4GekNPGnGDLsD3bD7bAzbbj2M+ibjOEfujoylKTOq6Yxh56AnYa56EhjG0oxqOTSnaSplWIaxpA0zbMjO4mjbMJa0rFHuVDeLITssb+BJatbBg8sH9qhvMo7zZqQjY0kTa9Q3Gcc5cndkLEkNcGQsacM5V/xshrGkidfyx2ENyzCWpJOMI7SdM5akBhjGktQAw1iSGmAYS1IDDGNJaoBhLEkNMIwlqQGGsSQ1wDCWpAakqsZdw0BJFoAvr/LLzgIeW4dyRskaR6P1GluvD6xxFE6u7/uqatNqv0nTYbwWSearam7cdSzHGkej9Rpbrw+scRRGVZ/TFJLUAMNYkhowjWG8Z9wFDMEaR6P1GluvD6xxFEZS39TNGUvSJJrGkbEkTRzDWJIaMDVhnOSmJA8meSDJ3iRnnnT+3CTfTPLWMZU4sMYkP5fk3iSf7f33NS3V1zu3O8nDST6f5BfGUV+vjquTHE7yVJK5Jcefk+Svej/DI0l2t1Zj79yFST7ZO//ZJKe3VmPv/Fivl2X+nJu4VparsXdu1dfL1IQxsB+4oKouBB4CTr4Y3wvcseFVPdOgGh8DXldVPwJcC/x1S/UlOR+4BngZcAnwZ0lOGVONh4ArgbtPOn41cFrvZ/jjwG8m2bbBtZ3Qt8YkpwK3AG+sqpcBO4Bvb3h1iwb9HE8Y9/UyqL5WrhUY/Oe8putlaj4Dr6ruWvL2HuCqE2+S/BLwReBbG1zWMwyqsaruW3L8MHB6ktOq6v9aqA+4HPhQr54vJXkYeCXwyY2sD6CqjgAkedYp4Ixe4D0XeAL4xsZW1ytkcI0/DzxQVf/Wa/fvG1zady1TYxPXy6D6WrlWerUM+hmu6XqZppHxUtfR+1s9yRnADcA7x1rRs323xpP8MnDfOP7nOsnS+s4GvrLk3NHesZbcxmJ4PAo8Ary7qv5jvCU9yw8AleTOJJ9J8rZxF3Syhq+Xflq5Vk62putlokbGSQ4AW/qcurGqPtJrcyPwJHBr79w7gfdW1Tf7jQIaqfHE174M+CMWR1At1dfvB7duayKHqbGPVwLfAbYCLwL+OcmBqvpiQzWeCvw08BPA48DHktxbVR9rqMYNu17WWN+Jr133a6XXz1pqXNP1MlFhXFU7lzuf5FrgUuDienoB9U8CVyX5Y+BM4Kkk/1tVNzdUI0nOAfYCv1ZVX1iP2jrUdxR48ZJm5wDH1qfClWsc4PXAR6vq28DXk3wCmGPxn9sjt8YajwIfr6rHAJLsA14BrEsYr7HGDbte1ljfhl0r0OnPedXXy9RMUyS5hMV/Xl1WVY+fOF5VP1NV26pqG/A+4F3rFcRrrbG3auF2YHdVfWIctfXq6Fsf8PfANUlOS/IS4KXAv46jxmU8Arwmi84AXgU8OOaaTnYncGGS5/XmtrcDnxtzTc/Q0vXSTyvXygrWdL1MTRgDNwMvAPYnuT/J+8ddUB+DanwzcB7wB73j9yf53lbqq6rDwN+yGBwfBd5UVd8ZQ30kuSLJUeAi4PYkd/ZO/SnwfBbvcH8a+GBVPdBSjVX1n8B7evXdD3ymqm5vqcZWLFNfK9fKcn/Oa7pefBxakhowTSNjSZpYhrEkNcAwlqQGGMaS1ADDWJIaYBhLUgMMY0lqwP8DJGQkC4cAOvEAAAAASUVORK5CYII=\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -406,25 +324,31 @@ "source": [ "# Plot scatter in each MUV bin as errorbars\n", "mags = np.arange(-25, -10, 0.5) # bin centers\n", - "beta, beta_s = pop.Beta(6., presets='hst', Mbins=mags, return_binned=True,\n", + "beta, beta_s = pop.get_beta(6., presets='hst', Mbins=mags, return_binned=True,\n", " return_scatter=True)\n", "\n", "pl.errorbar(mags, beta, yerr=beta_s.T, color='b', marker='s', fmt='o')" ] }, + { + "cell_type": "markdown", + "id": "836ad1ff", + "metadata": {}, + "source": [ + "**NOTE:** Computing colors from fits in the [Calzetti et al. 1994](https://ui.adsabs.harvard.edu/abs/1994ApJ...429..582C/abstract>) windows requires higher spectral resolution, given that these windows are each only $\\Delta \\lambda \\sim 10 \\unicode{x212B}$ wide. Adjust the ``dlam`` keyword argument to increase the wavelength-sampling used prior to photometric UV slope estimation." + ] + }, { "cell_type": "markdown", "id": "bf550379", "metadata": {}, "source": [ - "Recall that each galaxy in the model actually represents an \"average\" galaxy in some halo mass bin, i.e., there is not a 1:1 correspondence between galaxies and elements in ``mags`` and ``beta`` above, which is why we generally weight by halo abundance in each bin. The default mass-bins have $\\Delta \\log_{10} M_h = 0.01$ wide, within which ARES inject ``pop_thin_hist`` halos and down-weights their abundance accordingly.\n", - "\n", "Lastly, to extract the \"raw\" galaxy population properties, like SFR, stellar mass, etc., you can use the ``get_field`` method, e.g.," ] }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "id": "79035a8f", "metadata": {}, "outputs": [], @@ -445,7 +369,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 9, "id": "9e9a6612", "metadata": {}, "outputs": [ @@ -455,7 +379,7 @@ "dict_keys(['nh', 'Mh', 'MAR', 't', 'z', 'children', 'zthin', 'SFR', 'Ms', 'MZ', 'Md', 'Sd', 'fcov', 'Mg', 'Z', 'bursty', 'pos', 'Nsn', 'rand'])" ] }, - "execution_count": 10, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -491,6 +415,22 @@ "\n", "For more information on what's happening under the hood, e.g., with regards to spectral synthesis and noisy star-formation histories, see [Example: spectral synthesis](../example_pop_sps.html).\n" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fb1ba5be", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b3daebef", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { diff --git a/docs/examples/example_pop_galaxy.ipynb b/docs/examples/example_pop_galaxy.ipynb index 785624bd3..739e854c6 100644 --- a/docs/examples/example_pop_galaxy.ipynb +++ b/docs/examples/example_pop_galaxy.ipynb @@ -127,7 +127,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 4, @@ -150,7 +150,7 @@ "source": [ "z = 6\n", "MUV = np.linspace(-24, -10)\n", - "lf = pop.LuminosityFunction(z, MUV)\n", + "_bins, lf = pop.get_lf(z, MUV)\n", "\n", "pl.semilogy(MUV, lf)" ] @@ -191,7 +191,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -341,7 +341,7 @@ "for i, z in enumerate(redshifts):\n", " obslf.Plot(z=z, round_z=0.3, ax=axes[i])\n", " \n", - " lf = pop.LuminosityFunction(z, MUV)\n", + " _bins, lf = pop.get_lf(z, MUV)\n", " axes[i].semilogy(MUV, lf)\n", " axes[i].annotate(r'$z \\simeq %.1f$' % z, (-24, 1e-1))\n", " axes[i].legend(loc='lower right')" @@ -405,7 +405,7 @@ "By default, *ARES* will derive the mass accretion rate (MAR) onto halos from the HMF itself (see Section 2.2 of [Furlanetto et al. 2017](http://adsabs.harvard.edu/abs/2017MNRAS.472.1576F>) for details). That is, ``pop_MAR='hmf'`` by default. There are also two other options:\n", "\n", "* Plug-in your favorite mass accretion model as a lambda function, e.g., ``pop_MAR=lambda z, M: 1. * (M / 1e12)**1.1 * (1. + z)**2.5``.\n", - "* Grab a model from ``litdata``. The median MAR from McBride et al. (2009) is included (same as above equation), and can used as ``pop_MAR='mcbride2009'``. If you'd like to add more options, use ``$ARES/input/litdata/mcbride2009.py`` as a guide.\n", + "* Grab a model from ``litdata``. The median MAR from McBride et al. (2009) is included (same as above equation), and can used as ``pop_MAR='mcbride2009'``. If you'd like to add more options, use ``ares/input/litdata/mcbride2009.py`` as a guide.\n", "\n", "**WARNING:** Note that the MAR formulae determined from numerical simulations may not have been calibrated at the redshifts most often targeted in *ARES* calculations, nor are they guaranteed to be self-consistent with the HMF used in *ARES*. One approach used in [Sun \\& Furlanetto (2016)](http://adsabs.harvard.edu/abs/2016MNRAS.460..417S>) is to re-normalize the MAR by requiring its integral to match that predicted by $f_{\\text{coll}}(z)$, which can boost the accretion rate at high redshifts by a factor of few. Setting ``pop_MAR_conserve_norm=True`` will enforce this condition in *ARES*.\n", "\n", diff --git a/docs/examples/example_pop_popIII.ipynb b/docs/examples/example_pop_popIII.ipynb index 7ed8c4d1d..db24a34e8 100644 --- a/docs/examples/example_pop_popIII.ipynb +++ b/docs/examples/example_pop_popIII.ipynb @@ -52,11 +52,12 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Parameter Bundle ####\n", - "##############################################################################################################\n", - "#### UPDATE: Setting pop_Tmin{0} -> None [previously pop_Tmin{0} = 1.00e+04] ####\n", - "##############################################################################################################\n" + "############################################################################\n", + "## Parameter Bundle ##\n", + "############################################################################\n", + "## UPDATE: Setting pop_Tmin{0} -> None ##\n", + "## [ previously pop_Tmin{0} = 1.00e+04] ##\n", + "############################################################################\n" ] } ], @@ -165,6 +166,41 @@ { "cell_type": "code", "execution_count": 3, + "id": "a20eee1a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "############################################################################\n", + "## Parameter Bundle ##\n", + "############################################################################\n", + "## UPDATE: Setting pop_Tmin{0} -> None ##\n", + "## [ previously pop_Tmin{0} = 1.00e+04] ##\n", + "############################################################################\n" + ] + } + ], + "source": [ + "pars = ares.util.ParameterBundle('mirocha2017:base') \\\n", + " + ares.util.ParameterBundle('mirocha2018:high')\n", + "\n", + "# Track the PopII and III SFRDs and Mmin values separately\n", + "blobs = ares.util.BlobBundle(**ares.util.ParameterBundle('mirocha2018:csfr_blobs')) \n", + "\n", + "pars.update(blobs)\n", + "\n", + "pars['feedback_LW'] = True\n", + "pars['feedback_LW_maxiter'] = 10\n", + "pars['pop_sfr{2}'] = 1e-5\n", + "pars['pop_time_limit{2}'] = 100." + ] + }, + { + "cell_type": "code", + "execution_count": 4, "id": "00c31299", "metadata": {}, "outputs": [ @@ -173,53 +209,25 @@ "output_type": "stream", "text": [ "\r", - "grid: N/A% | | ETA: --:--:-- " + "grid: N/A% | | ETA: --:--:-- " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\n", - "##############################################################################################################\n", - "#### Parameter Bundle ####\n", - "##############################################################################################################\n", - "#### UPDATE: Setting pop_Tmin{0} -> None [previously pop_Tmin{0} = 1.00e+04] ####\n", - "##############################################################################################################\n", "Starting 4-element model grid.\n", "Running 4-element model grid.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n" + "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n" ] }, { @@ -227,46 +235,24 @@ "output_type": "stream", "text": [ "\r", - "grid: 25% |#################### | ETA: 0:25:46 " + "grid: 25% |############ | ETA: 0:29:28 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #1: Thu Aug 26 13:51:19 2021\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", + "Checkpoint #1: Wed Feb 9 09:31:43 2022\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n" + "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n" ] }, { @@ -274,46 +260,24 @@ "output_type": "stream", "text": [ "\r", - "grid: 50% |######################################### | ETA: 0:17:02 " + "grid: 50% |######################## | ETA: 0:18:55 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #2: Thu Aug 26 13:59:46 2021\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", + "Checkpoint #2: Wed Feb 9 09:40:49 2022\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n" + "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n" ] }, { @@ -321,40 +285,22 @@ "output_type": "stream", "text": [ "\r", - "grid: 75% |############################################################# | ETA: 0:08:25 " + "grid: 75% |#################################### | ETA: 0:09:18 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #3: Thu Aug 26 14:08:00 2021\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", + "Checkpoint #3: Wed Feb 9 09:49:50 2022\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# WARNING: revisit scalability wrt fesc.\n", - "# WARNING: revisit scalability wrt fesc.\n" + "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n" ] }, { @@ -362,48 +308,36 @@ "output_type": "stream", "text": [ "\r", - "grid: 100% |##################################################################################| ETA: 00:00:00 " + "grid: 100% |################################################| ETA: 00:00:00 " ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Checkpoint #4: Thu Aug 26 14:14:45 2021\n" + "Checkpoint #4: Wed Feb 9 09:57:11 2022\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "grid: 100% |##################################################################################| Time: 0:32:02 \n" + "grid: 100% |################################################| Time: 0:35:18 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Processor 0: Wrote popIII_grid.*.pkl (Thu Aug 26 14:14:46 2021)\n", - "Calculation complete: Thu Aug 26 14:14:46 2021\n", - "Elapsed time (min) : 32\n" + "Processor 0: Wrote popIII_grid.*.pkl (Wed Feb 9 09:57:12 2022)\n", + "Calculation complete: Wed Feb 9 09:57:12 2022\n", + "Elapsed time (min) : 35.3\n" ] } ], "source": [ - "pars = ares.util.ParameterBundle('mirocha2017:base') \\\n", - " + ares.util.ParameterBundle('mirocha2018:high')\n", - "\n", - "pars['feedback_LW'] = True\n", - "pars['feedback_LW_maxiter'] = 10\n", - "pars['pop_sfr{2}'] = 1e-5\n", - "pars['pop_time_limit{2}'] = 100.\n", - "\n", - "# Track the PopII and III SFRDs and Mmin values separately\n", - "blobs = ares.util.BlobBundle(**ares.util.ParameterBundle('mirocha2018:csfr_blobs')) \n", - "\n", - "pars.update(blobs)\n", - "\n", "# Initialize a ModelGrid object.\n", + "pars['verbose'] = False\n", "mg = ares.inference.ModelGrid(**pars)\n", "\n", "# Just vary one parameter for now.\n", @@ -417,7 +351,7 @@ "id": "fa8bb5ed", "metadata": {}, "source": [ - "To speed this up, you could loosen the tolerance, e.g., ``feedback_LW_sfrd_rtol=0.2`` instead of the default ``feedback_LW_sfrd_rtol=0.05``.\n", + "To speed this up, you could loosen the tolerance, e.g., ``feedback_LW_sfrd_rtol=0.2`` instead of the default ``feedback_LW_sfrd_rtol=0.05``, or further reduce ``feedback_LW_maxiter``.\n", "\n", "**NOTE:** You can enter the above in Python script and invoke with ``mpirun`` if you've got MPI and *mpi4py* installed.\n", "\n", @@ -427,8 +361,8 @@ }, { "cell_type": "code", - "execution_count": 4, - "id": "c4e00720", + "execution_count": 5, + "id": "357b0753", "metadata": {}, "outputs": [ { @@ -436,35 +370,42 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Analysis: Model Set ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Basic Information ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### path : ./ ####\n", - "#### prefix : popIII_grid ####\n", - "#### N-d : 1 ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### param #00: pop_time_limit{2} ####\n", - "##############################################################################################################\n", - "\n", - "# Loaded popIII_grid.000.blob_1d.popIII_sfrd_tot.pkl\n" + "############################################################################\n", + "## Analysis: Model Set ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Basic Information ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## path : ./ ##\n", + "## prefix : popIII_grid ##\n", + "## N-d : 1 ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## param #00: pop_time_limit{2} ##\n", + "############################################################################\n", + "\n" ] - }, + } + ], + "source": [ + "anl = ares.analysis.ModelSet('popIII_grid')" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "53d7b273", + "metadata": {}, + "outputs": [ { - "data": { - "text/plain": [ - "(1e-08, 0.01)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" + "name": "stdout", + "output_type": "stream", + "text": [ + "# Loaded popIII_grid.000.blob_1d.popIII_sfrd_tot.pkl\n" + ] }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -473,6 +414,32 @@ "needs_background": "light" }, "output_type": "display_data" + } + ], + "source": [ + "# Plot the time_limit vs. SFRD(z=105)\n", + "from ares.physics.Constants import rhodot_cgs\n", + "ax1 = anl.Scatter(['pop_time_limit{2}', 'popIII_sfrd_tot'], \n", + " ivar=[None, 10.], multiplier=[1, rhodot_cgs], fig=1)\n", + "\n", + "ax1.set_yscale('log')" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "c4e00720", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1e-08, 0.01)" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" }, { "data": { @@ -488,16 +455,6 @@ } ], "source": [ - "anl = ares.analysis.ModelSet('popIII_grid')\n", - "\n", - "# Plot the time_limit vs. SFRD(z=15)\n", - "from ares.physics.Constants import rhodot_cgs\n", - "ax1 = anl.Scatter(['pop_time_limit{2}', 'popIII_sfrd_tot'], \n", - " ivar=[None, 15.], multiplier=[1, rhodot_cgs], fig=1)\n", - "\n", - "ax1.set_yscale('log')\n", - "ax1.set_ylim(1e-8, 1)\n", - "\n", "# Just show all the PopIII SFRDs\n", "ax2 = anl.ReconstructedFunction('popIII_sfrd_tot', samples='all', color='b', fig=2, multiplier=[rhodot_cgs])\n", "ax2.set_yscale('log')\n", @@ -514,7 +471,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 8, "id": "dd1d1660", "metadata": {}, "outputs": [ @@ -523,63 +480,66 @@ "output_type": "stream", "text": [ "\n", - "##############################################################################################################\n", - "#### Parameter Bundle ####\n", - "##############################################################################################################\n", - "#### UPDATE: Setting pop_Tmin{0} -> None [previously pop_Tmin{0} = 1.00e+04] ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## Parameter Bundle ##\n", + "############################################################################\n", + "## UPDATE: Setting pop_Tmin{0} -> None ##\n", + "## [ previously pop_Tmin{0} = 1.00e+04] ##\n", + "############################################################################\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "\n", - "##############################################################################################################\n", - "#### Analysis: Model Set ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Basic Information ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### path : ./ ####\n", - "#### prefix : popIII_grid ####\n", - "#### N-d : 1 ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### param #00: pop_time_limit{2} ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## Analysis: Model Set ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Basic Information ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## path : ./ ##\n", + "## prefix : popIII_grid ##\n", + "## N-d : 1 ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## param #00: pop_time_limit{2} ##\n", + "############################################################################\n", "\n", "# Loaded popIII_grid.000.blob_1d.popIII_Mmin.pkl\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "\n", - "##############################################################################################################\n", - "#### ARES Simulation: Overview ####\n", - "##############################################################################################################\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Source Populations ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### sfrd sed radio O/IR Ly-a LW Ly-C X-ray RTE ####\n", - "#### pop #0 : sfe-func yes x x x x ####\n", - "#### pop #1 : link:sfrd:0 yes x x ####\n", - "#### pop #2 : sfr-func yes x x x x ####\n", - "#### pop #3 : link:sfrd:2 yes x x ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Notes ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### + pop_calib_lum != None, which means changes to pop_Z will *not* affect UVLF. ####\n", - "#### Set pop_calib_lum=None to restore \"normal\" behavior (see S3.4 in Mirocha et al. 2017). ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### Physics ####\n", - "#### ---------------------------------------------------------------------------------------------------- ####\n", - "#### cgm_initial_temperature : 20000 ####\n", - "#### clumping_factor : 3 ####\n", - "#### secondary_ionization : 3 ####\n", - "#### approx_Salpha : 3 ####\n", - "#### include_He : True ####\n", - "#### feedback_LW : True ####\n", - "#### feedback_LW_Mmin : visbal2014 ####\n", - "#### feedback_LW_fsh : None ####\n", - "##############################################################################################################\n", + "############################################################################\n", + "## ARES Simulation: Overview ##\n", + "############################################################################\n", + "## ---------------------------------------------------------------------- ##\n", + "## Source Populations ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## sfrd sed radio O/IR Lya LW LyC Xray RTE ##\n", + "## pop #0 : sfe-func yes - - x x x - x ##\n", + "## pop #1 : sfrd->0 yes - - - - - x x ##\n", + "## pop #2 : sfr-func yes - - x x x - x ##\n", + "## pop #3 : sfrd->2 yes - - - - - x x ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Notes ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## + pop_calib_lum != None, which means changes to pop_Z ##\n", + "## will *not* affect UVLF. Set pop_calib_lum=None to restore ##\n", + "## \"normal\" behavior (see S3.4 in Mirocha et al. 2017). ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## Physics ##\n", + "## ---------------------------------------------------------------------- ##\n", + "## cgm_initial_temperature : 20000 ##\n", + "## clumping_factor : 3 ##\n", + "## secondary_ionization : 3 ##\n", + "## approx_Salpha : 3 ##\n", + "## include_He : True ##\n", + "## feedback_LW : True ##\n", + "## feedback_LW_Mmin : visbal2014 ##\n", + "## feedback_LW_fsh : None ##\n", + "############################################################################\n", "# Loaded $ARES/input/bpass_v1/SEDS/sed.bpass.constant.nocont.sin.z020\n", "# WARNING: revisit scalability wrt fesc.\n", "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #1 complete.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -589,6 +549,7 @@ "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #2 complete: mean_err=4.23e-02, max_err=1.06e+01, z(max_err)=6.8\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -598,6 +559,7 @@ "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #3 complete: mean_err=8.18e-03, max_err=1.64e-01, z(max_err)=7.7\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -607,30 +569,33 @@ "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #4 complete: mean_err=2.25e-03, max_err=4.03e-01, z(max_err)=6.8\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/bpass_v1/SEDS/sed.bpass.constant.nocont.sin.z020\n", "# WARNING: revisit scalability wrt fesc.\n", "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #5 complete: mean_err=1.92e-03, max_err=9.91e-01, z(max_err)=6.8\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", - "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/bpass_v1/SEDS/sed.bpass.constant.nocont.sin.z020\n", "# WARNING: revisit scalability wrt fesc.\n", "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #6 complete: mean_err=7.93e-04, max_err=3.29e-01, z(max_err)=6.8\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -640,6 +605,7 @@ "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# LWB cycle #7 complete: mean_err=3.13e-04, max_err=1.09e-01, z(max_err)=6.8\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -649,6 +615,7 @@ "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/inits/inits_planck_TTTEEE_lowl_lowE_best.txt.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n", @@ -656,14 +623,15 @@ "# WARNING: revisit scalability wrt fesc.\n", "# WARNING: revisit scalability wrt fesc.\n", "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", - "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n" + "# Loaded /Users/jordanmirocha/Dropbox/work/mods/ares/input/optical_depth/optical_depth_planck_TTTEEE_lowl_lowE_best_He_1000x2158_z_5-60_logE_2.3-4.5.hdf5.\n", + "# Loaded $ARES/input/hmf/hmf_ST_planck_TTTEEE_lowl_lowE_best_logM_1400_4-18_z_1201_0-60.hdf5.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "gs-21cm: 100% |###############################################################################| Time: 0:00:02 \n" + "gs-21cm: 100% |#############################################| Time: 0:00:02 \n" ] } ], @@ -689,14 +657,14 @@ "source": [ "*ARES* will initialize a ``ModelGrid`` object using the ``popIII_grid*`` files in the current working directory. Importantly, we've told *ARES* to use the parameter ``pop_time_limit`` to set initial guesses, which seems obvious here but in general we could have more parameters in the grid and we could opt to only use a subset here.\n", "\n", - "If all goes according to plan, *ARES* will use the ``pop_time_limit{2}=10`` grid point, pulling the result for the minimum mass evolution (which we saved as a blob) and using it as the initial guess. This should result in a SFRD very similar, but not identical to, the ``pop_time_limit{2}=10`` model in our grid. And, most importantly, whereas the ``pop_time_limit{2}=10`` model took 20 iterations to complete, the ``pop_time_limit{2}=12'' model should only take 10 (with default tolerances).\n", + "If all goes according to plan, *ARES* will use the ``pop_time_limit{2}=100`` grid point, pulling the result for the minimum mass evolution (which we saved as a blob) and using it as the initial guess. This should result in a SFRD very similar, but not identical to, the ``pop_time_limit{2}=100`` model in our grid. And, most importantly, the ``pop_time_limit{2}=150`` model will take far fewer iterations to complete than the original ``pop_time_limit{2}=100`` run, at least if you set ``feedback_LW_maxiter`` to a much larger number.\n", "\n", "This kind of thing can be very useful if you want to vary parameters that do not affect the PopIII SFRD. In fact this is precisely what we did in `Mirocha et al. (2018) `_. In this case, we knew ahead of time that we would only survey the *exact* models represented in the grid, so we set:" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 9, "id": "b96fb60f", "metadata": {}, "outputs": [], @@ -711,6 +679,22 @@ "source": [ "which told *ARES* not just to use results from the ``ModelGrid`` as first guesses, but to assume they are perfect, in which case no further iteration by the solver is required." ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fde82833", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d4e842d5", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { diff --git a/docs/examples/uth_pq.ipynb b/docs/examples/uth_pq.ipynb index ddafa97f0..95a53236f 100644 --- a/docs/examples/uth_pq.ipynb +++ b/docs/examples/uth_pq.ipynb @@ -89,7 +89,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 3, @@ -188,7 +188,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -293,7 +293,7 @@ { "data": { "text/plain": [ - "[]" + "[]" ] }, "execution_count": 7, diff --git a/docs/history.rst b/docs/history.rst index eea904cb1..1fdfc371a 100644 --- a/docs/history.rst +++ b/docs/history.rst @@ -4,14 +4,24 @@ Development History Here's an attempt to keep track of major changes to the code over time, which will be tagged in the bitbucket repository with version numbers. I haven't followed conventions for version numbering so far. Instead, I've simply tagged commits with a version number when a paper is submitted using that version of the code (e.g., v0.1 and v0.2), or when a series of noteworthy improvements or bug fixes have been made (v0.3). +v0.7 +---- +- Overhaul of documentation to use nbsphinx. + +v0.6 +---- +- First tag since migrating to github. +- Test suite through github actions, at ~70% coverage. +- New features, including dust (`Mirocha, Mason, & Stark (2020) `_), and near-infrared background `Sun et al. (2021) `_. + v0.5 ---- -- This is the version of the code used in `Mirocha & Furlanetto (2019) `_. +- This is the version of the code used in `Mirocha & Furlanetto (2019) `_. - Note that several ``litdata'' modules have been updated so that the year is reflective of the year the paper was *published*, not *submitted*! v0.4 ---- -- This is the version of the code used in `Mirocha et al. (2018) `_. The main addition is global Lyman-Werner feedback, which raises the minimum mass of star-forming halos self-consistently using an iterative technique. +- This is the version of the code used in `Mirocha et al. (2018) `_. The main addition is global Lyman-Werner feedback, which raises the minimum mass of star-forming halos self-consistently using an iterative technique. v0.3 ---- @@ -21,7 +31,7 @@ v0.3 v0.2 ---- -This is the version of the code used in `Mirocha, Furlanetto, \& Sun (submitted) `_. +This is the version of the code used in `Mirocha, Furlanetto, \& Sun (2017) `_. Main (new) features: @@ -33,17 +43,9 @@ Main (new) features: v0.1 ---- -This is the version of the code used in `Mirocha et al. (2015) `_. +This is the version of the code used in `Mirocha et al. (2015) `_. Main features: - Simple physical models for the global 21-cm signal available. - Can use * `emcee `_ to fit these models to data. - - - - - - - - diff --git a/docs/install.rst b/docs/install.rst index fa838ed2b..1170ef112 100644 --- a/docs/install.rst +++ b/docs/install.rst @@ -26,10 +26,6 @@ If you have `git` installed, you can clone *ARES* and its entire revision histor cd ares python setup.py install -You'll need to set an environment variable which points to the *ARES* install directory, e.g. (in bash) :: - - export ARES=/users//ares - *ARES* will look in ``$ARES/input`` for lookup tables of various kinds. To download said lookup tables, run :: python remote.py diff --git a/docs/updates.rst b/docs/updates.rst index 2240e142f..057d8efdb 100644 --- a/docs/updates.rst +++ b/docs/updates.rst @@ -2,52 +2,47 @@ ====================================== Things are changing fast! To keep up with advancements, a working knowledge of `mercurial `_ will be very useful. If you're reading this, you may already be familiar with mercurial to some degree, as its ``clone`` command can be used to checkout a copy of the most-up-to-date version (the ''tip'' of development) from bitbucket. For example (as in :doc:`install`), :: - hg clone https://bitbucket.org/mirochaj/ares ares + git clone https://github.com/mirochaj/ares.git ares cd ares python setup.py install - -If you don't plan on making changes to the source code, but would like to make sure you have the most up-to-date version of *ARES*, you'll want to use the ``hg pull`` command regularly, i.e., simply type :: - hg pull - -from anywhere within the *ARES* folder. After entering your bitbucket credentials, fresh copies of any files that have been changed will be downloaded. In order to accept those updates, you should then type:: +If you don't plan on making changes to the source code, but would like to make sure you have the most up-to-date version of *ARES*, you'll want to use the ``git pull`` command semi-regularly, i.e., simply type :: - hg update - -or simply ``hg up`` for short. Then, to re-install *ARES*: :: + git pull + +from anywhere within the *ARES* folder. Then, to re-install *ARES*: :: python setup.py install -If you plan on making changes to *ARES*, you should `fork it -`_ so that your line of development can run in parallel with the ''main line'' of development. Once you've forked, you should clone a copy just as we did above. For example (note the hyperlink change), :: +If you plan on making changes to *ARES*, you should fork it so that your line of development can run in parallel with the ''main line'' of development. Once you've forked, you should clone a copy just as we did above. For example (note the hyperlink change), :: - hg clone https://bitbucket.org/mirochaj/ares-jordan ares-jordan - cd ares-jordan + git clone https://github.com//ares.git ares- + cd ares- python setup.py install - -There are many good tutorials online, but in the following sections we'll go through the commands you'll likely be using all the time. + +There are many good tutorials online, but in the following sections we'll go through the commands you'll likely be using all the time. Checking the Status of your Fork -------------------------------- You'll typically want to know if, for example, you have changed any files recently and if so, what changes you have made. To do this, type:: - hg status - + git status + This will print out a list of files in your fork that have either been modified (indicated with ``M``), added (``A``), removed (``R``), or files that are not currently being tracked (``?``). If nothing is returned, it means that you have not made any changes to the code locally, i.e., you have no ''outstanding changes.'' -If, however, some files have been changed and you'd like to see just exactly what changes were made, use the ``diff`` command. For example, if when you type ``hg status`` you see something like:: +If, however, some files have been changed and you'd like to see just exactly what changes were made, use the ``diff`` command. For example, if when you type ``git status`` you see something like:: + + modified: tests/test_solver_chem_h.py - M tests/test_solver_chem_h.py - follow-up with:: - hg diff tests/test_solver_chem_h.py - -and you'll see a modified version of the file with ``+`` symbols indicating additions and ``-`` signs indicating removals. If there have been lots of changes, you may want to pipe the output of ``hg diff`` to, e.g., the UNIX program ``less``:: + git diff tests/test_solver_chem_h.py + +and you'll see a modified version of the file with ``+`` symbols indicating additions and ``-`` signs indicating removals. If there have been lots of changes, you may want to pipe the output of ``git diff`` to, e.g., the UNIX program ``less``:: + + git diff tests/test_solver_chem_h.py | less - hg diff tests/test_solver_chem_h.py | less - and use ``u`` and ``d`` to navigate up and down in the output. Making Changes and Pushing them Upstream @@ -57,37 +52,24 @@ If you convince yourself that the changes you've made are *good* changes, you sh - Modifications to a pre-existing file. - Creation of an entirely new file. -If you've added new files to *ARES*, they should get an ``?`` indicator when you type ``hg status``, meaning they are untracked. To start tracking them, you need to add them to the repository. For example, if we made a new file ``tests/test_new_feature.py``, we would do:: - - hg add tests/test_new_feature.py +If you've added new files to *ARES*, they should be listed under the "Untracked files" header of the ``git status`` print-out. To start tracking them, you need to add them to the repository. For example, if we made a new file ``tests/test_new_feature.py``, we would do:: -Upon typing ``hg status`` again, that file should now have an ``A`` indicator to its left. + git add tests/test_new_feature.py -If you've modified pre-existing files, they will be marked ``M`` by ``hg status``. Once you're happy with your changes, you must *commit* them, i.e.:: +Upon typing ``git status`` again, that file should now have an ``A`` indicator to its left. - hg commit -m "Made some changes." - -The ``-m`` indicates that what follows in quotes is the ''commit message'' describing what you've done. Commit messages should be descriptive but brief, i.e., try to limit yourself to a sentence (or maybe two), tops. You can see examples of this in the `ares commit history `_. +If you've modified pre-existing files, they will be marked ``M`` by ``git status``. Once you're happy with your changes, you must *commit* them, i.e.:: -Note that your changes are still *local*, meaning the *ARES* repository on bitbucket is unaware of them. To remedy that, go ahead and ``push``:: + git commit -a -m "Made some changes." - hg push - -You'll once again be prompted for your credentials, and then (hopefully) told how many files were updated etc. +The ``-m`` indicates that what follows in quotes is the ''commit message'' describing what you've done. Commit messages should be descriptive but brief, i.e., try to limit yourself to a sentence (or maybe two), tops. You can see examples of this in the `ares commit history `_. -If you get some sort of authorization error, have a look at the following file: :: +Note that your changes are still *local*, meaning the *ARES* repository on bitbucket is unaware of them. To remedy that, go ahead and ``push``:: - $ARES/.hg/hgrc - -You should see something that looks like :: + git push - [paths] - default = https://username@bitbucket.org/username/fork-name +You'll once again be prompted for your credentials, and then (hopefully) told how many files were updated etc. - [ui] - username = John Doe - -If you got an authorization error, it is likely information in this file was either missing or incorrect. Remember that you won't have push access to the main *ARES* repository: just your fork (hence the use of ''fork-name'' above). Contributing your Changes to the main repository ------------------------------------------------ @@ -96,8 +78,3 @@ If you've made changes, you should let us know! The most formal way of doing so Dealing with Conflicts ---------------------- Will cross this bridge when we come to it! - - - - - diff --git a/input/litdata/leitherer1999.py b/input/litdata/leitherer1999.py index 13afd86cc..44b322a30 100755 --- a/input/litdata/leitherer1999.py +++ b/input/litdata/leitherer1999.py @@ -10,13 +10,15 @@ import re, os import numpy as np +from ares.data import ARES from ares.physics import Cosmology from scipy.integrate import cumtrapz from scipy.interpolate import interp1d, RectBivariateSpline from ares.physics.Constants import h_p, c, erg_per_ev, g_per_msun, s_per_yr, \ s_per_myr, m_H -_input = os.getenv('ARES') + '/input/starburst99/data' +_input = ARES + '/input/starburst99/data' + metallicities = \ { @@ -54,7 +56,7 @@ def _reader(fn, skip=3, dtype=float): skip : int Number of lines to skip at beginning of file. I don't think this should ever change. - + """ f = open('{0!s}/{1!s}'.format(_input, fn), 'r') @@ -70,27 +72,27 @@ def _reader(fn, skip=3, dtype=float): def _fignum_to_figname(): num, names = _reader('README', skip=18, dtype=str).T - + num = list(map(int, num)) - + prefixes = [] for name in names: if '*' in name: prefix = name.partition('*')[0] else: prefix = name.partition('.')[0] - + prefixes.append(prefix) - + return num, prefixes - + fig_num, fig_prefix = _fignum_to_figname() - -def _figure_name(source_Z=0.04, source_imf=2.35, source_nebular=False, + +def _figure_name(source_Z=0.04, source_imf=2.35, source_nebular=False, source_ssp=True, **kwargs): """ Only built for figures 1-12 right now. - + Parameters ---------- imf : float @@ -98,22 +100,22 @@ def _figure_name(source_Z=0.04, source_imf=2.35, source_nebular=False, 3.3 30 """ - + options = np.arange(1, 13) mask = np.ones_like(options) - + # Can't be odd if source_ssp: mask[options % 2 == 0] = 0 else: mask[options % 2 == 1] = 0 - + # Can't be > 6 if int(source_nebular) == 1: mask[options > 6] = 0 else: mask[options <= 6] = 0 - + if source_imf == 2.35: for i in options: if i not in [1,2,7,8]: @@ -121,37 +123,37 @@ def _figure_name(source_Z=0.04, source_imf=2.35, source_nebular=False, elif source_imf == 3.3: for i in options: if i not in [3,4,9,10]: - mask[i-1] *= 0 + mask[i-1] *= 0 elif source_imf == 30: for i in options: if i not in [5,6,11,12]: mask[i-1] *= 0 - + Zvals = list(metallicities.values()) - + if source_Z not in Zvals: raise ValueError('Unrecognized metallicity.') - + Z_suffix = list(metallicities.keys())[Zvals.index(source_Z)] - + if mask.sum() > 1: raise ValueError('Ambiguous SED.') - + j = options[mask == 1] k = fig_num.index(j) - + fn = '{0!s}{1!s}.dat'.format(fig_prefix[k], Z_suffix) - + return fn - + def _load(**kwargs): """ Return wavelengths, fluxes, for given set of parameters (at all times). """ Zvals = np.sort(list(metallicities.values())) - + if kwargs['source_Z'] not in Zvals: - + _fn = [] data = [] for Z in Zvals: @@ -161,21 +163,19 @@ def _load(**kwargs): _data = _reader(fn) data.append(_data[:,1:]) _fn.append(fn) - + # Has dimensions (metallicity, wavelengths, times) data_3d = np.array(data) - + # Same for all metallicities wavelengths = _data[:,0] - + data = 10**data_3d - - else: + + else: fn = _fn = _figure_name(**kwargs) _raw_data = _reader(fn) wavelengths = _raw_data[:,0] data = 10**_raw_data[:,1:] - + return wavelengths, data, _fn - - diff --git a/input/litdata/mirocha2018.py b/input/litdata/mirocha2018.py index 41a1198b4..254028a75 100644 --- a/input/litdata/mirocha2018.py +++ b/input/litdata/mirocha2018.py @@ -287,9 +287,10 @@ 'popII_Mmax', 'popIII_Mmax', 'popII_nh', 'popIII_nh'], 'blob_ivars': ('z', np.arange(5, 60.1, 0.1)), - 'blob_funcs': ['pops[0].SFRD', 'pops[2].SFRD', - 'pops[0].Mmin', 'pops[2].Mmin', - 'pops[0].Mmax', 'pops[2].Mmax', 'pops[0].nactive', 'pops[2].nactive'], + 'blob_funcs': ['pops[0].get_sfrd', 'pops[2].get_sfrd', + 'pops[0].get_Mmin', 'pops[2].get_Mmin', + 'pops[0].get_Mmax', 'pops[2].get_Mmax', + 'pops[0].get_nh_active', 'pops[2].get_nh_active'], 'blob_kwargs': [None] * 8, } @@ -300,5 +301,5 @@ { 'blob_names': [['popII_sfrd_tot', 'popII_Mmin', 'popII_Mmax']], 'blob_ivars': [('z', np.arange(5, 60.1, 0.1))], - 'blob_funcs': [['pops[0].SFRD', 'pops[0].Mmin', 'pops[0].Mmax']], + 'blob_funcs': [['pops[0].get_sfrd', 'pops[0].get_Mmin', 'pops[0].get_Mmax']], } diff --git a/tests/test_simulations_gs_param_hist.py b/tests/test_simulations_gs_param_hist.py index 2746dc295..600a59759 100644 --- a/tests/test_simulations_gs_param_hist.py +++ b/tests/test_simulations_gs_param_hist.py @@ -31,7 +31,7 @@ def test(): z = np.linspace(10, 1e3, 500) # Get CosmoRec recombination history - CR = hydr.cosm.get_inits_rec() + CR = hydr.cosm._ics.get_inits_rec() # Assume neutral medium for simplicity Ts_CR = hydr.SpinTemperature(CR['z'], CR['Tk'], 0.0, 0.0, 0.0)