From 9483e4fe7c60e6ff1ca89f1b9317b23153b0e8b8 Mon Sep 17 00:00:00 2001
From: dh00601 <dh00601@surrey.ac.uk>
Date: Sat, 8 Jan 2022 12:14:26 +0000
Subject: [PATCH] rebuilt docs

---
 .../doctrees/binary_c_parameters.doctree      |  Bin 974315 -> 973859 bytes
 docs/build/doctrees/environment.pickle        |  Bin 807851 -> 889515 bytes
 .../examples/old/basic_example.doctree        |  Bin 9908 -> 10455 bytes
 docs/build/doctrees/functions.doctree         |  Bin 149680 -> 166538 bytes
 docs/build/doctrees/grid.doctree              |  Bin 79369 -> 79342 bytes
 docs/build/doctrees/modules.doctree           |  Bin 3750 -> 3841 bytes
 .../nbsphinx/examples/old/basic_example.ipynb |   13 +-
 .../old/workshop_example_notebook.ipynb       |    4 +-
 ...png => examples_old_basic_example_3_1.png} |  Bin
 .../Moe_di_Stefano_2017.doctree               |  Bin 0 -> 20514 bytes
 .../distribution_functions.doctree            |  Bin 293615 -> 292511 bytes
 .../grid_logging.doctree                      |  Bin 0 -> 15451 bytes
 .../spacing_functions.doctree                 |  Bin 72641 -> 71987 bytes
 ...png => examples_old_basic_example_3_1.png} |  Bin
 .../utils/custom_logging_functions.html       |    4 +-
 .../_modules/binarycpython/utils/dicts.html   |    4 +-
 .../binarycpython/utils/ensemble.html         |    4 +-
 .../binarycpython/utils/functions.html        |  113 +-
 .../_modules/binarycpython/utils/grid.html    |    4 +-
 .../binarycpython/utils/plot_functions.html   |    4 +-
 .../utils/population_extensions/HPC.html      |    4 +-
 .../Moe_di_Stefano_2017.html                  | 1338 +++++++++++++++++
 .../population_extensions/analytics.html      |    4 +-
 .../utils/population_extensions/cache.html    |    4 +-
 .../utils/population_extensions/condor.html   |    4 +-
 .../utils/population_extensions/dataIO.html   |    4 +-
 .../distribution_functions.html               |   28 +-
 .../population_extensions/grid_logging.html   |  573 +++++++
 .../grid_options_defaults.html                |    4 +-
 .../utils/population_extensions/gridcode.html |    4 +-
 .../utils/population_extensions/metadata.html |    4 +-
 .../utils/population_extensions/slurm.html    |    4 +-
 .../spacing_functions.html                    |   27 +-
 .../population_extensions/version_info.html   |    4 +-
 .../utils/run_system_wrapper.html             |    4 +-
 .../binarycpython/utils/useful_funcs.html     |    4 +-
 docs/build/html/_modules/index.html           |    6 +-
 .../html/_sources/binary_c_parameters.rst.txt |    4 +-
 .../examples/old/basic_example.ipynb.txt      |   13 +-
 .../old/workshop_example_notebook.ipynb.txt   |    4 +-
 docs/build/html/_sources/grid.rst.txt         |    4 +-
 .../Moe_di_Stefano_2017.rst.txt               |    7 +
 .../grid_logging.rst.txt                      |    7 +
 docs/build/html/binary_c_parameters.html      |    8 +-
 docs/build/html/custom_logging_functions.html |    8 +-
 docs/build/html/dicts.html                    |    8 +-
 docs/build/html/ensemble.html                 |    8 +-
 docs/build/html/example_notebooks.html        |    4 +-
 docs/build/html/examples/notebook_BHBH.html   |    4 +-
 docs/build/html/examples/notebook_HRD.html    |    4 +-
 .../examples/notebook_api_functionality.html  |    4 +-
 .../notebook_common_envelope_evolution.html   |    4 +-
 .../examples/notebook_custom_logging.html     |    4 +-
 .../examples/notebook_extra_features.html     |    4 +-
 .../examples/notebook_individual_systems.html |    4 +-
 ...notebook_luminosity_function_binaries.html |    4 +-
 .../notebook_luminosity_function_single.html  |    4 +-
 .../examples/notebook_massive_remnants.html   |    4 +-
 .../html/examples/notebook_population.html    |    4 +-
 .../html/examples/notebook_solar_system.html  |    4 +-
 .../html/examples/old/basic_example.html      |   16 +-
 .../html/examples/old/basic_example.ipynb     |   13 +-
 .../old/workshop_example_notebook.html        |    4 +-
 .../old/workshop_example_notebook.ipynb       |    4 +-
 docs/build/html/functions.html                |  149 +-
 docs/build/html/genindex.html                 |   58 +-
 docs/build/html/grid.html                     |   16 +-
 .../build/html/grid_options_descriptions.html |    4 +-
 docs/build/html/index.html                    |    8 +-
 docs/build/html/modules.html                  |   12 +-
 docs/build/html/objects.inv                   |  Bin 11008 -> 11412 bytes
 docs/build/html/plot_functions.html           |   12 +-
 .../build/html/population_extensions/HPC.html |    8 +-
 .../Moe_di_Stefano_2017.html                  |  213 +++
 .../html/population_extensions/analytics.html |    8 +-
 .../html/population_extensions/cache.html     |    8 +-
 .../html/population_extensions/condor.html    |    8 +-
 .../html/population_extensions/dataIO.html    |    8 +-
 .../distribution_functions.html               |   34 +-
 .../population_extensions/grid_logging.html   |  200 +++
 .../grid_options_defaults.html                |   12 +-
 .../html/population_extensions/gridcode.html  |   12 +-
 .../html/population_extensions/metadata.html  |   12 +-
 .../html/population_extensions/slurm.html     |   12 +-
 .../spacing_functions.html                    |   40 +-
 .../population_extensions/version_info.html   |    8 +-
 docs/build/html/py-modindex.html              |   14 +-
 docs/build/html/readme_link.html              |    4 +-
 docs/build/html/run_system_wrapper.html       |    8 +-
 docs/build/html/search.html                   |    4 +-
 docs/build/html/searchindex.js                |    2 +-
 docs/build/html/stellar_types.html            |    8 +-
 docs/build/html/useful_funcs.html             |    8 +-
 docs/source/_templates/footer.html            |    4 +-
 docs/source/binary_c_parameters.rst           |    4 +-
 docs/source/conf.py                           |   24 +-
 docs/source/examples/old/basic_example.ipynb  |   13 +-
 .../old/workshop_example_notebook.ipynb       |    4 +-
 .../Moe_di_Stefano_2017.rst                   |    7 +
 .../population_extensions/grid_logging.rst    |    7 +
 100 files changed, 2914 insertions(+), 369 deletions(-)
 rename docs/build/doctrees/nbsphinx/{examples_old_basic_example_1_1.png => examples_old_basic_example_3_1.png} (100%)
 create mode 100644 docs/build/doctrees/population_extensions/Moe_di_Stefano_2017.doctree
 create mode 100644 docs/build/doctrees/population_extensions/grid_logging.doctree
 rename docs/build/html/_images/{examples_old_basic_example_1_1.png => examples_old_basic_example_3_1.png} (100%)
 create mode 100644 docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html
 create mode 100644 docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html
 create mode 100644 docs/build/html/_sources/population_extensions/Moe_di_Stefano_2017.rst.txt
 create mode 100644 docs/build/html/_sources/population_extensions/grid_logging.rst.txt
 create mode 100644 docs/build/html/population_extensions/Moe_di_Stefano_2017.html
 create mode 100644 docs/build/html/population_extensions/grid_logging.html
 create mode 100644 docs/source/population_extensions/Moe_di_Stefano_2017.rst
 create mode 100644 docs/source/population_extensions/grid_logging.rst

diff --git a/docs/build/doctrees/binary_c_parameters.doctree b/docs/build/doctrees/binary_c_parameters.doctree
index cf305410f445c73af0d6be545245094c96876506..574058fe9080841b85fc44748668a79e1a90fbb2 100644
GIT binary patch
delta 23050
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
VdJlq#Tl#aDoPvuaBSo+BzW^cTWDx)W

delta 23711
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

diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle
index 2113a1a9c13bdb5641683b19aea249207571ab8b..39df13a0b90a951f20181d4d80eea59179a009f4 100644
GIT binary patch
delta 140584
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

delta 95413
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
AF8}}l

diff --git a/docs/build/doctrees/examples/old/basic_example.doctree b/docs/build/doctrees/examples/old/basic_example.doctree
index 1e70ff402cdaed71164f6a02d118a0a4ae47b6e3..62d18bbe2862b8c8f7a52baad1a62c57e45ca166 100644
GIT binary patch
delta 2533
zcmbtWU5Fc16y8ZPNz;;Sem9B9CNoW?+g(>T+mx^>!Ck4Xtqry;h%D<mNrv3qZqkrR
zV7IXC_Cae)>QB!omcDc!D@ZL-1i`;YMeKv1h!52#-)aT%t>C$nzsa9Q`Vi*c%sJ<N
z-?`s+?|gjXr<43P|L%8FxA|R$^A<(URPtwvDyRo8s9Wk3;fa}8R&lVe##i!{by@eS
zW?Pb!d`6Hrq(TYbut1D6Ez27f4C{UUn%XM)6p4@pA`l}HQzV+IrX^x$i^0se`+Svz
zNdg1njR3NjM2}mmX)J6lNo6TlmP$kq!gs1#Ear<jK@t>vtjmJ3sZ``b15UCw^nC}<
z30&@Y6OVyJK^&j-G8oSjQCogb3l6+!PuTRpoUqG~_9bhkmDuW&YNw(ZGm3E8@C?6>
zqdeR(%=0-MWx;Hm<qGw<(Z_Mg`U@sM$6W!LKdQxDhP$?DPpM{BDp|Q)RxdFSZ)j=v
z`9pjfM{&3pUOK9WAYyMay}L!a{~(3dyvDD@<`Am3S4p^IpKyQP?!N=~&xOBDxMlN?
zlXGN_#25s|;WOm0KSEw-bH?OTT=r6{YC|NXP(NmwG9oW!_W`5($G*DnW8E2z=?{$Q
z(_i*8#j<ik3@tD>CE`I$6ZrG5s%-heeOP$7K6nk(2s;4}H-J1HgB#wNaGU#s0o*f?
z9be;;@VjpT*8Fx(#A0p;Ip%^i!i|kJm9$7AG=$S?nhN-UR~+k@^Syr!rk!?f9&-{d
zef$wE9=;B{;Vq}g6hH$QB*M1G;-@^8=x^Zz_`~^FQ!IjOab7PL^xA)mB?C`{gT^V8
z!EIMSTQiGm3UJ?GcC`gSC5;BT2o`sg%fO8LH2fMo4V=g0zk;t6+$p+^1BATA9%v;f
zg(gCW*~Bal*i?G9NzG>6Xe3G;qdrNO+4O@!IcNyvctp?frBOI`3}ISHbo>zWdAT~G
z7%YR2m<+_04Csf5YJd_7*uD_g);j$Lv-ZJ_uyyGZOz7LMW|`4d-$nM-ha~&gP_lnA
zvWMDa?+qr~d-617eb@J#&I%5Q1^cZ)P#8ADFe`|dBfxdP6}}DFoq9_YSsr{9_Ds@$
zk<xB0ADe#o?}1Hk(CKcvCbJ=@O|Oxvqx4-fQW%Xy3kYJ6eCbKVxj)|Sa;njgO$_fj
zTYDN!FF-B0%pHW^g6Y|VYq7^m#hgmt#Jnw)zKsuB#Zr0`=5RiW3A3zoSM64tnK`&=
z#8ji<|I3HxMro1WheF4P?@W5RYY3$2Lr2$LMBg*Oj(56aM9{j{e;sv<XvQmy-ePG{
z=0x9h%;<L_AWLuH=FpP{uij_%C(T9uW!3!LnQeUyN!nG4S69uJ?)prUVBF<{IkSmp
z-!(GqJQ9GHBWDdHQU4`!joUM3L~M4v|Id_RQFPa@ieDHL^k;^+QK`LzQnMDNf?U}w
Z$qIh0X)!5<IB>XxMMzw!ryo7V{R2d&F(?24

delta 2277
zcmb_eU1$_n6wd6-Y!a+-H@lPBn7<iU;|3xmS(`LTw@tE8#kFYF2kSPZNjq?QZQ7XZ
zg4Tw_LMWlr-!m0Tux|y64@K6Oz6A<J=tGDgqO?|hv`|`o>0{5G>}Gd<5*ONs*|}%-
zp1*It@7%fb+KpG`MfvORJFm-i0bCKswY{cv$~d31&@!cL@A#0lWL>i6tpvyrgbsKK
zcS$4ii?kZV2da*FDJ&0=br3(14hX5jkCG|~>B71k6NCwT96W6AeS`LPDKKIN=W=fw
zv$NK69@^oI?U%28Uhbonh(FYhEr_6j2s-S6cqW>kf@D`Yd+j)t@q+UKq)N6aXM207
zUZ8D|E?Lg%KhIB1LIdw6M4KAv%1lC(ZcTK>#w`;+3+-q)4n5Gz3*>E@yv==*aeijj
zg46sdZ+DqW%a$?|Fg$0fuvV84sri3)bcvCxo>UAMLow{Ajo6TU$013<mtIIHw&5)D
zqN7M&gFj&1|2tr}Jze+!7IFY~3v|@PwocQH*_sb#N&G7`A*3-J9>nGF&Hy~cmGH=J
z_`67fgM{^;<oBe6H9p)uu>p6QmeYcS>x}~qoBN0Oer%2O*_8SNb+PrUSiJ&wyfCjJ
zM!Jj4V@;!dmCPHh2FN6Sp|<D=$e6M*J(Ig&8I@Ejz9rUA1!^%D7Az^$)KHGs@me%4
zBylZzR_MiHWr}{kRa#;b^!FS^U?*q+9qbst=@7(qrKwfrM$k9eQA(yOGqdkgJr)Fc
zgd-aflBmZb?FrV&%@6&YNq}w`j#L9f3Rh!MHBHlEz&$P464etGGDQ4lhpN~|_?x;n
z;YMYFildYsVG+=+f<r!Rg#sK<KPCsyn`H~sYgFAvG>&(D^1n9ubGgY#r4rar9BW$)
zLvAs!RsU8!<L(L8hhNzgNQ3Z*l11=ZxTkHC^I0Ou?;GK^l*v<atB}bgcPTPr8#?_;
zUV2B7PVA;H*sDBDi_NPorj(miPz~U=xY|iv>}5*p$5$4|V=daSn?qWFbBJZgt28r;
z^Vx+hJBg{bQ+P$G!!hNpee6y0n77yz-Pj=tQmMZ|va8WwKb7RKKMl`m(Y9yG&vE{p
zs|Kj@`6p$y^6|G}I8Hxy)`n)=0}wwAJ-5q2VhG@UHSUqBVaIxwRD*PavP(Qdw>nK8
zUacC0i_&~?%aKIi1UoAy^9MMpU#>Id+&j5<4Xbch|3(P>5-8;2_rylC{=La*BX?oO
Rn4>Qi2+doCrTr&_e*wdL-`oHI

diff --git a/docs/build/doctrees/functions.doctree b/docs/build/doctrees/functions.doctree
index 35b607eede09ade1ce809077ca202eee40068fb3..8812add557b056c2e46bab2cbdf4d773194e0f45 100644
GIT binary patch
literal 166538
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

delta 26154
zcmchA2Ygk<5;wak+?(X4_nVvC^d1t5K&U}LAc{ensFVPa<VXrB2#Au<6buS%U;$Bz
zpdx}`)I4c|?Ws=@?AY<yktR=gqR2P1bIvUZD7^3cef;>{d+wIm|IE(L%+A?!vUr8h
zj%8-gdao7jc6uI7l;P2AwV0ahFQyER5$%)e`FSo6^yYo}SuXvf*#@W^z|9__q4HYG
zS>CQ)X-ug{sZBF^h{Kg(A~IzHkMocPX4aisJ;dpyu_AYNfH}gWUAwx8nw^Qf4pG80
zwJYzcH|peQ#3MXJ!R%~5SEAyp)N1bQA$LB<tn93)N-K}@MN*}irT<cc!uYX;tkkNV
z;i92iDzl2%bgQ|kwEfto((p$0E3|1rQ$y3;O=+cGng*SraVZSGi{&Q&g7~R_3Dy8B
zbrVbbrt8fc6GzsR)QCRmaTbH3qr{c!45B)nsD|iNJzyY%s*Lwysg^UY;*#uT7A}fL
zdCQ^?m@Rw>(9niJ1MLC4Dx@pHmPdGLNKhO#^$_*DJe%+7)RFPWJ!noI^$_Mg8^o8L
z!o}7u!};?xEsyHFfP|i-X?ge>fBB(_`3txZ4_?!izom=+b*K1Wq06GK0e-Fo)D--K
zrhvnE)6$~&BOdZ_EgKf~4;aXpi|24qlI41U(QTvYB9>US3!*3^Pn<lk3SpY4#d#0;
z)jwEbNawPOs=C^IpKN<^^_05ul8V}VaXdd>oPI4Njj9a6d+R@)a~bBT$cKoXoo(V!
zbYM^!@av0(v4x&6Zh)tJ_yyL%C)16z)rTlLCpp8lKE(oR<5rRo>>M(ihRoE54E1vv
zE>+}pjT8G{H?btRvWp9E`np!fQ?-|;*G$AF3OXhPl}>U;>}RwI9tUmCJ7#fcY3xuj
zAS+%>$?77a^HSL)1z<;RU_db;8i!vn+rm3LeR+eg7||<HdZ)1fUOHb4>6IPo;8vT1
zE!FA}8+zGYcvBTtt)Vq<CV+CcgSS}*Zx)?(te);EnZ`0$jcPWbqo-+_4hz^!G~Gr&
z#u&Bc(Nq9RaNs4@$+F(TD5z_zWw9HY(z4itS87@8@q}eDs(D-=4<_!;4;0h-rm)Wy
z?C1JMun%C&I8oHKy}9%-U^@)mM6B;Rv44nJY$~{&{Q@lu0<c)OT&J-`0obmpe(AiO
zmojW_)#7OCG|s)05#onE)e3maQ>}nV?&VwoNJw7+2St6iG?CiBA5ZoYY(b2;w|@%D
z72EsUc}FjCbjc8&1LX(1^PXOESSai48xM4}w;6nJv2wtx&`su@WAUPXvX|dbsMF~t
zhzAGWX&#LQR&Au07?zPM`dqiglz=5*y~Ku5Jw)c9dY<4V;)d)JeIsmQ{@@XOmST%f
z$I|~=rt7UiW9|bqsa2w>ume`&+OG0K&ITuG$eOkqA+3WeW0~KFeQ6QbKwm9I)LdU^
z-iD=CZL62EtCnhKqbIz?>F8`r4VI9nxX;Tm$6{!LHT)&0qA7kEuhbO34ANO1;-@LT
zY#P#22Jky;j+)2`gM374Oq^I+6e@0su^_uAZ+t<ytX?<X!9OQ<k9akoyfL5g{{Sp>
zNT&b`IVAqGmsl}u1o!i%8k4tc&B&XE@g%**?p6c-$#TTW$}y7Op5ZzC2ubg~w$dBo
z?Uddz>`T)7kfgU}#NFnbp#?|}TmgC|%LmRz!(nug-iNM3x=XJd`jYf2@JdOq!W*UM
zV@U4<5ay^X%RyI_H;CB7?{W~B?I18435;s~Y}8wfuk<EYv)o&hPv0mW7&D%4_Ew8z
zIkea3bd$I8{`(_yE$*ebbRPGnr2`aD!5Y2Ec{~o?4XxUQq)09gdMmAZ>((Xa53$s$
zy|2sV0cWGbB$o%VgtTgtx51L`P>(?!3Fc?KQiAyz`2vTElu)0V=Zt-wF>g_Pn@v<z
zByrweocv^iI8@>(awm*pVOSxnt_9c4+dD=IZ4bPLixU(2vrN^qsMy9++dC8}kuJfH
zw(5nlh-go;fRRuZf9SG^0P=<`LUAaP#YH8H=8#F<nQ0srTeaI@$UMJ4k#TA>Ml740
zW4VY0B#F@Wtt3$cJxLO^c%>v!+nywWgp?$zOI~K|0f!_Ox0l<8aTG;>NG~109(Iai
zF#@5X)}koF#PL#J@m1+S*6a|+(@t@0b&A8iCyHa8E{??{j`{6LHP*ophB(&ZaK!4p
z?LjpjGJS_7R_z-liG|MUqe>F@Vu1m#l_Y+LI+Da6c%>xqhmr)>7K(zg1<jkMZeu*$
zq*UHB*aX5s-vJ7-yu7^(F|lAVqB4^ui~7p`eps!Klq3#S-pYHJlr>>p#j>(g5g6E>
zb%LuLi)%xZ@+PS!QiEWVQUgB|d6QJ2Xz-nc)QRr^@s*a^>{q>onJci=s!fHFz*PA8
zI~$dW19#+D0<eI%PcpUQejd~j_w(^eaX;TgdVqwK9(-Cml<|j20DQHnxqLcf;-(6_
zJmt@m{Z>24Zv~da#RqrJ<1guK?=#ruyG-Jh88`7ysDgiJ5^;BB^B(}v=U|3EG|4zS
z>%z~P<h0LO5mpz>PC<E@b^(3dC&-;95c2w2{aAo#m>DbT<6@Yvh`lR^+2D6R_cbdL
zumGV}KJYo~1l2*ab8uv|(XKd2;@fqJuO^8%k;J36<AC~ZVk<I75?^V;-9&TC-FGt6
zc(W4uSQyGCPW>4wrp(#d<rXXiIRn_6!LAxRhEi{gt<toymnfU)DGvXu8>?1yAa=9r
zv0EjQvT6G0$bPk_%nRc^g-=70n3o+Z7JZh^9#q}-FR+M{*`X0*ppOa{h5~qP2_al$
zmPd106klW(hrjO2H<?AiTpN2#bqxF<hi^2ikYk5gg&cg0S?v5E&T<EKjxF>8tpWl;
zckxIhkT)*{zsAhFhAk4)mSu^+j$V8r^w^xj=b7c94lGXi%rE8-m__;gEcP`HA`b;H
zOTxoI?>_A<j2kYA@(YDBngN&vu&Ff5`fO%n|8=1J5255f21+?>B6GlO4={m(g82o(
zgs&wFpJ!h<V1DWjbKkvl0H$PS)|+(}#R~{${NLfs6+0WES?=-$1$>YXfgA$83)w)i
zY*9WRacO*Jz?bWz@IkznJ1-SJs}}Et&z$?mh}H8m1ct{oK1!u>#oqh7Le<iFc`O^K
z()M8<C~}-w-(uqRW^gJAMlfBe%AtFb9#BsONrSdrTG!;#7@p6zAiu&z*&f4@TPd5!
zi?+&)Jf6?@`-szz#;}(ZpRk;P&$pa>7IfsXhPwCxpSyf0>~B%f0hoCjh8R}uF&_+G
z6Rr$rQ5fsU&a}pP>QXq5KKL2;^o5`|$HS^IacXIzG2$s2k>BPi`pimJGS)X4w}4u7
zwyboqTdmAuSdOn@7CYdTGK(FaSzgEZAYTf7`uobG7I20W*7%FkroMc%uZn;ALv!8M
zj`CHGFknR~FZU%UPzLzoF!^CBfp%!r1X~#{F0San7wAnIj3&IqSD7t$is&H6_>!aO
z@2ea|A765iW00h7wniZgGFt@ztedUbd(|Rlei4hU+Fq1bmUw0L)BFWr+z=;;2ma|N
zHm|vfzwax4TQkc1J~jLhKw<RxFCxdG@4LQgy}#ot_C9pne3IH7cW;MTjvpQE3P5vV
z<LgS~Ev!uN#$7J}z)elC+V|??VE^Z-32u6ueP#WNEJ_@Ec%;edr#Ofb2iD^TKeVsj
z1x-~mg8859Z?+=mvLrHa7@MYx(bfJ=Uw0!KxPPwe%m!hvHU{n)K+(nw_xB?++}}?e
zIMj#V=BL)wI3Q5SZ}C$mxYUn~+cO|bTvR$^XxyN;GH%ctY%uFDj%`@N;m5LhxxBzn
z%|~xPvcG3GrXswUN3+<PD~GpIhqsd8Z6|m;6uhSh-mXi-L)!+u6+GyTE&{%~Z|;v@
zh)*bdthYG)M1nl@1M}iNfV$IyWk5xuVHHwA?0;ju&LdZ@*6Z9QrfS7B79%^@cy}IT
zk%0%8jfYrZhn*&uOy%*+g7Su-;pF3;I7mCToW~i`wg5Z67G=V?$>NIh9O5+67OD8d
zNLhe-s+2{6u6{~yT7_9f7Q>zl!z*P^h5?S{qr}%+W{c3@SBr}~0>tFOaiado1^f;R
z8JQ^-SuhLIt62Bj)_#1JMH!hXKtne&GcC%<Y<y}QUkZ(JN85<FRf?70XAx7kjpa}1
zHJjXOFeY-RgvMpIg^bG-i!v_77BVigVMxQc%*5fzxJ(8>kYQ~SPd(k$<da`jTwPpl
z7Xi)Df%cl(>avO{`HsSa&m{%gD~iiYYVwWz-4%AT8r_^pw@(p*RXYNVfqhDw<V5r#
zUMeHtlCvE@w6eA&-(Dte{Kq(-@Wx{2&mqG91*`c-BKJL!3(?7;O)<z(vUajg9Hw|C
zXo*|0_D`szNctjPsVTmQQw)1cB&Z_k`dtGUixg}d?JYz7o6UQC7)!+x+Ej-6JLWdU
zU(M~Ty?3x)&>)|67t5NJ``}&t#jt%-*+^A9%qV7EL_-VaxdJTiWME=hx;VN$hKKsA
zX$|nFX-$XGjA>25k!f0k{8gyCZhr(b-G{|i*a{(N40TT)c$UxeZ{GaUL1vOvxk6Qf
zIkq$r5zMthn-^Y*VW!R0=F!$|&~(i6S2<tN`?c>(yQtki^mdfH)#(L5+h_d^SEccT
z{^I;UCz=jYmqP|=KfO6F<F}MlAot4O@E32sKAL~)FB0Fl-t;Z?`Mz}@f9UgX*FK-W
zAx!N86!U+!Zj5-&8;#i;O6-5U>E}BBYgDZ#cb|nOiGi5gb>V2I(WDQ$xp@doZPPHf
z3uf>tHxaoa?}e-wP2WLeBXXOjPpYd2d*H1cbP@aB%4LPnB|TAd347-Ph&JBqx&ZQC
z*99o=H9kOjuVUzI6R?S3V@3SFII&}qmERFSPHe6}IWe8tAYc!OC@%p-&`ZGAmj{Qk
z>%@kS)kXrm8WO?zDhME7_QX5o2=uOf{UFtFML<{UKvxscodmSm0rY7H(7l%i8UjFp
zhyn^k5GZ^Nd3P7w|1yBCbOnmBi*jq=;Sj$|#G4)97V&1lg#3+fy8u9)GkE?IGpHO}
zMF{J`Lj!Rq$HN0La||hn4X@J-*aM9jP&+w&0wRDf|3C`OeW7iFkEX}v=dT7O#^wCF
zKykWfma$XqAJ|sUaPuGnKl+^C9H<B8Bi+XAAE+c_*7qzK1i|p9U=x%-4RWjp(Bf9c
zb}o!c#&#ZFDPub?usQF@EXLOclJi^@2#LGj`PM+?Ggl!_wYsz?1C?DZ|13aE`0OTr
zAdrIdy-J1<oU<3y6`E1^Ug#gU1(JUR>X@t(fn-Rx0eQoaK8Zt-AzcB3cS{vbU%X-d
z50+ZBUr;2uV&#`l^OJ$%y02!LJ%UsP3sSzUZ#(=MTZl36NgeZ5+X4}LIMy{r3PzeX
zU|f+VW1uGK!=qzyiRCqP<{3e<VGvJu-K(E~_HB$oN)Q=?lpvK+=pCf=uy2sMgV8fc
z#j-<!NC{5_DkaoeLVpUq)#8HQxVYeJ>^G0$7siT-K^Sov`?ugAxAhYMJpA?g;rBp)
zr)J)D38tOvX9eMwgj*2q4VT1?x3eA$qM)$R4dPu_15quW*WDn#dI^YXUS9m+M}8y-
z7mp{zAZ}y6N@E&}CqVzHZ*5P4^5gxp6}sxES#Py?Jc5nI<B3;l@puMfFxuSj*h`GX
zioAcvi9?+ecyusjd>=j*ApU!N03;-!MrHjh(a=?2Pg%igJ$-z_PwY5x1G^R)*#suQ
z`vf~8(H?Y(Ys$SRuBi^ew5Fni)tU+orZv?8hA`Gt77j;iDk50j4EW;I@22TkYSn7h
zh!}o^JDW{|5#csT1eVac&kAlOi2I?AtVknXDM2)%ARuHzN-AW#_{+Z-B+LwvYz!9u
zzy8Udb4p^PbA)F}5_rqQy%f1@(YXW)XgSvET(&@WgUe@;6mhwZxIA`lgXudg#oRW^
z6}f!G+3YBBxeiN+%V%42`8(7Rmw(`u;_?rjOQfW@eCD@s2KP3Oo~FPwC<Heio5lKz
zzGBbs{UAXAH58x*g*b*v3{ex0?7EjCyD1?wsX-x%UB3{T)D-A$u$zdah+Y2>WhlS6
zaNIN!ORd^)7&2G(It8A0!WmCM64<3kANs27Atk*^ftu5`mLMUUrjJkd5KO~pJ||?w
zn~-^IP=dhx=-na8pxqxr2JOZWx&16;9*YS%hPg9C$TCb1aW!5gA#TQNBDBA}@dC@x
z$qnDrm%xX1p~cIC-OAX@(6|E_hW&0sK21X!hGC-qQ#TAnA!Hc*ku+&aA|Q9&!ieR+
zWQ({yeOk_Yu@uJJhms%l2vxcuAF(iBS=Ru5D%r&HczCGts~({adSRic4sx%F&E;9p
z2{)r@p|V2^%VD9E=7*mu%|9rV()?+mMw*`|g(_nK7Q)Y!rr7XDHIEEcy2Lz0-i2r}
z=G^e8NEp^oqcDU(YSa!ubxW0@e(bsU*;s7VW;p;-SY5n=w}V79{F6uh*xUThP`Sgx
zZZqFc%@+Z1*i!brkBFihzEh`gRceQMef}`;<a9`Dkd95$;X1vrj1OSLzzwT(G=C<v
zjUS#49ozWf?V;p{w}+~v`D>vnAI)D6RgU--D21a0?}n1zPKR&InCo1jCx-sY6GMOW
z#PIX6AU2<E2N6e!zAce_D^7^R8?Om<Q)mg0F0ark&+ILWJ(+XOd4#p)-sz5QVd}<2
zoQ!V|cM<9rWN~Yl;vhZD;6Q~EIs@pEBf@Cmg@(D}^a#5OoUrgZvLbh!H(UazT6^Dx
zu|UR(v2`9F=QijKG^nxkB+1I8FTFdJNOyF!TH5KFq_n_&@rB<H<Lb@`ugDpJ43>{-
zSsKam8QYAqDc~Ez@W|bF>{%r$a>g4FGcD@oFtrG8wKB=xM6BeBUkk(AZR}%JveFJ2
zvDd=n>KN96eMgM~XLW`m$7*~j3=#|>a-0psv)3O&0`%v<D<a$yPK){XFloP)b>h}=
zTFg+b-?QT{g-PEyR?a(zlNrbjS9kmR={<A9$qW?fJ)zp!6E3qY?i`^%c|MH%$%Zg;
zpJC)ro(I+qL(q(3AVcs-m@))6B(Rsw^TVOos?80Dc<Obze=sw_c`s@<CtRLMWcQc_
zHCYC5G2guue^Lw%En1S;K-NS4nZy>*SD}0-nfaJEP^We7op5bIr??dMnfYmIv5i{v
z)yev*7Bpj5Z&MD0yV{g}ID$>nIVYQ<ZWPMAG<FXfm7Qs<8~-f4jZwJ=dbTktABU4s
z`8Ztd^iRQ9kH+v{!j(-q5soX8{UKQp+^M|>n8G}@&J?Cxptmw9&>Kw({QM+?eFxtv
zy8j?tWvbr|SG#-JBa7j!LK#>H_;Mny3|~eB;me3nMz3E48NL1y3SeI-1*11Kf=mV=
zR7Oun7zhZVzd{K85h471GlxA1-wI)BgbTv?2(IsB)|=N~A-LH(xY-1*iNMJjaj<+a
zmRL^k)?XT4Fu(%}3La2Ec<}SSj_fJ;R`6yz;4SUM`XRjcJFy)8?iIp2sKbNrpuKR6
z?8Gy6xw<p!%72VNjWT~9p_a)vh!XBKcJ-7QU0B!PV^HjxA-X4A9DY88BNe<ae2}2R
z7w+Kx<$&l&jPQ3riJX39U$~on-VIv#H-02j9!+-fBWaOsH6HD=ytOO4iT8_?Pj_YU
ztUq?b?3AB855IX|NV=kGM9Q68z+{1HEa}EFLUh##2if;Tx?n@)Ba%h)o{?&IJ0()N
zr80wB4lf}>HIasnDYxWCN9N|USk_Y>$OK2xJ<^r?w8*RAUU{c=?%c1v4EKC#f4L!?
zMalY}EGZ;aCE`nJORC3X#yvI5CsjVui$!-x&9bLXE~%MRT~<|FR#^c*E7e8u)TuM=
zspZ9!sw-<!jr9C_7m`t5*ROIX`gQ&4EFUOUgnQyIJN$AXu8Lg9LoE#e70%<=jaLLb
z;|hUWwH+ug434+C34SdJ-tf@7NehjX6WD9DYktJlkD`B$@ca|hUmp04#fIY*Ip|Md
z639V+0@?r$`g~uOz}Okm5<E0^GLm9uuWQ*2jLXAanZ9j4scRY7Y`CL|;qq7;3zG-0
zW#d_-Jlt7#*P&6$U8krL<*q}cl(Ut*Gg=dH*3d-vnJiE?<U`bin`?La=r=v1D0V)H
z`WWS*{RG3{Ic?7<r{iRBt$W0uBhhg_e;qr?Or=<C)ow==S<5}WWbadK6*|z+E|ahd
zR?AiUFLoDF%Qn)7Gms9-LIH4zi8l{nWrllTOR<l8qIx3qXyd*bqsTopMk)8O36?`P
zi$(FL%f4kWM;l2}n5y0pMJsqBd}C-_OAs*N2Qp~eSfkv~g{5-%+4Bar3%=3Du|-J3
zamrvul-r7~11f)G&%SXJz)>8wl>nS!@$XT}{#<Zj;WsA>?V}AAlo8T7@CFWkjiOxd
zFK$?mUJX{XK0GJdHQ30EZi`i!Ua#S7W6Ow}*hnU8dP9~74+iywu1>R`8Lh-*tiL)!
zVywSOQMCSkc3mB<;^Q(HoR*)4S1LZ%qSf-db|mY?_`GPfU-g@VC{-}rxLHoSmr0pB
z9yYDhN3(%^d9>QJI-6+AqSY!)yqVq4pNOVtbyKv8R-cciICoPtMXRqwQ=ALcMzp#<
zT3T*lQ~Bq5&m+|HnBMb9G)2h2={=#^*;B>2?nrRGHbv8Vog<6;;Ch`EP3yG@*fIj$
zWym5$u(N@qZmBKTk7XguoNa}2tCnfS9J5?Cj&1LfhDHC&Lgjs}u5;fD>DWMAYGl_y
zv)cqV##pKRR%@F;E){yVS*fF~v{FY~aiy|KdAg9r@@ZC#<5;;odLzr{cUeijQ{fv|
zXm^A_&v8I^6@5T=43yyKixb%z_*N@)1oo$UNyDrZZN5K=X^wzy+ZBS`qJ!K*AP*48
zmkH#H1oG`mgTzG$-4#gajv(P{$--25XbAI`>uzU@umJ7JV{T|2aT6O#<t}%WdRg6U
zO+LuuZ)}Z4HjDz7;&QUZC#LN@I_*tTjIuW=*p0T~2{9^g%8fDRLYW$UD)1I=Yz%F~
ztueUXje}`EGQONS&UO4XQWfWnZi95hC6Fp>lRTA8lbi2gXIQD~Bu|}Xp}fRx{1Iw=
z!`$SP;0$w<W+iho+hHj{uUna$<uE##8-Z8K+z61x@=+4D<6bRYE7(rPwjqE5&n?hI
zuCIWfpH{K1Y>yHjZOyTYtdX`mMwyzK)7TjHF0qTd>VpWJ&TG60vK+x7*H{hb5`S_w
z`7TC<1OHVeDjfJOM)t%Lu5ead!#H<VXV}Pt$kp)x*!ZhU3<%uEM+37jhBne$V$??Z
z(HOEX`v9n6Uv?vCvM-OtsEzc*IyTyrZ-Zj1)(ywZ!pBf7o1G22*yP1J*wPKO$%)h1
zeQX%EN{73`Ug34sWlh>}=nV9=8;J-sLsdsAAvzUwy<M;tqj2?b++(i7Yc)ZY(2^#o
z3a``zRoP&IAbF1jF|FOwZwA}V*kTeA24)Lw7?}OSR;wb)XfM>q1oO7ahEpUkqwQXb
zf_unDf?H@)f~&WY;2whRhTv8qDH7Z~8{Vdn!FRLAO>bhcReRkjxVg@TuiDg&ig{R~
z+!ml{#p{<)N4$Q8SBlrKbY78?;`PgW*yD_yck+7HCigFakmtl4<|k(~urACj57aR|
zkAK!Vo+;MBwR<UY?Hfy6pGB^tp|^@2ePf+Wo8Ve!`V2AMIFIc$<zq2w3yhg(`2~j~
z$#jWT44-iY(2C(3p)WC9gjb5;qF9<-q@)<GT)>`XOjA6mM>TGbl~e9zKg)NgLC~ij
z(YPHkkWgnJlcDm3``C5t0qTRRZ!v(;SKqyKS=2Sq&#fCu;VxYYx5wh#vkCH0ExRe|
zE@)>={S53w3{HwwQ-5?ZD>og$VypHdNnxV1(H@e*BrGuywvxh!P)Abu2(OeBKGLOt
zlu!y1rrk@<Y-Ck(#2mIpzTL=7V$xu{^j*THvC~fB9FIk9_&0;y%-x0#9Cr?WQHh6Z
zU8L`WYyfOYu$9XC1;sfe<WHAqSKPazh<F?+%5f6W_aq`7=M>RJ9F9cvlM<2Ntv8j_
z)>T*7M^x99$X=USp1fxni;5mtJhi4I$JmFCcWpF&IqRYtMd^*4hr$NIP$24o2tCj8
zqjRup0XEzU{K=KuR-zsYeM!{g@Jfk#TpTGJQc|LBzYZMF$n|U!K2#>xtYejI2FVFc
zOKqIIVLd#|aIcGiYY`I7?!q|KKZk(VIt9GSDc}`O0lRla0WZ=8TpOo!utGM>1|3`k
zLl`=^5QifHPm4nx^t;7Xb|B!vtz<jSwH{>KRaR|g;caF64pO#iZ<B1Roa4MnvYmz{
z2BWQH`wi5QY`?`TCEIV6Y`In?H{8PtTITO$(Tx4+5GI(hzO%q|eX*1I%h3B+uza)`
zl%w-v*y{!^f-<$b&pQY8v!e-<J)UJ_S)yc%AbgCoJM`8{m#DYyeNe0c@MH-*O3u%d
zSbrt42H2fq^@D3&tmopCJDl}ATW1=D#a0bMjpZ)eV}xv?IT&VN`46_nR6^}0sdmb3
zP9%cp@P^s(1l*mbS=4BTY7|_G&n@e%FqEvd<Jq@|Ov|a&(l(^9QKMa@FBcKBa2(Cz
zLSZ3R(vfQ*hOU>6T)Q-xrkeD|vuML`95tPnJ&SgkXAIQyEH5EG#~%MhBxcieDZ1?O
zJMV$}8IZ=zeHL;b5AFdK_y{|?Z}f|xcbo0Qdv@ABz&GSF6Zj7ivddn$Y5B7n*hppm
z2*>MPQ<*1_l*?haB2XGgWg-zwWxi)uaXS1QxsOf9pP14-gyMAE276J-F2M*a_fVyN
zqX*^^4yyMyWyLGS$dC=I!G^*e`#!pqeOyF)$;`=Rgi80YdlNmEV7><q)Jn1{m{(_?
zN5-qO&kREA)sO&zv(I)uJYI$K#qr|Q;~jaColZaN@bC!ajqw!DUk?x5JK63L@3wvK
zMwL#sRrc(h>vBXJ5aG!HAZ5?+ii|)LUMVBc1P{O;8Qt>u%kUxx45e2?_=?9)w#4Hj
zm-52vu<l=Yl?}px8tU|b8hIv5vpe1qw`_4M#bv!OUM*|3MNWGd_tBf;^*9$=8uoHG
z_M)}=SiD-;NB_wRO~<j=svRSF<C)i$U#>zp5nX=J$GPO}UG5n#HGRBYg6n?z0ur)m
zIs%tPp&q)4fVObsB`QJP*9c2cla`o3d$8~0>CVe<gdVL(Py)@GKlF3X+69_5<8=Lb
zXn*<rBJRRu#s<hPx+vIn32jlzg16YO{MH0Koh18gWC^Z^9<NJqQ<U?Bz_=6o1I|U3
zu-BR_kLiL`GHB&67Qm>aD+}>T>B>To0c2Va9b}srU!Oon6V@hROtV3L`VO<m$os%A
z)E<U}-O~vw%d-~2lcsD>aA=BqDQe2j1abgt6I5KkGC?Uy<WA^rD9UyuMT)XoE_;;4
zh_BB1vfJeB_aO6Rm-oNV;!OJcMO+Kh&0k?hcswnEZY-{H()kpo3WAc=SYm)|C5K<3
zj^uC_uaq3lq8wn0gOpTI^2rD6L6$4E4_UmWrmAF8+3jT|)xCyRR)_<2r92>!B;}hZ
z2Ytjo;<1TJG`@+BQEiDR8kQ+5K4dntgM!@oF=R|SC+hca6Y2gfxK?~xGdEG~K6z0h
zWyEq59eJ&+L^<OV*u<9UJxi$PoqEp_z2^eGCsgYhvDhrY1nOyL&POL3{hfH0e!`-%
zo%oF4(51u?3BnVXR_zfTz#0PZln!8x4q%rK0IH3YTozttTij&>3IY?n<2e??eG`>_
zcqft}u_Ipnc`F;rlk~#`5{5@2ie>IstY?l-T@5@1VXrMMvEN=<U0z&kPe?BBkUY6V
z@)&#ap#0<;@{@-r7`&9IKE2xZ`MQ2>n_genKkU4VqMbkhR_*6RmHF#=ls(${M=S!(
zx}>SPjH6NBo5{nwo!<LTBxBQb4#`ldJIt()Jp485Loe1z)4-2E@(G;uiIMRwEIrxP
z&;9@;+PLt@Bv9aK3!_8vf>r><8t}4}eEI9YS-zi>zs751&u`c@-c7(`WRgmog~?@m
z^(0?#l1lPT2uVmDlU$xWd3^Gq<QqV)_UvrCk}aZh(W-z}?F{+1DR<YXfmg^`Kb<q)
zkC66hgEXhyq1TA9>~?!iNo|(B4&E#Ts!~>CFNXhiM;jUN1MAmYJw)urhl}p(#>b_^
z9s3<uh<%EVy)$04nw1Gxg0mpgF>vD*b?DEhkeDXBiOHD<4WM$DJm{Z^%E`c!o$|u7
z@Ju*X>9NR<i7K_{XVR4)HFqUMBF>j8Jq?VJQQd)8%Bb#0QqHB<Pb`YDH&9e`4D!_^
z%oc5sJ$`1x;Oq>R)6U~nhjg@$lGM(_a-3OK9%t9H6Vx4Y3y{H6DvC$SzoSdsfw=cY
z2lPo2IiOdQl!4iwL<Z&)7{o9zAK`#xU|vd6kxI@<_K_(*8H%l1oSe4bu?2amOAMA?
zZslJtNKs3_GZJzH?s-VZ1{|ufU1F5or&%Th?&=wm!Pvz;WVb@UHtT&rGKK5|lGV|Y
zvB~NolJVGEJw?KAO;%A(Su#aA)?|uuvJnKG#Q_p3PzMs2P=}x9|FA*utpfFaK+zfd
z<RvQ|F=C$_pmO=xN1a!D*p2r!m*5>j>(Tt#WOYRJc_;8^2>5;{aCJsh2adjIdoqP*
zTiqb8xf+NnN&dYX#BVMEQ6<PN|Aipwzu1<Z(f`$L*l%c9V+)g`|I`;yOfu!hUvky(
zR&hx}im`+e@k%YB#1vdYvhX}xE(1Al#%CGj#q;a|-YbPdknSlhhku8=RQ&oB6@zq#
zzGPvv!W6ZJ3NNtR_{0<nImV^HbkdvRZh@96GH|>pZkFC?x}y=lB}I8}cdF>UhsvGr
zg7@y8q83*txTlV{zlS1C-Fp`z5?Wl>q+r_QxsiMxGjGFUc!3d&g@?krI9ojd!$RzK
z4VF;sR+!RCMlV4fnVFaIO3CPDlo7;kNJ(WdXZrCZ#y`^q^l=J4Qht&jBl&#nr2Z4h
zr)vNo&si$T=Yo^<-%=zG<YRdhRYCIZ@MqwOQ&)Zt=LR8@cZ7w=$RKWo%vsgvV9CPd
z>CfSrLwLCc|Ba;PJ{C&tI7#helG=N^)Q$rtLux-EK9br8fEbS5W`*!O%w?%cYEx2G
zByuQ(Z|yP}i~bjT#Am0v?wMvH9h;^P><mTbViG|M;8|Rzwz>T{2|BegMk1Arkw{g>
zXe$f@+pTS>YP+=s9>;{ULM^Feh$ewl@t|8Bj!uRMx+_Bj-O&)i&vzsET=-UoXlbg-
z!z@XaJ0kgQh|NEWU&DXALTuma*uF(<Y4V9REP`K1l?T><5?>^QzY{`pngik5hnNE)
zo<Ia53Ly|dgz&SAmER8E3gOoZAzLEZk4%3mdohT>dHZfA);Mn8O$W~Z+IaH8X|5AB
zFs<!GIr9<|(&(A&iD@8i^-Q*%k4sZBpPHuf5+HK*RJJa1Jnef+8kx}1Fp$&A4@`5j
z@_!9fooEnlK$l(uD4Nigb)C2m<D1fOlM9E5Hn@$tltwk42A{5kWkev8VXE*6oDW==
zZ!6<)5QZh=@D5%n<M0kh01W7W1imsLpthvEYW(D~>NI@qV2voac?$m_jm+pbY3h}m
zvS$(>z|W;AQ~C|EL5ApTn%e2^iS-rRW3Pp6ao(@Ywh|Bgn$ty2Tqg#%LZL)u_Mybs
z`*@`*YYXv-pDQtW`Z%lRzok(s<r~>>0?x*LnMNk`HyG7024@ig8H1yM2{u53<c3r}
zNS^A%O~!Sho%@)zq3O`ns$Gvb)TyF<>HG;kI9--z@b#v#RC}wc#bjyUTd;)I-C(@@
zUknKxFo4k<fz4E;W7BldWJqw@qn<Y2`&eU7yS=Vr5+0IE#}HjUn9Ymi-C4ZH^&M(U
zYHDjbOsOuLOh@Hf?Jmp?8pgiDrNj{&t3B#`MCBek4FYIw%vF6lnJf6lbZ7Vva1_mW
zy-=gc04k>3Z-*P3$f%J4U6~Hc%H=TULrC2v13D;OWk8WGW<cxH(OQJo>tZgoId)`^
zIs{-&gM)lZ1jd;^lmuL-+wUx!I@Lb0WKv~$37!R%1s!;3w2Qdh5B^C9$sWNjjX<VW
z4S-<o^={Nk$C-kuGWVR*D3t-ozcxzI@3-Qkc*U|o?bJWP5^Tm1w8Ply63RfYzc~gF
z;Pp4hQLGfF{)jT|&d;Tj@g0;-?m<^md|$`6>13<Ec7uQTD&Q+q6`SE|Q>_`7hN+vX
z4jH<s%7R`_18L1r2GTH9WeS5~s$k72Q+3qUe4wd{@Z1hUp~Nj-k*yj72*_5A$x!>H
zYp>xu8L!DuhRL%Ms`1Tea?Lf|SANrt_u_LilzGA$-8?nG`##`4&93gy1YbT&S5I~4
zd3;p{1vX8{0G)?es$UKd^m8MDo2L00v}vl$P;p&Z1{tOK(9keS4cLi{($oxfOLkum
z{<isFSZvkafblS{yTjS)H5d=#x~W(~=CmQBmFfNp>PQ?%@k*KQqbLrD>yVPl$?fdL
zE9J6*e7%Z-`}O8`^WRBIrgJ)N`QSjlQEu(SJ2D@6*dJc!V$^^xn&FWk9xnU$<u^m}
z32Mn+$7C9kf%_#a5Dtn&7x118&SMxYI=5-@egW?U&u}<eT;Ha}f_^*~PSQA9Om?*3
zk(nx{c14z{-c{$9Ny0xz!auDG-!IcCd^23@!vBvFKD!{t4dB;DS5;R|sV=FhvG=kk
zO{%P`sO^wck)C5unp`Wh2XVV8OD~p(2J=`i_%*pgRu%FTs3@+OY)`6?@i*{9Pe>E}
zza$vv^4i;n5IVdFfMkMCT%N&MBTZTf;sG7`k3Nq$TbZqNWC!#o9odOjN=J5Pl8zuH
z75m$Y_zetB>VVwouE%Sc_^|D-><AY1_j?UNkP<@X0oB20IKQ8rbWYSU$3(I3Ngbl1
zcz{e80q?zOpGAwwBg>&OdYdC7IJ}NqueP?SZW+l3^R9Yzr!1BB9gsz7-%eTb@lm`B
zAD%^NU#K?Xhwn*KTtSnje5z~8Ynf`99>}C+`YCW{EYpvXQxfjW@bbQHHh*)Y@5HH<
zlkONlt*)}RMC=H%u`;=M3@>xM#hZT0jFH^OM{CSd^R+ljZ8>J%!ncLo3q@|P?e0@1
z&yL}}^*23-H|oD#U)lW-ky#DQgIx$%g+J-IAyO0Zuh~YuSODQzz7M>_rlxobyirEK
zu-8`FtKfAvwLa5JswY;~l-176w@<38u7;Oa+Z{#rsU_1(ruvkZRg{$%PaW?l&zIUn
zp6=sQQF7<hvI?LoUnu3*<WpKWtyFV(dM`D)5mo5F91(@KgYa)hF=R#H9b}yaJf`;~
zRDwWeiGu8?q8I*uFfhiE*WUgAW4H)Nk~<T|+5r;Ai!_-QT@vV>_hdQlgg=>u-ci33
z?jo$msR`Z*zgIO$FfSl_bF<XD$b7OA>=WxCneUSz<29ZXq32&aLRMZ?z&AV`@i10q
z`)J=&=Whv2AAKZz4s0&gTrQ%$Op=~%C;kRY*ZFMeS)^mr^rb`*t#ii}m`yvb;B4oP
z%RgI%F)`V=<6;f6AeP$=G2x?9KG_t+w9j^pC(i2P&|lqg2JJ_J5l?_{R6Oyri|J}@
z8*j`uY-15#Dce{CP~hI)XBB)2<7L^j&nd}n*;d7i8K04@f`}4muG_;qvsDmLSIyxC
zG1+M7^5M|A5i~5MOH8%8_ra)PRyH}Vl5Ay;CS;R2ngzrSb95&TMCNEB3=M~?U#aD0
zW<G%BaFQ!qSsCx?{4n2>Essp++s%il>L6eN%hC63qJU3_@4?H<&F^2OV)@s=hI4+u
zL^?K2$42uj8)op$D)mv#W8^E<JeHr!Zj=Am4L#dzD9&WlhT=@N%76IgsQiZ|N98}v
zIZ87kawx#v4P0UVL+1+fnb2MB7oa<47vSgcyZ9gQt)li*ZW{Atw%Zo{Gl28gVLLAb
zG)~S3<+SD8so4{ANV6v+bUl|af$&%4s9XZTSGfcoJ}$c3a!9quz(CGWc~Fi5YUD*f
zBix2=!&EEXo~Tc#nv7O{e*-`zzrPW$lx}YXFw1Q%nf1Je^TRnU>*w-MJyN$~{S)v}
z(`d#gv}$KomDIrBqtLKoXiaH6{AmiPmm3%IAw0Z;Jh70!F$ez$hW3aDeBj?=(BATd
zkHh#;<pm%30(b2_{J@uyYmMIUf$!bc{=g4>SG6`DKk$Xinx6?i@D;>b6Mo>UakW0a
z@PTie)QT<efv<+s0{r146hB1Z9Qefd;b@`w8VP)hhqe|!@J$z*AG}sT!<Rs4f8qx|
z!LO}_r>Qi2kQbggf)9K&37%$v4}9oBdlb&-YIr(XtA_)f8XmXRPT>b0LDeR}nL7<n
zZ))G;2c9;ZqgCMXF+3Ni{fZxWlnah^zz3fG&{pC-a=g2*dBe>g4R7OW`yq?1;SCq9
z6QpA_Ob%=B;Rhx>wJ+1)1JfN^8AN3oZd0_=_<;ehb^xrHh5?N>0p?sQVc9KR7C}}h
ztkewmrDxVaj%K{>*qTHW`qeo-`eD>!S5b?-q+)UnY>8`2E5T6|+b2#fuDHXF4!(!I
zuA*cH+^VlFnGBa@6_X)MaGZAhzn~GE<8**3zi@2_eN))C1Lgs4@KO;-Qz38kM2%}|
zY(Ki-rlEs}Uf0y<iO8A?eH*=ND(k8zl{Bf~0c@hyyMwZOhNm);0>!e=VqW-v03mHy
AS^xk5

diff --git a/docs/build/doctrees/grid.doctree b/docs/build/doctrees/grid.doctree
index 27d8a947607d752be8459c0c9c439acabb0d0521..9ccc353b6687e31ec415278cf2021c6980c8be6a 100644
GIT binary patch
literal 79342
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

literal 79369
zcmd^o378~Db>>{%Gu?CR7zt>Na!0`Q3_aDlKxmkeg(Q%~z-SP{2!ytjU6tKcIn|X#
zWmfkz*C%|f1Sv39fdLzTUc49qHtgCghYjCi7RxraVYzHD#vGqP3&I9tz~1HX{x7bK
z$jYNKySf>z`A|<~X2gq#cSXdD_g>sR_PUEUY}`Qq3wQgSMzejUV%O_!ukQH$a9iE0
z^%k9W(7(Tb=oS5!^{2y$uD$Ggy>89vhZ|6$)@ZisU8mi@vmfrF;z6_JS491-zEcaD
zURzafj5Wp^Tkq^oHzvZdpc%9r?NfN+DX-IO*;M0&)mqE;eQVLH_fUxHpvsopoHNuH
zz2pY7<S+JFKO19unHaQiykn!wLBFv#oT#cXHa3UjVrVDBEv;tT>7VS)+2N!e1l{Ib
zF91pi1)H07pN6}YbrCP|d#r6Q@?YEPy-xHnXV*@5op~zL3%3UL0)6T?b~mOPI~o@?
zHaGT%&!260i_UD_UTW57J6+EO&ivWAX4~$rRBP3)=LO=a)>#P}Ub|X%meltn{M{@@
z;m`8k&n|SE^-9;r_%1%NsW;cy5RNt5b?1zRYfgrSh4C~F0Jo3De~-t1)A;W&jScAO
zHra@#!z~@V+3kmd7*DZy-$ZXJoZ{4GKfIXJ>qu&e#`wvgZ}%EAjf#eXP)9+fv*NUu
zW|y3<4@Quf5UpKNxw>-oY^ymp%g2r9S-%-LM>;^Xz2L-(&$7;OgmhMp5|S{i_JZZj
zr;h?y+X$>pgcD#Bd!cK08XD%pE1t!8(yDpwz;3n)TF`K;h<7c*g~j>Tn<H{oI0Nr1
zS68ug;|AdDI?gsH8y6FErc#hld@Z=^>_e@jJ5c;ou2dkb$8U1Fj%Bx6443o0Hq#q+
zs~M~it!y2=9H&;(x9ZM3q_nQkyGke#qMw6KKD!X28>hfFn-j-&<88OxaLZ9PFyCHs
zs(#z<_zf@cExTQ}j8`)j6cd$PvFuvV13p%)deaY@z{k%>CK?&MXuLK$UM)V}F>SmP
z;ciBbCaLdg3!T=4MyQ*K@Vr==Dr9$2D|q|S%^Nn{X8Wi8qmxH0jyTLmmdO!;XC3s~
zM<9H`LCbdnU~PfTQ+{@(t`qdSZAJ;I+q7F%d#=~6+wGcDZP<Qe`0BnFc%71!2suNy
z)b7<<j@_*;Vmd6=N26w;Hu*flh&XgVown~R&b1t~7L=sltUF!H?{pozE|sMur*C=C
z^O#t`_4Cb^<5yIB!Agfog4O9Zm+S!Fg;I!UJl{OSXj${RU1(WLC<dzOTk~F*eFVeV
zy;fi?*{vR4Lz$4ap7Wim*CAGozy(<SoaWkwP~K+Z*>2VxYuR40z;nHJ%d_k3b=O%$
z&w1-TKkyc-EpK4~!>cyi^PYtXs*CB{n(umx)*{N{_cTd6djW|)eJC1e)U4i^)&jNa
z)Y-IBtzl(0Yb`i!r)vioqSiuXa+0YCT3l@joUSfc;W!s6sYB#rqyk<FS$^^GD&S0G
zKT~<<qgudb%gIQzHGx)=zkROPYB@o&W}q%l5R1n3L3nv_9l*z^=9b3m+3Im$_@oR_
zU%mScLZN*1?l+n$r61ww^%(3MhQ|@+UxuS?sMgP$tbYZCUIRqluja&K8U4-GWN{??
zu0X=-fJUhJU3B-|#ZfVVYVRzLiYzYBQK4z&I08N@5KsnGH0+O}{|^=)_9Uu(WX*@o
zCS5kni21)zZrBV|H0&>+|6eRV?Cq%b`QpRAYB<I><~N$X<0SvC7<*}W5dyx8k$kT>
z0(PL<ch(013B-3Nu(MwU4ooKC(5Bq&1e9%EhuniO9k{bG<!(jI;>fscIBw9^EHOTC
ztq2VzfGH;6aHiY?r4X<S2-sf=0apx%0Am3bN5NGQ3QB>CkiZ~KxmTA$0_+~{6H6gM
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
H)5`w?$nuJT

diff --git a/docs/build/doctrees/modules.doctree b/docs/build/doctrees/modules.doctree
index 8b38873c1495f2a343a40c2341c2d309ef859ead..5f86b79f2523bda448fcaae2cc0c2cbcb3fb4c8e 100644
GIT binary patch
delta 136
zcmZ1`+bGA<z&iEYMwX*2j7pOYSi~kjU}5FW$xlzu%uAorHpQ<;8!8&hs0m_8`sSy`
zr)0(lm!zg8=H<s585o*_)k%ZZg|J>{$*9Vx*{scGz|6RNa}4KAW|^rOlZtyd^AdAY
bODYRei>K61$(ZU_oS_J$Cv6Vo4P^uXd)+We

delta 67
zcmZpaTPDlWz&dsIMwX*2lRvVQOrFB}ZgU%(0W;(F&D%L|GRsWN=qv8w%uCEoEvYO>
XEuK<4C1avrafTw0?%TYEH<S?om4+Kz

diff --git a/docs/build/doctrees/nbsphinx/examples/old/basic_example.ipynb b/docs/build/doctrees/nbsphinx/examples/old/basic_example.ipynb
index 9078cfcb5..7146b9767 100644
--- a/docs/build/doctrees/nbsphinx/examples/old/basic_example.ipynb
+++ b/docs/build/doctrees/nbsphinx/examples/old/basic_example.ipynb
@@ -1,5 +1,14 @@
 {
  "cells": [
+  {
+   "cell_type": "markdown",
+   "id": "c09b9f85-5250-4fd2-8142-bb8097d138b5",
+   "metadata": {},
+   "source": [
+    "# Basic example\n",
+    "Running a single system"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 1,
@@ -106,7 +115,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -120,7 +129,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/build/doctrees/nbsphinx/examples/old/workshop_example_notebook.ipynb b/docs/build/doctrees/nbsphinx/examples/old/workshop_example_notebook.ipynb
index 4eca58797..78d0860ad 100644
--- a/docs/build/doctrees/nbsphinx/examples/old/workshop_example_notebook.ipynb
+++ b/docs/build/doctrees/nbsphinx/examples/old/workshop_example_notebook.ipynb
@@ -619,7 +619,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -633,7 +633,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/build/doctrees/nbsphinx/examples_old_basic_example_1_1.png b/docs/build/doctrees/nbsphinx/examples_old_basic_example_3_1.png
similarity index 100%
rename from docs/build/doctrees/nbsphinx/examples_old_basic_example_1_1.png
rename to docs/build/doctrees/nbsphinx/examples_old_basic_example_3_1.png
diff --git a/docs/build/doctrees/population_extensions/Moe_di_Stefano_2017.doctree b/docs/build/doctrees/population_extensions/Moe_di_Stefano_2017.doctree
new file mode 100644
index 0000000000000000000000000000000000000000..c1a187e4112c3c482c14892cced13c0b22a8e456
GIT binary patch
literal 20514
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

literal 0
HcmV?d00001

diff --git a/docs/build/doctrees/population_extensions/distribution_functions.doctree b/docs/build/doctrees/population_extensions/distribution_functions.doctree
index 51477772610ad5685b0e4c01a2f3724eb6a06034..cfbd7afc98f30013fccf322e6bdd139a89cfa8d0 100644
GIT binary patch
delta 36827
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

delta 37779
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
b6=2iTXTUWB|Nl@~ShH;6Bs26zPvQRo7sdUn

diff --git a/docs/build/doctrees/population_extensions/grid_logging.doctree b/docs/build/doctrees/population_extensions/grid_logging.doctree
new file mode 100644
index 0000000000000000000000000000000000000000..e6408e8339c7aba5799defa51d8cfd1d19455c1c
GIT binary patch
literal 15451
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

literal 0
HcmV?d00001

diff --git a/docs/build/doctrees/population_extensions/spacing_functions.doctree b/docs/build/doctrees/population_extensions/spacing_functions.doctree
index 6063fb67cece6692fcc082bdcc23857c039253ba..2fd67c589c99fd60dc6ce4ee8a4be13d4fc7d95a 100644
GIT binary patch
delta 6919
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
QLhN>#Agm(zSU*wlKjF*JMF0Q*

delta 7690
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
W`7cjUq4X=2D9`e8@8_dM>Hh$O1jVob

diff --git a/docs/build/html/_images/examples_old_basic_example_1_1.png b/docs/build/html/_images/examples_old_basic_example_3_1.png
similarity index 100%
rename from docs/build/html/_images/examples_old_basic_example_1_1.png
rename to docs/build/html/_images/examples_old_basic_example_3_1.png
diff --git a/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html b/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html
index fff44fe1f..6a521fc97 100644
--- a/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html
@@ -552,9 +552,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/dicts.html b/docs/build/html/_modules/binarycpython/utils/dicts.html
index f2bf48153..3baf7f1bd 100644
--- a/docs/build/html/_modules/binarycpython/utils/dicts.html
+++ b/docs/build/html/_modules/binarycpython/utils/dicts.html
@@ -904,9 +904,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/ensemble.html b/docs/build/html/_modules/binarycpython/utils/ensemble.html
index 60695f545..c728ad217 100644
--- a/docs/build/html/_modules/binarycpython/utils/ensemble.html
+++ b/docs/build/html/_modules/binarycpython/utils/ensemble.html
@@ -467,9 +467,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/functions.html b/docs/build/html/_modules/binarycpython/utils/functions.html
index d89b6bc4c..cd44eac03 100644
--- a/docs/build/html/_modules/binarycpython/utils/functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/functions.html
@@ -109,28 +109,30 @@
 <span class="c1">########################################################</span>
 
 
-<div class="viewcode-block" id="now"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.now">[docs]</a><span class="k">def</span> <span class="nf">now</span><span class="p">(</span><span class="n">now_object</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">style</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">specifier</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+<div class="viewcode-block" id="now"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.now">[docs]</a><span class="k">def</span> <span class="nf">now</span><span class="p">(</span><span class="n">now_object</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">style</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">custom_format</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    convenience function to return a string of the current time,</span>
-<span class="sd">    using the format &quot;%m/%d/%Y %H:%M:%S&quot;</span>
+<span class="sd">    convenience function to return a string of the current time, using the format ``%m/%d/%Y %H:%M:%S``</span>
 
 <span class="sd">    Args:</span>
-<span class="sd">        style : if &quot;nospace&quot; then return the date/time with the format</span>
-<span class="sd">        &quot;%Y%m%d_%H%M%S&quot;</span>
+<span class="sd">        style : if &quot;nospace&quot; then return the date/time with the format ``%Y%m%d_%H%M%S``, else use format ``%m/%d/%Y %H:%M:%S``</span>
 
-<span class="sd">        specifier: if set, uses this as a specifier rather than whatever is set by default or in the style variable</span>
+<span class="sd">        custom_format: if set, uses this as a format rather than whatever is set by default or in the style variable</span>
 <span class="sd">    &quot;&quot;&quot;</span>
+
     <span class="k">if</span> <span class="ow">not</span> <span class="n">now_object</span><span class="p">:</span>
         <span class="n">now_object</span> <span class="o">=</span> <span class="n">datetime</span><span class="o">.</span><span class="n">datetime</span><span class="o">.</span><span class="n">now</span><span class="p">()</span>
-    <span class="k">if</span> <span class="ow">not</span> <span class="n">specifier</span><span class="p">:</span>
+
+    <span class="k">if</span> <span class="ow">not</span> <span class="n">custom_format</span><span class="p">:</span>
         <span class="k">if</span> <span class="n">style</span> <span class="o">==</span> <span class="s2">&quot;nospace&quot;</span><span class="p">:</span>
             <span class="c1"># special case</span>
-            <span class="n">specifier</span> <span class="o">=</span> <span class="s2">&quot;%Y%m</span><span class="si">%d</span><span class="s2">_%H%M%S&quot;</span>
+            <span class="n">date_format</span> <span class="o">=</span> <span class="s2">&quot;%Y%m</span><span class="si">%d</span><span class="s2">_%H%M%S&quot;</span>
         <span class="k">else</span><span class="p">:</span>
             <span class="c1"># our default</span>
-            <span class="n">specifier</span> <span class="o">=</span> <span class="s2">&quot;%m/</span><span class="si">%d</span><span class="s2">/%Y %H:%M:%S&quot;</span>
+            <span class="n">date_format</span> <span class="o">=</span> <span class="s2">&quot;%m/</span><span class="si">%d</span><span class="s2">/%Y %H:%M:%S&quot;</span>
+    <span class="k">else</span><span class="p">:</span>
+        <span class="n">date_format</span> <span class="o">=</span> <span class="n">custom_format</span>
 
-    <span class="k">return</span> <span class="n">datetime</span><span class="o">.</span><span class="n">datetime</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="n">now_object</span><span class="p">,</span> <span class="n">specifier</span><span class="p">)</span></div>
+    <span class="k">return</span> <span class="n">datetime</span><span class="o">.</span><span class="n">datetime</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="n">now_object</span><span class="p">,</span> <span class="n">date_format</span><span class="p">)</span></div>
 
 
 <div class="viewcode-block" id="format_number"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.format_number">[docs]</a><span class="k">def</span> <span class="nf">format_number</span><span class="p">(</span><span class="n">number</span><span class="p">):</span>
@@ -220,7 +222,9 @@
 
 <div class="viewcode-block" id="mem_use"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.mem_use">[docs]</a><span class="k">def</span> <span class="nf">mem_use</span><span class="p">():</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    Return current process memory use in MB. (Takes no arguments) Note: this is per-thread only.</span>
+<span class="sd">    Return current process memory use in MB. (Takes no arguments) </span>
+
+<span class="sd">    Note: this is per-thread only.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="k">return</span> <span class="n">resource</span><span class="o">.</span><span class="n">getrusage</span><span class="p">(</span><span class="n">resource</span><span class="o">.</span><span class="n">RUSAGE_SELF</span><span class="p">)</span><span class="o">.</span><span class="n">ru_maxrss</span> <span class="o">/</span> <span class="mf">1024.0</span></div>
@@ -228,11 +232,19 @@
 
 <div class="viewcode-block" id="trem"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.trem">[docs]</a><span class="k">def</span> <span class="nf">trem</span><span class="p">(</span><span class="n">dt</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">dn</span><span class="p">,</span> <span class="n">n</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    Estimate time remaining (seconds) given a differential time and count (i.e. progress = $count/$n). $dt is the time since the last call, $count is the current progress count, $dn is the number run since the last call, and $n is the total number required.</span>
+<span class="sd">    Estimate time remaining (seconds) given a differential time and count (i.e. ``progress = count/n``).</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">        dt: is the time since the last call.</span>
+<span class="sd">        count: is the current progress count.</span>
+<span class="sd">        dn: is the number run since the last call.</span>
+<span class="sd">        n: is the total number required.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
+
     <span class="n">tpr</span> <span class="o">=</span> <span class="n">dt</span> <span class="o">/</span> <span class="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">dn</span><span class="p">)</span>
     <span class="n">etasecs</span> <span class="o">=</span> <span class="n">tpr</span> <span class="o">*</span> <span class="p">(</span><span class="n">n</span> <span class="o">-</span> <span class="n">count</span><span class="p">)</span>
     <span class="p">(</span><span class="n">eta</span><span class="p">,</span> <span class="n">units</span><span class="p">)</span> <span class="o">=</span> <span class="n">conv_time_units</span><span class="p">(</span><span class="n">etasecs</span><span class="p">)</span>
+
     <span class="k">return</span> <span class="p">(</span><span class="n">eta</span><span class="p">,</span> <span class="n">units</span><span class="p">,</span> <span class="n">tpr</span><span class="p">,</span> <span class="n">etasecs</span><span class="p">)</span></div>
 
 
@@ -253,9 +265,16 @@
 
 <div class="viewcode-block" id="bin_data"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.bin_data">[docs]</a><span class="k">def</span> <span class="nf">bin_data</span><span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">binwidth</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    Function that bins the data</span>
+<span class="sd">    Function that bins the data using the absolute value of binwidth using the following formula::</span>
+
+<span class="sd">        ((0.5 if value &gt; 0.0 else -0.5) + int(value / abs(binwidth))) * abs(binwidth)</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">        value: value that we want to bin</span>
+<span class="sd">        binwidth: width of the binning</span>
 
-<span class="sd">    Uses the absolute value of binwidth</span>
+<span class="sd">    Returns:</span>
+<span class="sd">        binned value</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="k">return</span> <span class="p">((</span><span class="mf">0.5</span> <span class="k">if</span> <span class="n">value</span> <span class="o">&gt;</span> <span class="mf">0.0</span> <span class="k">else</span> <span class="o">-</span><span class="mf">0.5</span><span class="p">)</span> <span class="o">+</span> <span class="nb">int</span><span class="p">(</span><span class="n">value</span> <span class="o">/</span> <span class="nb">abs</span><span class="p">(</span><span class="n">binwidth</span><span class="p">)))</span> <span class="o">*</span> <span class="nb">abs</span><span class="p">(</span><span class="n">binwidth</span><span class="p">)</span></div>
@@ -287,6 +306,7 @@
     <span class="n">obj_id</span> <span class="o">=</span> <span class="nb">id</span><span class="p">(</span><span class="n">obj</span><span class="p">)</span>
     <span class="k">if</span> <span class="n">obj_id</span> <span class="ow">in</span> <span class="n">seen</span><span class="p">:</span>
         <span class="k">return</span> <span class="mi">0</span>
+
     <span class="c1"># Important mark as seen *before* entering recursion to gracefully handle</span>
     <span class="c1"># self-referential objects</span>
     <span class="n">seen</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">obj_id</span><span class="p">)</span>
@@ -310,20 +330,26 @@
             <span class="k">yield</span> <span class="n">val</span><span class="o">.</span><span class="vm">__name__</span></div>
 
 
-<div class="viewcode-block" id="isfloat"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.isfloat">[docs]</a><span class="k">def</span> <span class="nf">isfloat</span><span class="p">(</span><span class="n">x</span><span class="p">):</span>
+<div class="viewcode-block" id="isfloat"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.isfloat">[docs]</a><span class="k">def</span> <span class="nf">isfloat</span><span class="p">(</span><span class="n">x</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="nb">float</span><span class="p">,</span> <span class="nb">int</span><span class="p">]):</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    Return True if the &quot;number&quot; x, which could be a string, is a float, otherwise return False.</span>
+<span class="sd">    Function to return `True` if the &quot;number&quot; x, which could be a string, is an float, otherwise return `False`.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">        x: string float or int that we will attempt to convert to an `float` value.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
+
     <span class="k">try</span><span class="p">:</span>
         <span class="n">_</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x</span><span class="p">)</span>
         <span class="k">return</span> <span class="kc">True</span>
     <span class="k">except</span> <span class="ne">ValueError</span><span class="p">:</span>
         <span class="k">return</span> <span class="kc">False</span></div>
 
-
-<div class="viewcode-block" id="isint"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.isint">[docs]</a><span class="k">def</span> <span class="nf">isint</span><span class="p">(</span><span class="n">x</span><span class="p">):</span>
+<div class="viewcode-block" id="isint"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.isint">[docs]</a><span class="k">def</span> <span class="nf">isint</span><span class="p">(</span><span class="n">x</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="nb">float</span><span class="p">,</span> <span class="nb">int</span><span class="p">]):</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    Return True if the &quot;number&quot; x, which could be a string, is an int, otherwise return False.</span>
+<span class="sd">    Function to return `True` if the &quot;number&quot; x, which could be a string, is an int, otherwise return `False`.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">        x: string float or int that we will attempt to convert to an `int` value.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="k">try</span><span class="p">:</span>
@@ -348,11 +374,13 @@
 <div class="viewcode-block" id="datalinedict"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.datalinedict">[docs]</a><span class="k">def</span> <span class="nf">datalinedict</span><span class="p">(</span><span class="n">line</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">parameters</span><span class="p">:</span> <span class="nb">list</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">    Convert a line of data to a more convenient dictionary.</span>
+
 <span class="sd">    Arguments:</span>
 <span class="sd">       line = a line of data as a string</span>
 <span class="sd">       parameters = a list of the parameter names</span>
 
-<span class="sd">    Note: if the parameter is a floating point number, it will be converted to Python&#39;s float type.</span>
+<span class="sd">    Note:</span>
+<span class="sd">        If the parameter is a floating point number, it will be converted to Python&#39;s float type.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="k">return</span> <span class="p">{</span><span class="n">param</span><span class="p">:</span> <span class="n">convfloat</span><span class="p">(</span><span class="n">value</span><span class="p">)</span> <span class="k">for</span> <span class="n">param</span><span class="p">,</span> <span class="n">value</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">parameters</span><span class="p">,</span> <span class="n">line</span><span class="o">.</span><span class="n">split</span><span class="p">())}</span></div>
@@ -361,6 +389,10 @@
 <div class="viewcode-block" id="pad_output_distribution"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.pad_output_distribution">[docs]</a><span class="k">def</span> <span class="nf">pad_output_distribution</span><span class="p">(</span><span class="n">dist</span><span class="p">:</span> <span class="nb">dict</span><span class="p">,</span> <span class="n">binwidth</span><span class="p">:</span> <span class="nb">float</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">    Given a distribution, dist (a dictionary), which should be binned every binwidth (float), fill the distribution with zeros when there is no data. Note: this changes the data in place.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">        dist: dictionary containing the distribution data.</span>
+<span class="sd">        binwidth: binwidth that is used to fill the distribution with 0 in places where there is no value/key.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="c1"># sorted list of the keys</span>
@@ -428,11 +460,11 @@
     <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">    Function to interface with the binary_c config file</span>
 
-<span class="sd">    input:</span>
-<span class="sd">        - argument: argument for the binary_c config</span>
+<span class="sd">    Args:</span>
+<span class="sd">        argument: argument for the binary_c config</span>
 
 <span class="sd">    Returns:</span>
-<span class="sd">        - raw output of binary_c-config</span>
+<span class="sd">        raw output of binary_c-config</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="n">BINARY_C_DIR</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">getenv</span><span class="p">(</span><span class="s2">&quot;BINARY_C&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
@@ -456,21 +488,18 @@
 <span class="c1"># utility functions</span>
 <span class="c1">########################################################</span>
 
-
 <div class="viewcode-block" id="verbose_print"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.verbose_print">[docs]</a><span class="k">def</span> <span class="nf">verbose_print</span><span class="p">(</span>
     <span class="n">message</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">verbosity</span><span class="p">:</span> <span class="nb">int</span><span class="p">,</span> <span class="n">minimal_verbosity</span><span class="p">:</span> <span class="nb">int</span><span class="p">,</span> <span class="n">newline</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span>
 <span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
     <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">    Function that decides whether to print a message based on the current verbosity</span>
-<span class="sd">    and its minimum verbosity</span>
-
-<span class="sd">    if verbosity is equal or higher than the minimum, then we print</span>
+<span class="sd">    and its minimum verbosity. If verbosity is equal or higher than the minimum, then we print.</span>
 
 <span class="sd">    Args:</span>
-<span class="sd">        message: message to print</span>
-<span class="sd">        verbosity: current verbosity level</span>
-<span class="sd">        minimal_verbosity: threshold verbosity above which to print</span>
-<span class="sd">        newline: newline character (or set of characters), defaults to &quot;\n&quot; but &quot;\x0d&quot; (carriage return) might be useful.</span>
+<span class="sd">        message: message to print.</span>
+<span class="sd">        verbosity: current verbosity level.</span>
+<span class="sd">        minimal_verbosity: threshold verbosity above which to print.</span>
+<span class="sd">        newline: newline character (or set of characters), defaults to ``\\n`` but ``\\x0d`` (carriage return) might be useful.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="k">if</span> <span class="n">verbosity</span> <span class="o">&gt;=</span> <span class="n">minimal_verbosity</span><span class="p">:</span>
@@ -522,14 +551,14 @@
     <span class="k">return</span> <span class="n">psutil</span><span class="o">.</span><span class="n">Process</span><span class="p">()</span><span class="o">.</span><span class="n">username</span><span class="p">()</span></div>
 
 
-<div class="viewcode-block" id="temp_dir"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.temp_dir">[docs]</a><span class="k">def</span> <span class="nf">temp_dir</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span>
+<div class="viewcode-block" id="temp_dir"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.temp_dir">[docs]</a><span class="k">def</span> <span class="nf">temp_dir</span><span class="p">(</span><span class="o">*</span><span class="n">child_dirs</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span>
     <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">    Function to create directory within the TMP directory of the file system</span>
+<span class="sd">    Function to create directory within the TMP directory of the file system, starting with `/&lt;TMP&gt;/binary_c_python-&lt;username&gt;`</span>
 
 <span class="sd">    Makes use of os.makedirs exist_ok which requires python 3.2+</span>
 
 <span class="sd">    Args:</span>
-<span class="sd">        function arguments: str input where each next input will be a child of the previous full_path. e.g. temp_dir(&#39;tests&#39;, &#39;grid&#39;) will become &#39;/tmp/binary_c_python/tests/grid&#39;</span>
+<span class="sd">        *child_dirs: str input where each next input will be a child of the previous full_path. e.g. ``temp_dir(&#39;tests&#39;, &#39;grid&#39;)`` will become ``&#39;/tmp/binary_c_python-&lt;username&gt;/tests/grid&#39;``</span>
 
 <span class="sd">    Returns:</span>
 <span class="sd">        the path of a sub directory called binary_c_python in the TMP of the file system</span>
@@ -540,8 +569,8 @@
     <span class="n">path</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">tmp_dir</span><span class="p">,</span> <span class="s2">&quot;binary_c_python-</span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">username</span><span class="p">))</span>
 
     <span class="c1"># loop over the other paths if there are any:</span>
-    <span class="k">if</span> <span class="n">args</span><span class="p">:</span>
-        <span class="k">for</span> <span class="n">extra_dir</span> <span class="ow">in</span> <span class="n">args</span><span class="p">:</span>
+    <span class="k">if</span> <span class="n">child_dirs</span><span class="p">:</span>
+        <span class="k">for</span> <span class="n">extra_dir</span> <span class="ow">in</span> <span class="n">child_dirs</span><span class="p">:</span>
             <span class="n">path</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">extra_dir</span><span class="p">)</span>
 
     <span class="c1">#</span>
@@ -829,7 +858,7 @@
 
 <span class="sd">    Will check whether it is a valid parameter.</span>
 
-<span class="sd">    Binary_c will output things in the following order;</span>
+<span class="sd">    Binary_c will output things in the following order:</span>
 <span class="sd">    - Did you mean?</span>
 <span class="sd">    - binary_c help for variable</span>
 <span class="sd">    - default</span>
@@ -845,8 +874,8 @@
 <span class="sd">        parameter isn&#39;t valid</span>
 
 <span class="sd">    Returns:</span>
-<span class="sd">        Dictionary containing the help info. This dictionary contains &#39;parameter_name&#39;,</span>
-<span class="sd">        &#39;parameter_value_input_type&#39;, &#39;description&#39;, optionally &#39;macros&#39;</span>
+<span class="sd">        Dictionary containing the help info. This dictionary contains `parameter_name`,</span>
+<span class="sd">        `parameter_value_input_type`, `description`, optionally `macros`</span>
 <span class="sd">    &quot;&quot;&quot;</span>
 
     <span class="n">available_arg_keys</span> <span class="o">=</span> <span class="n">get_arg_keys</span><span class="p">()</span>
@@ -1170,7 +1199,7 @@
                 <span class="n">argdict</span> <span class="o">=</span> <span class="n">arguments_dict</span><span class="p">[</span><span class="n">el</span><span class="p">][</span><span class="s2">&quot;parameters&quot;</span><span class="p">][</span><span class="n">arg</span><span class="p">]</span>
 
                 <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;| **Parameter**: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">argdict</span><span class="p">[</span><span class="s2">&quot;param_name&quot;</span><span class="p">]),</span> <span class="n">file</span><span class="o">=</span><span class="n">f</span><span class="p">)</span>
-                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;| **Description**: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">argdict</span><span class="p">[</span><span class="s2">&quot;description&quot;</span><span class="p">]),</span> <span class="n">file</span><span class="o">=</span><span class="n">f</span><span class="p">)</span>
+                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;| **Description**: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">argdict</span><span class="p">[</span><span class="s2">&quot;description&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s2">&quot;|Rout/Rin-1|&quot;</span><span class="p">,</span> <span class="s2">&quot;abs(Rout/Rin-1)&quot;</span><span class="p">)),</span> <span class="n">file</span><span class="o">=</span><span class="n">f</span><span class="p">)</span>
                 <span class="k">if</span> <span class="s2">&quot;parameter_value_input_type&quot;</span> <span class="ow">in</span> <span class="n">argdict</span><span class="p">:</span>
                     <span class="nb">print</span><span class="p">(</span>
                         <span class="s2">&quot;| **Parameter input type**: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
@@ -1258,9 +1287,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/grid.html b/docs/build/html/_modules/binarycpython/utils/grid.html
index fc35e6370..ce8a80180 100644
--- a/docs/build/html/_modules/binarycpython/utils/grid.html
+++ b/docs/build/html/_modules/binarycpython/utils/grid.html
@@ -2469,9 +2469,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/plot_functions.html b/docs/build/html/_modules/binarycpython/utils/plot_functions.html
index 136a38483..08e818327 100644
--- a/docs/build/html/_modules/binarycpython/utils/plot_functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/plot_functions.html
@@ -713,9 +713,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html
index c8b141b2b..120d627ca 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html
@@ -802,9 +802,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html
new file mode 100644
index 000000000..20f678f30
--- /dev/null
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html
@@ -0,0 +1,1338 @@
+<!DOCTYPE html>
+<html class="writer-html5" lang="en" >
+<head>
+  <meta charset="utf-8" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <title>binarycpython.utils.population_extensions.Moe_di_Stefano_2017 &mdash; binary_c-python  documentation</title>
+      <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+      <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+  <!--[if lt IE 9]>
+    <script src="../../../../_static/js/html5shiv.min.js"></script>
+  <![endif]-->
+  
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
+    <script src="../../../../_static/js/theme.js"></script>
+    <link rel="index" title="Index" href="../../../../genindex.html" />
+    <link rel="search" title="Search" href="../../../../search.html" /> 
+</head>
+
+<body class="wy-body-for-nav"> 
+  <div class="wy-grid-for-nav">
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+            <a href="../../../../index.html" class="icon icon-home"> binary_c-python
+          </a>
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
+              <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../readme_link.html">Python module for binary_c</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules.html">Binarycpython code</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../example_notebooks.html">Example notebooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../binary_c_parameters.html">Binary_c parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../grid_options_descriptions.html">Population grid code options</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python">Visit the GitLab repo</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/issues/new">Submit an issue</a></li>
+</ul>
+
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="../../../../index.html">binary_c-python</a>
+      </nav>
+
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="Page navigation">
+  <ul class="wy-breadcrumbs">
+      <li><a href="../../../../index.html" class="icon icon-home"></a> &raquo;</li>
+          <li><a href="../../../index.html">Module code</a> &raquo;</li>
+      <li>binarycpython.utils.population_extensions.Moe_di_Stefano_2017</li>
+      <li class="wy-breadcrumbs-aside">
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+             
+  <h1>Source code for binarycpython.utils.population_extensions.Moe_di_Stefano_2017</h1><div class="highlight"><pre>
+<span></span><span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">Module containing the functions to handle the Moe&amp;Distrefano data</span>
+
+<span class="sd">This class object is an extension to the population grid object</span>
+<span class="sd">&quot;&quot;&quot;</span>
+
+<span class="c1"># pylint: disable=E1101</span>
+
+<span class="kn">import</span> <span class="nn">os</span>
+<span class="kn">import</span> <span class="nn">gc</span>
+<span class="kn">import</span> <span class="nn">copy</span>
+<span class="kn">import</span> <span class="nn">json</span>
+
+<span class="kn">import</span> <span class="nn">py_rinterpolate</span>
+
+<span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="p">(</span>
+    <span class="n">verbose_print</span><span class="p">,</span>
+<span class="p">)</span>
+<span class="kn">from</span> <span class="nn">binarycpython.utils.dicts</span> <span class="kn">import</span> <span class="n">update_dicts</span><span class="p">,</span> <span class="n">normalize_dict</span>
+<span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.distribution_functions</span> <span class="kn">import</span> <span class="p">(</span>
+    <span class="n">Moecache</span><span class="p">,</span>
+    <span class="n">LOG_LN_CONVERTER</span><span class="p">,</span>
+<span class="p">)</span>
+<span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.grid_options_defaults</span> <span class="kn">import</span> <span class="p">(</span>
+    <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+<span class="p">)</span>
+<span class="kn">from</span> <span class="nn">binarycpython.utils</span> <span class="kn">import</span> <span class="n">moe_di_stefano_2017_data</span>
+
+
+
+<div class="viewcode-block" id="Moe_di_Stefano_2017"><a class="viewcode-back" href="../../../../population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017">[docs]</a><span class="k">class</span> <span class="nc">Moe_di_Stefano_2017</span><span class="p">:</span>
+    <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">    Extension to the population grid object that contains functionality to handle handle the Moe &amp; distefano distributions</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+
+    <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Init function for the Moe_di_Stefano_2017 class</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="k">return</span>
+
+<div class="viewcode-block" id="Moe_di_Stefano_2017.set_moe_di_stefano_settings"><a class="viewcode-back" href="../../../../population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.set_moe_di_stefano_settings">[docs]</a>    <span class="k">def</span> <span class="nf">set_moe_di_stefano_settings</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">options</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to set user input configurations for the Moe &amp; di Stefano methods</span>
+
+<span class="sd">        If nothing is passed then we just use the default options</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="k">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">:</span>
+            <span class="n">options</span> <span class="o">=</span> <span class="p">{}</span>
+
+        <span class="c1"># Take the option dictionary that was given and override.</span>
+        <span class="n">options</span> <span class="o">=</span> <span class="n">update_dicts</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">],</span> <span class="n">options</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">copy</span><span class="o">.</span><span class="n">deepcopy</span><span class="p">(</span><span class="n">options</span><span class="p">)</span>
+
+        <span class="c1"># Write options to a file</span>
+        <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span>
+            <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+            <span class="n">exist_ok</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+        <span class="p">)</span>
+        <span class="k">with</span> <span class="nb">open</span><span class="p">(</span>
+            <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+                <span class="s2">&quot;moeopts.dat&quot;</span><span class="p">,</span>
+            <span class="p">),</span>
+            <span class="s2">&quot;w&quot;</span><span class="p">,</span>
+            <span class="n">encoding</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">,</span>
+        <span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
+            <span class="n">f</span><span class="o">.</span><span class="n">write</span><span class="p">(</span>
+                <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">],</span> <span class="n">indent</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">ensure_ascii</span><span class="o">=</span><span class="kc">False</span>
+                <span class="p">)</span>
+            <span class="p">)</span>
+            <span class="n">f</span><span class="o">.</span><span class="n">close</span><span class="p">()</span></div>
+
+    <span class="k">def</span> <span class="nf">_load_moe_di_stefano_data</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to load the moe &amp; di stefano data</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># Only if the grid is loaded and Moecache contains information</span>
+        <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_loaded_Moe2017_data&quot;</span><span class="p">]:</span>  <span class="c1"># and not Moecache:</span>
+
+            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_Moe2017_JSON_data&quot;</span><span class="p">]:</span>
+                <span class="c1"># Use the existing (perhaps modified) JSON data</span>
+                <span class="n">json_data</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_Moe2017_JSON_data&quot;</span><span class="p">]</span>
+
+            <span class="k">else</span><span class="p">:</span>
+                <span class="c1"># Load the JSON data from a file</span>
+                <span class="n">json_data</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_moe_di_stefano_dataset</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">],</span>
+                    <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="p">)</span>
+
+            <span class="c1"># entry of log10M1 is a list containing 1 dict.</span>
+            <span class="c1"># We can take the dict out of the list</span>
+            <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">],</span> <span class="nb">list</span><span class="p">):</span>
+                <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+
+            <span class="c1"># save this data in case we want to modify it later</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_Moe2017_JSON_data&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">json_data</span>
+
+            <span class="c1"># Get all the masses</span>
+            <span class="n">logmasses</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
+            <span class="k">if</span> <span class="ow">not</span> <span class="n">logmasses</span><span class="p">:</span>
+                <span class="n">msg</span> <span class="o">=</span> <span class="s2">&quot;The table does not contain masses.&quot;</span>
+                <span class="n">verbose_print</span><span class="p">(</span>
+                    <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">msg</span><span class="p">),</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                    <span class="mi">0</span><span class="p">,</span>
+                <span class="p">)</span>
+                <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
+
+            <span class="c1"># Write to file</span>
+            <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+                <span class="n">exist_ok</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="k">with</span> <span class="nb">open</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span>
+                    <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+                    <span class="s2">&quot;moe.log&quot;</span><span class="p">,</span>
+                <span class="p">),</span>
+                <span class="s2">&quot;w&quot;</span><span class="p">,</span>
+                <span class="n">encoding</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">,</span>
+            <span class="p">)</span> <span class="k">as</span> <span class="n">logfile</span><span class="p">:</span>
+                <span class="n">logfile</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s2">&quot;log₁₀Masses(M☉) </span><span class="si">{}</span><span class="se">\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">logmasses</span><span class="p">))</span>
+
+            <span class="c1"># Get all the periods and see if they are all consistently present</span>
+            <span class="n">logperiods</span> <span class="o">=</span> <span class="p">[]</span>
+            <span class="k">for</span> <span class="n">logmass</span> <span class="ow">in</span> <span class="n">logmasses</span><span class="p">:</span>
+                <span class="k">if</span> <span class="ow">not</span> <span class="n">logperiods</span><span class="p">:</span>
+                    <span class="n">logperiods</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span>
+                    <span class="n">dlog10P</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">logperiods</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="o">-</span> <span class="nb">float</span><span class="p">(</span><span class="n">logperiods</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
+
+                <span class="n">current_logperiods</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">])</span>
+                <span class="k">if</span> <span class="n">logperiods</span> <span class="o">!=</span> <span class="n">current_logperiods</span><span class="p">:</span>
+                    <span class="n">msg</span> <span class="o">=</span> <span class="p">(</span>
+                        <span class="s2">&quot;Period values are not consistent throughout the dataset logperiods = &quot;</span>
+                        <span class="o">+</span> <span class="s2">&quot; &quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="n">logperiods</span><span class="p">)</span>
+                        <span class="o">+</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">Current periods = &quot;</span>
+                        <span class="o">+</span> <span class="s2">&quot; &quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="n">current_logperiods</span><span class="p">)</span>
+                    <span class="p">)</span>
+                    <span class="n">verbose_print</span><span class="p">(</span>
+                        <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">msg</span><span class="p">),</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                        <span class="mi">0</span><span class="p">,</span>
+                    <span class="p">)</span>
+                    <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
+
+                <span class="c1">############################################################</span>
+                <span class="c1"># log10period binwidth : of course this assumes a fixed</span>
+                <span class="c1"># binwidth, so we check for this too.</span>
+                <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">current_logperiods</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span><span class="p">):</span>
+                    <span class="k">if</span> <span class="ow">not</span> <span class="n">dlog10P</span> <span class="o">==</span> <span class="p">(</span>
+                        <span class="nb">float</span><span class="p">(</span><span class="n">current_logperiods</span><span class="p">[</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">])</span> <span class="o">-</span> <span class="nb">float</span><span class="p">(</span><span class="n">current_logperiods</span><span class="p">[</span><span class="n">i</span><span class="p">])</span>
+                    <span class="p">):</span>
+                        <span class="n">msg</span> <span class="o">=</span> <span class="s2">&quot;Period spacing is not consistent throughout the dataset&quot;</span>
+                        <span class="n">verbose_print</span><span class="p">(</span>
+                            <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">msg</span><span class="p">),</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                            <span class="mi">0</span><span class="p">,</span>
+                        <span class="p">)</span>
+                        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
+
+            <span class="c1"># save the logperiods list in the cache:</span>
+            <span class="c1"># this is used in the renormalization integration</span>
+            <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;logperiods&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">logperiods</span>
+
+            <span class="c1"># Write to file</span>
+            <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+                <span class="n">exist_ok</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="k">with</span> <span class="nb">open</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">,</span> <span class="s2">&quot;moe.log&quot;</span><span class="p">),</span>
+                <span class="s2">&quot;a&quot;</span><span class="p">,</span>
+                <span class="n">encoding</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">,</span>
+            <span class="p">)</span> <span class="k">as</span> <span class="n">logfile</span><span class="p">:</span>
+                <span class="n">logfile</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s2">&quot;log₁₀Periods(days) </span><span class="si">{}</span><span class="se">\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">logperiods</span><span class="p">))</span>
+
+            <span class="c1"># Fill the global dict</span>
+            <span class="k">for</span> <span class="n">logmass</span> <span class="ow">in</span> <span class="n">logmasses</span><span class="p">:</span>
+                <span class="c1"># Create the multiplicity table</span>
+                <span class="k">if</span> <span class="ow">not</span> <span class="n">Moecache</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;multiplicity_table&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span>
+                    <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;multiplicity_table&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
+
+                <span class="c1"># multiplicity as a function of primary mass</span>
+                <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;multiplicity_table&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                    <span class="p">[</span>
+                        <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                        <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;f_multi&quot;</span><span class="p">],</span>
+                        <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;single star fraction&quot;</span><span class="p">],</span>
+                        <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;binary star fraction&quot;</span><span class="p">],</span>
+                        <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;triple/quad star fraction&quot;</span><span class="p">],</span>
+                    <span class="p">]</span>
+                <span class="p">)</span>
+
+                <span class="c1">############################################################</span>
+                <span class="c1"># a small log10period which we can shift just outside the</span>
+                <span class="c1"># table to force integration out there to zero</span>
+                <span class="n">epslog10P</span> <span class="o">=</span> <span class="mf">1e-8</span> <span class="o">*</span> <span class="n">dlog10P</span>
+
+                <span class="c1">############################################################</span>
+                <span class="c1"># loop over either binary or triple-outer periods</span>
+                <span class="n">first</span> <span class="o">=</span> <span class="mi">1</span>
+
+                <span class="c1"># Go over the periods</span>
+                <span class="k">for</span> <span class="n">logperiod</span> <span class="ow">in</span> <span class="n">logperiods</span><span class="p">:</span>
+                    <span class="c1">############################################################</span>
+                    <span class="c1"># distributions of binary and triple star fractions</span>
+                    <span class="c1"># as a function of mass, period.</span>
+                    <span class="c1">#</span>
+                    <span class="c1"># Note: these should be per unit log10P, hence we</span>
+                    <span class="c1"># divide by dlog10P</span>
+
+                    <span class="k">if</span> <span class="n">first</span><span class="p">:</span>
+                        <span class="n">first</span> <span class="o">=</span> <span class="mi">0</span>
+
+                        <span class="c1"># Create the multiplicity table</span>
+                        <span class="k">if</span> <span class="ow">not</span> <span class="n">Moecache</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span>
+                            <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
+
+                        <span class="c1">############################################################</span>
+                        <span class="c1"># lower bound the period distributions to zero probability</span>
+                        <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                            <span class="p">[</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">logperiod</span><span class="p">)</span> <span class="o">-</span> <span class="mf">0.5</span> <span class="o">*</span> <span class="n">dlog10P</span> <span class="o">-</span> <span class="n">epslog10P</span><span class="p">,</span>
+                                <span class="mf">0.0</span><span class="p">,</span>
+                                <span class="mf">0.0</span><span class="p">,</span>
+                            <span class="p">]</span>
+                        <span class="p">)</span>
+                        <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                            <span class="p">[</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">logperiod</span><span class="p">)</span> <span class="o">-</span> <span class="mf">0.5</span> <span class="o">*</span> <span class="n">dlog10P</span><span class="p">,</span>
+                                <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span>
+                                    <span class="s2">&quot;normed_bin_frac_p_dist&quot;</span>
+                                <span class="p">]</span>
+                                <span class="o">/</span> <span class="n">dlog10P</span><span class="p">,</span>
+                                <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span>
+                                    <span class="s2">&quot;normed_tripquad_frac_p_dist&quot;</span>
+                                <span class="p">]</span>
+                                <span class="o">/</span> <span class="n">dlog10P</span><span class="p">,</span>
+                            <span class="p">]</span>
+                        <span class="p">)</span>
+
+                    <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                        <span class="p">[</span>
+                            <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                            <span class="nb">float</span><span class="p">(</span><span class="n">logperiod</span><span class="p">),</span>
+                            <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span>
+                                <span class="s2">&quot;normed_bin_frac_p_dist&quot;</span>
+                            <span class="p">]</span>
+                            <span class="o">/</span> <span class="n">dlog10P</span><span class="p">,</span>
+                            <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span>
+                                <span class="s2">&quot;normed_tripquad_frac_p_dist&quot;</span>
+                            <span class="p">]</span>
+                            <span class="o">/</span> <span class="n">dlog10P</span><span class="p">,</span>
+                        <span class="p">]</span>
+                    <span class="p">)</span>
+
+                    <span class="c1">############################################################</span>
+                    <span class="c1"># distributions as a function of mass, period, q</span>
+                    <span class="c1">#</span>
+                    <span class="c1"># First, get a list of the qs given by Moe</span>
+                    <span class="c1">#</span>
+                    <span class="n">qs</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">])</span>
+
+                    <span class="c1"># Fill the data and &#39;normalise&#39;</span>
+                    <span class="n">qdata</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">fill_data</span><span class="p">(</span>
+                        <span class="n">qs</span><span class="p">,</span> <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">]</span>
+                    <span class="p">)</span>
+
+                    <span class="c1"># Create the multiplicity table</span>
+                    <span class="k">if</span> <span class="ow">not</span> <span class="n">Moecache</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q_distributions&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span>
+                        <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;q_distributions&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
+
+                    <span class="k">for</span> <span class="n">q</span> <span class="ow">in</span> <span class="n">qs</span><span class="p">:</span>
+                        <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;q_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                            <span class="p">[</span><span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span> <span class="nb">float</span><span class="p">(</span><span class="n">logperiod</span><span class="p">),</span> <span class="nb">float</span><span class="p">(</span><span class="n">q</span><span class="p">),</span> <span class="n">qdata</span><span class="p">[</span><span class="n">q</span><span class="p">]]</span>
+                        <span class="p">)</span>
+
+                    <span class="c1">############################################################</span>
+                    <span class="c1"># eccentricity distributions as a function of mass, period, ecc</span>
+                    <span class="n">eccs</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span><span class="s2">&quot;e&quot;</span><span class="p">])</span>
+
+                    <span class="c1"># Fill the data and &#39;normalise&#39;</span>
+                    <span class="n">ecc_data</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">fill_data</span><span class="p">(</span>
+                        <span class="n">eccs</span><span class="p">,</span> <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiod</span><span class="p">][</span><span class="s2">&quot;e&quot;</span><span class="p">]</span>
+                    <span class="p">)</span>
+
+                    <span class="c1"># Create the multiplicity table</span>
+                    <span class="k">if</span> <span class="ow">not</span> <span class="n">Moecache</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ecc_distributions&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span>
+                        <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;ecc_distributions&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
+
+                    <span class="k">for</span> <span class="n">ecc</span> <span class="ow">in</span> <span class="n">eccs</span><span class="p">:</span>
+                        <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;ecc_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                            <span class="p">[</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">logperiod</span><span class="p">),</span>
+                                <span class="nb">float</span><span class="p">(</span><span class="n">ecc</span><span class="p">),</span>
+                                <span class="n">ecc_data</span><span class="p">[</span><span class="n">ecc</span><span class="p">],</span>
+                            <span class="p">]</span>
+                        <span class="p">)</span>
+
+                <span class="c1">############################################################</span>
+                <span class="c1"># upper bound the period distributions to zero probability</span>
+                <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                    <span class="p">[</span>
+                        <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                        <span class="nb">float</span><span class="p">(</span><span class="n">logperiods</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span> <span class="o">+</span> <span class="mf">0.5</span> <span class="o">*</span> <span class="n">dlog10P</span><span class="p">,</span>  <span class="c1"># TODO: why this shift? to center it?</span>
+                        <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiods</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]][</span>
+                            <span class="s2">&quot;normed_bin_frac_p_dist&quot;</span>
+                        <span class="p">]</span>
+                        <span class="o">/</span> <span class="n">dlog10P</span><span class="p">,</span>
+                        <span class="n">json_data</span><span class="p">[</span><span class="s2">&quot;log10M1&quot;</span><span class="p">][</span><span class="n">logmass</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="n">logperiods</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]][</span>
+                            <span class="s2">&quot;normed_tripquad_frac_p_dist&quot;</span>
+                        <span class="p">]</span>
+                        <span class="o">/</span> <span class="n">dlog10P</span><span class="p">,</span>
+                    <span class="p">]</span>
+                <span class="p">)</span>
+                <span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
+                    <span class="p">[</span>
+                        <span class="nb">float</span><span class="p">(</span><span class="n">logmass</span><span class="p">),</span>
+                        <span class="nb">float</span><span class="p">(</span><span class="n">logperiods</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span> <span class="o">+</span> <span class="mf">0.5</span> <span class="o">*</span> <span class="n">dlog10P</span> <span class="o">+</span> <span class="n">epslog10P</span><span class="p">,</span>
+                        <span class="mf">0.0</span><span class="p">,</span>
+                        <span class="mf">0.0</span><span class="p">,</span>
+                    <span class="p">]</span>
+                <span class="p">)</span>
+
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: Length period_distributions table: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="nb">len</span><span class="p">(</span><span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;period_distributions&quot;</span><span class="p">])</span>
+                <span class="p">),</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: Length multiplicity table: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="nb">len</span><span class="p">(</span><span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;multiplicity_table&quot;</span><span class="p">])</span>
+                <span class="p">),</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: Length q table: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="nb">len</span><span class="p">(</span><span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;q_distributions&quot;</span><span class="p">])</span>
+                <span class="p">),</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: Length ecc table: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="nb">len</span><span class="p">(</span><span class="n">Moecache</span><span class="p">[</span><span class="s2">&quot;ecc_distributions&quot;</span><span class="p">])</span>
+                <span class="p">),</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+            <span class="p">)</span>
+
+            <span class="c1"># Write to log file</span>
+            <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+                <span class="n">exist_ok</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="k">with</span> <span class="nb">open</span><span class="p">(</span>
+                <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span>
+                    <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span> <span class="s2">&quot;moe_distefano&quot;</span><span class="p">),</span>
+                    <span class="s2">&quot;moecache.json&quot;</span><span class="p">,</span>
+                <span class="p">),</span>
+                <span class="s2">&quot;w&quot;</span><span class="p">,</span>
+                <span class="n">encoding</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">,</span>
+            <span class="p">)</span> <span class="k">as</span> <span class="n">cache_filehandle</span><span class="p">:</span>
+                <span class="n">cache_filehandle</span><span class="o">.</span><span class="n">write</span><span class="p">(</span>
+                    <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">Moecache</span><span class="p">,</span> <span class="n">indent</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">ensure_ascii</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+                <span class="p">)</span>
+
+            <span class="c1"># Signal that the data has been loaded</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_loaded_Moe2017_data&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
+
+    <span class="k">def</span> <span class="nf">_set_moe_di_stefano_distributions</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to set the Moe &amp; di Stefano distribution</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1">############################################################</span>
+        <span class="c1"># first, the multiplicity, this is 1,2,3,4, ...</span>
+        <span class="c1"># for singles, binaries, triples, quadruples, ...</span>
+
+        <span class="n">max_multiplicity</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_max_multiplicity</span><span class="p">(</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;multiplicity_modulator&quot;</span><span class="p">]</span>
+        <span class="p">)</span>
+        <span class="n">verbose_print</span><span class="p">(</span>
+            <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: Max multiplicity = </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">max_multiplicity</span><span class="p">),</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+            <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+        <span class="p">)</span>
+        <span class="c1">######</span>
+        <span class="c1"># Setting up the grid variables</span>
+
+        <span class="c1"># Multiplicity</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+            <span class="n">name</span><span class="o">=</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">,</span>
+            <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">,</span>
+            <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">,</span>
+            <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="n">max_multiplicity</span><span class="p">],</span>
+            <span class="n">samplerfunc</span><span class="o">=</span><span class="s2">&quot;self.const_int(1, </span><span class="si">{n}</span><span class="s2">, </span><span class="si">{n}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">n</span><span class="o">=</span><span class="n">max_multiplicity</span><span class="p">),</span>
+            <span class="n">precode</span><span class="o">=</span><span class="s1">&#39;self.grid_options[&quot;multiplicity&quot;] = multiplicity; self.bse_options[&quot;multiplicity&quot;] = multiplicity; options=</span><span class="si">{}</span><span class="s1">&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+            <span class="p">),</span>
+            <span class="n">condition</span><span class="o">=</span><span class="s2">&quot;(</span><span class="si">{}</span><span class="s2">[int(multiplicity)-1] &gt; 0)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;multiplicity_modulator&quot;</span><span class="p">])</span>
+            <span class="p">),</span>
+            <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;discrete&quot;</span><span class="p">,</span>
+            <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+        <span class="p">)</span>
+
+        <span class="c1">############################################################</span>
+        <span class="c1"># always require M1, for all systems</span>
+        <span class="c1">#</span>
+        <span class="c1"># log-spaced m1 with given resolution</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+            <span class="n">name</span><span class="o">=</span><span class="s2">&quot;lnM_1&quot;</span><span class="p">,</span>
+            <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;M_1&quot;</span><span class="p">,</span>
+            <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Primary mass&quot;</span><span class="p">,</span>
+            <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;samplerfuncs&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+            <span class="ow">or</span> <span class="s2">&quot;self.const_linear(np.log(</span><span class="si">{}</span><span class="s2">), np.log(</span><span class="si">{}</span><span class="s2">), </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+            <span class="p">),</span>
+            <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                <span class="s2">&quot;np.log(</span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                <span class="p">),</span>
+                <span class="s2">&quot;np.log(</span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                <span class="p">),</span>
+            <span class="p">],</span>
+            <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+            <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;dlnM_1&quot;</span><span class="p">,</span>
+            <span class="n">precode</span><span class="o">=</span><span class="s1">&#39;M_1 = np.exp(lnM_1); options[&quot;M_1&quot;]=M_1&#39;</span><span class="p">,</span>
+            <span class="n">probdist</span><span class="o">=</span><span class="s2">&quot;self.Moe_di_Stefano_2017_pdf({{</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">}}, verbosity=self.grid_options[&#39;verbosity&#39;])[&#39;total_probdens&#39;] if multiplicity == 1 else 1&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="nb">str</span><span class="p">(</span><span class="nb">dict</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]))[</span><span class="mi">1</span><span class="p">:</span><span class="o">-</span><span class="mi">1</span><span class="p">],</span>
+                <span class="s2">&quot;&#39;multiplicity&#39;: multiplicity&quot;</span><span class="p">,</span>
+                <span class="s2">&quot;&#39;M_1&#39;: M_1&quot;</span><span class="p">,</span>
+            <span class="p">),</span>
+        <span class="p">)</span>
+
+        <span class="c1"># Go to higher multiplicities</span>
+        <span class="k">if</span> <span class="n">max_multiplicity</span> <span class="o">&gt;=</span> <span class="mi">2</span><span class="p">:</span>
+            <span class="c1"># binaries: period</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                <span class="n">name</span><span class="o">=</span><span class="s2">&quot;log10per&quot;</span><span class="p">,</span>
+                <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;orbital_period&quot;</span><span class="p">,</span>
+                <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;log10(Orbital_Period)&quot;</span><span class="p">,</span>
+                <span class="n">probdist</span><span class="o">=</span><span class="mf">1.0</span><span class="p">,</span>
+                <span class="n">condition</span><span class="o">=</span><span class="s1">&#39;(self.grid_options[&quot;multiplicity&quot;] &gt;= 2)&#39;</span><span class="p">,</span>
+                <span class="n">branchpoint</span><span class="o">=</span><span class="mi">1</span>
+                <span class="k">if</span> <span class="n">max_multiplicity</span> <span class="o">&gt;</span> <span class="mi">1</span>
+                <span class="k">else</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># Signal here to put a branchpoint if we have a max multiplicity higher than 1.</span>
+                <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;(</span><span class="si">{}</span><span class="s2"> * dlog10per)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">LOG_LN_CONVERTER</span><span class="p">),</span>
+                <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                <span class="p">],</span>
+                <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;samplerfuncs&quot;</span><span class="p">][</span>
+                    <span class="s2">&quot;logP&quot;</span>
+                <span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                <span class="p">),</span>
+                <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;&quot;&quot;orbital_period = 10.0**log10per</span>
+<span class="s2">qmin=</span><span class="si">{}</span><span class="s2">/M_1</span>
+<span class="s2">qmax=maximum_mass_ratio_for_RLOF(M_1, orbital_period)</span>
+<span class="s2">&quot;&quot;&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;Mmin&quot;</span><span class="p">]</span>
+                <span class="p">),</span>
+            <span class="p">)</span>  <span class="c1"># TODO: change the maximum_mass_ratio_for_RLOF</span>
+
+            <span class="c1"># binaries: mass ratio</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                <span class="n">name</span><span class="o">=</span><span class="s2">&quot;q&quot;</span><span class="p">,</span>
+                <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;M_2&quot;</span><span class="p">,</span>
+                <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Mass ratio&quot;</span><span class="p">,</span>
+                <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                    <span class="k">else</span> <span class="s2">&quot;options[&#39;Mmin&#39;]/M_1&quot;</span><span class="p">,</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                    <span class="k">else</span> <span class="s2">&quot;qmax&quot;</span><span class="p">,</span>
+                <span class="p">],</span>
+                <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+                <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;dq&quot;</span><span class="p">,</span>
+                <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">M_2 = q * M_1</span>
+<span class="s2">sep = calc_sep_from_period(M_1, M_2, orbital_period)</span>
+<span class="s2">    &quot;&quot;&quot;</span><span class="p">,</span>
+                <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;samplerfuncs&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="p">[</span><span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">])[</span><span class="mi">0</span><span class="p">]</span>
+                    <span class="k">else</span> <span class="s2">&quot;</span><span class="si">{}</span><span class="s2">/M_1&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;Mmin&quot;</span><span class="p">]),</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                    <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="p">[</span><span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">])[</span><span class="mi">1</span><span class="p">]</span>
+                    <span class="k">else</span> <span class="s2">&quot;qmax&quot;</span><span class="p">,</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                <span class="p">),</span>
+            <span class="p">)</span>
+
+            <span class="c1"># (optional) binaries: eccentricity</span>
+            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                    <span class="n">name</span><span class="o">=</span><span class="s2">&quot;ecc&quot;</span><span class="p">,</span>
+                    <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;eccentricity&quot;</span><span class="p">,</span>
+                    <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Eccentricity&quot;</span><span class="p">,</span>
+                    <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+                    <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                    <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;decc&quot;</span><span class="p">,</span>
+                    <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;eccentricity=ecc&quot;</span><span class="p">,</span>
+                    <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                            <span class="mi">0</span>
+                        <span class="p">],</span>  <span class="c1"># Just fail if not defined.</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                    <span class="p">],</span>
+                    <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;samplerfuncs&quot;</span><span class="p">][</span>
+                        <span class="s2">&quot;ecc&quot;</span>
+                    <span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                    <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                            <span class="mi">0</span>
+                        <span class="p">],</span>  <span class="c1"># Just fail if not defined.</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                    <span class="p">),</span>
+                <span class="p">)</span>
+
+            <span class="c1"># Now for triples and quadruples</span>
+            <span class="k">if</span> <span class="n">max_multiplicity</span> <span class="o">&gt;=</span> <span class="mi">3</span><span class="p">:</span>
+                <span class="c1"># Triple: period</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                    <span class="n">name</span><span class="o">=</span><span class="s2">&quot;log10per2&quot;</span><span class="p">,</span>
+                    <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;orbital_period_triple&quot;</span><span class="p">,</span>
+                    <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;log10(Orbital_Period2)&quot;</span><span class="p">,</span>
+                    <span class="n">probdist</span><span class="o">=</span><span class="mf">1.0</span><span class="p">,</span>
+                    <span class="n">condition</span><span class="o">=</span><span class="s1">&#39;(self.grid_options[&quot;multiplicity&quot;] &gt;= 3)&#39;</span><span class="p">,</span>
+                    <span class="n">branchpoint</span><span class="o">=</span><span class="mi">2</span>
+                    <span class="k">if</span> <span class="n">max_multiplicity</span> <span class="o">&gt;</span> <span class="mi">2</span>
+                    <span class="k">else</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># Signal here to put a branchpoint if we have a max multiplicity higher than 1.</span>
+                    <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                    <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;(</span><span class="si">{}</span><span class="s2"> * dlog10per2)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">LOG_LN_CONVERTER</span><span class="p">),</span>
+                    <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                    <span class="p">],</span>
+                    <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;samplerfuncs&quot;</span><span class="p">][</span>
+                        <span class="s2">&quot;logP&quot;</span>
+                    <span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                    <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                    <span class="p">),</span>
+                    <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;&quot;&quot;orbital_period_triple = 10.0**log10per2</span>
+<span class="s2">q2min=</span><span class="si">{}</span><span class="s2">/(M_1+M_2)</span>
+<span class="s2">q2max=maximum_mass_ratio_for_RLOF(M_1+M_2, orbital_period_triple)</span>
+<span class="s2">    &quot;&quot;&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;Mmin&quot;</span><span class="p">]</span>
+                    <span class="p">),</span>
+                <span class="p">)</span>
+
+                <span class="c1"># Triples: mass ratio</span>
+                <span class="c1"># Note, the mass ratio is M_outer/M_inner</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                    <span class="n">name</span><span class="o">=</span><span class="s2">&quot;q2&quot;</span><span class="p">,</span>
+                    <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;M_3&quot;</span><span class="p">,</span>
+                    <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Mass ratio outer/inner&quot;</span><span class="p">,</span>
+                    <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                        <span class="k">else</span> <span class="s2">&quot;options[&#39;Mmin&#39;]/(M_1+M_2)&quot;</span><span class="p">,</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                        <span class="k">else</span> <span class="s2">&quot;q2max&quot;</span><span class="p">,</span>
+                    <span class="p">],</span>
+                    <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+                    <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                    <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;dq2&quot;</span><span class="p">,</span>
+                    <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">M_3 = q2 * (M_1 + M_2)</span>
+<span class="s2">sep2 = calc_sep_from_period((M_1+M_2), M_3, orbital_period_triple)</span>
+<span class="s2">eccentricity2=0</span>
+<span class="s2">&quot;&quot;&quot;</span><span class="p">,</span>
+                    <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;samplerfuncs&quot;</span><span class="p">][</span>
+                        <span class="s2">&quot;M&quot;</span>
+                    <span class="p">][</span><span class="mi">2</span><span class="p">]</span>
+                    <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                        <span class="k">else</span> <span class="s2">&quot;options[&#39;Mmin&#39;]/(M_1+M_2)&quot;</span><span class="p">,</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                        <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                        <span class="k">else</span> <span class="s2">&quot;q2max&quot;</span><span class="p">,</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">2</span><span class="p">],</span>
+                    <span class="p">),</span>
+                <span class="p">)</span>
+
+                <span class="c1"># (optional) triples: eccentricity</span>
+                <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                        <span class="n">name</span><span class="o">=</span><span class="s2">&quot;ecc2&quot;</span><span class="p">,</span>
+                        <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;eccentricity2&quot;</span><span class="p">,</span>
+                        <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Eccentricity of the triple&quot;</span><span class="p">,</span>
+                        <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+                        <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                        <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;decc2&quot;</span><span class="p">,</span>
+                        <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;eccentricity2=ecc2&quot;</span><span class="p">,</span>
+                        <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                <span class="mi">0</span>
+                            <span class="p">],</span>  <span class="c1"># Just fail if not defined.</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                        <span class="p">],</span>
+                        <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span>
+                            <span class="s2">&quot;samplerfuncs&quot;</span>
+                        <span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                        <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                <span class="mi">0</span>
+                            <span class="p">],</span>  <span class="c1"># Just fail if not defined.</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                <span class="mi">1</span>
+                            <span class="p">],</span>
+                        <span class="p">),</span>
+                    <span class="p">)</span>
+
+                <span class="k">if</span> <span class="n">max_multiplicity</span> <span class="o">==</span> <span class="mi">4</span><span class="p">:</span>
+                    <span class="c1"># Quadruple: period</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                        <span class="n">name</span><span class="o">=</span><span class="s2">&quot;log10per3&quot;</span><span class="p">,</span>
+                        <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;orbital_period_quadruple&quot;</span><span class="p">,</span>
+                        <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;log10(Orbital_Period3)&quot;</span><span class="p">,</span>
+                        <span class="n">probdist</span><span class="o">=</span><span class="mf">1.0</span><span class="p">,</span>
+                        <span class="n">condition</span><span class="o">=</span><span class="s1">&#39;(self.grid_options[&quot;multiplicity&quot;] &gt;= 4)&#39;</span><span class="p">,</span>
+                        <span class="n">branchpoint</span><span class="o">=</span><span class="mi">3</span>
+                        <span class="k">if</span> <span class="n">max_multiplicity</span> <span class="o">&gt;</span> <span class="mi">3</span>
+                        <span class="k">else</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># Signal here to put a branchpoint if we have a max multiplicity higher than 1.</span>
+                        <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                        <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;(</span><span class="si">{}</span><span class="s2"> * dlog10per3)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">LOG_LN_CONVERTER</span><span class="p">),</span>
+                        <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                        <span class="p">],</span>
+                        <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span>
+                            <span class="s2">&quot;samplerfuncs&quot;</span>
+                        <span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">2</span><span class="p">]</span>
+                        <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">],</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;logP&quot;</span><span class="p">][</span>
+                                <span class="mi">2</span>
+                            <span class="p">],</span>
+                        <span class="p">),</span>
+                        <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;&quot;&quot;orbital_period_quadruple = 10.0**log10per3</span>
+<span class="s2">q3min=</span><span class="si">{}</span><span class="s2">/(M_3)</span>
+<span class="s2">q3max=maximum_mass_ratio_for_RLOF(M_3, orbital_period_quadruple)</span>
+<span class="s2">    &quot;&quot;&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;Mmin&quot;</span><span class="p">]</span>
+                        <span class="p">),</span>
+                    <span class="p">)</span>
+
+                    <span class="c1"># Quadruple: mass ratio : M_outer / M_inner</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                        <span class="n">name</span><span class="o">=</span><span class="s2">&quot;q3&quot;</span><span class="p">,</span>
+                        <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;M_4&quot;</span><span class="p">,</span>
+                        <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Mass ratio outer low/outer high&quot;</span><span class="p">,</span>
+                        <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                            <span class="k">else</span> <span class="s2">&quot;options[&#39;Mmin&#39;]/(M_3)&quot;</span><span class="p">,</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                            <span class="k">else</span> <span class="s2">&quot;q3max&quot;</span><span class="p">,</span>
+                        <span class="p">],</span>
+                        <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+                        <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                        <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;dq3&quot;</span><span class="p">,</span>
+                        <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">M_4 = q3 * M_3</span>
+<span class="s2">sep3 = calc_sep_from_period((M_3), M_4, orbital_period_quadruple)</span>
+<span class="s2">eccentricity3=0</span>
+<span class="s2">&quot;&quot;&quot;</span><span class="p">,</span>
+                        <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span>
+                            <span class="s2">&quot;samplerfuncs&quot;</span>
+                        <span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">3</span><span class="p">]</span>
+                        <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                            <span class="k">else</span> <span class="s2">&quot;options[&#39;Mmin&#39;]/(M_3)&quot;</span><span class="p">,</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;q&quot;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
+                            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;ranges&quot;</span><span class="p">,</span> <span class="p">{})</span>
+                            <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+                            <span class="k">else</span> <span class="s2">&quot;q3max&quot;</span><span class="p">,</span>
+                            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;M&quot;</span><span class="p">][</span><span class="mi">2</span><span class="p">],</span>
+                        <span class="p">),</span>
+                    <span class="p">)</span>
+
+                    <span class="c1"># (optional) triples: eccentricity</span>
+                    <span class="k">if</span> <span class="p">(</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">2</span><span class="p">]</span>
+                        <span class="o">&gt;</span> <span class="mi">0</span>
+                    <span class="p">):</span>
+                        <span class="bp">self</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span>
+                            <span class="n">name</span><span class="o">=</span><span class="s2">&quot;ecc3&quot;</span><span class="p">,</span>
+                            <span class="n">parameter_name</span><span class="o">=</span><span class="s2">&quot;eccentricity3&quot;</span><span class="p">,</span>
+                            <span class="n">longname</span><span class="o">=</span><span class="s2">&quot;Eccentricity of the triple+quadruple/outer binary&quot;</span><span class="p">,</span>
+                            <span class="n">probdist</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
+                            <span class="n">gridtype</span><span class="o">=</span><span class="s2">&quot;centred&quot;</span><span class="p">,</span>
+                            <span class="n">dphasevol</span><span class="o">=</span><span class="s2">&quot;decc3&quot;</span><span class="p">,</span>
+                            <span class="n">precode</span><span class="o">=</span><span class="s2">&quot;eccentricity3=ecc3&quot;</span><span class="p">,</span>
+                            <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span>
+                                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                    <span class="mi">0</span>
+                                <span class="p">],</span>  <span class="c1"># Just fail if not defined.</span>
+                                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                    <span class="mi">1</span>
+                                <span class="p">],</span>
+                            <span class="p">],</span>
+                            <span class="n">samplerfunc</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span>
+                                <span class="s2">&quot;samplerfuncs&quot;</span>
+                            <span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span><span class="mi">2</span><span class="p">]</span>
+                            <span class="ow">or</span> <span class="s2">&quot;self.const_linear(</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                    <span class="mi">0</span>
+                                <span class="p">],</span>  <span class="c1"># Just fail if not defined.</span>
+                                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;ranges&quot;</span><span class="p">][</span><span class="s2">&quot;ecc&quot;</span><span class="p">][</span>
+                                    <span class="mi">1</span>
+                                <span class="p">],</span>
+                                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;resolutions&quot;</span><span class="p">][</span>
+                                    <span class="s2">&quot;ecc&quot;</span>
+                                <span class="p">][</span><span class="mi">2</span><span class="p">],</span>
+                            <span class="p">),</span>
+                        <span class="p">)</span>
+
+        <span class="c1"># Now we are at the last part.</span>
+        <span class="c1"># Here we should combine all the information that we calculate and update the options</span>
+        <span class="c1"># dictionary. This will then be passed to the Moe_di_Stefano_2017_pdf to calculate</span>
+        <span class="c1"># the real probability. The trick we use is to strip the options_dict as a string</span>
+        <span class="c1"># and add some keys to it:</span>
+
+        <span class="n">updated_options</span> <span class="o">=</span> <span class="s2">&quot;{{</span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">, </span><span class="si">{}</span><span class="s2">}}&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+            <span class="nb">str</span><span class="p">(</span><span class="nb">dict</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]))[</span><span class="mi">1</span><span class="p">:</span><span class="o">-</span><span class="mi">1</span><span class="p">],</span>
+            <span class="s1">&#39;&quot;multiplicity&quot;: multiplicity&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;M_1&quot;: M_1&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;M_2&quot;: M_2&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;M_3&quot;: M_3&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;M_4&quot;: M_4&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;P&quot;: orbital_period&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;P2&quot;: orbital_period_triple&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;P3&quot;: orbital_period_quadruple&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;ecc&quot;: eccentricity&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;ecc2&quot;: eccentricity2&#39;</span><span class="p">,</span>
+            <span class="s1">&#39;&quot;ecc3&quot;: eccentricity3&#39;</span><span class="p">,</span>
+        <span class="p">)</span>
+
+        <span class="n">probdist_addition</span> <span class="o">=</span> <span class="s2">&quot;self.Moe_di_Stefano_2017_pdf(</span><span class="si">{}</span><span class="s2">, verbosity=self.grid_options[&#39;verbosity&#39;])[&#39;total_probdens&#39;]&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+            <span class="n">updated_options</span>
+        <span class="p">)</span>
+
+        <span class="c1"># and finally the probability calculator</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_grid_variables&quot;</span><span class="p">][</span><span class="bp">self</span><span class="o">.</span><span class="n">_last_grid_variable</span><span class="p">()][</span>
+            <span class="s2">&quot;probdist&quot;</span>
+        <span class="p">]</span> <span class="o">=</span> <span class="n">probdist_addition</span>
+
+        <span class="n">verbose_print</span><span class="p">(</span>
+            <span class="s2">&quot;</span><span class="se">\t</span><span class="s2">Moe_di_Stefano_2017: Added final call to the pdf function&quot;</span><span class="p">,</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+            <span class="n">_MOE2017_VERBOSITY_LEVEL</span><span class="p">,</span>
+        <span class="p">)</span>
+
+        <span class="c1"># Signal that the MOE2017 grid has been set</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_set_Moe2017_grid&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
+
+    <span class="c1">################################################################################################</span>
+<div class="viewcode-block" id="Moe_di_Stefano_2017.Moe_di_Stefano_2017"><a class="viewcode-back" href="../../../../population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.Moe_di_Stefano_2017">[docs]</a>    <span class="k">def</span> <span class="nf">Moe_di_Stefano_2017</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">options</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to handle setting the user input settings,</span>
+<span class="sd">        set up the data and load that into interpolators and</span>
+<span class="sd">        then set the distribution functions</span>
+
+<span class="sd">        Takes a dictionary as its only argument</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="n">default_options</span> <span class="o">=</span> <span class="p">{</span>
+            <span class="s2">&quot;apply settings&quot;</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span>
+            <span class="s2">&quot;setup grid&quot;</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span>
+            <span class="s2">&quot;load data&quot;</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span>
+            <span class="s2">&quot;clean cache&quot;</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
+            <span class="s2">&quot;clean load flag&quot;</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
+            <span class="s2">&quot;clean all&quot;</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
+        <span class="p">}</span>
+
+        <span class="k">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">:</span>
+            <span class="n">options</span> <span class="o">=</span> <span class="p">{}</span>
+        <span class="n">options</span> <span class="o">=</span> <span class="n">update_dicts</span><span class="p">(</span><span class="n">default_options</span><span class="p">,</span> <span class="n">options</span><span class="p">)</span>
+
+        <span class="c1"># clean cache?</span>
+        <span class="k">if</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;clean all&quot;</span><span class="p">]</span> <span class="ow">or</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;clean cache&quot;</span><span class="p">]:</span>
+            <span class="n">Moecache</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span>
+
+        <span class="k">if</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;clean all&quot;</span><span class="p">]</span> <span class="ow">or</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;clean load flag&quot;</span><span class="p">]:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_loaded_Moe2017_data&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">False</span>
+
+        <span class="c1"># Set the user input</span>
+        <span class="k">if</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;apply settings&quot;</span><span class="p">]:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">set_moe_di_stefano_settings</span><span class="p">(</span><span class="n">options</span><span class="o">=</span><span class="n">options</span><span class="p">)</span>
+
+        <span class="c1"># Load the data</span>
+        <span class="k">if</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;load data&quot;</span><span class="p">]:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">_load_moe_di_stefano_data</span><span class="p">()</span>
+
+        <span class="c1"># construct the grid here</span>
+        <span class="k">if</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;setup grid&quot;</span><span class="p">]:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">_set_moe_di_stefano_distributions</span><span class="p">()</span></div>
+
+    <span class="k">def</span> <span class="nf">_clean_interpolators</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to clean up the interpolators after a run</span>
+
+<span class="sd">        We look in the Moecache global variable for items that are interpolators.</span>
+<span class="sd">        Should be called by the general cleanup function AND the thread cleanup function</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="n">interpolator_keys</span> <span class="o">=</span> <span class="p">[]</span>
+        <span class="k">for</span> <span class="n">key</span><span class="p">,</span> <span class="n">value</span> <span class="ow">in</span> <span class="n">Moecache</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
+            <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">py_rinterpolate</span><span class="o">.</span><span class="n">Rinterpolate</span><span class="p">):</span>
+                <span class="n">interpolator_keys</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">key</span><span class="p">)</span>
+
+        <span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="n">interpolator_keys</span><span class="p">:</span>
+            <span class="n">Moecache</span><span class="p">[</span><span class="n">key</span><span class="p">]</span><span class="o">.</span><span class="n">destroy</span><span class="p">()</span>
+            <span class="k">del</span> <span class="n">Moecache</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+        <span class="n">gc</span><span class="o">.</span><span class="n">collect</span><span class="p">()</span>
+
+    <span class="k">def</span> <span class="nf">_calculate_multiplicity_fraction</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">system_dict</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to calculate multiplicity fraction</span>
+
+<span class="sd">        Makes use of the self.bse_options[&#39;multiplicity&#39;] value. If its not set, it will raise an error</span>
+
+<span class="sd">        grid_options[&#39;multiplicity_fraction_function&#39;] will be checked for the choice</span>
+
+<span class="sd">        TODO: add option to put a manual binary fraction in here (solve via negative numbers being the functions)</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># Just return 1 if no option has been chosen</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;multiplicity_fraction_function&quot;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="s2">&quot;None&quot;</span><span class="p">]:</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;_calculate_multiplicity_fraction: Chosen not to use any multiplicity fraction.&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">3</span><span class="p">,</span>
+            <span class="p">)</span>
+
+            <span class="k">return</span> <span class="mi">1</span>
+
+        <span class="c1"># Raise an error if the multiplicity is not set</span>
+        <span class="k">if</span> <span class="ow">not</span> <span class="n">system_dict</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span>
+            <span class="n">msg</span> <span class="o">=</span> <span class="s2">&quot;Multiplicity value has not been set. When using a specific multiplicity fraction function please set the multiplicity&quot;</span>
+            <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
+
+        <span class="c1"># Go over the chosen options</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;multiplicity_fraction_function&quot;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="s2">&quot;Arenou2010&quot;</span><span class="p">]:</span>
+            <span class="c1"># Arenou 2010 will be used</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;_calculate_multiplicity_fraction: Using Arenou 2010 to calculate multiplicity fractions&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">3</span><span class="p">,</span>
+            <span class="p">)</span>
+
+            <span class="n">binary_fraction</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">Arenou2010_binary_fraction</span><span class="p">(</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;M_1&quot;</span><span class="p">])</span>
+            <span class="n">multiplicity_fraction_dict</span> <span class="o">=</span> <span class="p">{</span>
+                <span class="mi">1</span><span class="p">:</span> <span class="mi">1</span> <span class="o">-</span> <span class="n">binary_fraction</span><span class="p">,</span>
+                <span class="mi">2</span><span class="p">:</span> <span class="n">binary_fraction</span><span class="p">,</span>
+                <span class="mi">3</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
+                <span class="mi">4</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
+            <span class="p">}</span>
+
+        <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;multiplicity_fraction_function&quot;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">2</span><span class="p">,</span> <span class="s2">&quot;Raghavan2010&quot;</span><span class="p">]:</span>
+            <span class="c1"># Raghavan 2010 will be used</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;_calculate_multiplicity_fraction: Using Raghavan (2010) to calculate multiplicity fractions&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">3</span><span class="p">,</span>
+            <span class="p">)</span>
+
+            <span class="n">binary_fraction</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">raghavan2010_binary_fraction</span><span class="p">(</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;M_1&quot;</span><span class="p">])</span>
+            <span class="n">multiplicity_fraction_dict</span> <span class="o">=</span> <span class="p">{</span>
+                <span class="mi">1</span><span class="p">:</span> <span class="mi">1</span> <span class="o">-</span> <span class="n">binary_fraction</span><span class="p">,</span>
+                <span class="mi">2</span><span class="p">:</span> <span class="n">binary_fraction</span><span class="p">,</span>
+                <span class="mi">3</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
+                <span class="mi">4</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
+            <span class="p">}</span>
+
+        <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;multiplicity_fraction_function&quot;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">3</span><span class="p">,</span> <span class="s2">&quot;Moe2017&quot;</span><span class="p">]:</span>
+            <span class="c1"># We need to check several things now here:</span>
+
+            <span class="c1"># First, are the options for the MOE2017 grid set? On start it is filled with the default settings</span>
+            <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]:</span>
+                <span class="n">msg</span> <span class="o">=</span> <span class="s2">&quot;The MOE2017 options do not seem to be set properly. The value is </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span>
+                <span class="p">)</span>
+                <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
+
+            <span class="c1"># Second: is the Moecache filled.</span>
+            <span class="k">if</span> <span class="ow">not</span> <span class="n">Moecache</span><span class="p">:</span>
+                <span class="n">verbose_print</span><span class="p">(</span>
+                    <span class="s2">&quot;_calculate_multiplicity_fraction: Moecache is empty. It needs to be filled with the data for the interpolators. Loading the data now&quot;</span><span class="p">,</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                    <span class="mi">3</span><span class="p">,</span>
+                <span class="p">)</span>
+
+                <span class="c1"># Load the data</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">_load_moe_di_stefano_data</span><span class="p">()</span>
+
+            <span class="c1"># record the prev value</span>
+            <span class="n">prev_M1_value_ms</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;M_1&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+
+            <span class="c1"># Set value of M1 of the current system</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;M_1&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;M_1&quot;</span><span class="p">]</span>
+
+            <span class="c1"># Calculate the multiplicity fraction</span>
+            <span class="n">multiplicity_fraction_list</span> <span class="o">=</span> <span class="p">(</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">Moe_di_Stefano_2017_multiplicity_fractions</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">],</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+                <span class="p">)</span>
+            <span class="p">)</span>
+
+            <span class="c1"># Turn into dict</span>
+            <span class="n">multiplicity_fraction_dict</span> <span class="o">=</span> <span class="p">{</span>
+                <span class="n">el</span> <span class="o">+</span> <span class="mi">1</span><span class="p">:</span> <span class="n">multiplicity_fraction_list</span><span class="p">[</span><span class="n">el</span><span class="p">]</span>
+                <span class="k">for</span> <span class="n">el</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">multiplicity_fraction_list</span><span class="p">))</span>
+            <span class="p">}</span>
+
+            <span class="c1"># Set the prev value back</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;Moe2017_options&quot;</span><span class="p">][</span><span class="s2">&quot;M_1&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">prev_M1_value_ms</span>
+
+        <span class="c1"># we don&#39;t know what to do next</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">msg</span> <span class="o">=</span> <span class="s2">&quot;Chosen value for the multiplicity fraction function is not known.&quot;</span>
+            <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
+
+        <span class="c1"># To make sure we normalize the dictionary</span>
+        <span class="n">multiplicity_fraction_dict</span> <span class="o">=</span> <span class="n">normalize_dict</span><span class="p">(</span>
+            <span class="n">multiplicity_fraction_dict</span><span class="p">,</span> <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+        <span class="p">)</span>
+
+        <span class="n">verbose_print</span><span class="p">(</span>
+            <span class="s2">&quot;Multiplicity: </span><span class="si">{}</span><span class="s2"> multiplicity_fraction: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">],</span>
+                <span class="n">multiplicity_fraction_dict</span><span class="p">[</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">]],</span>
+            <span class="p">),</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+            <span class="mi">3</span><span class="p">,</span>
+        <span class="p">)</span>
+
+        <span class="k">return</span> <span class="n">multiplicity_fraction_dict</span><span class="p">[</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">]]</span>
+
+<div class="viewcode-block" id="Moe_di_Stefano_2017.get_moe_di_stefano_dataset"><a class="viewcode-back" href="../../../../population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_moe_di_stefano_dataset">[docs]</a>    <span class="k">def</span> <span class="nf">get_moe_di_stefano_dataset</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">options</span><span class="p">,</span> <span class="n">verbosity</span><span class="o">=</span><span class="mi">0</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">            Function to get the default Moe and di Stefano dataset or accept a user input.</span>
+
+<span class="sd">        Returns a dict containing the (JSON) data.</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="n">json_data</span> <span class="o">=</span> <span class="kc">None</span>
+
+        <span class="k">if</span> <span class="s2">&quot;JSON&quot;</span> <span class="ow">in</span> <span class="n">options</span><span class="p">:</span>
+            <span class="c1"># use the JSON data passed in</span>
+            <span class="n">json_data</span> <span class="o">=</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;JSON&quot;</span><span class="p">]</span>
+
+        <span class="k">elif</span> <span class="s2">&quot;file&quot;</span> <span class="ow">in</span> <span class="n">options</span><span class="p">:</span>
+            <span class="c1"># use the file passed in, if provided</span>
+            <span class="k">if</span> <span class="ow">not</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">isfile</span><span class="p">(</span><span class="n">options</span><span class="p">[</span><span class="s2">&quot;file&quot;</span><span class="p">]):</span>
+                <span class="n">verbose_print</span><span class="p">(</span>
+                    <span class="s2">&quot;The provided &#39;file&#39; Moe and de Stefano JSON file does not seem to exist at </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                        <span class="n">options</span><span class="p">[</span><span class="s2">&quot;file&quot;</span><span class="p">]</span>
+                    <span class="p">),</span>
+                    <span class="n">verbosity</span><span class="p">,</span>
+                    <span class="mi">1</span><span class="p">,</span>
+                <span class="p">)</span>
+
+                <span class="k">raise</span> <span class="ne">ValueError</span>
+            <span class="k">if</span> <span class="ow">not</span> <span class="n">options</span><span class="p">[</span><span class="s2">&quot;file&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">endswith</span><span class="p">(</span><span class="s2">&quot;.json&quot;</span><span class="p">):</span>
+                <span class="n">verbose_print</span><span class="p">(</span>
+                    <span class="s2">&quot;Provided filename is not a json file&quot;</span><span class="p">,</span>
+                    <span class="n">verbosity</span><span class="p">,</span>
+                    <span class="mi">1</span><span class="p">,</span>
+                <span class="p">)</span>
+
+            <span class="k">else</span><span class="p">:</span>
+                <span class="c1"># Read input data and Clean up the data if there are white spaces around the keys</span>
+                <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">options</span><span class="p">[</span><span class="s2">&quot;file&quot;</span><span class="p">],</span> <span class="s2">&quot;r&quot;</span><span class="p">,</span> <span class="n">encoding</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">)</span> <span class="k">as</span> <span class="n">data_filehandle</span><span class="p">:</span>
+                    <span class="n">datafile_data</span> <span class="o">=</span> <span class="n">data_filehandle</span><span class="o">.</span><span class="n">read</span><span class="p">()</span>
+                    <span class="n">datafile_data</span> <span class="o">=</span> <span class="n">datafile_data</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39;&quot; &#39;</span><span class="p">,</span> <span class="s1">&#39;&quot;&#39;</span><span class="p">)</span>
+                    <span class="n">datafile_data</span> <span class="o">=</span> <span class="n">datafile_data</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39; &quot;&#39;</span><span class="p">,</span> <span class="s1">&#39;&quot;&#39;</span><span class="p">)</span>
+                    <span class="n">datafile_data</span> <span class="o">=</span> <span class="n">datafile_data</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39; &quot;&#39;</span><span class="p">,</span> <span class="s1">&#39;&quot;&#39;</span><span class="p">)</span>
+                    <span class="n">json_data</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="n">datafile_data</span><span class="p">)</span>
+
+        <span class="k">if</span> <span class="ow">not</span> <span class="n">json_data</span><span class="p">:</span>
+            <span class="c1"># no JSON data or filename given, use the default 2017 dataset</span>
+            <span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;Using the default Moe and de Stefano 2017 datafile&quot;</span><span class="p">,</span>
+                <span class="n">verbosity</span><span class="p">,</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="n">json_data</span> <span class="o">=</span> <span class="n">copy</span><span class="o">.</span><span class="n">deepcopy</span><span class="p">(</span><span class="n">moe_di_stefano_2017_data</span><span class="o">.</span><span class="n">moe_di_stefano_2017_data</span><span class="p">)</span>
+
+        <span class="k">return</span> <span class="n">json_data</span></div>
+
+<div class="viewcode-block" id="Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options"><a class="viewcode-back" href="../../../../population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options">[docs]</a>    <span class="k">def</span> <span class="nf">get_Moe_di_Stefano_2017_default_options</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function that returns the default options for the Moe &amp; diStefano grid options</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="k">return</span> <span class="p">{</span>
+            <span class="c1"># place holder for the JSON data to be used if a file</span>
+            <span class="c1"># isn&#39;t specified</span>
+            <span class="s2">&quot;JSON&quot;</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>
+            <span class="c1"># resolution data</span>
+            <span class="s2">&quot;resolutions&quot;</span><span class="p">:</span> <span class="p">{</span>
+                <span class="s2">&quot;M&quot;</span><span class="p">:</span> <span class="p">[</span>
+                    <span class="mi">20</span><span class="p">,</span>  <span class="c1"># M1</span>
+                    <span class="mi">20</span><span class="p">,</span>  <span class="c1"># M2 (i.e. q)</span>
+                    <span class="mi">0</span><span class="p">,</span>  <span class="c1"># M3 currently unused</span>
+                    <span class="mi">0</span><span class="p">,</span>  <span class="c1"># M4 currently unused</span>
+                <span class="p">],</span>
+                <span class="s2">&quot;logP&quot;</span><span class="p">:</span> <span class="p">[</span>
+                    <span class="mi">20</span><span class="p">,</span>  <span class="c1"># P2 (binary period)</span>
+                    <span class="mi">0</span><span class="p">,</span>  <span class="c1"># P3 (triple period) currently unused</span>
+                    <span class="mi">0</span><span class="p">,</span>  <span class="c1"># P4 (quadruple period) currently unused</span>
+                <span class="p">],</span>
+                <span class="s2">&quot;ecc&quot;</span><span class="p">:</span> <span class="p">[</span>
+                    <span class="mi">10</span><span class="p">,</span>  <span class="c1"># e (binary eccentricity)</span>
+                    <span class="mi">0</span><span class="p">,</span>  <span class="c1"># e2 (triple eccentricity) currently unused</span>
+                    <span class="mi">0</span><span class="p">,</span>  <span class="c1"># e3 (quadruple eccentricity) currently unused</span>
+                <span class="p">],</span>
+            <span class="p">},</span>
+            <span class="s2">&quot;samplerfuncs&quot;</span><span class="p">:</span> <span class="p">{</span>
+                <span class="s2">&quot;M&quot;</span><span class="p">:</span> <span class="p">[</span><span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">],</span>
+                <span class="s2">&quot;logP&quot;</span><span class="p">:</span> <span class="p">[</span><span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">],</span>
+                <span class="s2">&quot;ecc&quot;</span><span class="p">:</span> <span class="p">[</span><span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">],</span>
+            <span class="p">},</span>
+            <span class="s2">&quot;ranges&quot;</span><span class="p">:</span> <span class="p">{</span>
+                <span class="c1"># stellar masses (Msun)</span>
+                <span class="s2">&quot;M&quot;</span><span class="p">:</span> <span class="p">[</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">minimum_stellar_mass</span><span class="p">()</span>
+                    <span class="o">*</span> <span class="mf">1.05</span><span class="p">,</span>  <span class="c1"># 0.08 is a tad bit above the minimum mass. Don&#39;t sample at 0.07, otherwise the first row of q values will have a phasevol of 0. Anything higher is fine.</span>
+                    <span class="mf">80.0</span><span class="p">,</span>  <span class="c1"># (rather arbitrary) upper mass cutoff</span>
+                <span class="p">],</span>
+                <span class="s2">&quot;q&quot;</span><span class="p">:</span> <span class="p">[</span>
+                    <span class="kc">None</span><span class="p">,</span>  <span class="c1"># artificial qmin : set to None to use default</span>
+                    <span class="kc">None</span><span class="p">,</span>  <span class="c1"># artificial qmax : set to None to use default</span>
+                <span class="p">],</span>
+                <span class="s2">&quot;logP&quot;</span><span class="p">:</span> <span class="p">[</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">8.0</span><span class="p">],</span>  <span class="c1"># 0 = log10(1 day)  # 8 = log10(10^8 days)</span>
+                <span class="s2">&quot;ecc&quot;</span><span class="p">:</span> <span class="p">[</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.99</span><span class="p">],</span>
+            <span class="p">},</span>
+            <span class="c1"># minimum stellar mass</span>
+            <span class="s2">&quot;Mmin&quot;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">minimum_stellar_mass</span><span class="p">(),</span>  <span class="c1"># We take the value that binary_c has set as the default</span>
+            <span class="c1"># multiplicity model (as a function of log10M1)</span>
+            <span class="c1">#</span>
+            <span class="c1"># You can use &#39;Poisson&#39; which uses the system multiplicity</span>
+            <span class="c1"># given by Moe and maps this to single/binary/triple/quad</span>
+            <span class="c1"># fractions.</span>
+            <span class="c1">#</span>
+            <span class="c1"># Alternatively, &#39;data&#39; takes the fractions directly</span>
+            <span class="c1"># from the data, but then triples and quadruples are</span>
+            <span class="c1"># combined (and there are NO quadruples).</span>
+            <span class="s2">&quot;multiplicity_model&quot;</span><span class="p">:</span> <span class="s2">&quot;Poisson&quot;</span><span class="p">,</span>
+            <span class="c1"># multiplicity modulator:</span>
+            <span class="c1"># [single, binary, triple, quadruple]</span>
+            <span class="c1">#</span>
+            <span class="c1"># e.g. [1,0,0,0] for single stars only</span>
+            <span class="c1">#      [0,1,0,0] for binary stars only</span>
+            <span class="c1">#</span>
+            <span class="c1"># defaults to [1,1,0,0] i.e. all types</span>
+            <span class="c1">#</span>
+            <span class="s2">&quot;multiplicity_modulator&quot;</span><span class="p">:</span> <span class="p">[</span>
+                <span class="mi">1</span><span class="p">,</span>  <span class="c1"># single</span>
+                <span class="mi">1</span><span class="p">,</span>  <span class="c1"># binary</span>
+                <span class="mi">0</span><span class="p">,</span>  <span class="c1"># triple</span>
+                <span class="mi">0</span><span class="p">,</span>  <span class="c1"># quadruple</span>
+            <span class="p">],</span>
+            <span class="c1"># given a mix of multiplicities, you can either (noting that</span>
+            <span class="c1"># here (S,B,T,Q) = appropriate modulator * model(S,B,T,Q) )</span>
+            <span class="c1">#</span>
+            <span class="c1"># &#39;norm&#39;  : normalise so the whole population is 1.0</span>
+            <span class="c1">#           after implementing the appropriate fractions</span>
+            <span class="c1">#           S/(S+B+T+Q), B/(S+B+T+Q), T/(S+B+T+Q), Q/(S+B+T+Q)</span>
+            <span class="c1">#</span>
+            <span class="c1"># &#39;raw&#39;   : stick to what is predicted, i.e.</span>
+            <span class="c1">#           S/(S+B+T+Q), B/(S+B+T+Q), T/(S+B+T+Q), Q/(S+B+T+Q)</span>
+            <span class="c1">#           without normalisation</span>
+            <span class="c1">#           (in which case the total probability &lt; 1.0 unless</span>
+            <span class="c1">#            all you use single, binary, triple and quadruple)</span>
+            <span class="c1">#</span>
+            <span class="c1"># &#39;merge&#39; : e.g. if you only have single and binary,</span>
+            <span class="c1">#           add the triples and quadruples to the binaries, so</span>
+            <span class="c1">#           binaries represent all multiple systems</span>
+            <span class="c1">#           ...</span>
+            <span class="c1">#           *** this is canonical binary population synthesis ***</span>
+            <span class="c1">#</span>
+            <span class="c1">#           Note: if multiplicity_modulator == [1,1,1,1] this</span>
+            <span class="c1">#                 option does nothing (equivalent to &#39;raw&#39;).</span>
+            <span class="c1">#</span>
+            <span class="c1">#</span>
+            <span class="c1"># note: if you only set one multiplicity_modulator</span>
+            <span class="c1"># to 1, and all the others to 0, then normalising</span>
+            <span class="c1"># will mean that you effectively have the same number</span>
+            <span class="c1"># of stars as single, binary, triple or quad (whichever</span>
+            <span class="c1"># is non-zero) i.e. the multiplicity fraction is ignored.</span>
+            <span class="c1"># This is probably not useful except for</span>
+            <span class="c1"># testing purposes or comparing to old grids.</span>
+            <span class="s2">&quot;normalize_multiplicities&quot;</span><span class="p">:</span> <span class="s2">&quot;merge&quot;</span><span class="p">,</span>
+            <span class="c1"># q extrapolation (below 0.15 and above 0.9) method. We can choose from [&#39;flat&#39;, &#39;linear&#39;, &#39;plaw2&#39;, &#39;nolowq&#39;]</span>
+            <span class="s2">&quot;q_low_extrapolation_method&quot;</span><span class="p">:</span> <span class="s2">&quot;linear&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;q_high_extrapolation_method&quot;</span><span class="p">:</span> <span class="s2">&quot;linear&quot;</span><span class="p">,</span>
+        <span class="p">}</span></div>
+
+<div class="viewcode-block" id="Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options_description"><a class="viewcode-back" href="../../../../population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options_description">[docs]</a>    <span class="k">def</span> <span class="nf">get_Moe_di_Stefano_2017_default_options_description</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to return the descriptions for all the Moe &amp; diStefano grid options</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="k">return</span> <span class="p">{</span>
+            <span class="s2">&quot;resolutions&quot;</span><span class="p">:</span> <span class="s2">&quot;&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;ranges&quot;</span><span class="p">:</span> <span class="s2">&quot;&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;Mmin&quot;</span><span class="p">:</span> <span class="s2">&quot;Minimum stellar mass&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;multiplicity_model&quot;</span><span class="p">:</span> <span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">        multiplicity model (as a function of log10M1)</span>
+
+<span class="s2">        You can use &#39;Poisson&#39; which uses the system multiplicity</span>
+<span class="s2">        given by Moe and maps this to single/binary/triple/quad</span>
+<span class="s2">        fractions.</span>
+
+<span class="s2">        Alternatively, &#39;data&#39; takes the fractions directly</span>
+<span class="s2">        from the data, but then triples and quadruples are</span>
+<span class="s2">        combined (and there are NO quadruples).</span>
+<span class="s2">        &quot;&quot;&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;multiplicity_modulator&quot;</span><span class="p">:</span> <span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">        [single, binary, triple, quadruple]</span>
+
+<span class="s2">        e.g. [1,0,0,0] for single stars only</span>
+<span class="s2">             [0,1,0,0] for binary stars only</span>
+
+<span class="s2">        defaults to [1,1,0,0] i.e. singles and binaries</span>
+<span class="s2">        &quot;&quot;&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;normalize_multiplicities&quot;</span><span class="p">:</span> <span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">        &#39;norm&#39;: normalise so the whole population is 1.0</span>
+<span class="s2">                after implementing the appropriate fractions</span>
+<span class="s2">                S/(S+B+T+Q), B/(S+B+T+Q), T/(S+B+T+Q), Q/(S+B+T+Q)</span>
+<span class="s2">                given a mix of multiplicities, you can either (noting that</span>
+<span class="s2">                here (S,B,T,Q) = appropriate modulator * model(S,B,T,Q) )</span>
+<span class="s2">                note: if you only set one multiplicity_modulator</span>
+<span class="s2">                to 1, and all the others to 0, then normalising</span>
+<span class="s2">                will mean that you effectively have the same number</span>
+<span class="s2">                of stars as single, binary, triple or quad (whichever</span>
+<span class="s2">                is non-zero) i.e. the multiplicity fraction is ignored.</span>
+<span class="s2">                This is probably not useful except for</span>
+<span class="s2">                testing purposes or comparing to old grids.</span>
+
+<span class="s2">        &#39;raw&#39;   : stick to what is predicted, i.e.</span>
+<span class="s2">                  S/(S+B+T+Q), B/(S+B+T+Q), T/(S+B+T+Q), Q/(S+B+T+Q)</span>
+<span class="s2">                  without normalisation</span>
+<span class="s2">                  (in which case the total probability &lt; 1.0 unless</span>
+<span class="s2">                  all you use single, binary, triple and quadruple)</span>
+
+<span class="s2">        &#39;merge&#39; : e.g. if you only have single and binary,</span>
+<span class="s2">                  add the triples and quadruples to the binaries, so</span>
+<span class="s2">                  binaries represent all multiple systems</span>
+<span class="s2">                  ...</span>
+<span class="s2">                  *** this is canonical binary population synthesis ***</span>
+
+<span class="s2">                  It only takes the maximum multiplicity into account,</span>
+<span class="s2">                  i.e. it doesn&#39;t multiply the resulting array by the multiplicity modulator again.</span>
+<span class="s2">                  This prevents the resulting array to always be 1 if only 1 multiplicity modulator element is nonzero</span>
+
+<span class="s2">                  Note: if multiplicity_modulator == [1,1,1,1]. this option does nothing (equivalent to &#39;raw&#39;).</span>
+<span class="s2">        &quot;&quot;&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;q_low_extrapolation_method&quot;</span><span class="p">:</span> <span class="s2">&quot;&quot;&quot;</span>
+<span class="s2">        q extrapolation (below 0.15) method</span>
+<span class="s2">            none</span>
+<span class="s2">            flat</span>
+<span class="s2">            linear2</span>
+<span class="s2">            plaw2</span>
+<span class="s2">            nolowq</span>
+<span class="s2">        &quot;&quot;&quot;</span><span class="p">,</span>
+            <span class="s2">&quot;q_high_extrapolation_method&quot;</span><span class="p">:</span> <span class="s2">&quot;Same as q_low_extrapolation_method&quot;</span><span class="p">,</span>
+        <span class="p">}</span></div></div>
+</pre></div>
+
+           </div>
+          </div>
+          <footer>
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>&#169; Copyright 2021, David Hendriks, Robert Izzard.</p>
+  </div>
+
+  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
+    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
+    provided by <a href="https://readthedocs.org">Read the Docs</a>.
+  
+<br><br>
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+<br><br>
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+
+
+
+</footer>
+        </div>
+      </div>
+    </section>
+  </div>
+  <script>
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script> 
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html
index 667ea3f21..07fde3935 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html
@@ -205,9 +205,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html
index 318af4167..a20d532fc 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html
@@ -451,9 +451,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html
index 16424c76a..8970b049d 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html
@@ -641,9 +641,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html
index 9de9ab8fa..6dbd86538 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html
@@ -881,9 +881,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html
index 32ba85894..5fe79eed4 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/distribution_functions.html
@@ -482,17 +482,19 @@
         <span class="bp">self</span><span class="p">,</span> <span class="n">m</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="nb">int</span><span class="p">,</span> <span class="nb">float</span><span class="p">],</span> <span class="n">newopts</span><span class="p">:</span> <span class="nb">dict</span> <span class="o">=</span> <span class="kc">None</span>
     <span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Union</span><span class="p">[</span><span class="nb">int</span><span class="p">,</span> <span class="nb">float</span><span class="p">]:</span>
         <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">        Probability distribution function for Kroupa 2001 IMF,</span>
-<span class="sd">        where the default values to the three_part_powerlaw are:</span>
-<span class="sd">        default = {</span>
-<span class="sd">           &quot;m0&quot;: 0.1,</span>
-<span class="sd">           &quot;m1&quot;: 0.5,</span>
-<span class="sd">           &quot;m2&quot;: 1,</span>
-<span class="sd">           &quot;mmax&quot;: 100,</span>
-<span class="sd">           &quot;p1&quot;: -1.3,</span>
-<span class="sd">           &quot;p2&quot;: -2.3,</span>
-<span class="sd">           &quot;p3&quot;: -2.3</span>
-<span class="sd">        }</span>
+<span class="sd">        Probability distribution function for Kroupa 2001 IMF.</span>
+
+<span class="sd">        The (default) values for this is::</span>
+
+<span class="sd">            default = {</span>
+<span class="sd">               &quot;m0&quot;: 0.1,</span>
+<span class="sd">               &quot;m1&quot;: 0.5,</span>
+<span class="sd">               &quot;m2&quot;: 1,</span>
+<span class="sd">               &quot;mmax&quot;: 100,</span>
+<span class="sd">               &quot;p1&quot;: -1.3,</span>
+<span class="sd">               &quot;p2&quot;: -2.3,</span>
+<span class="sd">               &quot;p3&quot;: -2.3</span>
+<span class="sd">            }</span>
 
 <span class="sd">        Args:</span>
 <span class="sd">            m: mass to evaluate the distribution at</span>
@@ -2398,9 +2400,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html
new file mode 100644
index 000000000..6d77b3bec
--- /dev/null
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html
@@ -0,0 +1,573 @@
+<!DOCTYPE html>
+<html class="writer-html5" lang="en" >
+<head>
+  <meta charset="utf-8" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <title>binarycpython.utils.population_extensions.grid_logging &mdash; binary_c-python  documentation</title>
+      <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+      <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+  <!--[if lt IE 9]>
+    <script src="../../../../_static/js/html5shiv.min.js"></script>
+  <![endif]-->
+  
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
+    <script src="../../../../_static/js/theme.js"></script>
+    <link rel="index" title="Index" href="../../../../genindex.html" />
+    <link rel="search" title="Search" href="../../../../search.html" /> 
+</head>
+
+<body class="wy-body-for-nav"> 
+  <div class="wy-grid-for-nav">
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+            <a href="../../../../index.html" class="icon icon-home"> binary_c-python
+          </a>
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
+              <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../readme_link.html">Python module for binary_c</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules.html">Binarycpython code</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../example_notebooks.html">Example notebooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../binary_c_parameters.html">Binary_c parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../grid_options_descriptions.html">Population grid code options</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python">Visit the GitLab repo</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/issues/new">Submit an issue</a></li>
+</ul>
+
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="../../../../index.html">binary_c-python</a>
+      </nav>
+
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="Page navigation">
+  <ul class="wy-breadcrumbs">
+      <li><a href="../../../../index.html" class="icon icon-home"></a> &raquo;</li>
+          <li><a href="../../../index.html">Module code</a> &raquo;</li>
+      <li>binarycpython.utils.population_extensions.grid_logging</li>
+      <li class="wy-breadcrumbs-aside">
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+             
+  <h1>Source code for binarycpython.utils.population_extensions.grid_logging</h1><div class="highlight"><pre>
+<span></span><span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">The class extension for the population object that contains logging functionality</span>
+<span class="sd">&quot;&quot;&quot;</span>
+
+<span class="c1"># pylint: disable=E1101</span>
+
+<span class="kn">import</span> <span class="nn">os</span>
+<span class="kn">import</span> <span class="nn">sys</span>
+<span class="kn">import</span> <span class="nn">time</span>
+<span class="kn">import</span> <span class="nn">logging</span>
+<span class="kn">import</span> <span class="nn">strip_ansi</span>
+
+<span class="kn">import</span> <span class="nn">binarycpython.utils.functions</span>
+
+<span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="p">(</span>
+    <span class="n">format_number</span><span class="p">,</span>
+    <span class="n">trem</span><span class="p">,</span>
+    <span class="n">remove_file</span><span class="p">,</span>
+    <span class="n">verbose_print</span>
+<span class="p">)</span>
+<span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.grid_options_defaults</span> <span class="kn">import</span> <span class="n">secs_per_day</span>
+
+<span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="p">(</span>
+    <span class="n">binary_c_log_code</span><span class="p">,</span>
+    <span class="n">create_and_load_logging_function</span><span class="p">,</span>
+    <span class="n">autogen_C_logging_code</span>
+
+<span class="p">)</span>
+
+
+<div class="viewcode-block" id="grid_logging"><a class="viewcode-back" href="../../../../population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging">[docs]</a><span class="k">class</span> <span class="nc">grid_logging</span><span class="p">:</span>
+    <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">    The class extension for the population object that contains logging functionality</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Init function for the grid_logging class</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="k">return</span>
+
+    <span class="k">def</span> <span class="nf">_set_custom_logging</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function/routine to set all the custom logging so that the function memory pointer</span>
+<span class="sd">        is known to the grid.</span>
+
+<span class="sd">        When the memory adress is loaded and the library file is set we&#39;ll skip rebuilding the library</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># Only if the values are the &#39;default&#39; unset values</span>
+        <span class="k">if</span> <span class="p">(</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;custom_logging_func_memaddr&quot;</span><span class="p">]</span> <span class="o">==</span> <span class="o">-</span><span class="mi">1</span>
+            <span class="ow">and</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_custom_logging_shared_library_file&quot;</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">None</span>
+        <span class="p">):</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;Creating and loading custom logging functionality&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="c1"># C_logging_code gets priority of C_autogen_code</span>
+            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;C_logging_code&quot;</span><span class="p">]:</span>
+                <span class="c1"># Generate entire shared lib code around logging lines</span>
+                <span class="n">custom_logging_code</span> <span class="o">=</span> <span class="n">binary_c_log_code</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;C_logging_code&quot;</span><span class="p">],</span>
+                    <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+                    <span class="o">-</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_CUSTOM_LOGGING_VERBOSITY_LEVEL</span> <span class="o">-</span> <span class="mi">1</span><span class="p">),</span>
+                <span class="p">)</span>
+
+                <span class="c1"># Load memory address</span>
+                <span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;custom_logging_func_memaddr&quot;</span><span class="p">],</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_custom_logging_shared_library_file&quot;</span><span class="p">],</span>
+                <span class="p">)</span> <span class="o">=</span> <span class="n">create_and_load_logging_function</span><span class="p">(</span>
+                    <span class="n">custom_logging_code</span><span class="p">,</span>
+                    <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+                    <span class="o">-</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_CUSTOM_LOGGING_VERBOSITY_LEVEL</span> <span class="o">-</span> <span class="mi">1</span><span class="p">),</span>
+                    <span class="n">custom_tmp_dir</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span>
+                <span class="p">)</span>
+
+            <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;C_auto_logging&quot;</span><span class="p">]:</span>
+                <span class="c1"># Generate real logging code</span>
+                <span class="n">logging_line</span> <span class="o">=</span> <span class="n">autogen_C_logging_code</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;C_auto_logging&quot;</span><span class="p">],</span>
+                    <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+                    <span class="o">-</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_CUSTOM_LOGGING_VERBOSITY_LEVEL</span> <span class="o">-</span> <span class="mi">1</span><span class="p">),</span>
+                <span class="p">)</span>
+
+                <span class="c1"># Generate entire shared lib code around logging lines</span>
+                <span class="n">custom_logging_code</span> <span class="o">=</span> <span class="n">binary_c_log_code</span><span class="p">(</span>
+                    <span class="n">logging_line</span><span class="p">,</span>
+                    <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+                    <span class="o">-</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_CUSTOM_LOGGING_VERBOSITY_LEVEL</span> <span class="o">-</span> <span class="mi">1</span><span class="p">),</span>
+                <span class="p">)</span>
+
+                <span class="c1"># Load memory address</span>
+                <span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;custom_logging_func_memaddr&quot;</span><span class="p">],</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_custom_logging_shared_library_file&quot;</span><span class="p">],</span>
+                <span class="p">)</span> <span class="o">=</span> <span class="n">create_and_load_logging_function</span><span class="p">(</span>
+                    <span class="n">custom_logging_code</span><span class="p">,</span>
+                    <span class="n">verbosity</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span>
+                    <span class="o">-</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_CUSTOM_LOGGING_VERBOSITY_LEVEL</span> <span class="o">-</span> <span class="mi">1</span><span class="p">),</span>
+                    <span class="n">custom_tmp_dir</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;tmp_dir&quot;</span><span class="p">],</span>
+                <span class="p">)</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;Custom logging library already loaded. Not setting them again.&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span>
+
+    <span class="k">def</span> <span class="nf">_print_info</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">run_number</span><span class="p">,</span> <span class="n">total_systems</span><span class="p">,</span> <span class="n">full_system_dict</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to print info about the current system and the progress of the grid.</span>
+
+<span class="sd">        # color info tricks from https://ozzmaker.com/add-colour-to-text-in-python/</span>
+<span class="sd">        https://stackoverflow.com/questions/287871/how-to-print-colored-text-in-terminal-in-python</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># Define frequency</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>
+            <span class="n">print_freq</span> <span class="o">=</span> <span class="mi">1</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">print_freq</span> <span class="o">=</span> <span class="mi">10</span>
+
+        <span class="k">if</span> <span class="n">run_number</span> <span class="o">%</span> <span class="n">print_freq</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
+            <span class="n">binary_cmdline_string</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_return_argline</span><span class="p">(</span><span class="n">full_system_dict</span><span class="p">)</span>
+            <span class="n">info_string</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="si">{color_part_1}</span><span class="s2"> </span><span class="se">\</span>
+<span class="s2">            </span><span class="si">{text_part_1}{end_part_1}{color_part_2}</span><span class="s2"> </span><span class="se">\</span>
+<span class="s2">            </span><span class="si">{text_part_2}{end_part_2}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="n">color_part_1</span><span class="o">=</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[1;32;41m&quot;</span><span class="p">,</span>
+                <span class="n">text_part_1</span><span class="o">=</span><span class="s2">&quot;</span><span class="si">{}</span><span class="s2">/</span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">run_number</span><span class="p">,</span> <span class="n">total_systems</span><span class="p">),</span>
+                <span class="n">end_part_1</span><span class="o">=</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[0m&quot;</span><span class="p">,</span>
+                <span class="n">color_part_2</span><span class="o">=</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[1;32;42m&quot;</span><span class="p">,</span>
+                <span class="n">text_part_2</span><span class="o">=</span><span class="s2">&quot;</span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">binary_cmdline_string</span><span class="p">),</span>
+                <span class="n">end_part_2</span><span class="o">=</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[0m&quot;</span><span class="p">,</span>
+            <span class="p">)</span>
+            <span class="nb">print</span><span class="p">(</span><span class="n">info_string</span><span class="p">)</span>
+
+    <span class="k">def</span> <span class="nf">_set_loggers</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to set the loggers for the execution of the grid</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># Set log file</span>
+        <span class="n">binary_c_logfile</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;log_file&quot;</span><span class="p">]</span>
+
+        <span class="c1"># Create directory</span>
+        <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">binary_c_logfile</span><span class="p">),</span> <span class="n">exist_ok</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+
+        <span class="c1"># Set up logger</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">logger</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">getLogger</span><span class="p">(</span><span class="s2">&quot;binary_c_python_logger&quot;</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">logger</span><span class="o">.</span><span class="n">setLevel</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">])</span>
+
+        <span class="c1"># Reset handlers</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">logger</span><span class="o">.</span><span class="n">handlers</span> <span class="o">=</span> <span class="p">[]</span>
+
+        <span class="c1"># Set formatting of output</span>
+        <span class="n">log_formatter</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">Formatter</span><span class="p">(</span>
+            <span class="s2">&quot;</span><span class="si">%(asctime)s</span><span class="s2"> - </span><span class="si">%(name)s</span><span class="s2"> - </span><span class="si">%(levelname)s</span><span class="s2"> - </span><span class="si">%(message)s</span><span class="s2">&quot;</span>
+        <span class="p">)</span>
+
+        <span class="c1"># Make and add file handlers</span>
+        <span class="c1"># make handler for output to file</span>
+        <span class="n">handler_file</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">FileHandler</span><span class="p">(</span><span class="n">filename</span><span class="o">=</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">binary_c_logfile</span><span class="p">))</span>
+        <span class="n">handler_file</span><span class="o">.</span><span class="n">setFormatter</span><span class="p">(</span><span class="n">log_formatter</span><span class="p">)</span>
+        <span class="n">handler_file</span><span class="o">.</span><span class="n">setLevel</span><span class="p">(</span><span class="n">logging</span><span class="o">.</span><span class="n">INFO</span><span class="p">)</span>
+
+        <span class="c1"># Make handler for output to stdout</span>
+        <span class="n">handler_stdout</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">StreamHandler</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="p">)</span>
+        <span class="n">handler_stdout</span><span class="o">.</span><span class="n">setFormatter</span><span class="p">(</span><span class="n">log_formatter</span><span class="p">)</span>
+        <span class="n">handler_stdout</span><span class="o">.</span><span class="n">setLevel</span><span class="p">(</span><span class="n">logging</span><span class="o">.</span><span class="n">INFO</span><span class="p">)</span>
+
+        <span class="c1"># Add the loggers</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">logger</span><span class="o">.</span><span class="n">addHandler</span><span class="p">(</span><span class="n">handler_file</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">logger</span><span class="o">.</span><span class="n">addHandler</span><span class="p">(</span><span class="n">handler_stdout</span><span class="p">)</span>
+
+    <span class="c1">######################</span>
+    <span class="c1"># Status logging</span>
+
+<div class="viewcode-block" id="grid_logging.vb1print"><a class="viewcode-back" href="../../../../population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging.vb1print">[docs]</a>    <span class="k">def</span> <span class="nf">vb1print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">ID</span><span class="p">,</span> <span class="n">now</span><span class="p">,</span> <span class="n">system_number</span><span class="p">,</span> <span class="n">system_dict</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Verbosity-level 1 printing, to keep an eye on a grid.</span>
+
+<span class="sd">        Input:</span>
+<span class="sd">            ID: thread ID for debugging (int): TODO fix this</span>
+<span class="sd">            now: the time now as a UNIX-style epoch in seconds (float)</span>
+<span class="sd">            system_number: the system number</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># calculate estimated time of arrive (eta and eta_secs), time per run (tpr)</span>
+        <span class="n">localtime</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">localtime</span><span class="p">(</span><span class="n">now</span><span class="p">)</span>
+
+        <span class="c1"># calculate stats</span>
+        <span class="n">n</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;n_saved_log_stats&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">value</span>
+        <span class="k">if</span> <span class="n">n</span> <span class="o">&lt;</span> <span class="mi">2</span><span class="p">:</span>
+            <span class="c1"># simple 1-system calculation: inaccurate</span>
+            <span class="c1"># but best for small n</span>
+            <span class="n">dt</span> <span class="o">=</span> <span class="n">now</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;prev_log_time&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+            <span class="n">dn</span> <span class="o">=</span> <span class="n">system_number</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;prev_log_system_number&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="c1"># average over n_saved_log_stats</span>
+            <span class="n">dt</span> <span class="o">=</span> <span class="p">(</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;prev_log_time&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;prev_log_time&quot;</span><span class="p">][</span><span class="n">n</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span>
+            <span class="p">)</span>
+            <span class="n">dn</span> <span class="o">=</span> <span class="p">(</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;prev_log_system_number&quot;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;prev_log_system_number&quot;</span><span class="p">][</span><span class="n">n</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span>
+            <span class="p">)</span>
+
+        <span class="n">eta</span><span class="p">,</span> <span class="n">units</span><span class="p">,</span> <span class="n">tpr</span><span class="p">,</span> <span class="n">eta_secs</span> <span class="o">=</span> <span class="n">trem</span><span class="p">(</span>
+            <span class="n">dt</span><span class="p">,</span> <span class="n">system_number</span><span class="p">,</span> <span class="n">dn</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_total_starcount&quot;</span><span class="p">]</span>
+        <span class="p">)</span>
+
+        <span class="c1"># compensate for multithreading and modulo</span>
+        <span class="n">tpr</span> <span class="o">*=</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;num_processes&quot;</span><span class="p">]</span> <span class="o">*</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;modulo&quot;</span><span class="p">]</span>
+
+        <span class="k">if</span> <span class="n">eta_secs</span> <span class="o">&lt;</span> <span class="n">secs_per_day</span><span class="p">:</span>
+            <span class="n">fintime</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">localtime</span><span class="p">(</span><span class="n">now</span> <span class="o">+</span> <span class="n">eta_secs</span><span class="p">)</span>
+            <span class="n">etf</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="si">{hours:02d}</span><span class="s2">:</span><span class="si">{minutes:02d}</span><span class="s2">:</span><span class="si">{seconds:02d}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="n">hours</span><span class="o">=</span><span class="n">fintime</span><span class="o">.</span><span class="n">tm_hour</span><span class="p">,</span> <span class="n">minutes</span><span class="o">=</span><span class="n">fintime</span><span class="o">.</span><span class="n">tm_min</span><span class="p">,</span> <span class="n">seconds</span><span class="o">=</span><span class="n">fintime</span><span class="o">.</span><span class="n">tm_sec</span>
+            <span class="p">)</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">d</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">eta_secs</span> <span class="o">/</span> <span class="n">secs_per_day</span><span class="p">)</span>
+            <span class="k">if</span> <span class="n">d</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>
+                <span class="n">etf</span> <span class="o">=</span> <span class="s2">&quot;Tomorrow&quot;</span>
+            <span class="k">else</span><span class="p">:</span>
+                <span class="n">etf</span> <span class="o">=</span> <span class="s2">&quot;In </span><span class="si">{}</span><span class="s2"> days&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">d</span><span class="p">)</span>
+
+        <span class="c1"># modulo information</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;modulo&quot;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>
+            <span class="n">modulo</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span>  <span class="c1"># usual case</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">modulo</span> <span class="o">=</span> <span class="s2">&quot;%&quot;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;modulo&quot;</span><span class="p">])</span>
+
+        <span class="c1"># add up memory use from each thread</span>
+        <span class="n">total_mem_use</span> <span class="o">=</span> <span class="nb">sum</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">shared_memory</span><span class="p">[</span><span class="s2">&quot;memory_use_per_thread&quot;</span><span class="p">])</span>
+
+        <span class="c1"># make a string to describe the system e.g. M1, M2, etc.</span>
+        <span class="n">system_string</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span>
+
+        <span class="c1"># use the multiplicity if given</span>
+        <span class="k">if</span> <span class="s2">&quot;multiplicity&quot;</span> <span class="ow">in</span> <span class="n">system_dict</span><span class="p">:</span>
+            <span class="n">nmult</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;multiplicity&quot;</span><span class="p">])</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">nmult</span> <span class="o">=</span> <span class="mi">4</span>
+
+        <span class="c1"># masses</span>
+        <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">nmult</span><span class="p">):</span>
+            <span class="n">i1</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
+            <span class="k">if</span> <span class="s2">&quot;M_&quot;</span> <span class="o">+</span> <span class="n">i1</span> <span class="ow">in</span> <span class="n">system_dict</span><span class="p">:</span>
+                <span class="n">system_string</span> <span class="o">+=</span> <span class="p">(</span>
+                    <span class="s2">&quot;M</span><span class="si">{}</span><span class="s2">=&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">i1</span><span class="p">)</span> <span class="o">+</span> <span class="n">format_number</span><span class="p">(</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;M_&quot;</span> <span class="o">+</span> <span class="n">i1</span><span class="p">])</span> <span class="o">+</span> <span class="s2">&quot; &quot;</span>
+                <span class="p">)</span>
+
+        <span class="c1"># separation and orbital period</span>
+        <span class="k">if</span> <span class="s2">&quot;separation&quot;</span> <span class="ow">in</span> <span class="n">system_dict</span><span class="p">:</span>
+            <span class="n">system_string</span> <span class="o">+=</span> <span class="s2">&quot;a=&quot;</span> <span class="o">+</span> <span class="n">format_number</span><span class="p">(</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;separation&quot;</span><span class="p">])</span>
+        <span class="k">if</span> <span class="s2">&quot;orbital_period&quot;</span> <span class="ow">in</span> <span class="n">system_dict</span><span class="p">:</span>
+            <span class="n">system_string</span> <span class="o">+=</span> <span class="s2">&quot;P=&quot;</span> <span class="o">+</span> <span class="n">format_number</span><span class="p">(</span><span class="n">system_dict</span><span class="p">[</span><span class="s2">&quot;orbital_period&quot;</span><span class="p">])</span>
+
+        <span class="c1"># do the print</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_total_starcount&quot;</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;</span><span class="si">{opening_colour}{system_number}</span><span class="s2">/</span><span class="si">{total_starcount}{modulo}</span><span class="s2"> </span><span class="si">{pc_colour}{pc_complete:5.1f}% c</span><span class="s2">omplete </span><span class="si">{time_colour}{hours:02d}</span><span class="s2">:</span><span class="si">{minutes:02d}</span><span class="s2">:</span><span class="si">{seconds:02d}</span><span class="s2"> </span><span class="si">{ETA_colour}</span><span class="s2">ETA=</span><span class="si">{ETA:7.1f}{units}</span><span class="s2"> tpr=</span><span class="si">{tpr:2.2e}</span><span class="s2"> </span><span class="si">{ETF_colour}</span><span class="s2">ETF=</span><span class="si">{ETF}</span><span class="s2"> </span><span class="si">{mem_use_colour}</span><span class="s2">mem:</span><span class="si">{mem_use:.1f}</span><span class="s2">MB </span><span class="si">{system_string_colour}{system_string}{closing_colour}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="n">opening_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;reset&quot;</span><span class="p">]</span>
+                    <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;yellow on black&quot;</span><span class="p">],</span>
+                    <span class="n">system_number</span><span class="o">=</span><span class="n">system_number</span><span class="p">,</span>
+                    <span class="n">total_starcount</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_total_starcount&quot;</span><span class="p">],</span>
+                    <span class="n">modulo</span><span class="o">=</span><span class="n">modulo</span><span class="p">,</span>
+                    <span class="n">pc_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;blue on black&quot;</span><span class="p">],</span>
+                    <span class="n">pc_complete</span><span class="o">=</span><span class="p">(</span><span class="mf">100.0</span> <span class="o">*</span> <span class="n">system_number</span><span class="p">)</span>
+                    <span class="o">/</span> <span class="p">(</span><span class="mf">1.0</span> <span class="o">*</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_total_starcount&quot;</span><span class="p">])</span>
+                    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_total_starcount&quot;</span><span class="p">]</span>
+                    <span class="k">else</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
+                    <span class="n">time_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;green on black&quot;</span><span class="p">],</span>
+                    <span class="n">hours</span><span class="o">=</span><span class="n">localtime</span><span class="o">.</span><span class="n">tm_hour</span><span class="p">,</span>
+                    <span class="n">minutes</span><span class="o">=</span><span class="n">localtime</span><span class="o">.</span><span class="n">tm_min</span><span class="p">,</span>
+                    <span class="n">seconds</span><span class="o">=</span><span class="n">localtime</span><span class="o">.</span><span class="n">tm_sec</span><span class="p">,</span>
+                    <span class="n">ETA_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;red on black&quot;</span><span class="p">],</span>
+                    <span class="n">ETA</span><span class="o">=</span><span class="n">eta</span><span class="p">,</span>
+                    <span class="n">units</span><span class="o">=</span><span class="n">units</span><span class="p">,</span>
+                    <span class="n">tpr</span><span class="o">=</span><span class="n">tpr</span><span class="p">,</span>
+                    <span class="n">ETF_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;blue&quot;</span><span class="p">],</span>
+                    <span class="n">ETF</span><span class="o">=</span><span class="n">etf</span><span class="p">,</span>
+                    <span class="n">mem_use_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;magenta&quot;</span><span class="p">],</span>
+                    <span class="n">mem_use</span><span class="o">=</span><span class="n">total_mem_use</span><span class="p">,</span>
+                    <span class="n">system_string_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;yellow&quot;</span><span class="p">],</span>
+                    <span class="n">system_string</span><span class="o">=</span><span class="n">system_string</span><span class="p">,</span>
+                    <span class="n">closing_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;reset&quot;</span><span class="p">],</span>
+                <span class="p">),</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;</span><span class="si">{opening_colour}{system_number}{modulo}</span><span class="s2"> </span><span class="si">{time_colour}{hours:02d}</span><span class="s2">:</span><span class="si">{minutes:02d}</span><span class="s2">:</span><span class="si">{seconds:02d}</span><span class="s2"> tpr=</span><span class="si">{tpr:2.2e}</span><span class="s2"> </span><span class="si">{mem_use_colour}</span><span class="s2">mem:</span><span class="si">{mem_use:.1f}</span><span class="s2">MB </span><span class="si">{system_string_colour}{system_string}{closing_colour}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                    <span class="n">opening_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;reset&quot;</span><span class="p">]</span>
+                    <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;yellow on black&quot;</span><span class="p">],</span>
+                    <span class="n">system_number</span><span class="o">=</span><span class="n">system_number</span><span class="p">,</span>
+                    <span class="n">modulo</span><span class="o">=</span><span class="n">modulo</span><span class="p">,</span>
+                    <span class="n">time_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;green on black&quot;</span><span class="p">],</span>
+                    <span class="n">hours</span><span class="o">=</span><span class="n">localtime</span><span class="o">.</span><span class="n">tm_hour</span><span class="p">,</span>
+                    <span class="n">minutes</span><span class="o">=</span><span class="n">localtime</span><span class="o">.</span><span class="n">tm_min</span><span class="p">,</span>
+                    <span class="n">seconds</span><span class="o">=</span><span class="n">localtime</span><span class="o">.</span><span class="n">tm_sec</span><span class="p">,</span>
+                    <span class="n">tpr</span><span class="o">=</span><span class="n">tpr</span><span class="p">,</span>
+                    <span class="n">mem_use_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;magenta&quot;</span><span class="p">],</span>
+                    <span class="n">mem_use</span><span class="o">=</span><span class="n">total_mem_use</span><span class="p">,</span>
+                    <span class="n">system_string_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;yellow&quot;</span><span class="p">],</span>
+                    <span class="n">system_string</span><span class="o">=</span><span class="n">system_string</span><span class="p">,</span>
+                    <span class="n">closing_colour</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;reset&quot;</span><span class="p">],</span>
+                <span class="p">),</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span></div>
+
+<div class="viewcode-block" id="grid_logging.vb2print"><a class="viewcode-back" href="../../../../population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging.vb2print">[docs]</a>    <span class="k">def</span> <span class="nf">vb2print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">system_dict</span><span class="p">,</span> <span class="n">cmdline_string</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Extra function for verbose printing</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="nb">print</span><span class="p">(</span>
+            <span class="s2">&quot;Running this system now on thread </span><span class="si">{ID}</span><span class="se">\n</span><span class="si">{blue}{cmdline}{reset}</span><span class="s2">:</span><span class="se">\n\t</span><span class="si">{system_dict}</span><span class="se">\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+                <span class="n">ID</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">process_ID</span><span class="p">,</span>
+                <span class="n">blue</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;blue&quot;</span><span class="p">],</span>
+                <span class="n">cmdline</span><span class="o">=</span><span class="n">cmdline_string</span><span class="p">,</span>
+                <span class="n">reset</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;reset&quot;</span><span class="p">],</span>
+                <span class="n">system_dict</span><span class="o">=</span><span class="n">system_dict</span>
+            <span class="p">)</span>
+        <span class="p">)</span></div>
+
+<div class="viewcode-block" id="grid_logging.verbose_print"><a class="viewcode-back" href="../../../../population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging.verbose_print">[docs]</a>    <span class="k">def</span> <span class="nf">verbose_print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Wrapper method for the verbose print that calls the verbose print with the correct newline</span>
+
+<span class="sd">        TODO: consider merging the two</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># wrapper for functions.verbose_print to use the correct newline</span>
+        <span class="n">newline</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;newline&quot;</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;log_newline&quot;</span><span class="p">])</span>
+        <span class="k">if</span> <span class="n">newline</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+            <span class="n">newline</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span>
+        <span class="n">kwargs</span><span class="p">[</span><span class="s2">&quot;newline&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">newline</span>
+
+        <span class="c1"># Pass the rest to the original verbose print</span>
+        <span class="n">verbose_print</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+    <span class="k">def</span> <span class="nf">_boxed</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">stringlist</span><span class="p">,</span> <span class="n">colour</span><span class="o">=</span><span class="s2">&quot;yellow on black&quot;</span><span class="p">,</span> <span class="n">boxchar</span><span class="o">=</span><span class="s2">&quot;*&quot;</span><span class="p">,</span> <span class="n">separator</span><span class="o">=</span><span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to output a list of strings in a single box.</span>
+
+<span class="sd">        Args:</span>
+<span class="sd">            list = a list of strings to be output. If these contain the separator</span>
+<span class="sd">                   (see below) these strings are split by it.</span>
+<span class="sd">            separator = strings are split on this, default &quot;\n&quot;</span>
+<span class="sd">            colour = the colour to be used, usually this is &#39;yellow on black&#39;</span>
+<span class="sd">                     as set in the ANSI_colours dict</span>
+<span class="sd">            boxchar = the character used to make the box, &#39;*&#39; by default</span>
+
+<span class="sd">        Note: handles tabs (\t) badly, do not use them!</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+        <span class="n">strlen</span> <span class="o">=</span> <span class="mi">0</span>
+        <span class="n">strings</span> <span class="o">=</span> <span class="p">[]</span>
+        <span class="n">lengths</span> <span class="o">=</span> <span class="p">[]</span>
+
+        <span class="c1"># make a list of strings</span>
+        <span class="k">if</span> <span class="n">separator</span><span class="p">:</span>
+            <span class="k">for</span> <span class="n">l</span> <span class="ow">in</span> <span class="n">stringlist</span><span class="p">:</span>
+                <span class="n">strings</span> <span class="o">+=</span> <span class="n">l</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="n">sep</span><span class="o">=</span><span class="n">separator</span><span class="p">)</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">strings</span> <span class="o">=</span> <span class="n">stringlist</span>
+
+        <span class="c1"># get lengths without ANSI codes</span>
+        <span class="k">for</span> <span class="n">string</span> <span class="ow">in</span> <span class="n">strings</span><span class="p">:</span>
+            <span class="n">lengths</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">strip_ansi</span><span class="o">.</span><span class="n">strip_ansi</span><span class="p">(</span><span class="n">string</span><span class="p">)))</span>
+
+        <span class="c1"># hence the max length</span>
+        <span class="n">strlen</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="n">lengths</span><span class="p">)</span>
+        <span class="n">strlen</span> <span class="o">+=</span> <span class="n">strlen</span> <span class="o">%</span> <span class="mi">2</span>
+        <span class="n">header</span> <span class="o">=</span> <span class="n">boxchar</span> <span class="o">*</span> <span class="p">(</span><span class="mi">4</span> <span class="o">+</span> <span class="n">strlen</span><span class="p">)</span>
+
+        <span class="c1"># start output</span>
+        <span class="n">out</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="n">colour</span><span class="p">]</span> <span class="o">+</span> <span class="n">header</span> <span class="o">+</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span>
+
+        <span class="c1"># loop over strings to output, padding as required</span>
+        <span class="k">for</span> <span class="n">n</span><span class="p">,</span> <span class="n">string</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">strings</span><span class="p">):</span>
+            <span class="k">if</span> <span class="n">lengths</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">%</span> <span class="mi">2</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>
+                <span class="n">string</span> <span class="o">=</span> <span class="s2">&quot; &quot;</span> <span class="o">+</span> <span class="n">string</span>
+            <span class="n">pad</span> <span class="o">=</span> <span class="s2">&quot; &quot;</span> <span class="o">*</span> <span class="nb">int</span><span class="p">((</span><span class="n">strlen</span> <span class="o">-</span> <span class="n">lengths</span><span class="p">[</span><span class="n">n</span><span class="p">])</span> <span class="o">/</span> <span class="mi">2</span><span class="p">)</span>
+            <span class="n">out</span> <span class="o">=</span> <span class="n">out</span> <span class="o">+</span> <span class="n">boxchar</span> <span class="o">+</span> <span class="s2">&quot; &quot;</span> <span class="o">+</span> <span class="n">pad</span> <span class="o">+</span> <span class="n">string</span> <span class="o">+</span> <span class="n">pad</span> <span class="o">+</span> <span class="s2">&quot; &quot;</span> <span class="o">+</span> <span class="n">boxchar</span> <span class="o">+</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span>
+
+        <span class="c1"># close output and return</span>
+        <span class="n">out</span> <span class="o">=</span> <span class="n">out</span> <span class="o">+</span> <span class="n">header</span> <span class="o">+</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">ANSI_colours</span><span class="p">[</span><span class="s2">&quot;reset&quot;</span><span class="p">]</span>
+        <span class="k">return</span> <span class="n">out</span>
+
+    <span class="k">def</span> <span class="nf">_get_stream_logger</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">level</span><span class="o">=</span><span class="n">logging</span><span class="o">.</span><span class="n">DEBUG</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to set up the streamlogger</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="c1"># Format</span>
+        <span class="n">fmt</span> <span class="o">=</span> <span class="s2">&quot;[</span><span class="si">%(asctime)s</span><span class="s2"> </span><span class="si">%(levelname)-8s</span><span class="s2"> </span><span class="si">%(processName)s</span><span class="s2">] --- </span><span class="si">%(message)s</span><span class="s2">&quot;</span>
+        <span class="n">formatter</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">Formatter</span><span class="p">(</span><span class="n">fmt</span><span class="p">)</span>
+
+        <span class="c1"># Streamhandle</span>
+        <span class="n">sh</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">StreamHandler</span><span class="p">(</span><span class="n">stream</span><span class="o">=</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="p">)</span>
+        <span class="n">sh</span><span class="o">.</span><span class="n">setLevel</span><span class="p">(</span><span class="n">level</span><span class="p">)</span>
+        <span class="n">sh</span><span class="o">.</span><span class="n">setFormatter</span><span class="p">(</span><span class="n">formatter</span><span class="p">)</span>
+
+        <span class="c1"># Logger itself</span>
+        <span class="n">stream_logger</span> <span class="o">=</span> <span class="n">logging</span><span class="o">.</span><span class="n">getLogger</span><span class="p">(</span><span class="s2">&quot;stream_logger&quot;</span><span class="p">)</span>
+        <span class="n">stream_logger</span><span class="o">.</span><span class="n">handlers</span> <span class="o">=</span> <span class="p">[]</span>
+        <span class="n">stream_logger</span><span class="o">.</span><span class="n">setLevel</span><span class="p">(</span><span class="n">level</span><span class="p">)</span>
+        <span class="n">stream_logger</span><span class="o">.</span><span class="n">addHandler</span><span class="p">(</span><span class="n">sh</span><span class="p">)</span>
+
+        <span class="k">return</span> <span class="n">stream_logger</span>
+
+    <span class="k">def</span> <span class="nf">_clean_up_custom_logging</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">evol_type</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to clean up the custom logging.</span>
+<span class="sd">        Has two types:</span>
+<span class="sd">            &#39;single&#39;:</span>
+<span class="sd">                - removes the compiled shared library</span>
+<span class="sd">                    (which name is stored in grid_options[&#39;_custom_logging_shared_library_file&#39;])</span>
+<span class="sd">                - TODO: unloads/frees the memory allocated to that shared library</span>
+<span class="sd">                    (which is stored in grid_options[&#39;custom_logging_func_memaddr&#39;])</span>
+<span class="sd">                - sets both to None</span>
+<span class="sd">            &#39;multiple&#39;:</span>
+<span class="sd">                - TODO: make this and design this</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+
+        <span class="k">if</span> <span class="n">evol_type</span> <span class="o">==</span> <span class="s2">&quot;single&quot;</span><span class="p">:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;Cleaning up the custom logging stuff. type: single&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span>
+
+            <span class="c1"># TODO: Explicitly unload the library</span>
+
+            <span class="c1"># Reset the memory adress location</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;custom_logging_func_memaddr&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span>
+
+            <span class="c1"># remove shared library files</span>
+            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_custom_logging_shared_library_file&quot;</span><span class="p">]:</span>
+                <span class="n">remove_file</span><span class="p">(</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_custom_logging_shared_library_file&quot;</span><span class="p">],</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="p">)</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_custom_logging_shared_library_file&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">None</span>
+
+        <span class="k">if</span> <span class="n">evol_type</span> <span class="o">==</span> <span class="s2">&quot;population&quot;</span><span class="p">:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
+                <span class="s2">&quot;Cleaning up the custom logging stuffs. type: population&quot;</span><span class="p">,</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;verbosity&quot;</span><span class="p">],</span>
+                <span class="mi">1</span><span class="p">,</span>
+            <span class="p">)</span>
+
+            <span class="c1"># TODO: make sure that these also work. not fully sure if necessary tho.</span>
+            <span class="c1">#   whether its a single file, or a dict of files/mem addresses</span>
+
+        <span class="k">if</span> <span class="n">evol_type</span> <span class="o">==</span> <span class="s2">&quot;MC&quot;</span><span class="p">:</span>
+            <span class="k">pass</span></div>
+</pre></div>
+
+           </div>
+          </div>
+          <footer>
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>&#169; Copyright 2021, David Hendriks, Robert Izzard.</p>
+  </div>
+
+  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
+    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
+    provided by <a href="https://readthedocs.org">Read the Docs</a>.
+  
+<br><br>
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+<br><br>
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+
+
+
+</footer>
+        </div>
+      </div>
+    </section>
+  </div>
+  <script>
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script> 
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html
index 96ffba645..73ac8b058 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_options_defaults.html
@@ -713,9 +713,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html
index b39bdc444..343be0bbe 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html
@@ -1219,9 +1219,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html
index 1e63576f8..1c4e6ca6b 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html
@@ -234,9 +234,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html
index 8ebc6bda3..94663a6bd 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html
@@ -535,9 +535,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html
index 4fa006f02..faec36a4a 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/spacing_functions.html
@@ -164,13 +164,13 @@
 
 <span class="sd">        Example:</span>
 <span class="sd">            The following allocates 10 stars between 0.1 and 0.65, 20 stars between 0.65</span>
-<span class="sd">            and 0.85, and 10 stars between 0.85 and 10.0 Msun.</span>
+<span class="sd">            and 0.85, and 10 stars between 0.85 and 10.0 Msun::</span>
 
-<span class="sd">            samplerfunc=&quot;const_ranges((({},{},{}),({},{},{}),({},{},{})))&quot;.format(</span>
-<span class="sd">                0.1,0.65,10,</span>
-<span class="sd">                0.65,0.85,20,</span>
-<span class="sd">                0.85,10.0,10</span>
-<span class="sd">            ),</span>
+<span class="sd">                samplerfunc=&quot;const_ranges((({},{},{}),({},{},{}),({},{},{})))&quot;.format(</span>
+<span class="sd">                    0.1, 0.65, 10,</span>
+<span class="sd">                    0.65, 0.85, 20,</span>
+<span class="sd">                    0.85, 10.0, 10</span>
+<span class="sd">                )</span>
 
 <span class="sd">        &quot;&quot;&quot;</span>
 
@@ -282,14 +282,13 @@
 <span class="sd">            Array of masses.</span>
 
 <span class="sd">        Example:</span>
-<span class="sd">        # these are lines set as options to Population.add_grid_value(...)</span>
+<span class="sd">            these are lines set as options to Population.add_grid_value(...)::</span>
 
-<span class="sd">        # linear time bins of 1Gyr</span>
-<span class="sd">        samplerfunc=&quot;self.const_dt(self,dt=1000,nres=100,mmin=0.07,mmax=2.0,showtable=True)&quot;</span>
+<span class="sd">                # linear time bins of 1Gyr</span>
+<span class="sd">                samplerfunc=&quot;self.const_dt(self,dt=1000,nres=100,mmin=0.07,mmax=2.0,showtable=True)&quot;</span>
 
-<span class="sd">        # logarithmic spacing in time, generally suitable for Galactic</span>
-<span class="sd">        # chemical evolution yield grids.</span>
-<span class="sd">        samplerfunc=&quot;self.const_dt(self,dlogt=0.1,nres=100,mmin=0.07,mmax=80.0,maxdm=((0.07,1.0,0.1),(1.0,10.0,1.0),(10.0,80.0,2.0)),showtable=True,logspacing=True,fsample=1.0/4.0)&quot;</span>
+<span class="sd">                # logarithmic spacing in time, generally suitable for Galactic chemical evolution yield grids.</span>
+<span class="sd">                samplerfunc=&quot;self.const_dt(self,dlogt=0.1,nres=100,mmin=0.07,mmax=80.0,maxdm=((0.07,1.0,0.1),(1.0,10.0,1.0),(10.0,80.0,2.0)),showtable=True,logspacing=True,fsample=1.0/4.0)&quot;</span>
 
 <span class="sd">        &quot;&quot;&quot;</span>
 
@@ -774,9 +773,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html b/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html
index 13fd66d54..f2690c76f 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/version_info.html
@@ -521,9 +521,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html b/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html
index 027bd014a..33a425fed 100644
--- a/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html
+++ b/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html
@@ -205,9 +205,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html
index d428d16c0..77508d21f 100644
--- a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html
+++ b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html
@@ -471,9 +471,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/index.html b/docs/build/html/_modules/index.html
index 38d101db1..d5f56e161 100644
--- a/docs/build/html/_modules/index.html
+++ b/docs/build/html/_modules/index.html
@@ -77,11 +77,13 @@
 <li><a href="binarycpython/utils/grid.html">binarycpython.utils.grid</a></li>
 <li><a href="binarycpython/utils/plot_functions.html">binarycpython.utils.plot_functions</a></li>
 <li><a href="binarycpython/utils/population_extensions/HPC.html">binarycpython.utils.population_extensions.HPC</a></li>
+<li><a href="binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html">binarycpython.utils.population_extensions.Moe_di_Stefano_2017</a></li>
 <li><a href="binarycpython/utils/population_extensions/analytics.html">binarycpython.utils.population_extensions.analytics</a></li>
 <li><a href="binarycpython/utils/population_extensions/cache.html">binarycpython.utils.population_extensions.cache</a></li>
 <li><a href="binarycpython/utils/population_extensions/condor.html">binarycpython.utils.population_extensions.condor</a></li>
 <li><a href="binarycpython/utils/population_extensions/dataIO.html">binarycpython.utils.population_extensions.dataIO</a></li>
 <li><a href="binarycpython/utils/population_extensions/distribution_functions.html">binarycpython.utils.population_extensions.distribution_functions</a></li>
+<li><a href="binarycpython/utils/population_extensions/grid_logging.html">binarycpython.utils.population_extensions.grid_logging</a></li>
 <li><a href="binarycpython/utils/population_extensions/grid_options_defaults.html">binarycpython.utils.population_extensions.grid_options_defaults</a></li>
 <li><a href="binarycpython/utils/population_extensions/gridcode.html">binarycpython.utils.population_extensions.gridcode</a></li>
 <li><a href="binarycpython/utils/population_extensions/metadata.html">binarycpython.utils.population_extensions.metadata</a></li>
@@ -107,9 +109,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/_sources/binary_c_parameters.rst.txt b/docs/build/html/_sources/binary_c_parameters.rst.txt
index 8d359425f..2ecbfde05 100644
--- a/docs/build/html/_sources/binary_c_parameters.rst.txt
+++ b/docs/build/html/_sources/binary_c_parameters.rst.txt
@@ -4,7 +4,7 @@ The following chapter contains all the parameters that the current version of bi
 
 
 This information was obtained by the following binary_c build:
-	**binary_c git branch**: branch_david	**binary_c git revision**: 5834:20211216:a3146490e	**Built on**: Dec 20 2021 20:33:01
+	**binary_c git branch**: branch_david	**binary_c git revision**: 5845:20220107:201620bd7	**Built on**: Jan  7 2022 12:15:12
 
 
 Section: stars
@@ -1991,7 +1991,7 @@ Section: binary
 | **Default value**: 1e-06
 
 | **Parameter**: cbdisc_minimum_fRing
-| **Description**: Circumbinary disc minimum fRing. If the disc becomes a ring, and fRing = |Rout/Rin-1| < this value (and this value is non-zero), the disc is evaporated instantly. Requires DISCS.
+| **Description**: Circumbinary disc minimum fRing. If the disc becomes a ring, and fRing = abs(Rout/Rin-1) < this value (and this value is non-zero), the disc is evaporated instantly. Requires DISCS.
 | **Parameter input type**: Float
 | **Default value**: 0.2
 
diff --git a/docs/build/html/_sources/examples/old/basic_example.ipynb.txt b/docs/build/html/_sources/examples/old/basic_example.ipynb.txt
index 9078cfcb5..7146b9767 100644
--- a/docs/build/html/_sources/examples/old/basic_example.ipynb.txt
+++ b/docs/build/html/_sources/examples/old/basic_example.ipynb.txt
@@ -1,5 +1,14 @@
 {
  "cells": [
+  {
+   "cell_type": "markdown",
+   "id": "c09b9f85-5250-4fd2-8142-bb8097d138b5",
+   "metadata": {},
+   "source": [
+    "# Basic example\n",
+    "Running a single system"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 1,
@@ -106,7 +115,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -120,7 +129,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/build/html/_sources/examples/old/workshop_example_notebook.ipynb.txt b/docs/build/html/_sources/examples/old/workshop_example_notebook.ipynb.txt
index 4eca58797..78d0860ad 100644
--- a/docs/build/html/_sources/examples/old/workshop_example_notebook.ipynb.txt
+++ b/docs/build/html/_sources/examples/old/workshop_example_notebook.ipynb.txt
@@ -619,7 +619,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -633,7 +633,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/build/html/_sources/grid.rst.txt b/docs/build/html/_sources/grid.rst.txt
index 43afcb03c..5122d6740 100644
--- a/docs/build/html/_sources/grid.rst.txt
+++ b/docs/build/html/_sources/grid.rst.txt
@@ -1,5 +1,5 @@
-Population\_class module
-========================
+Population class module
+=======================
 
 .. automodule:: binarycpython.utils.grid
    :members:
diff --git a/docs/build/html/_sources/population_extensions/Moe_di_Stefano_2017.rst.txt b/docs/build/html/_sources/population_extensions/Moe_di_Stefano_2017.rst.txt
new file mode 100644
index 000000000..703e95162
--- /dev/null
+++ b/docs/build/html/_sources/population_extensions/Moe_di_Stefano_2017.rst.txt
@@ -0,0 +1,7 @@
+Population class extension: Moe\_di\_Stefano\_2017 module
+=========================================================
+
+.. automodule:: binarycpython.utils.population_extensions.Moe_di_Stefano_2017
+   :members:
+   :undoc-members:
+   :show-inheritance:
diff --git a/docs/build/html/_sources/population_extensions/grid_logging.rst.txt b/docs/build/html/_sources/population_extensions/grid_logging.rst.txt
new file mode 100644
index 000000000..dc607c6ea
--- /dev/null
+++ b/docs/build/html/_sources/population_extensions/grid_logging.rst.txt
@@ -0,0 +1,7 @@
+Population class extension: grid\_logging module
+================================================
+
+.. automodule:: binarycpython.utils.population_extensions.grid_logging
+   :members:
+   :undoc-members:
+   :show-inheritance:
diff --git a/docs/build/html/binary_c_parameters.html b/docs/build/html/binary_c_parameters.html
index 465e8f6d2..298481c7c 100644
--- a/docs/build/html/binary_c_parameters.html
+++ b/docs/build/html/binary_c_parameters.html
@@ -111,7 +111,7 @@
 <h1>Binary_c parameters<a class="headerlink" href="#binary-c-parameters" title="Permalink to this headline"></a></h1>
 <p>The following chapter contains all the parameters that the current version of binary_c can handle, along with their descriptions and other properties.</p>
 <dl class="simple">
-<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: branch_david   <strong>binary_c git revision</strong>: 5834:20211216:a3146490e      <strong>Built on</strong>: Dec 20 2021 20:33:01</p>
+<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: branch_david   <strong>binary_c git revision</strong>: 5845:20220107:201620bd7      <strong>Built on</strong>: Jan  7 2022 12:15:12</p>
 </dd>
 </dl>
 <section id="section-stars">
@@ -2469,7 +2469,7 @@
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: cbdisc_minimum_fRing</div>
-<div class="line"><strong>Description</strong>: Circumbinary disc minimum fRing. If the disc becomes a ring, and fRing = <a href="#id1"><span class="problematic" id="id2">|Rout/Rin-1|</span></a> &lt; this value (and this value is non-zero), the disc is evaporated instantly. Requires DISCS.</div>
+<div class="line"><strong>Description</strong>: Circumbinary disc minimum fRing. If the disc becomes a ring, and fRing = abs(Rout/Rin-1) &lt; this value (and this value is non-zero), the disc is evaporated instantly. Requires DISCS.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.2</div>
 </div>
@@ -3506,9 +3506,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/custom_logging_functions.html b/docs/build/html/custom_logging_functions.html
index a3b0c4d2e..e58b9b829 100644
--- a/docs/build/html/custom_logging_functions.html
+++ b/docs/build/html/custom_logging_functions.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -327,9 +329,9 @@ I recommend using this in function in combination with a function that generates
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/dicts.html b/docs/build/html/dicts.html
index 74ca6ee1e..5ea93988d 100644
--- a/docs/build/html/dicts.html
+++ b/docs/build/html/dicts.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2 current"><a class="current reference internal" href="#">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -460,9 +462,9 @@ If that results in an empty dict, the dict will be removed too.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/ensemble.html b/docs/build/html/ensemble.html
index df7f57658..30b2815a5 100644
--- a/docs/build/html/ensemble.html
+++ b/docs/build/html/ensemble.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -273,9 +275,9 @@ and return its contents to as a Python dictionary.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/example_notebooks.html b/docs/build/html/example_notebooks.html
index 0ab38526e..935a840fe 100644
--- a/docs/build/html/example_notebooks.html
+++ b/docs/build/html/example_notebooks.html
@@ -215,9 +215,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_BHBH.html b/docs/build/html/examples/notebook_BHBH.html
index 1dd8f24f1..feed4128c 100644
--- a/docs/build/html/examples/notebook_BHBH.html
+++ b/docs/build/html/examples/notebook_BHBH.html
@@ -5574,9 +5574,9 @@ system 2 / 100
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_HRD.html b/docs/build/html/examples/notebook_HRD.html
index 09e948847..688ee40a7 100644
--- a/docs/build/html/examples/notebook_HRD.html
+++ b/docs/build/html/examples/notebook_HRD.html
@@ -1366,9 +1366,9 @@ very start.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_api_functionality.html b/docs/build/html/examples/notebook_api_functionality.html
index 8f82fc965..7307f9af1 100644
--- a/docs/build/html/examples/notebook_api_functionality.html
+++ b/docs/build/html/examples/notebook_api_functionality.html
@@ -1291,9 +1291,9 @@ MAXIMUM MASS RATIO 0.0141
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_common_envelope_evolution.html b/docs/build/html/examples/notebook_common_envelope_evolution.html
index bdf4cf3c3..142415890 100644
--- a/docs/build/html/examples/notebook_common_envelope_evolution.html
+++ b/docs/build/html/examples/notebook_common_envelope_evolution.html
@@ -1131,9 +1131,9 @@ Text(0, 0.5, &#39;Number of stars&#39;)
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_custom_logging.html b/docs/build/html/examples/notebook_custom_logging.html
index b606a0253..699682ba6 100644
--- a/docs/build/html/examples/notebook_custom_logging.html
+++ b/docs/build/html/examples/notebook_custom_logging.html
@@ -785,9 +785,9 @@ EXAMPLE_SN             1.050651207308e+01 1.59452 9.34213 20 12 13 5 1 6.55458 4
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_extra_features.html b/docs/build/html/examples/notebook_extra_features.html
index db74e51f7..1ce21a285 100644
--- a/docs/build/html/examples/notebook_extra_features.html
+++ b/docs/build/html/examples/notebook_extra_features.html
@@ -537,9 +537,9 @@ dict_keys([&#39;networks&#39;, &#39;isotopes&#39;, &#39;argpairs&#39;, &#39;ense
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_individual_systems.html b/docs/build/html/examples/notebook_individual_systems.html
index a8bf79c04..316e2c1db 100644
--- a/docs/build/html/examples/notebook_individual_systems.html
+++ b/docs/build/html/examples/notebook_individual_systems.html
@@ -839,9 +839,9 @@ SINGLE_STAR_LIFETIME 15 14.9927
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_luminosity_function_binaries.html b/docs/build/html/examples/notebook_luminosity_function_binaries.html
index 997b0a4e0..249370faf 100644
--- a/docs/build/html/examples/notebook_luminosity_function_binaries.html
+++ b/docs/build/html/examples/notebook_luminosity_function_binaries.html
@@ -1198,9 +1198,9 @@ Done population run!
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_luminosity_function_single.html b/docs/build/html/examples/notebook_luminosity_function_single.html
index a519cd547..400e843f1 100644
--- a/docs/build/html/examples/notebook_luminosity_function_single.html
+++ b/docs/build/html/examples/notebook_luminosity_function_single.html
@@ -855,9 +855,9 @@ works perfectly well.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_massive_remnants.html b/docs/build/html/examples/notebook_massive_remnants.html
index a75e2efaa..d845063bc 100644
--- a/docs/build/html/examples/notebook_massive_remnants.html
+++ b/docs/build/html/examples/notebook_massive_remnants.html
@@ -960,9 +960,9 @@ There were no errors found in this run.
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_population.html b/docs/build/html/examples/notebook_population.html
index c018de499..f88d03f8e 100644
--- a/docs/build/html/examples/notebook_population.html
+++ b/docs/build/html/examples/notebook_population.html
@@ -1414,9 +1414,9 @@ time mass_1 zams_mass_1 mass_2 zams_mass_2 stellar_type_1 prev_stellar_type_1 st
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_solar_system.html b/docs/build/html/examples/notebook_solar_system.html
index 16bacc273..e5ebc0445 100644
--- a/docs/build/html/examples/notebook_solar_system.html
+++ b/docs/build/html/examples/notebook_solar_system.html
@@ -614,9 +614,9 @@ div.rendered_html tbody tr:hover {
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/old/basic_example.html b/docs/build/html/examples/old/basic_example.html
index 73a0d5c2d..7084f4144 100644
--- a/docs/build/html/examples/old/basic_example.html
+++ b/docs/build/html/examples/old/basic_example.html
@@ -4,7 +4,7 @@
   <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
 
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-  <title>&lt;no title&gt; &mdash; binary_c-python  documentation</title>
+  <title>Basic example &mdash; binary_c-python  documentation</title>
       <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
       <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
   <!--[if lt IE 9]>
@@ -63,7 +63,7 @@
           <div role="navigation" aria-label="Page navigation">
   <ul class="wy-breadcrumbs">
       <li><a href="../../index.html" class="icon icon-home"></a> &raquo;</li>
-      <li>&lt;no title&gt;</li>
+      <li>Basic example</li>
       <li class="wy-breadcrumbs-aside">
             <a href="../../_sources/examples/old/basic_example.ipynb.txt" rel="nofollow"> View page source</a>
       </li>
@@ -343,6 +343,9 @@ div.rendered_html tbody tr:hover {
     text-align: unset;
 }
 </style>
+<section id="Basic-example">
+<h1>Basic example<a class="headerlink" href="#Basic-example" title="Permalink to this headline"></a></h1>
+<p>Running a single system</p>
 <div class="nbinput nblast docutils container">
 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]:
 </pre></div>
@@ -395,7 +398,7 @@ div.rendered_html tbody tr:hover {
 <div class="prompt empty docutils container">
 </div>
 <div class="output_area docutils container">
-<img alt="../../_images/examples_old_basic_example_1_1.png" src="../../_images/examples_old_basic_example_1_1.png" />
+<img alt="../../_images/examples_old_basic_example_2_1.png" src="../../_images/examples_old_basic_example_2_1.png" />
 </div>
 </div>
 <div class="nbinput docutils container">
@@ -420,7 +423,7 @@ div.rendered_html tbody tr:hover {
 <div class="prompt empty docutils container">
 </div>
 <div class="output_area docutils container">
-<img alt="../../_images/examples_old_basic_example_2_1.png" src="../../_images/examples_old_basic_example_2_1.png" />
+<img alt="../../_images/examples_old_basic_example_3_1.png" src="../../_images/examples_old_basic_example_3_1.png" />
 </div>
 </div>
 <div class="nbinput nblast docutils container">
@@ -432,6 +435,7 @@ div.rendered_html tbody tr:hover {
 </pre></div>
 </div>
 </div>
+</section>
 
 
            </div>
@@ -449,9 +453,9 @@ div.rendered_html tbody tr:hover {
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/old/basic_example.ipynb b/docs/build/html/examples/old/basic_example.ipynb
index 9078cfcb5..7146b9767 100644
--- a/docs/build/html/examples/old/basic_example.ipynb
+++ b/docs/build/html/examples/old/basic_example.ipynb
@@ -1,5 +1,14 @@
 {
  "cells": [
+  {
+   "cell_type": "markdown",
+   "id": "c09b9f85-5250-4fd2-8142-bb8097d138b5",
+   "metadata": {},
+   "source": [
+    "# Basic example\n",
+    "Running a single system"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 1,
@@ -106,7 +115,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -120,7 +129,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/build/html/examples/old/workshop_example_notebook.html b/docs/build/html/examples/old/workshop_example_notebook.html
index 000800a8d..8bf459335 100644
--- a/docs/build/html/examples/old/workshop_example_notebook.html
+++ b/docs/build/html/examples/old/workshop_example_notebook.html
@@ -892,9 +892,9 @@ Took 14.214274644851685s
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/old/workshop_example_notebook.ipynb b/docs/build/html/examples/old/workshop_example_notebook.ipynb
index 4eca58797..78d0860ad 100644
--- a/docs/build/html/examples/old/workshop_example_notebook.ipynb
+++ b/docs/build/html/examples/old/workshop_example_notebook.ipynb
@@ -619,7 +619,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -633,7 +633,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/build/html/functions.html b/docs/build/html/functions.html
index 8323298fb..c474e20e9 100644
--- a/docs/build/html/functions.html
+++ b/docs/build/html/functions.html
@@ -19,7 +19,7 @@
     <script src="_static/js/theme.js"></script>
     <link rel="index" title="Index" href="genindex.html" />
     <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="Population_class module" href="grid.html" />
+    <link rel="next" title="Population class module" href="grid.html" />
     <link rel="prev" title="ensemble module" href="ensemble.html" /> 
 </head>
 
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -154,26 +156,33 @@ useful functions for the user</p>
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.bin_data">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">bin_data</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">binwidth</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#bin_data"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.bin_data" title="Permalink to this definition"></a></dt>
-<dd><p>Function that bins the data</p>
-<p>Uses the absolute value of binwidth</p>
+<dd><p>Function that bins the data using the absolute value of binwidth using the following formula:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">((</span><span class="mf">0.5</span> <span class="k">if</span> <span class="n">value</span> <span class="o">&gt;</span> <span class="mf">0.0</span> <span class="k">else</span> <span class="o">-</span><span class="mf">0.5</span><span class="p">)</span> <span class="o">+</span> <span class="nb">int</span><span class="p">(</span><span class="n">value</span> <span class="o">/</span> <span class="nb">abs</span><span class="p">(</span><span class="n">binwidth</span><span class="p">)))</span> <span class="o">*</span> <span class="nb">abs</span><span class="p">(</span><span class="n">binwidth</span><span class="p">)</span>
+</pre></div>
+</div>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>value</strong> – value that we want to bin</p></li>
+<li><p><strong>binwidth</strong> – width of the binning</p></li>
+</ul>
+</dd>
+<dt class="field-even">Returns</dt>
+<dd class="field-even"><p>binned value</p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.call_binary_c_config">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">call_binary_c_config</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">argument</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#call_binary_c_config"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.call_binary_c_config" title="Permalink to this definition"></a></dt>
 <dd><p>Function to interface with the binary_c config file</p>
-<dl class="simple">
-<dt>input:</dt><dd><ul class="simple">
-<li><p>argument: argument for the binary_c config</p></li>
-</ul>
-</dd>
-</dl>
 <dl class="field-list simple">
-<dt class="field-odd">Returns</dt>
-<dd class="field-odd"><p><ul class="simple">
-<li><p>raw output of binary_c-config</p></li>
-</ul>
-</p>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>argument</strong> – argument for the binary_c config</p>
+</dd>
+<dt class="field-even">Returns</dt>
+<dd class="field-even"><p>raw output of binary_c-config</p>
 </dd>
 </dl>
 </dd></dl>
@@ -271,10 +280,19 @@ This string is missing the ‘binary_c ‘ at the start.</p>
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.datalinedict">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">datalinedict</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parameters</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#datalinedict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.datalinedict" title="Permalink to this definition"></a></dt>
-<dd><p>Convert a line of data to a more convenient dictionary.
-:param line = a line of data as a string:
-:param parameters = a list of the parameter names:</p>
-<p>Note: if the parameter is a floating point number, it will be converted to Python’s float type.</p>
+<dd><p>Convert a line of data to a more convenient dictionary.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>string</strong> (<em>line = a line of data as a</em>) – </p></li>
+<li><p><strong>names</strong> (<em>parameters = a list of the parameter</em>) – </p></li>
+</ul>
+</dd>
+</dl>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>If the parameter is a floating point number, it will be converted to Python’s float type.</p>
+</div>
 </dd></dl>
 
 <dl class="py function">
@@ -382,7 +400,7 @@ we call get_defaults())</p>
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">get_help</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">param_name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">print_help</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">fail_silently</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#get_help"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.get_help" title="Permalink to this definition"></a></dt>
 <dd><p>Function that returns the help info for a given parameter, by interfacing with binary_c</p>
 <p>Will check whether it is a valid parameter.</p>
-<p>Binary_c will output things in the following order;
+<p>Binary_c will output things in the following order:
 - Did you mean?
 - binary_c help for variable
 - default
@@ -402,8 +420,8 @@ valid parameter name</p></li>
 <dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code>]</p>
 </dd>
 <dt class="field-odd">Returns</dt>
-<dd class="field-odd"><p>Dictionary containing the help info. This dictionary contains ‘parameter_name’,
-‘parameter_value_input_type’, ‘description’, optionally ‘macros’</p>
+<dd class="field-odd"><p>Dictionary containing the help info. This dictionary contains <cite>parameter_name</cite>,
+<cite>parameter_value_input_type</cite>, <cite>description</cite>, optionally <cite>macros</cite></p>
 </dd>
 </dl>
 </dd></dl>
@@ -474,13 +492,23 @@ the help function to get as much information as possible.</p>
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.isfloat">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">isfloat</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#isfloat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.isfloat" title="Permalink to this definition"></a></dt>
-<dd><p>Return True if the “number” x, which could be a string, is a float, otherwise return False.</p>
+<dd><p>Function to return <cite>True</cite> if the “number” x, which could be a string, is an float, otherwise return <cite>False</cite>.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>x</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">float</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>]) – string float or int that we will attempt to convert to an <cite>float</cite> value.</p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.isint">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">isint</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#isint"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.isint" title="Permalink to this definition"></a></dt>
-<dd><p>Return True if the “number” x, which could be a string, is an int, otherwise return False.</p>
+<dd><p>Function to return <cite>True</cite> if the “number” x, which could be a string, is an int, otherwise return <cite>False</cite>.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>x</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">float</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>]) – string float or int that we will attempt to convert to an <cite>int</cite> value.</p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="py function">
@@ -524,20 +552,19 @@ the help function to get as much information as possible.</p>
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.mem_use">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">mem_use</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#mem_use"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.mem_use" title="Permalink to this definition"></a></dt>
-<dd><p>Return current process memory use in MB. (Takes no arguments) Note: this is per-thread only.</p>
+<dd><p>Return current process memory use in MB. (Takes no arguments)</p>
+<p>Note: this is per-thread only.</p>
 </dd></dl>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.now">
-<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">now</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">now_object</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">style</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">specifier</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#now"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.now" title="Permalink to this definition"></a></dt>
-<dd><p>convenience function to return a string of the current time,
-using the format “%m/%d/%Y %H:%M:%S”</p>
+<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">now</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">now_object</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">style</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">custom_format</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#now"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.now" title="Permalink to this definition"></a></dt>
+<dd><p>convenience function to return a string of the current time, using the format <code class="docutils literal notranslate"><span class="pre">%m/%d/%Y</span> <span class="pre">%H:%M:%S</span></code></p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters</dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>style</strong> – if “nospace” then return the date/time with the format</p></li>
-<li><p><strong>&quot;%Y%m%d_%H%M%S&quot;</strong> – </p></li>
-<li><p><strong>specifier</strong> – if set, uses this as a specifier rather than whatever is set by default or in the style variable</p></li>
+<li><p><strong>style</strong> – if “nospace” then return the date/time with the format <code class="docutils literal notranslate"><span class="pre">%Y%m%d_%H%M%S</span></code>, else use format <code class="docutils literal notranslate"><span class="pre">%m/%d/%Y</span> <span class="pre">%H:%M:%S</span></code></p></li>
+<li><p><strong>custom_format</strong> – if set, uses this as a format rather than whatever is set by default or in the style variable</p></li>
 </ul>
 </dd>
 </dl>
@@ -564,6 +591,14 @@ using the format “%m/%d/%Y %H:%M:%S”</p>
 <dt class="sig sig-object py" id="binarycpython.utils.functions.pad_output_distribution">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">pad_output_distribution</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dist</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">binwidth</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#pad_output_distribution"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.pad_output_distribution" title="Permalink to this definition"></a></dt>
 <dd><p>Given a distribution, dist (a dictionary), which should be binned every binwidth (float), fill the distribution with zeros when there is no data. Note: this changes the data in place.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>dist</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code>) – dictionary containing the distribution data.</p></li>
+<li><p><strong>binwidth</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">float</span></code>) – binwidth that is used to fill the distribution with 0 in places where there is no value/key.</p></li>
+</ul>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="py function">
@@ -588,12 +623,12 @@ using the format “%m/%d/%Y %H:%M:%S”</p>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.temp_dir">
-<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">temp_dir</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#temp_dir"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.temp_dir" title="Permalink to this definition"></a></dt>
-<dd><p>Function to create directory within the TMP directory of the file system</p>
+<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">temp_dir</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">child_dirs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#temp_dir"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.temp_dir" title="Permalink to this definition"></a></dt>
+<dd><p>Function to create directory within the TMP directory of the file system, starting with <cite>/&lt;TMP&gt;/binary_c_python-&lt;username&gt;</cite></p>
 <p>Makes use of os.makedirs exist_ok which requires python 3.2+</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters</dt>
-<dd class="field-odd"><p><strong>arguments</strong> (<em>function</em>) – str input where each next input will be a child of the previous full_path. e.g. temp_dir(‘tests’, ‘grid’) will become ‘/tmp/binary_c_python/tests/grid’</p>
+<dd class="field-odd"><p><strong>*child_dirs</strong> – str input where each next input will be a child of the previous full_path. e.g. <code class="docutils literal notranslate"><span class="pre">temp_dir('tests',</span> <span class="pre">'grid')</span></code> will become <code class="docutils literal notranslate"><span class="pre">'/tmp/binary_c_python-&lt;username&gt;/tests/grid'</span></code></p>
 </dd>
 <dt class="field-even">Return type</dt>
 <dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
@@ -614,29 +649,35 @@ human-readable output.</p>
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.trem">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">trem</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dt</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">count</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">n</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#trem"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.trem" title="Permalink to this definition"></a></dt>
-<dd><p>Estimate time remaining (seconds) given a differential time and count (i.e. progress = $count/$n). $dt is the time since the last call, $count is the current progress count, $dn is the number run since the last call, and $n is the total number required.</p>
+<dd><p>Estimate time remaining (seconds) given a differential time and count (i.e. <code class="docutils literal notranslate"><span class="pre">progress</span> <span class="pre">=</span> <span class="pre">count/n</span></code>).</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>dt</strong> – is the time since the last call.</p></li>
+<li><p><strong>count</strong> – is the current progress count.</p></li>
+<li><p><strong>dn</strong> – is the number run since the last call.</p></li>
+<li><p><strong>n</strong> – is the total number required.</p></li>
+</ul>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.verbose_print">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">verbose_print</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">message</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbosity</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">minimal_verbosity</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">newline</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'\\n'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#verbose_print"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.verbose_print" title="Permalink to this definition"></a></dt>
-<dd><blockquote>
-<div><p>Function that decides whether to print a message based on the current verbosity
-and its minimum verbosity</p>
-<p>if verbosity is equal or higher than the minimum, then we print</p>
-<dl class="simple">
-<dt>Args:</dt><dd><p>message: message to print
-verbosity: current verbosity level
-minimal_verbosity: threshold verbosity above which to print
-newline: newline character (or set of characters), defaults to “</p>
-</dd>
-</dl>
-</div></blockquote>
-<p>” but ”
-” (carriage return) might be useful.</p>
+<dd><p>Function that decides whether to print a message based on the current verbosity
+and its minimum verbosity. If verbosity is equal or higher than the minimum, then we print.</p>
 <dl class="field-list simple">
-<dt class="field-odd">Return type</dt>
-<dd class="field-odd"><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">None</span></code></p>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>message</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) – message to print.</p></li>
+<li><p><strong>verbosity</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>) – current verbosity level.</p></li>
+<li><p><strong>minimal_verbosity</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>) – threshold verbosity above which to print.</p></li>
+<li><p><strong>newline</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) – newline character (or set of characters), defaults to <code class="docutils literal notranslate"><span class="pre">\n</span></code> but <code class="docutils literal notranslate"><span class="pre">\x0d</span></code> (carriage return) might be useful.</p></li>
+</ul>
+</dd>
+<dt class="field-even">Return type</dt>
+<dd class="field-even"><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">None</span></code></p>
 </dd>
 </dl>
 </dd></dl>
@@ -665,7 +706,7 @@ of all the binary_c parameters.</p>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="ensemble.html" class="btn btn-neutral float-left" title="ensemble module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="grid.html" class="btn btn-neutral float-right" title="Population_class module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="grid.html" class="btn btn-neutral float-right" title="Population class module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
@@ -679,9 +720,9 @@ of all the binary_c parameters.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/genindex.html b/docs/build/html/genindex.html
index 39f33c49b..51d368078 100644
--- a/docs/build/html/genindex.html
+++ b/docs/build/html/genindex.html
@@ -231,8 +231,6 @@
         <li><a href="population_extensions/condor.html#module-binarycpython.utils.population_extensions.condor">module</a>
 </li>
       </ul></li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
       <li>
     binarycpython.utils.population_extensions.dataIO
 
@@ -240,11 +238,20 @@
         <li><a href="population_extensions/dataIO.html#module-binarycpython.utils.population_extensions.dataIO">module</a>
 </li>
       </ul></li>
+  </ul></td>
+  <td style="width: 33%; vertical-align: top;"><ul>
       <li>
     binarycpython.utils.population_extensions.distribution_functions
 
       <ul>
         <li><a href="population_extensions/distribution_functions.html#module-binarycpython.utils.population_extensions.distribution_functions">module</a>
+</li>
+      </ul></li>
+      <li>
+    binarycpython.utils.population_extensions.grid_logging
+
+      <ul>
+        <li><a href="population_extensions/grid_logging.html#module-binarycpython.utils.population_extensions.grid_logging">module</a>
 </li>
       </ul></li>
       <li>
@@ -273,6 +280,13 @@
 
       <ul>
         <li><a href="population_extensions/metadata.html#module-binarycpython.utils.population_extensions.metadata">module</a>
+</li>
+      </ul></li>
+      <li>
+    binarycpython.utils.population_extensions.Moe_di_Stefano_2017
+
+      <ul>
+        <li><a href="population_extensions/Moe_di_Stefano_2017.html#module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017">module</a>
 </li>
       </ul></li>
       <li>
@@ -519,21 +533,29 @@
 </li>
       <li><a href="functions.html#binarycpython.utils.functions.get_help">get_help() (in module binarycpython.utils.functions)</a>
 </li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="functions.html#binarycpython.utils.functions.get_help_all">get_help_all() (in module binarycpython.utils.functions)</a>
 </li>
       <li><a href="functions.html#binarycpython.utils.functions.get_help_super">get_help_super() (in module binarycpython.utils.functions)</a>
 </li>
+  </ul></td>
+  <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions.get_integration_constant_q">get_integration_constant_q() (binarycpython.utils.population_extensions.distribution_functions.distribution_functions method)</a>
 </li>
       <li><a href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions.get_max_multiplicity">get_max_multiplicity() (binarycpython.utils.population_extensions.distribution_functions.distribution_functions method)</a>
+</li>
+      <li><a href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options">get_Moe_di_Stefano_2017_default_options() (binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017 method)</a>
+</li>
+      <li><a href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options_description">get_Moe_di_Stefano_2017_default_options_description() (binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017 method)</a>
+</li>
+      <li><a href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_moe_di_stefano_dataset">get_moe_di_stefano_dataset() (binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017 method)</a>
 </li>
       <li><a href="functions.html#binarycpython.utils.functions.get_size">get_size() (in module binarycpython.utils.functions)</a>
 </li>
       <li><a href="population_extensions/slurm.html#binarycpython.utils.population_extensions.slurm.slurm.get_slurm_status">get_slurm_status() (binarycpython.utils.population_extensions.slurm.slurm method)</a>
 </li>
       <li><a href="functions.html#binarycpython.utils.functions.get_username">get_username() (in module binarycpython.utils.functions)</a>
+</li>
+      <li><a href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging">grid_logging (class in binarycpython.utils.population_extensions.grid_logging)</a>
 </li>
       <li><a href="population_extensions/grid_options_defaults.html#binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults">grid_options_defaults (class in binarycpython.utils.population_extensions.grid_options_defaults)</a>
 </li>
@@ -742,6 +764,8 @@
         <li><a href="population_extensions/dataIO.html#module-binarycpython.utils.population_extensions.dataIO">binarycpython.utils.population_extensions.dataIO</a>
 </li>
         <li><a href="population_extensions/distribution_functions.html#module-binarycpython.utils.population_extensions.distribution_functions">binarycpython.utils.population_extensions.distribution_functions</a>
+</li>
+        <li><a href="population_extensions/grid_logging.html#module-binarycpython.utils.population_extensions.grid_logging">binarycpython.utils.population_extensions.grid_logging</a>
 </li>
         <li><a href="population_extensions/grid_options_defaults.html#module-binarycpython.utils.population_extensions.grid_options_defaults">binarycpython.utils.population_extensions.grid_options_defaults</a>
 </li>
@@ -750,6 +774,8 @@
         <li><a href="population_extensions/HPC.html#module-binarycpython.utils.population_extensions.HPC">binarycpython.utils.population_extensions.HPC</a>
 </li>
         <li><a href="population_extensions/metadata.html#module-binarycpython.utils.population_extensions.metadata">binarycpython.utils.population_extensions.metadata</a>
+</li>
+        <li><a href="population_extensions/Moe_di_Stefano_2017.html#module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017">binarycpython.utils.population_extensions.Moe_di_Stefano_2017</a>
 </li>
         <li><a href="population_extensions/slurm.html#module-binarycpython.utils.population_extensions.slurm">binarycpython.utils.population_extensions.slurm</a>
 </li>
@@ -766,6 +792,10 @@
       </ul></li>
   </ul></td>
   <td style="width: 33%; vertical-align: top;"><ul>
+      <li><a href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017">Moe_di_Stefano_2017 (class in binarycpython.utils.population_extensions.Moe_di_Stefano_2017)</a>
+</li>
+      <li><a href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.Moe_di_Stefano_2017">Moe_di_Stefano_2017() (binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017 method)</a>
+</li>
       <li><a href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions.Moe_di_Stefano_2017_multiplicity_fractions">Moe_di_Stefano_2017_multiplicity_fractions() (binarycpython.utils.population_extensions.distribution_functions.distribution_functions method)</a>
 </li>
       <li><a href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions.Moe_di_Stefano_2017_pdf">Moe_di_Stefano_2017_pdf() (binarycpython.utils.population_extensions.distribution_functions.distribution_functions method)</a>
@@ -905,6 +935,8 @@
       <li><a href="grid.html#binarycpython.utils.grid.Population.set">set() (binarycpython.utils.grid.Population method)</a>
 </li>
       <li><a href="population_extensions/condor.html#binarycpython.utils.population_extensions.condor.condor.set_condor_status">set_condor_status() (binarycpython.utils.population_extensions.condor.condor method)</a>
+</li>
+      <li><a href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.set_moe_di_stefano_settings">set_moe_di_stefano_settings() (binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017 method)</a>
 </li>
       <li><a href="dicts.html#binarycpython.utils.dicts.set_opts">set_opts() (in module binarycpython.utils.dicts)</a>
 </li>
@@ -915,11 +947,11 @@
       <li><a href="population_extensions/analytics.html#binarycpython.utils.population_extensions.analytics.analytics.set_time">set_time() (binarycpython.utils.population_extensions.analytics.analytics method)</a>
 </li>
       <li><a href="population_extensions/cache.html#binarycpython.utils.population_extensions.cache.cache.setup_function_cache">setup_function_cache() (binarycpython.utils.population_extensions.cache.cache method)</a>
-</li>
-      <li><a href="population_extensions/slurm.html#binarycpython.utils.population_extensions.slurm.slurm">slurm (class in binarycpython.utils.population_extensions.slurm)</a>
 </li>
   </ul></td>
   <td style="width: 33%; vertical-align: top;"><ul>
+      <li><a href="population_extensions/slurm.html#binarycpython.utils.population_extensions.slurm.slurm">slurm (class in binarycpython.utils.population_extensions.slurm)</a>
+</li>
       <li><a href="population_extensions/slurm.html#binarycpython.utils.population_extensions.slurm.slurm.slurm_check_requirements">slurm_check_requirements() (binarycpython.utils.population_extensions.slurm.slurm method)</a>
 </li>
       <li><a href="population_extensions/slurm.html#binarycpython.utils.population_extensions.slurm.slurm.slurm_dirs">slurm_dirs() (binarycpython.utils.population_extensions.slurm.slurm method)</a>
@@ -980,10 +1012,18 @@
 <h2 id="V">V</h2>
 <table style="width: 100%" class="indextable genindextable"><tr>
   <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="functions.html#binarycpython.utils.functions.verbose_print">verbose_print() (in module binarycpython.utils.functions)</a>
+      <li><a href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging.vb1print">vb1print() (binarycpython.utils.population_extensions.grid_logging.grid_logging method)</a>
+</li>
+      <li><a href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging.vb2print">vb2print() (binarycpython.utils.population_extensions.grid_logging.grid_logging method)</a>
 </li>
   </ul></td>
   <td style="width: 33%; vertical-align: top;"><ul>
+      <li><a href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging.verbose_print">verbose_print() (binarycpython.utils.population_extensions.grid_logging.grid_logging method)</a>
+
+      <ul>
+        <li><a href="functions.html#binarycpython.utils.functions.verbose_print">(in module binarycpython.utils.functions)</a>
+</li>
+      </ul></li>
       <li><a href="population_extensions/version_info.html#binarycpython.utils.population_extensions.version_info.version_info">version_info (class in binarycpython.utils.population_extensions.version_info)</a>
 </li>
   </ul></td>
@@ -1034,9 +1074,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/grid.html b/docs/build/html/grid.html
index ece651d2c..e71d96221 100644
--- a/docs/build/html/grid.html
+++ b/docs/build/html/grid.html
@@ -4,7 +4,7 @@
   <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
 
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-  <title>Population_class module &mdash; binary_c-python  documentation</title>
+  <title>Population class module &mdash; binary_c-python  documentation</title>
       <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
       <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
   <!--[if lt IE 9]>
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2 current"><a class="current reference internal" href="#">Population_class module</a></li>
+<li class="toctree-l2 current"><a class="current reference internal" href="#">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -87,7 +89,7 @@
   <ul class="wy-breadcrumbs">
       <li><a href="index.html" class="icon icon-home"></a> &raquo;</li>
           <li><a href="modules.html">Binarycpython code</a> &raquo;</li>
-      <li>Population_class module</li>
+      <li>Population class module</li>
       <li class="wy-breadcrumbs-aside">
             <a href="_sources/grid.rst.txt" rel="nofollow"> View page source</a>
       </li>
@@ -122,7 +124,7 @@
 }
 </style>
 <section id="module-binarycpython.utils.grid">
-<span id="population-class-module"></span><h1>Population_class module<a class="headerlink" href="#module-binarycpython.utils.grid" title="Permalink to this headline"></a></h1>
+<span id="population-class-module"></span><h1>Population class module<a class="headerlink" href="#module-binarycpython.utils.grid" title="Permalink to this headline"></a></h1>
 <p>Module containing the Population grid class object.</p>
 <p>Here all the functionality of a Population object is defined.</p>
 <p>TODO: the save_snapshots and save_snapshot, are they actually distinct?</p>
@@ -147,7 +149,7 @@
 <dl class="py class">
 <dt class="sig sig-object py" id="binarycpython.utils.grid.Population">
 <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.grid.</span></span><span class="sig-name descname"><span class="pre">Population</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/grid.html#Population"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.grid.Population" title="Permalink to this definition"></a></dt>
-<dd><p>Bases: <a class="reference internal" href="population_extensions/analytics.html#binarycpython.utils.population_extensions.analytics.analytics" title="binarycpython.utils.population_extensions.analytics.analytics"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.analytics.analytics</span></code></a>, <a class="reference internal" href="population_extensions/cache.html#binarycpython.utils.population_extensions.cache.cache" title="binarycpython.utils.population_extensions.cache.cache"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.cache.cache</span></code></a>, <a class="reference internal" href="population_extensions/dataIO.html#binarycpython.utils.population_extensions.dataIO.dataIO" title="binarycpython.utils.population_extensions.dataIO.dataIO"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.dataIO.dataIO</span></code></a>, <a class="reference internal" href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions" title="binarycpython.utils.population_extensions.distribution_functions.distribution_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.distribution_functions.distribution_functions</span></code></a>, <code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.grid_logging.grid_logging</span></code>, <a class="reference internal" href="population_extensions/grid_options_defaults.html#binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults" title="binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults</span></code></a>, <a class="reference internal" href="population_extensions/gridcode.html#binarycpython.utils.population_extensions.gridcode.gridcode" title="binarycpython.utils.population_extensions.gridcode.gridcode"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.gridcode.gridcode</span></code></a>, <a class="reference internal" href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC" title="binarycpython.utils.population_extensions.HPC.HPC"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.HPC.HPC</span></code></a>, <a class="reference internal" href="population_extensions/metadata.html#binarycpython.utils.population_extensions.metadata.metadata" title="binarycpython.utils.population_extensions.metadata.metadata"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.metadata.metadata</span></code></a>, <code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017</span></code>, <a class="reference internal" href="population_extensions/spacing_functions.html#binarycpython.utils.population_extensions.spacing_functions.spacing_functions" title="binarycpython.utils.population_extensions.spacing_functions.spacing_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.spacing_functions.spacing_functions</span></code></a>, <a class="reference internal" href="population_extensions/version_info.html#binarycpython.utils.population_extensions.version_info.version_info" title="binarycpython.utils.population_extensions.version_info.version_info"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.version_info.version_info</span></code></a></p>
+<dd><p>Bases: <a class="reference internal" href="population_extensions/analytics.html#binarycpython.utils.population_extensions.analytics.analytics" title="binarycpython.utils.population_extensions.analytics.analytics"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.analytics.analytics</span></code></a>, <a class="reference internal" href="population_extensions/cache.html#binarycpython.utils.population_extensions.cache.cache" title="binarycpython.utils.population_extensions.cache.cache"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.cache.cache</span></code></a>, <a class="reference internal" href="population_extensions/dataIO.html#binarycpython.utils.population_extensions.dataIO.dataIO" title="binarycpython.utils.population_extensions.dataIO.dataIO"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.dataIO.dataIO</span></code></a>, <a class="reference internal" href="population_extensions/distribution_functions.html#binarycpython.utils.population_extensions.distribution_functions.distribution_functions" title="binarycpython.utils.population_extensions.distribution_functions.distribution_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.distribution_functions.distribution_functions</span></code></a>, <a class="reference internal" href="population_extensions/grid_logging.html#binarycpython.utils.population_extensions.grid_logging.grid_logging" title="binarycpython.utils.population_extensions.grid_logging.grid_logging"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.grid_logging.grid_logging</span></code></a>, <a class="reference internal" href="population_extensions/grid_options_defaults.html#binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults" title="binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults</span></code></a>, <a class="reference internal" href="population_extensions/gridcode.html#binarycpython.utils.population_extensions.gridcode.gridcode" title="binarycpython.utils.population_extensions.gridcode.gridcode"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.gridcode.gridcode</span></code></a>, <a class="reference internal" href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC" title="binarycpython.utils.population_extensions.HPC.HPC"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.HPC.HPC</span></code></a>, <a class="reference internal" href="population_extensions/metadata.html#binarycpython.utils.population_extensions.metadata.metadata" title="binarycpython.utils.population_extensions.metadata.metadata"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.metadata.metadata</span></code></a>, <a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017" title="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017</span></code></a>, <a class="reference internal" href="population_extensions/spacing_functions.html#binarycpython.utils.population_extensions.spacing_functions.spacing_functions" title="binarycpython.utils.population_extensions.spacing_functions.spacing_functions"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.spacing_functions.spacing_functions</span></code></a>, <a class="reference internal" href="population_extensions/version_info.html#binarycpython.utils.population_extensions.version_info.version_info" title="binarycpython.utils.population_extensions.version_info.version_info"><code class="xref py py-class docutils literal notranslate"><span class="pre">binarycpython.utils.population_extensions.version_info.version_info</span></code></a></p>
 <p>Population Object. Contains all the necessary functions to set up, run and process a
 population of systems</p>
 <dl class="py method">
@@ -374,9 +376,9 @@ in the self.grid_options</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/grid_options_descriptions.html b/docs/build/html/grid_options_descriptions.html
index fe7b9a954..8d1329af8 100644
--- a/docs/build/html/grid_options_descriptions.html
+++ b/docs/build/html/grid_options_descriptions.html
@@ -643,9 +643,9 @@ q extrapolation (below 0.15) method
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/index.html b/docs/build/html/index.html
index c0836301a..1b4bce902 100644
--- a/docs/build/html/index.html
+++ b/docs/build/html/index.html
@@ -223,7 +223,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -231,9 +231,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -307,9 +309,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/modules.html b/docs/build/html/modules.html
index cd9cd3154..b669cf64b 100644
--- a/docs/build/html/modules.html
+++ b/docs/build/html/modules.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -129,7 +131,7 @@
 <li class="toctree-l1"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l1"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l1"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -137,9 +139,11 @@
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l1"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l1"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l1"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -169,9 +173,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv
index 56bf06a102899d39f6e5280238f43d47075e555f..d80b701842d0e7e6a582b0b60fe767f7382d5833 100644
GIT binary patch
delta 11026
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
M-m9(u51N-kT5Mf{KL7v#

delta 10590
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

diff --git a/docs/build/html/plot_functions.html b/docs/build/html/plot_functions.html
index 1d6c8648d..8fe41f1da 100644
--- a/docs/build/html/plot_functions.html
+++ b/docs/build/html/plot_functions.html
@@ -20,7 +20,7 @@
     <link rel="index" title="Index" href="genindex.html" />
     <link rel="search" title="Search" href="search.html" />
     <link rel="next" title="Population class extension: analytics module" href="population_extensions/analytics.html" />
-    <link rel="prev" title="Population_class module" href="grid.html" /> 
+    <link rel="prev" title="Population class module" href="grid.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -360,7 +362,7 @@ This is not included in all the plotting routines.</p></li>
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="grid.html" class="btn btn-neutral float-left" title="Population_class module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="grid.html" class="btn btn-neutral float-left" title="Population class module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="population_extensions/analytics.html" class="btn btn-neutral float-right" title="Population class extension: analytics module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
@@ -375,9 +377,9 @@ This is not included in all the plotting routines.</p></li>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/HPC.html b/docs/build/html/population_extensions/HPC.html
index 24a6e6ac3..4cb053932 100644
--- a/docs/build/html/population_extensions/HPC.html
+++ b/docs/build/html/population_extensions/HPC.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -370,9 +372,9 @@ and (if given) the string passed in.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/Moe_di_Stefano_2017.html b/docs/build/html/population_extensions/Moe_di_Stefano_2017.html
new file mode 100644
index 000000000..95c32a0dc
--- /dev/null
+++ b/docs/build/html/population_extensions/Moe_di_Stefano_2017.html
@@ -0,0 +1,213 @@
+<!DOCTYPE html>
+<html class="writer-html5" lang="en" >
+<head>
+  <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
+
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <title>Population class extension: Moe_di_Stefano_2017 module &mdash; binary_c-python  documentation</title>
+      <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
+      <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
+  <!--[if lt IE 9]>
+    <script src="../_static/js/html5shiv.min.js"></script>
+  <![endif]-->
+  
+        <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
+        <script src="../_static/jquery.js"></script>
+        <script src="../_static/underscore.js"></script>
+        <script src="../_static/doctools.js"></script>
+        <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
+    <script src="../_static/js/theme.js"></script>
+    <link rel="index" title="Index" href="../genindex.html" />
+    <link rel="search" title="Search" href="../search.html" />
+    <link rel="next" title="Population class extension: slurm module" href="slurm.html" />
+    <link rel="prev" title="Population class extension: metadata module" href="metadata.html" /> 
+</head>
+
+<body class="wy-body-for-nav"> 
+  <div class="wy-grid-for-nav">
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+            <a href="../index.html" class="icon icon-home"> binary_c-python
+          </a>
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
+              <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../readme_link.html">Python module for binary_c</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../modules.html">Binarycpython code</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../custom_logging_functions.html">custom_logging_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="condor.html">Population class extension: condor module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: Moe_di_Stefano_2017 module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../run_system_wrapper.html">run_system_wrapper module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../stellar_types.html">stellar_types module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../useful_funcs.html">useful_funcs module</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../example_notebooks.html">Example notebooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../binary_c_parameters.html">Binary_c parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../grid_options_descriptions.html">Population grid code options</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python">Visit the GitLab repo</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/issues/new">Submit an issue</a></li>
+</ul>
+
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="../index.html">binary_c-python</a>
+      </nav>
+
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="Page navigation">
+  <ul class="wy-breadcrumbs">
+      <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
+          <li><a href="../modules.html">Binarycpython code</a> &raquo;</li>
+      <li>Population class extension: Moe_di_Stefano_2017 module</li>
+      <li class="wy-breadcrumbs-aside">
+            <a href="../_sources/population_extensions/Moe_di_Stefano_2017.rst.txt" rel="nofollow"> View page source</a>
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+             
+  
+<style>
+/* CSS overrides for sphinx_rtd_theme */
+
+/* 24px margin */
+.nbinput.nblast.container,
+.nboutput.nblast.container {
+    margin-bottom: 19px;  /* padding has already 5px */
+}
+
+/* ... except between code cells! */
+.nblast.container + .nbinput.container {
+    margin-top: -19px;
+}
+
+.admonition > p:before {
+    margin-right: 4px;  /* make room for the exclamation icon */
+}
+
+/* Fix math alignment, see https://github.com/rtfd/sphinx_rtd_theme/pull/686 */
+.math {
+    text-align: unset;
+}
+</style>
+<section id="module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017">
+<span id="population-class-extension-moe-di-stefano-2017-module"></span><h1>Population class extension: Moe_di_Stefano_2017 module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017" title="Permalink to this headline"></a></h1>
+<p>Module containing the functions to handle the Moe&amp;Distrefano data</p>
+<p>This class object is an extension to the population grid object</p>
+<dl class="py class">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.population_extensions.Moe_di_Stefano_2017.</span></span><span class="sig-name descname"><span class="pre">Moe_di_Stefano_2017</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html#Moe_di_Stefano_2017"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017" title="Permalink to this definition"></a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
+<p>Extension to the population grid object that contains functionality to handle handle the Moe &amp; distefano distributions</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.Moe_di_Stefano_2017">
+<span class="sig-name descname"><span class="pre">Moe_di_Stefano_2017</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">options</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html#Moe_di_Stefano_2017.Moe_di_Stefano_2017"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.Moe_di_Stefano_2017" title="Permalink to this definition"></a></dt>
+<dd><p>Function to handle setting the user input settings,
+set up the data and load that into interpolators and
+then set the distribution functions</p>
+<p>Takes a dictionary as its only argument</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options">
+<span class="sig-name descname"><span class="pre">get_Moe_di_Stefano_2017_default_options</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html#Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options" title="Permalink to this definition"></a></dt>
+<dd><p>Function that returns the default options for the Moe &amp; diStefano grid options</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options_description">
+<span class="sig-name descname"><span class="pre">get_Moe_di_Stefano_2017_default_options_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html#Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options_description"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_Moe_di_Stefano_2017_default_options_description" title="Permalink to this definition"></a></dt>
+<dd><p>Function to return the descriptions for all the Moe &amp; diStefano grid options</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_moe_di_stefano_dataset">
+<span class="sig-name descname"><span class="pre">get_moe_di_stefano_dataset</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">options</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbosity</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html#Moe_di_Stefano_2017.get_moe_di_stefano_dataset"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.get_moe_di_stefano_dataset" title="Permalink to this definition"></a></dt>
+<dd><blockquote>
+<div><p>Function to get the default Moe and di Stefano dataset or accept a user input.</p>
+</div></blockquote>
+<p>Returns a dict containing the (JSON) data.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.set_moe_di_stefano_settings">
+<span class="sig-name descname"><span class="pre">set_moe_di_stefano_settings</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">options</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/Moe_di_Stefano_2017.html#Moe_di_Stefano_2017.set_moe_di_stefano_settings"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017.set_moe_di_stefano_settings" title="Permalink to this definition"></a></dt>
+<dd><p>Function to set user input configurations for the Moe &amp; di Stefano methods</p>
+<p>If nothing is passed then we just use the default options</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+
+
+           </div>
+          </div>
+          <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
+        <a href="metadata.html" class="btn btn-neutral float-left" title="Population class extension: metadata module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="slurm.html" class="btn btn-neutral float-right" title="Population class extension: slurm module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+    </div>
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>&#169; Copyright 2021, David Hendriks, Robert Izzard.</p>
+  </div>
+
+  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
+    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
+    provided by <a href="https://readthedocs.org">Read the Docs</a>.
+  
+<br><br>
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+<br><br>
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+
+
+
+</footer>
+        </div>
+      </div>
+    </section>
+  </div>
+  <script>
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script> 
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/build/html/population_extensions/analytics.html b/docs/build/html/population_extensions/analytics.html
index 4eee6410b..325518df2 100644
--- a/docs/build/html/population_extensions/analytics.html
+++ b/docs/build/html/population_extensions/analytics.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -179,9 +181,9 @@ the time elapsed if otherwise or if force is True</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/cache.html b/docs/build/html/population_extensions/cache.html
index f4f8d2d4a..bfb34ca15 100644
--- a/docs/build/html/population_extensions/cache.html
+++ b/docs/build/html/population_extensions/cache.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -213,9 +215,9 @@ given caches of size self.grid_options[‘function_cache_size’][func]</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/condor.html b/docs/build/html/population_extensions/condor.html
index 4637f6534..a553a25e8 100644
--- a/docs/build/html/population_extensions/condor.html
+++ b/docs/build/html/population_extensions/condor.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -230,9 +232,9 @@ if grid_options[‘condor’]==3, we are being called from the jobs to run the g
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/dataIO.html b/docs/build/html/population_extensions/dataIO.html
index 4dbec836f..3079463d1 100644
--- a/docs/build/html/population_extensions/dataIO.html
+++ b/docs/build/html/population_extensions/dataIO.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -391,9 +393,9 @@ passed to json.dumps)</p></li>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/distribution_functions.html b/docs/build/html/population_extensions/distribution_functions.html
index d8f2b989b..a3a7b04cf 100644
--- a/docs/build/html/population_extensions/distribution_functions.html
+++ b/docs/build/html/population_extensions/distribution_functions.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -203,19 +205,19 @@ and Sana’s power law (as a function of logP) at high mass</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="binarycpython.utils.population_extensions.distribution_functions.distribution_functions.Kroupa2001">
 <span class="sig-name descname"><span class="pre">Kroupa2001</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">m</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">newopts</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/distribution_functions.html#distribution_functions.Kroupa2001"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.distribution_functions.distribution_functions.Kroupa2001" title="Permalink to this definition"></a></dt>
-<dd><p>Probability distribution function for Kroupa 2001 IMF,
-where the default values to the three_part_powerlaw are:
-default = {</p>
-<blockquote>
-<div><p>“m0”: 0.1,
-“m1”: 0.5,
-“m2”: 1,
-“mmax”: 100,
-“p1”: -1.3,
-“p2”: -2.3,
-“p3”: -2.3</p>
-</div></blockquote>
-<p>}</p>
+<dd><p>Probability distribution function for Kroupa 2001 IMF.</p>
+<p>The (default) values for this is:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">default</span> <span class="o">=</span> <span class="p">{</span>
+   <span class="s2">&quot;m0&quot;</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span>
+   <span class="s2">&quot;m1&quot;</span><span class="p">:</span> <span class="mf">0.5</span><span class="p">,</span>
+   <span class="s2">&quot;m2&quot;</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
+   <span class="s2">&quot;mmax&quot;</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
+   <span class="s2">&quot;p1&quot;</span><span class="p">:</span> <span class="o">-</span><span class="mf">1.3</span><span class="p">,</span>
+   <span class="s2">&quot;p2&quot;</span><span class="p">:</span> <span class="o">-</span><span class="mf">2.3</span><span class="p">,</span>
+   <span class="s2">&quot;p3&quot;</span><span class="p">:</span> <span class="o">-</span><span class="mf">2.3</span>
+<span class="p">}</span>
+</pre></div>
+</div>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters</dt>
 <dd class="field-odd"><ul class="simple">
@@ -831,9 +833,9 @@ and is be given by dp/dlogP ~ (logP)^p for all other binary configurations (defa
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/grid_logging.html b/docs/build/html/population_extensions/grid_logging.html
new file mode 100644
index 000000000..69871c029
--- /dev/null
+++ b/docs/build/html/population_extensions/grid_logging.html
@@ -0,0 +1,200 @@
+<!DOCTYPE html>
+<html class="writer-html5" lang="en" >
+<head>
+  <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
+
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <title>Population class extension: grid_logging module &mdash; binary_c-python  documentation</title>
+      <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
+      <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
+  <!--[if lt IE 9]>
+    <script src="../_static/js/html5shiv.min.js"></script>
+  <![endif]-->
+  
+        <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
+        <script src="../_static/jquery.js"></script>
+        <script src="../_static/underscore.js"></script>
+        <script src="../_static/doctools.js"></script>
+        <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
+    <script src="../_static/js/theme.js"></script>
+    <link rel="index" title="Index" href="../genindex.html" />
+    <link rel="search" title="Search" href="../search.html" />
+    <link rel="next" title="Population class extension: grid_options_defaults module" href="grid_options_defaults.html" />
+    <link rel="prev" title="Population class extension: gridcode module" href="gridcode.html" /> 
+</head>
+
+<body class="wy-body-for-nav"> 
+  <div class="wy-grid-for-nav">
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-scroll">
+        <div class="wy-side-nav-search" >
+            <a href="../index.html" class="icon icon-home"> binary_c-python
+          </a>
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
+              <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../readme_link.html">Python module for binary_c</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../modules.html">Binarycpython code</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../custom_logging_functions.html">custom_logging_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="condor.html">Population class extension: condor module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: grid_logging module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../run_system_wrapper.html">run_system_wrapper module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../stellar_types.html">stellar_types module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../useful_funcs.html">useful_funcs module</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../example_notebooks.html">Example notebooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../binary_c_parameters.html">Binary_c parameters</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../grid_options_descriptions.html">Population grid code options</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python">Visit the GitLab repo</a></li>
+<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/issues/new">Submit an issue</a></li>
+</ul>
+
+        </div>
+      </div>
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
+          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+          <a href="../index.html">binary_c-python</a>
+      </nav>
+
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="Page navigation">
+  <ul class="wy-breadcrumbs">
+      <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
+          <li><a href="../modules.html">Binarycpython code</a> &raquo;</li>
+      <li>Population class extension: grid_logging module</li>
+      <li class="wy-breadcrumbs-aside">
+            <a href="../_sources/population_extensions/grid_logging.rst.txt" rel="nofollow"> View page source</a>
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+           <div itemprop="articleBody">
+             
+  
+<style>
+/* CSS overrides for sphinx_rtd_theme */
+
+/* 24px margin */
+.nbinput.nblast.container,
+.nboutput.nblast.container {
+    margin-bottom: 19px;  /* padding has already 5px */
+}
+
+/* ... except between code cells! */
+.nblast.container + .nbinput.container {
+    margin-top: -19px;
+}
+
+.admonition > p:before {
+    margin-right: 4px;  /* make room for the exclamation icon */
+}
+
+/* Fix math alignment, see https://github.com/rtfd/sphinx_rtd_theme/pull/686 */
+.math {
+    text-align: unset;
+}
+</style>
+<section id="module-binarycpython.utils.population_extensions.grid_logging">
+<span id="population-class-extension-grid-logging-module"></span><h1>Population class extension: grid_logging module<a class="headerlink" href="#module-binarycpython.utils.population_extensions.grid_logging" title="Permalink to this headline"></a></h1>
+<p>The class extension for the population object that contains logging functionality</p>
+<dl class="py class">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.grid_logging.grid_logging">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">binarycpython.utils.population_extensions.grid_logging.</span></span><span class="sig-name descname"><span class="pre">grid_logging</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/grid_logging.html#grid_logging"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.grid_logging.grid_logging" title="Permalink to this definition"></a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
+<p>The class extension for the population object that contains logging functionality</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.grid_logging.grid_logging.vb1print">
+<span class="sig-name descname"><span class="pre">vb1print</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ID</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">now</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">system_number</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">system_dict</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/grid_logging.html#grid_logging.vb1print"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.grid_logging.grid_logging.vb1print" title="Permalink to this definition"></a></dt>
+<dd><p>Verbosity-level 1 printing, to keep an eye on a grid.</p>
+<dl class="simple">
+<dt>Input:</dt><dd><p>ID: thread ID for debugging (int): TODO fix this
+now: the time now as a UNIX-style epoch in seconds (float)
+system_number: the system number</p>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.grid_logging.grid_logging.vb2print">
+<span class="sig-name descname"><span class="pre">vb2print</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">system_dict</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cmdline_string</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/grid_logging.html#grid_logging.vb2print"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.grid_logging.grid_logging.vb2print" title="Permalink to this definition"></a></dt>
+<dd><p>Extra function for verbose printing</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.population_extensions.grid_logging.grid_logging.verbose_print">
+<span class="sig-name descname"><span class="pre">verbose_print</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/binarycpython/utils/population_extensions/grid_logging.html#grid_logging.verbose_print"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.population_extensions.grid_logging.grid_logging.verbose_print" title="Permalink to this definition"></a></dt>
+<dd><p>Wrapper method for the verbose print that calls the verbose print with the correct newline</p>
+<p>TODO: consider merging the two</p>
+</dd></dl>
+
+</dd></dl>
+
+</section>
+
+
+           </div>
+          </div>
+          <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
+        <a href="gridcode.html" class="btn btn-neutral float-left" title="Population class extension: gridcode module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="grid_options_defaults.html" class="btn btn-neutral float-right" title="Population class extension: grid_options_defaults module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+    </div>
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>&#169; Copyright 2021, David Hendriks, Robert Izzard.</p>
+  </div>
+
+  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
+    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
+    provided by <a href="https://readthedocs.org">Read the Docs</a>.
+  
+<br><br>
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+<br><br>
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+
+
+
+</footer>
+        </div>
+      </div>
+    </section>
+  </div>
+  <script>
+      jQuery(function () {
+          SphinxRtdTheme.Navigation.enable(true);
+      });
+  </script> 
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/build/html/population_extensions/grid_options_defaults.html b/docs/build/html/population_extensions/grid_options_defaults.html
index 72175e007..8415ff2fc 100644
--- a/docs/build/html/population_extensions/grid_options_defaults.html
+++ b/docs/build/html/population_extensions/grid_options_defaults.html
@@ -20,7 +20,7 @@
     <link rel="index" title="Index" href="../genindex.html" />
     <link rel="search" title="Search" href="../search.html" />
     <link rel="next" title="Population class extension: HPC module" href="HPC.html" />
-    <link rel="prev" title="Population class extension: gridcode module" href="gridcode.html" /> 
+    <link rel="prev" title="Population class extension: grid_logging module" href="grid_logging.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -225,7 +227,7 @@
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="gridcode.html" class="btn btn-neutral float-left" title="Population class extension: gridcode module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="grid_logging.html" class="btn btn-neutral float-left" title="Population class extension: grid_logging module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="HPC.html" class="btn btn-neutral float-right" title="Population class extension: HPC module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
@@ -240,9 +242,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/gridcode.html b/docs/build/html/population_extensions/gridcode.html
index 13c136f4b..e5faa63f4 100644
--- a/docs/build/html/population_extensions/gridcode.html
+++ b/docs/build/html/population_extensions/gridcode.html
@@ -19,7 +19,7 @@
     <script src="../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../genindex.html" />
     <link rel="search" title="Search" href="../search.html" />
-    <link rel="next" title="Population class extension: grid_options_defaults module" href="grid_options_defaults.html" />
+    <link rel="next" title="Population class extension: grid_logging module" href="grid_logging.html" />
     <link rel="prev" title="Population class extension: distribution_functions module" href="distribution_functions.html" /> 
 </head>
 
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -266,7 +268,7 @@ of the self.grid_options[“_grid_variables”] dictionary.</p>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="distribution_functions.html" class="btn btn-neutral float-left" title="Population class extension: distribution_functions module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="grid_options_defaults.html" class="btn btn-neutral float-right" title="Population class extension: grid_options_defaults module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="grid_logging.html" class="btn btn-neutral float-right" title="Population class extension: grid_logging module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
@@ -280,9 +282,9 @@ of the self.grid_options[“_grid_variables”] dictionary.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/metadata.html b/docs/build/html/population_extensions/metadata.html
index 1a5541814..7f2ed7af2 100644
--- a/docs/build/html/population_extensions/metadata.html
+++ b/docs/build/html/population_extensions/metadata.html
@@ -19,7 +19,7 @@
     <script src="../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../genindex.html" />
     <link rel="search" title="Search" href="../search.html" />
-    <link rel="next" title="Population class extension: slurm module" href="slurm.html" />
+    <link rel="next" title="Population class extension: Moe_di_Stefano_2017 module" href="Moe_di_Stefano_2017.html" />
     <link rel="prev" title="Population class extension: HPC module" href="HPC.html" /> 
 </head>
 
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -151,7 +153,7 @@
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="HPC.html" class="btn btn-neutral float-left" title="Population class extension: HPC module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="slurm.html" class="btn btn-neutral float-right" title="Population class extension: slurm module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="Moe_di_Stefano_2017.html" class="btn btn-neutral float-right" title="Population class extension: Moe_di_Stefano_2017 module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
@@ -165,9 +167,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/slurm.html b/docs/build/html/population_extensions/slurm.html
index 7508d5182..8c6e0df9a 100644
--- a/docs/build/html/population_extensions/slurm.html
+++ b/docs/build/html/population_extensions/slurm.html
@@ -20,7 +20,7 @@
     <link rel="index" title="Index" href="../genindex.html" />
     <link rel="search" title="Search" href="../search.html" />
     <link rel="next" title="Population class extension: spacing_functions module" href="spacing_functions.html" />
-    <link rel="prev" title="Population class extension: metadata module" href="metadata.html" /> 
+    <link rel="prev" title="Population class extension: Moe_di_Stefano_2017 module" href="Moe_di_Stefano_2017.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -216,7 +218,7 @@ if grid_options[‘slurm’]==3, we are being called from the jobs to run the gr
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="metadata.html" class="btn btn-neutral float-left" title="Population class extension: metadata module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="Moe_di_Stefano_2017.html" class="btn btn-neutral float-left" title="Population class extension: Moe_di_Stefano_2017 module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="spacing_functions.html" class="btn btn-neutral float-right" title="Population class extension: spacing_functions module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
@@ -231,9 +233,9 @@ if grid_options[‘slurm’]==3, we are being called from the jobs to run the gr
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/spacing_functions.html b/docs/build/html/population_extensions/spacing_functions.html
index 6a1e6ea6b..8d415b46d 100644
--- a/docs/build/html/population_extensions/spacing_functions.html
+++ b/docs/build/html/population_extensions/spacing_functions.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="version_info.html">Population class extension: version_info module</a></li>
@@ -167,13 +169,15 @@
 <dd class="field-even"><p>Array of masses.</p>
 </dd>
 </dl>
-<p>Example:
-# these are lines set as options to Population.add_grid_value(…)</p>
-<p># linear time bins of 1Gyr
-samplerfunc=”self.const_dt(self,dt=1000,nres=100,mmin=0.07,mmax=2.0,showtable=True)”</p>
-<p># logarithmic spacing in time, generally suitable for Galactic
-# chemical evolution yield grids.
-samplerfunc=”self.const_dt(self,dlogt=0.1,nres=100,mmin=0.07,mmax=80.0,maxdm=((0.07,1.0,0.1),(1.0,10.0,1.0),(10.0,80.0,2.0)),showtable=True,logspacing=True,fsample=1.0/4.0)”</p>
+<p class="rubric">Example</p>
+<p>these are lines set as options to Population.add_grid_value(…):</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># linear time bins of 1Gyr</span>
+<span class="n">samplerfunc</span><span class="o">=</span><span class="s2">&quot;self.const_dt(self,dt=1000,nres=100,mmin=0.07,mmax=2.0,showtable=True)&quot;</span>
+
+<span class="c1"># logarithmic spacing in time, generally suitable for Galactic chemical evolution yield grids.</span>
+<span class="n">samplerfunc</span><span class="o">=</span><span class="s2">&quot;self.const_dt(self,dlogt=0.1,nres=100,mmin=0.07,mmax=80.0,maxdm=((0.07,1.0,0.1),(1.0,10.0,1.0),(10.0,80.0,2.0)),showtable=True,logspacing=True,fsample=1.0/4.0)&quot;</span>
+</pre></div>
+</div>
 </dd></dl>
 
 <dl class="py method">
@@ -237,14 +241,14 @@ samplerfunc=”self.const_dt(self,dlogt=0.1,nres=100,mmin=0.07,mmax=80.0,maxdm=(
 </dl>
 <p class="rubric">Example</p>
 <p>The following allocates 10 stars between 0.1 and 0.65, 20 stars between 0.65
-and 0.85, and 10 stars between 0.85 and 10.0 Msun.</p>
-<dl class="simple">
-<dt>samplerfunc=”const_ranges((({},{},{}),({},{},{}),({},{},{})))”.format(</dt><dd><p>0.1,0.65,10,
-0.65,0.85,20,
-0.85,10.0,10</p>
-</dd>
-</dl>
-<p>),</p>
+and 0.85, and 10 stars between 0.85 and 10.0 Msun:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">samplerfunc</span><span class="o">=</span><span class="s2">&quot;const_ranges(((</span><span class="si">{}</span><span class="s2">,</span><span class="si">{}</span><span class="s2">,</span><span class="si">{}</span><span class="s2">),(</span><span class="si">{}</span><span class="s2">,</span><span class="si">{}</span><span class="s2">,</span><span class="si">{}</span><span class="s2">),(</span><span class="si">{}</span><span class="s2">,</span><span class="si">{}</span><span class="s2">,</span><span class="si">{}</span><span class="s2">)))&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+    <span class="mf">0.1</span><span class="p">,</span> <span class="mf">0.65</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span>
+    <span class="mf">0.65</span><span class="p">,</span> <span class="mf">0.85</span><span class="p">,</span> <span class="mi">20</span><span class="p">,</span>
+    <span class="mf">0.85</span><span class="p">,</span> <span class="mf">10.0</span><span class="p">,</span> <span class="mi">10</span>
+<span class="p">)</span>
+</pre></div>
+</div>
 </dd></dl>
 
 <dl class="py method">
@@ -318,9 +322,9 @@ not that the integral is 1.0</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/version_info.html b/docs/build/html/population_extensions/version_info.html
index a287320ab..536485a49 100644
--- a/docs/build/html/population_extensions/version_info.html
+++ b/docs/build/html/population_extensions/version_info.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="../plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2 current"><a class="current reference internal" href="#">Population class extension: version_info module</a></li>
@@ -197,9 +199,9 @@ dictionary</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/py-modindex.html b/docs/build/html/py-modindex.html
index fa56d2a07..563cac0ad 100644
--- a/docs/build/html/py-modindex.html
+++ b/docs/build/html/py-modindex.html
@@ -144,6 +144,11 @@
        <td>&#160;&#160;&#160;
        <a href="population_extensions/distribution_functions.html#module-binarycpython.utils.population_extensions.distribution_functions"><code class="xref">binarycpython.utils.population_extensions.distribution_functions</code></a></td><td>
        <em></em></td></tr>
+     <tr class="cg-1">
+       <td></td>
+       <td>&#160;&#160;&#160;
+       <a href="population_extensions/grid_logging.html#module-binarycpython.utils.population_extensions.grid_logging"><code class="xref">binarycpython.utils.population_extensions.grid_logging</code></a></td><td>
+       <em></em></td></tr>
      <tr class="cg-1">
        <td></td>
        <td>&#160;&#160;&#160;
@@ -164,6 +169,11 @@
        <td>&#160;&#160;&#160;
        <a href="population_extensions/metadata.html#module-binarycpython.utils.population_extensions.metadata"><code class="xref">binarycpython.utils.population_extensions.metadata</code></a></td><td>
        <em></em></td></tr>
+     <tr class="cg-1">
+       <td></td>
+       <td>&#160;&#160;&#160;
+       <a href="population_extensions/Moe_di_Stefano_2017.html#module-binarycpython.utils.population_extensions.Moe_di_Stefano_2017"><code class="xref">binarycpython.utils.population_extensions.Moe_di_Stefano_2017</code></a></td><td>
+       <em></em></td></tr>
      <tr class="cg-1">
        <td></td>
        <td>&#160;&#160;&#160;
@@ -212,9 +222,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/readme_link.html b/docs/build/html/readme_link.html
index 793b50333..099bc23b3 100644
--- a/docs/build/html/readme_link.html
+++ b/docs/build/html/readme_link.html
@@ -241,9 +241,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/run_system_wrapper.html b/docs/build/html/run_system_wrapper.html
index a5ed6a9f7..45d4cd866 100644
--- a/docs/build/html/run_system_wrapper.html
+++ b/docs/build/html/run_system_wrapper.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -191,9 +193,9 @@ and returns what the parse_function returns</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/search.html b/docs/build/html/search.html
index ac7797c38..3698aa49b 100644
--- a/docs/build/html/search.html
+++ b/docs/build/html/search.html
@@ -100,9 +100,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js
index 9e7fe418d..363752686 100644
--- a/docs/build/html/searchindex.js
+++ b/docs/build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["binary_c_parameters","custom_logging_functions","dicts","ensemble","example_notebooks","examples/notebook_BHBH","examples/notebook_HRD","examples/notebook_api_functionality","examples/notebook_common_envelope_evolution","examples/notebook_custom_logging","examples/notebook_extra_features","examples/notebook_individual_systems","examples/notebook_luminosity_function_binaries","examples/notebook_luminosity_function_single","examples/notebook_massive_remnants","examples/notebook_population","examples/notebook_solar_system","examples/old/basic_example","examples/old/workshop_example_notebook","functions","grid","grid_options_descriptions","index","modules","plot_functions","population_extensions/HPC","population_extensions/analytics","population_extensions/cache","population_extensions/condor","population_extensions/dataIO","population_extensions/distribution_functions","population_extensions/grid_options_defaults","population_extensions/gridcode","population_extensions/metadata","population_extensions/slurm","population_extensions/spacing_functions","population_extensions/version_info","readme_link","run_system_wrapper","stellar_types","useful_funcs"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,nbsphinx:3,sphinx:56},filenames:["binary_c_parameters.rst","custom_logging_functions.rst","dicts.rst","ensemble.rst","example_notebooks.rst","examples/notebook_BHBH.ipynb","examples/notebook_HRD.ipynb","examples/notebook_api_functionality.ipynb","examples/notebook_common_envelope_evolution.ipynb","examples/notebook_custom_logging.ipynb","examples/notebook_extra_features.ipynb","examples/notebook_individual_systems.ipynb","examples/notebook_luminosity_function_binaries.ipynb","examples/notebook_luminosity_function_single.ipynb","examples/notebook_massive_remnants.ipynb","examples/notebook_population.ipynb","examples/notebook_solar_system.ipynb","examples/old/basic_example.ipynb","examples/old/workshop_example_notebook.ipynb","functions.rst","grid.rst","grid_options_descriptions.rst","index.rst","modules.rst","plot_functions.rst","population_extensions/HPC.rst","population_extensions/analytics.rst","population_extensions/cache.rst","population_extensions/condor.rst","population_extensions/dataIO.rst","population_extensions/distribution_functions.rst","population_extensions/grid_options_defaults.rst","population_extensions/gridcode.rst","population_extensions/metadata.rst","population_extensions/slurm.rst","population_extensions/spacing_functions.rst","population_extensions/version_info.rst","readme_link.rst","run_system_wrapper.rst","stellar_types.rst","useful_funcs.rst"],objects:{"binarycpython.utils":[[1,0,0,"-","custom_logging_functions"],[2,0,0,"-","dicts"],[3,0,0,"-","ensemble"],[19,0,0,"-","functions"],[20,0,0,"-","grid"],[24,0,0,"-","plot_functions"],[38,0,0,"-","run_system_wrapper"],[39,0,0,"-","stellar_types"],[40,0,0,"-","useful_funcs"]],"binarycpython.utils.custom_logging_functions":[[1,1,1,"","autogen_C_logging_code"],[1,1,1,"","binary_c_log_code"],[1,1,1,"","binary_c_write_log_code"],[1,1,1,"","compile_shared_lib"],[1,1,1,"","create_and_load_logging_function"],[1,1,1,"","from_binary_c_config"],[1,1,1,"","return_compilation_dict"]],"binarycpython.utils.dicts":[[2,2,1,"","AutoVivificationDict"],[2,1,1,"","count_keys_recursive"],[2,1,1,"","custom_sort_dict"],[2,1,1,"","filter_dict"],[2,1,1,"","filter_dict_through_values"],[2,1,1,"","inspect_dict"],[2,1,1,"","keys_to_floats"],[2,1,1,"","merge_dicts"],[2,1,1,"","multiply_float_values"],[2,1,1,"","multiply_values_dict"],[2,1,1,"","normalize_dict"],[2,1,1,"","prepare_dict"],[2,1,1,"","recursive_change_key_to_float"],[2,1,1,"","recursive_change_key_to_string"],[2,1,1,"","set_opts"],[2,1,1,"","subtract_dicts"],[2,1,1,"","update_dicts"]],"binarycpython.utils.dicts.AutoVivificationDict":[[2,3,1,"","__getitem__"],[2,3,1,"","__iadd__"]],"binarycpython.utils.ensemble":[[3,2,1,"","BinaryCEncoder"],[3,2,1,"","binarycDecoder"],[3,1,1,"","binaryc_json_serializer"],[3,1,1,"","ensemble_compression"],[3,1,1,"","ensemble_file_type"],[3,1,1,"","ensemble_setting"],[3,1,1,"","extract_ensemble_json_from_string"],[3,1,1,"","format_ensemble_results"],[3,1,1,"","handle_ensemble_string_to_json"],[3,1,1,"","load_ensemble"],[3,1,1,"","open_ensemble"]],"binarycpython.utils.ensemble.BinaryCEncoder":[[3,3,1,"","default"]],"binarycpython.utils.ensemble.binarycDecoder":[[3,3,1,"","decode"]],"binarycpython.utils.functions":[[19,2,1,"","Capturing"],[19,1,1,"","bin_data"],[19,1,1,"","call_binary_c_config"],[19,2,1,"","catchtime"],[19,1,1,"","check_if_in_shell"],[19,1,1,"","conv_time_units"],[19,1,1,"","convert_bytes"],[19,1,1,"","convfloat"],[19,1,1,"","create_arg_string"],[19,1,1,"","create_hdf5"],[19,1,1,"","datalinedict"],[19,1,1,"","example_parse_output"],[19,1,1,"","filter_arg_dict"],[19,1,1,"","format_number"],[19,1,1,"","get_ANSI_colours"],[19,1,1,"","get_arg_keys"],[19,1,1,"","get_defaults"],[19,1,1,"","get_help"],[19,1,1,"","get_help_all"],[19,1,1,"","get_help_super"],[19,1,1,"","get_size"],[19,1,1,"","get_username"],[19,1,1,"","imports"],[19,1,1,"","is_capsule"],[19,1,1,"","isfloat"],[19,1,1,"","isint"],[19,1,1,"","load_logfile"],[19,1,1,"","make_build_text"],[19,1,1,"","mem_use"],[19,1,1,"","now"],[19,1,1,"","output_lines"],[19,1,1,"","pad_output_distribution"],[19,1,1,"","remove_file"],[19,1,1,"","temp_dir"],[19,1,1,"","timedelta"],[19,1,1,"","trem"],[19,1,1,"","verbose_print"],[19,1,1,"","write_binary_c_parameter_descriptions_to_rst_file"]],"binarycpython.utils.functions.Capturing":[[19,3,1,"","__enter__"],[19,3,1,"","__exit__"]],"binarycpython.utils.functions.catchtime":[[19,3,1,"","__enter__"],[19,3,1,"","__exit__"]],"binarycpython.utils.grid":[[20,2,1,"","Population"]],"binarycpython.utils.grid.Population":[[20,3,1,"","clean"],[20,3,1,"","evolve"],[20,3,1,"","evolve_single"],[20,3,1,"","exit"],[20,3,1,"","export_all_info"],[20,3,1,"","jobID"],[20,3,1,"","parse_cmdline"],[20,3,1,"","return_all_info"],[20,3,1,"","return_binary_c_defaults"],[20,3,1,"","return_population_settings"],[20,3,1,"","set"],[20,3,1,"","was_killed"]],"binarycpython.utils.plot_functions":[[24,1,1,"","color_by_index"],[24,1,1,"","dummy"],[24,1,1,"","parse_function_hr_diagram"],[24,1,1,"","parse_function_masses"],[24,1,1,"","parse_function_orbit"],[24,1,1,"","plot_HR_diagram"],[24,1,1,"","plot_masses"],[24,1,1,"","plot_orbit"],[24,1,1,"","plot_system"]],"binarycpython.utils.population_extensions":[[25,0,0,"-","HPC"],[26,0,0,"-","analytics"],[27,0,0,"-","cache"],[28,0,0,"-","condor"],[29,0,0,"-","dataIO"],[30,0,0,"-","distribution_functions"],[31,0,0,"-","grid_options_defaults"],[32,0,0,"-","gridcode"],[33,0,0,"-","metadata"],[34,0,0,"-","slurm"],[35,0,0,"-","spacing_functions"],[36,0,0,"-","version_info"]],"binarycpython.utils.population_extensions.HPC":[[25,2,1,"","HPC"]],"binarycpython.utils.population_extensions.HPC.HPC":[[25,3,1,"","HPC_can_join"],[25,3,1,"","HPC_check_requirements"],[25,3,1,"","HPC_dir"],[25,3,1,"","HPC_dirs"],[25,3,1,"","HPC_dump_status"],[25,3,1,"","HPC_get_status"],[25,3,1,"","HPC_grid"],[25,3,1,"","HPC_id_filename"],[25,3,1,"","HPC_id_from_dir"],[25,3,1,"","HPC_job"],[25,3,1,"","HPC_jobID"],[25,3,1,"","HPC_jobID_tuple"],[25,3,1,"","HPC_job_task"],[25,3,1,"","HPC_job_type"],[25,3,1,"","HPC_join_from_files"],[25,3,1,"","HPC_join_previous"],[25,3,1,"","HPC_joinlist"],[25,3,1,"","HPC_load_joinfiles_list"],[25,3,1,"","HPC_make_joiningfile"],[25,3,1,"","HPC_njobs"],[25,3,1,"","HPC_path"],[25,3,1,"","HPC_queue_stats"],[25,3,1,"","HPC_restore"],[25,3,1,"","HPC_set_status"],[25,3,1,"","HPC_snapshot_filename"],[25,3,1,"","HPC_status"],[25,3,1,"","HPC_touch"]],"binarycpython.utils.population_extensions.analytics":[[26,2,1,"","analytics"]],"binarycpython.utils.population_extensions.analytics.analytics":[[26,3,1,"","CPU_time"],[26,3,1,"","make_analytics_dict"],[26,3,1,"","set_time"],[26,3,1,"","time_elapsed"]],"binarycpython.utils.population_extensions.cache":[[27,2,1,"","cache"]],"binarycpython.utils.population_extensions.cache.cache":[[27,2,1,"","NullCache"],[27,3,1,"","default_cache_dir"],[27,3,1,"","setup_function_cache"],[27,3,1,"","test_caches"]],"binarycpython.utils.population_extensions.cache.cache.NullCache":[[27,3,1,"","__delitem__"],[27,3,1,"","__getitem__"],[27,3,1,"","__setitem__"],[27,3,1,"","popitem"]],"binarycpython.utils.population_extensions.condor":[[28,2,1,"","condor"]],"binarycpython.utils.population_extensions.condor.condor":[[28,3,1,"","condorID"],[28,3,1,"","condor_check_requirements"],[28,3,1,"","condor_dirs"],[28,3,1,"","condor_grid"],[28,3,1,"","condor_outfile"],[28,3,1,"","condor_queue_stats"],[28,3,1,"","condor_status_file"],[28,3,1,"","condorpath"],[28,3,1,"","get_condor_status"],[28,3,1,"","make_condor_dirs"],[28,3,1,"","set_condor_status"]],"binarycpython.utils.population_extensions.dataIO":[[29,2,1,"","dataIO"]],"binarycpython.utils.population_extensions.dataIO.dataIO":[[29,3,1,"","NFS_flush_hack"],[29,3,1,"","NFSpath"],[29,3,1,"","compression_type"],[29,3,1,"","dir_ok"],[29,3,1,"","load_population_object"],[29,3,1,"","load_snapshot"],[29,3,1,"","locked_close"],[29,3,1,"","locked_open_for_write"],[29,3,1,"","merge_populations"],[29,3,1,"","merge_populations_from_file"],[29,3,1,"","open"],[29,3,1,"","save_population_object"],[29,3,1,"","save_snapshot"],[29,3,1,"","set_status"],[29,3,1,"","snapshot_filename"],[29,3,1,"","wait_for_unlock"],[29,3,1,"","write_binary_c_calls_to_file"],[29,3,1,"","write_ensemble"]],"binarycpython.utils.population_extensions.distribution_functions":[[30,2,1,"","distribution_functions"]],"binarycpython.utils.population_extensions.distribution_functions.distribution_functions":[[30,3,1,"","Arenou2010_binary_fraction"],[30,3,1,"","Izzard2012_period_distribution"],[30,3,1,"","Kroupa2001"],[30,3,1,"","Moe_di_Stefano_2017_multiplicity_fractions"],[30,3,1,"","Moe_di_Stefano_2017_pdf"],[30,3,1,"","build_q_table"],[30,3,1,"","calc_P_integral"],[30,3,1,"","calc_e_integral"],[30,3,1,"","calc_total_probdens"],[30,3,1,"","calculate_constants_three_part_powerlaw"],[30,3,1,"","const_distribution"],[30,3,1,"","cosmic_SFH_madau_dickinson2014"],[30,3,1,"","duquennoy1991"],[30,3,1,"","fill_data"],[30,3,1,"","flat"],[30,3,1,"","flatsections"],[30,3,1,"","gaussian"],[30,3,1,"","gaussian_func"],[30,3,1,"","gaussian_normalizing_const"],[30,3,1,"","get_integration_constant_q"],[30,3,1,"","get_max_multiplicity"],[30,3,1,"","imf_chabrier2003"],[30,3,1,"","imf_scalo1986"],[30,3,1,"","imf_scalo1998"],[30,3,1,"","imf_tinsley1980"],[30,3,1,"","interpolate_in_mass_izzard2012"],[30,3,1,"","ktg93"],[30,3,1,"","linear_extrapolation_q"],[30,3,1,"","merge_multiplicities"],[30,3,1,"","number"],[30,3,1,"","poisson"],[30,3,1,"","powerlaw"],[30,3,1,"","powerlaw_constant"],[30,3,1,"","powerlaw_constant_nocache"],[30,3,1,"","powerlaw_extrapolation_q"],[30,3,1,"","raghavan2010_binary_fraction"],[30,3,1,"","sana12"],[30,3,1,"","three_part_powerlaw"]],"binarycpython.utils.population_extensions.grid_options_defaults":[[31,2,1,"","grid_options_defaults"]],"binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults":[[31,3,1,"","default_cache_dir"],[31,3,1,"","get_grid_options_defaults_dict"],[31,3,1,"","get_grid_options_descriptions"],[31,3,1,"","grid_options_description_checker"],[31,3,1,"","grid_options_help"],[31,3,1,"","print_option_descriptions"],[31,3,1,"","write_grid_options_to_rst_file"]],"binarycpython.utils.population_extensions.gridcode":[[32,2,1,"","gridcode"]],"binarycpython.utils.population_extensions.gridcode.gridcode":[[32,3,1,"","add_grid_variable"],[32,3,1,"","delete_grid_variable"],[32,3,1,"","rename_grid_variable"],[32,3,1,"","update_grid_variable"]],"binarycpython.utils.population_extensions.metadata":[[33,2,1,"","metadata"]],"binarycpython.utils.population_extensions.metadata.metadata":[[33,3,1,"","add_ensemble_metadata"],[33,3,1,"","add_system_metadata"]],"binarycpython.utils.population_extensions.slurm":[[34,2,1,"","slurm"]],"binarycpython.utils.population_extensions.slurm.slurm":[[34,3,1,"","get_slurm_status"],[34,3,1,"","make_slurm_dirs"],[34,3,1,"","set_slurm_status"],[34,3,1,"","slurmID"],[34,3,1,"","slurm_check_requirements"],[34,3,1,"","slurm_dirs"],[34,3,1,"","slurm_grid"],[34,3,1,"","slurm_outfile"],[34,3,1,"","slurm_queue_stats"],[34,3,1,"","slurm_status_file"],[34,3,1,"","slurmpath"]],"binarycpython.utils.population_extensions.spacing_functions":[[35,2,1,"","spacing_functions"]],"binarycpython.utils.population_extensions.spacing_functions.spacing_functions":[[35,3,1,"","const_dt"],[35,3,1,"","const_int"],[35,3,1,"","const_linear"],[35,3,1,"","const_ranges"],[35,3,1,"","gaussian_zoom"],[35,3,1,"","peak_normalized_gaussian_func"]],"binarycpython.utils.population_extensions.version_info":[[36,2,1,"","version_info"]],"binarycpython.utils.population_extensions.version_info.version_info":[[36,3,1,"","minimum_stellar_mass"],[36,3,1,"","parse_binary_c_version_info"],[36,3,1,"","return_binary_c_version_info"]],"binarycpython.utils.run_system_wrapper":[[38,1,1,"","run_system"]],"binarycpython.utils.useful_funcs":[[40,1,1,"","calc_period_from_sep"],[40,1,1,"","calc_sep_from_period"],[40,1,1,"","maximum_mass_ratio_for_RLOF"],[40,1,1,"","minimum_period_for_RLOF"],[40,1,1,"","minimum_separation_for_RLOF"],[40,1,1,"","ragb"],[40,1,1,"","roche_lobe"],[40,1,1,"","rzams"],[40,1,1,"","zams_collision"]]},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method"},terms:{"0":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21,25,27,30,32,35,40],"00":[5,11,12,15,18],"000":[5,11,18],"0000":[5,11,18],"00000":18,"000000":18,"000000000000e":11,"000000e":18,"000001":11,"000002":11,"000003":11,"0001":[5,7,40],"000122339":15,"000161974":15,"000214449":15,"000220016":15,"000283924":15,"000287968":15,"000375908":15,"000497691":15,"000498487":15,"00065893":15,"0007":30,"000872405":15,"001":[0,5,7],"00115504":15,"0013":5,"00152924":15,"00182":5,"002":[5,17,18],"00202467":15,"0021272":5,"00215604":5,"00235329":5,"00237669":5,"00239838":5,"00242158":5,"00247821":5,"00247864":5,"00248439":5,"00254115":5,"00254512":5,"00256681":5,"00261516":5,"00268237":5,"00280816":5,"00283345":5,"00286793":5,"00288661":5,"00294":5,"00296406":5,"003":5,"00300971":5,"00303761":5,"00311757":5,"00317508":5,"00319483":5,"0034":5,"004":5,"004698855121516281":15,"005":5,"00518983":5,"0055":5,"00585495":5,"006":5,"0062211552141636295":15,"00632092":7,"00666382":5,"007":[5,16],"00707417":5,"00712":5,"00730797":5,"0074":5,"008":5,"0081514":5,"00823663875514986":15,"00832":5,"0087":5,"009":[5,16],"00984861":5,"00e":12,"01":[0,5,6,7,8,9,12,15,18],"010":5,"0102":5,"010905083645619543":15,"011":5,"0118":5,"012":5,"0122109":5,"012246630357e":15,"0128":5,"013":5,"0131145":5,"014":5,"0141":7,"0143651":5,"0143896":8,"014832":5,"015":5,"0152545":5,"0153961":5,"0155":5,"0156":5,"01561":5,"0156945":5,"0159":5,"016":5,"0162":5,"016309":8,"0163656":8,"0164":5,"0165":5,"0166":5,"0168":5,"0169":5,"017":[5,16],"0171":5,"0175264":8,"0176575":6,"01791":5,"018":5,"0182":5,"0184":5,"0187":5,"019":5,"0192009":5,"019715467199999996":8,"01e":12,"01t09":[6,8,12],"01t10":12,"02":[0,5,6,7,8,9,11,12,15,16,18,30,40],"020":5,"0208":5,"021":5,"0214":5,"0214824":5,"021960493499e":15,"022":5,"023":5,"0232618":5,"02379":5,"024":5,"0241634":5,"0245":5,"024684":5,"02473":5,"0248684":15,"025":5,"0250231":5,"0251003":5,"0259932":5,"026":5,"0261496":5,"027":5,"0276":5,"02786":5,"0278672":5,"028":5,"02823":5,"0283541":5,"029":5,"0290733":5,"0295":5,"0298011":5,"0298364":5,"02e":[8,12],"03":[0,1,5,7,8,12],"030":5,"0303129":5,"030499912298e":15,"031":5,"0316266":5,"0319":5,"032":5,"03221":5,"033":5,"0335":5,"0335017":5,"034":5,"03493":5,"03499999999999":14,"035":5,"03502960360000004":8,"03507":5,"036":5,"0367878":5,"037":5,"0385396":5,"039":5,"0393944":5,"0394":5,"0399":5,"03996e":5,"03e":12,"04":[0,5,7,12,18],"040":5,"041":5,"0411":5,"0414":5,"04198":5,"042":5,"0425":5,"043":5,"0434":15,"044":5,"0440989":5,"044142002936e":9,"04440288843805411":15,"0444029":15,"044572277695e":9,"044654032097e":9,"0448877":5,"0449442":5,"045":5,"045084306856e":9,"0459174":5,"046":5,"0461":5,"0469097":5,"047":[5,15,16],"0474164":5,"0474572":5,"048":[5,16,18],"049":5,"04924":5,"04e":12,"05":[0,5,7,8,9,12,15],"0501":5,"050651207308e":9,"051":[5,6],"0511173":5,"0512":5,"052":5,"0523":5,"0528412":5,"053":5,"0531294":5,"0533803":5,"0535":5,"0536749":5,"054":[5,30],"0547419":5,"055":5,"055188":5,"056":[5,16],"0563088":5,"057":5,"0570946":18,"0572914":5,"057949":5,"058":5,"0583837":5,"0585":5,"059":5,"05e":12,"05e51ba114934b37bab48f1db40b7333":15,"06":[0,5,8,9,11,12],"0608":5,"061":5,"061141":5,"0613":5,"062":5,"0621119":5,"0625403":5,"06257":5,"0626266":5,"063":5,"064":5,"0641":5,"06459059967730083":8,"0645906":8,"0649":5,"065":5,"06527":5,"066":5,"06696":5,"067":5,"0670735":5,"068":5,"0683196":5,"069":5,"06987":5,"06e":12,"07":[5,12,13,14,18,30,35],"070":[5,15],"0701913":5,"071":5,"07108":5,"0714679":5,"0717":5,"0719":5,"072":5,"0722":5,"0727126":5,"0727584":5,"074":5,"0744186":5,"0745":5,"07484":5,"075":5,"075416":5,"0755737":5,"076":5,"077":5,"0770302":5,"0772021":5,"0772781":5,"078":5,"0784":5,"0784722":5,"0787729":5,"0789786":5,"079":[5,6],"0791":5,"07e":12,"08":[0,5,8,12,18],"080763":11,"0808":5,"081":[5,6],"081024":6,"082":5,"0820":[0,7],"0823499":5,"0831":5,"0834973":18,"0837":5,"084":5,"0849409":5,"085":5,"086":5,"086004":5,"0868":5,"087":5,"0877":5,"0877243":5,"0878":5,"088":5,"089":5,"0890815":5,"0896":5,"08e":12,"08msun":[0,7],"09":[5,6,8,12],"090":5,"0900":18,"0902":[0,7],"0907":5,"0907537":5,"091":5,"0910814":5,"0913095":5,"09164":5,"092":5,"09295167374":12,"093":[6,16],"0931922":5,"094":[5,8],"094409257247e":15,"095":5,"0958704":5,"096":5,"09665":5,"0967":15,"097":5,"09706e":5,"09786":5,"098":[5,6],"0987206":5,"099":5,"0991059":5,"0993":5,"099417":8,"0995":5,"0m":12,"0mb":[8,12],"0msun":35,"0x146f912dbc60":7,"0x149c2e81ec10":11,"0x149c95c56c10":8,"0x14bf2250fdc0":6,"0x1528ac7290d0":15,"1":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,21,22,24,25,28,29,30,32,34,35,37,38,40],"10":[0,2,5,6,7,8,9,11,12,13,14,15,16,17,18,21,30,35,38],"100":[0,5,6,7,8,12,13,14,30,35],"1000":[0,7,8,21,35],"100000000000":[17,18],"1001":12,"1005":5,"101":5,"101038":5,"1012":5,"101323":5,"101955":5,"102":5,"1021":5,"1024mb":21,"1025":12,"102750e":18,"103":5,"1035":5,"103702":5,"103789":5,"104":[5,8],"1043":5,"104427":5,"104997":5,"105":[5,13,14],"105082":5,"10522":5,"105704":5,"106":5,"1062":5,"106368":5,"106545":5,"10689":5,"107":5,"107187":5,"1075":5,"10782":5,"108":[5,15],"1082":5,"1085":11,"108571":5,"10877":5,"1088":5,"109":[5,8],"10941":5,"109679":5,"1098":5,"1099":5,"10e":12,"11":[0,5,6,8,9,11,12,14,15,16,18],"110":5,"11003":11,"1104":5,"1108":5,"111":5,"111023":5,"111583":5,"11182":5,"112":5,"11239":5,"1124":5,"113":5,"1130":5,"11346":5,"113492":18,"1135":5,"11376":5,"114":5,"114678":5,"11491":5,"115":[5,30],"11506":5,"115297":5,"11558":5,"115722":5,"11582":11,"116":5,"11686":5,"11695":5,"117":5,"11707":5,"1173":5,"1178":5,"118":5,"11802":5,"118229":5,"11854":5,"119":5,"1193":5,"1199":5,"11e":12,"12":[0,5,6,9,11,12,14,15,16,18,19,30],"120":5,"120000":[0,7],"120066":5,"1204":[5,18],"121":5,"121263":5,"12136":5,"1219":5,"122":5,"1222":5,"123":5,"123048":5,"12325":11,"123635":5,"1237":5,"123794969278e":15,"1239555":8,"124":5,"1241251901":16,"124379":18,"124496":5,"12457":11,"12460":11,"12461":11,"124931":5,"12495":5,"125":[0,5,7],"12500":0,"12522":5,"1254":5,"12548":5,"125553":5,"125886":5,"125968":5,"126":5,"126532":5,"127":5,"12741":5,"127442":5,"127957":5,"128":5,"12806":5,"129":5,"12974":5,"129879":5,"12e":[1,6,9,11,12,13,14,15],"13":[0,5,6,7,8,9,11,12,14,15,16,18],"130":5,"1301":11,"1302":11,"1306":5,"130725":5,"131":5,"13108":18,"1314":5,"131680e":18,"132":5,"132057":5,"1326":5,"13267":5,"1327":5,"13298":5,"133":5,"1334":5,"134":[5,15],"13416":5,"1345":11,"1346":11,"13461":11,"1347":11,"1348":11,"1349":11,"135":5,"135101":5,"135164":5,"1354":12,"1355":12,"13567":9,"136":5,"1360":5,"13607":5,"13626":15,"137":5,"13700":[6,8],"137502":5,"1379":5,"13796e":5,"138":5,"1380":18,"139":5,"139044":5,"1392":5,"139293101586e":15,"139732":5,"1398":5,"13e3":[0,7],"14":[0,5,6,7,9,11,12,14,15,16,18],"140":5,"1403":30,"141":5,"14112":5,"141361":5,"1415":5,"142":5,"14212":5,"143":5,"144":5,"144141":5,"14439":5,"14461":11,"1449":[5,12],"145":5,"145296":5,"145632":5,"146":5,"1468":5,"146844":5,"147":5,"1471":5,"1473":5,"14764":5,"1478":5,"148":[5,18],"1485":5,"148721":5,"149":5,"1492":5,"1494":12,"1498":5,"14e":12,"15":[0,5,7,8,9,11,12,14,15,16,18,21,30],"150":[5,8,12,13,14,15],"15000":[0,5,7,9,11,15,16,18],"1502":5,"150217":5,"15042":5,"150681":5,"151":5,"1514":5,"151616":5,"1517":5,"15186":5,"152":5,"1521":5,"1527":5,"153":5,"153329":5,"153852":5,"1539":12,"154":5,"155":5,"1551":5,"1553":5,"155342":5,"155662":12,"155678":8,"15594":5,"156":[5,8,18],"1560":5,"1567":5,"1569":5,"157":5,"1571":5,"1575":5,"158":5,"1585":12,"1586":5,"158640":8,"15884":5,"159":[5,8],"15907":5,"1599":5,"15e":12,"15msun":30,"16":[0,5,8,12,14,15,16,18,30],"160":5,"1606":5,"160675":12,"161":5,"1610":5,"1612":5,"1618":5,"162":5,"162006":5,"162038":5,"1622":5,"1624":[5,12],"162454":12,"16265":5,"1627":11,"162734":11,"162941":5,"163":[5,8],"1631":5,"1633":5,"163481":8,"1635760192":6,"1635760194":6,"1635760256":8,"1635760377":8,"1635760613":12,"1635760806":14,"1635760813":14,"1635760967":15,"1635760970":15,"1635761189":12,"1637":5,"164":5,"164714":5,"165":5,"16539":5,"16564":5,"166":[5,8],"1663":5,"166559":5,"167":[5,12],"1670":5,"16729":5,"16733":5,"1674":[5,12],"1678":5,"168":[5,8],"16833":5,"16837":5,"168379":8,"168558":5,"168972":5,"169":5,"1691":5,"1695":5,"169775":12,"17":[5,6,8,12,14,15,16,18],"170":5,"1703":12,"1708":5,"171":5,"171096":5,"1713":5,"1715":5,"172":5,"172014":5,"1722":5,"1729":5,"173":5,"1736":5,"174":5,"174169":5,"1747":5,"1749":12,"175":5,"175004":5,"1753":5,"17588":5,"176":5,"176751":12,"177":[5,8],"177444":5,"1775":5,"177551":5,"177727":5,"178":5,"1780":12,"1781":5,"1783":5,"1784":5,"1786":5,"179":5,"179142":5,"1792":5,"17932":5,"1796":5,"18":[5,12,14,16,18],"180":5,"1804":5,"180453":5,"1806":5,"1807":5,"1808":5,"1809":5,"181":5,"1810":5,"18108":5,"1811":5,"1812":5,"181244":5,"1813":5,"18139":5,"1814":[5,12],"18148":5,"1815":5,"1816":5,"1817":5,"181795":5,"1818":5,"1819":5,"181971798545e":15,"182":5,"1821":5,"1822":5,"1823":5,"1824":5,"1825":5,"1826":5,"1827":5,"1828":5,"1829":5,"183":5,"1830":5,"183048":5,"1831":5,"1833":5,"1834":5,"1835":5,"1838":5,"1839":5,"183974":5,"184":5,"1841":5,"1843":5,"1844":5,"184464":5,"1845":5,"1846":5,"1847":5,"184829":5,"185":5,"1851":[5,12],"1854":5,"1858":5,"186":[5,12],"1865":9,"187":5,"1876":5,"187694":5,"1877":5,"1879":12,"187993":5,"188":5,"1882":5,"189":5,"189239":5,"19":[5,8,12,15,18],"190":[0,5,18],"19097":5,"191":5,"1910":12,"1915":5,"191543":5,"192":5,"1920":5,"1923":5,"193":5,"193528":5,"19366":5,"19393":5,"194":5,"1947":12,"195":5,"1951":[0,7],"19521":5,"196":5,"196046":5,"196177":5,"19622":5,"196311":5,"1967":5,"1968":12,"197":5,"1972":[0,7],"1973":5,"1975":[0,7],"1977":5,"197729":5,"197x":[0,7],"198":5,"1980":30,"1983":40,"1986":[0,7,30],"1987":5,"1989":[0,7,12],"199":5,"19907":5,"1991":30,"1992":[0,7],"1993":[0,7],"1996":40,"1998":[0,5,7,30],"1999":[0,7],"19e":12,"1aearth":16,"1ajupit":16,"1amar":16,"1amercuri":16,"1aneptun":16,"1apluto":16,"1asaturn":16,"1auranu":16,"1avenu":16,"1ckzg0p9":[22,37],"1dex":[12,13,14],"1e":[0,7,8,9,11,12,18],"1e2":[0,7],"1e9":[0,7],"1gyr":35,"1m":12,"1mb":[8,12],"1mearth":16,"1mjupit":16,"1mmar":16,"1mmercuri":16,"1mneptun":16,"1mpluto":16,"1msaturn":16,"1msun":35,"1muranu":16,"1mvenu":16,"1s":[8,12],"1y":[0,7],"2":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,16,18,19,21,22,24,25,28,30,34,35,37],"20":[0,5,6,8,9,12,13,14,15,16,18,35],"200":[0,5,7],"2000":[0,5,7],"2001":[13,14,30],"2002":[0,7],"2003":[0,7,30],"2004":[0,5,7],"2005":[0,5,7],"2008":5,"2009":[0,7],"201":5,"2010":[0,7,21,30],"2012":[0,7,30],"2013":[0,7],"2014":[0,5,7,30],"2015":[0,5,7],"2016":[0,7],"2017":[0,7,12,15,21,30],"2018":[0,1,5,7],"2019":[0,5,7,18],"202":5,"2020":[0,7],"2021":[0,5,6,8,12],"20211216":0,"202196":5,"202339":5,"202569":5,"20265":5,"202750e":18,"2029":5,"203":5,"2033":5,"204":5,"2044":5,"20447":5,"204663":5,"2048":12,"205":5,"2053":5,"205353":5,"205527":5,"205537":5,"2057":5,"206":[5,16],"2063":5,"20677":5,"207":5,"2071":12,"2075":5,"208":5,"2081":5,"208169":5,"208453":5,"20887":5,"208923":5,"209":5,"2091":12,"209274":5,"20938":5,"20980":5,"20e":[8,12],"21":[0,1,5,6,12,18],"210":[5,18],"21043":5,"211":[5,14],"2112":5,"2118":18,"212":5,"212034":5,"2122":12,"2127":5,"213":5,"2132":5,"21333":5,"213396":5,"2135":5,"213854":5,"214":5,"214274644851685":18,"2143":12,"2147":5,"215":5,"215504":5,"2156":5,"215638":5,"2157":5,"21587440567681537":15,"21587440567681548":15,"2158744056768156":15,"216":5,"21603":5,"216067":5,"2164":12,"216496":5,"216951":5,"217":5,"21764":5,"218":5,"2182":5,"218222":14,"21824":5,"2183":12,"21844":5,"219":5,"219029061236e":15,"219058":5,"2191":5,"21927":5,"21948":5,"21e":12,"22":[5,12,18],"220":5,"22036":5,"2206":12,"22098":5,"221":5,"2210":5,"2214":5,"2216":5,"221832":5,"222":5,"2221":5,"2224":5,"22281":5,"223":5,"2232":12,"2234":5,"224":5,"2245":12,"224923":5,"225":5,"225135":5,"22518":5,"22543":5,"2258":12,"226":5,"2261":5,"22611318083528548":8,"226424":5,"2266":5,"2268":5,"2269":12,"227":5,"227249":5,"2275":5,"22787":5,"227955577093495":15,"228":5,"2282":12,"228555":5,"229":5,"2291":5,"22936":5,"2295":5,"229591":5,"22e":8,"23":[5,12,15],"230":5,"2300":12,"230102":5,"2305":5,"230955":5,"231":5,"231680e":18,"231704":5,"232":5,"2329":12,"233":5,"2332":5,"2333":5,"2338":5,"234":[5,8],"2348":12,"235":[5,6],"23513":5,"2352":5,"235464":5,"235689312423":8,"236":[5,18],"2365":[12,18],"237":5,"2371":5,"237203":5,"237951":5,"238":5,"2383":12,"238584":5,"23894":5,"239":5,"239197":5,"239704":5,"24":[5,8,12],"240":5,"2400":12,"2403e":15,"2406":5,"24098":5,"241":5,"2413":5,"24165":5,"242":5,"2421":5,"242151":5,"2423":12,"242309":5,"2424":11,"243":[5,6],"243214":5,"243583":5,"2437":5,"2438":12,"2439":5,"244":[5,16],"2444":16,"244645":5,"245":5,"245209":5,"245223":5,"2454":12,"246":5,"2466":12,"246604":5,"246625":5,"246671":6,"247":5,"2472":5,"2477":[5,12],"248":[5,8],"248871":5,"249":5,"249106":5,"2492":12,"2493":5,"249848":5,"24e":12,"25":[0,5,8,12,18],"250":5,"25014bc73b334765a1c09a4e4a97ed66":12,"251":[5,8],"2514":5,"2516":12,"25164":5,"252":5,"2528":5,"252877":5,"2529":5,"253":5,"2537":12,"253705":5,"254":5,"2544031669784":15,"255":[0,5,7],"2551":5,"2552":5,"2554":12,"2556":5,"256":[5,6,21],"256488":5,"256783":5,"25694":5,"257":[5,40],"2570":12,"2572":15,"257278":5,"257437":5,"2576084265970895":15,"258":[5,8],"2583":5,"259":5,"2590":12,"25msun":[0,7],"26":[5,12],"260":5,"26051":5,"260676":5,"261":5,"2613":5,"261343":5,"26171201413c43f5b91552a374879940":6,"2618":5,"262":5,"2622":[5,12],"2626":5,"2629":5,"263":5,"263079":5,"2632":5,"263235":5,"2636":12,"264":5,"26416":5,"26441":5,"26456":5,"2646":18,"265":5,"2652":12,"266":5,"2663":5,"26637":5,"2664":5,"266485":5,"2666":12,"267":[5,8],"2670":5,"2671":5,"2672":5,"2673":5,"2674":5,"2676":5,"2677":5,"2678":5,"2679":5,"268":5,"2680":5,"2681":5,"2682":5,"2683":5,"2684":5,"2685":5,"2686":5,"2687":5,"2688":5,"2689":5,"269":5,"2690":5,"2691":[5,12],"2692":5,"2693":5,"2694":5,"2695":5,"2696":5,"2697":5,"2698":5,"2699":5,"27":[5,8,12,15],"270":5,"2700":5,"2701":5,"2702":5,"27025":5,"2703":5,"2704":5,"2705":5,"2706":5,"2707":5,"2708":5,"2709":5,"271":5,"2710":5,"2711":5,"2712":5,"2713":5,"2714":5,"27143e":15,"2715":5,"2716":5,"2717":5,"2718":5,"2719":5,"272":5,"2720":5,"2721":5,"2722":5,"2723":5,"2724":5,"2725":5,"2726":5,"2727":5,"2728":5,"2729":5,"272943":5,"273":5,"2730":5,"2731":5,"2732":5,"2733":[5,12],"2734":5,"274":5,"274206":5,"274445":5,"2746":12,"274854":5,"275":5,"2754":5,"27569e":5,"2757":12,"276":5,"2767":5,"277":5,"2773":5,"27734":5,"2775":12,"27767":5,"278":5,"27829":5,"279":5,"2791":5,"2795":12,"28":[5,7,8,9,11,12,21],"280":5,"2800":5,"2801":5,"2802":5,"28060251":30,"280723":5,"280749":5,"281":[5,40],"281309":5,"28134439269236855":15,"2816":5,"2819":5,"282":5,"282234":5,"2823":5,"282623":5,"283":5,"2831":12,"2834":5,"2835":5,"2836":5,"28369":5,"283972":5,"284":5,"2845":12,"2846":5,"285":5,"286":5,"2861":12,"287":5,"2871":5,"2873":5,"2875":12,"2878":5,"288":5,"2881":5,"288353":5,"28867":5,"289":5,"2891":12,"2898":5,"28984":5,"28e":8,"29":[5,8,12,15],"290":5,"290684":5,"291":5,"29136":5,"2914":5,"292":5,"2921":5,"2924":5,"292641":5,"2927":5,"293":5,"2930":12,"2934e":18,"293512":5,"294":[5,6],"29427":15,"29448":15,"29457":15,"2947":[12,15],"295":5,"295543":5,"296":5,"2961":5,"2965":12,"296544":5,"2967":5,"2969346":30,"297":5,"297187":5,"297506":5,"298":5,"29816":5,"298194":5,"2982":12,"299":5,"2991":5,"2996":5,"29e":12,"2b66f805db424c48a1d29c45092b6e3c":8,"2d":[0,7],"2e":[9,12,18],"2f":18,"2m":[8,12],"2mb":[8,12],"2msun":[0,7],"2s":12,"3":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,18,19,21,22,28,30,34,35,37],"30":[1,5,6,8,9,11,12,13,14,15,16,18],"300":[5,35],"3000":[0,7,16],"3002":5,"3008":5,"301":5,"3010":12,"301129":5,"301483":5,"3017":5,"302":[5,18],"3025":5,"302750e":18,"303":5,"3034":5,"3035":12,"303533":5,"3038":5,"30388e":5,"304":5,"3042":5,"30441":5,"3046":5,"3048":5,"305":5,"305334":5,"3059":12,"306":5,"30642":15,"3065":5,"306619":5,"3069":5,"307199":5,"3078":12,"308":5,"3081e":18,"3082":5,"308203":5,"3084":5,"309":5,"30902":15,"309361":5,"309461":5,"3096":5,"30975":5,"30e4":[0,7],"31":[0,5,7,8,12,18],"310":5,"3100":[5,12],"310029":5,"3101":5,"311":5,"312":[5,6],"3124":12,"312637":5,"3127":5,"313":5,"313623":12,"314":5,"31408":5,"314533":5,"3148":12,"315":5,"315124":5,"315223":5,"3154":5,"315404":5,"315903":5,"315973":5,"316":[5,8],"316118":5,"317":5,"3171":5,"3172":5,"3174":12,"3176":5,"317663":5,"317921":5,"318":5,"3185":5,"318753":5,"319":5,"3192":5,"3193":5,"31958":5,"3197":12,"31e":12,"32":[5,8,12,15,19,21],"320":5,"3205":15,"32076":5,"321":5,"321082":5,"3211":5,"32118":5,"3216":5,"321643":5,"322":5,"3223":5,"3228":[5,15],"32282":5,"323":5,"3231":[5,12],"323359":8,"3235":5,"324":5,"3243":5,"3244":5,"3245144":15,"3246":5,"3247":5,"3248":5,"325":5,"325197":5,"3256":12,"325743":5,"325965":5,"326":5,"326147":5,"32620":5,"32631":5,"3264":5,"326601":5,"32684":5,"327":5,"3273":[5,12],"328":5,"328066":5,"3282":5,"328512":5,"329":[5,8],"3294":12,"32e":12,"33":[0,5,12],"330":5,"331":5,"331680e":18,"332":5,"332091":5,"3321":12,"332251":5,"332777":5,"33295":5,"333":5,"333032":5,"3331":5,"334":5,"33451":5,"33469":9,"3348":12,"335":5,"335153":5,"3352":5,"335342":5,"335428":5,"33552":5,"335642":5,"335847":5,"336":5,"336295":5,"3368":5,"33699":15,"337":5,"33719":5,"337249":5,"3373":12,"338":[5,9],"33817":18,"33879":5,"339":5,"3394":12,"339587":5,"3396":5,"34":[5,6,7,8,9,11,12,13,15,16],"340":5,"34018":5,"340477":5,"34081":5,"341":5,"3412":5,"34126":5,"34175":5,"3419":5,"342":[5,12],"34213":9,"342134":5,"3422":12,"342474":5,"3429":5,"343":5,"3438":5,"344":5,"34421":18,"3445":12,"344772":5,"3448":5,"345":5,"34537":5,"345842":12,"346":5,"3461":5,"3462":5,"3464":12,"3469":5,"347":5,"3471":5,"347169":5,"347405":5,"347623":5,"348":[5,8],"3483":12,"34870":5,"349":5,"3495":5,"3497":5,"34e":8,"35":[5,8,12,30],"350":[5,12],"3502":5,"35051":5,"3507":5,"3509":12,"351":5,"351532":5,"3518":5,"352":5,"3529":5,"353":5,"3533":12,"353432":5,"3536":5,"354":5,"3540":18,"354576":5,"35487":5,"354981":5,"355":5,"3550":12,"35505":5,"355513":5,"3559":5,"356":5,"3563":5,"3568":12,"356812":5,"357":5,"358":5,"3583":5,"3588":12,"3589":5,"35895":5,"359":5,"3591":5,"359784":5,"359881":5,"3599":5,"36":[5,8,12,15],"360":5,"360093":5,"36016":5,"361":5,"3616":5,"362":5,"3622":12,"362601":5,"36298":5,"363":5,"3630":18,"3631":18,"36314":5,"3632":18,"36323":5,"3633":18,"3634":18,"3635":18,"364":5,"3640":12,"364017":5,"36403":5,"364747":5,"3649":5,"365":5,"3657":12,"365763":5,"365949":5,"366":5,"366259":5,"366392":5,"367":5,"367065497322e":15,"367268":5,"3674":5,"36747":5,"3676":12,"367793":5,"368":5,"368345":5,"3688":5,"369":5,"3695":5,"36957":5,"3698":5,"36e":12,"37":[5,8,12],"370":5,"3702e":18,"3706":12,"371":5,"371427":5,"371458":5,"371625":5,"3719":5,"372":5,"3726":[5,12],"3729":5,"373":5,"373282":5,"374":5,"37409":5,"3746":12,"374905":5,"375":5,"3752":5,"375537":5,"3757":5,"375712":5,"3758":5,"376":5,"376059":5,"3763":12,"376604":5,"3767":5,"377":5,"3771":5,"378":5,"3781":5,"3786":12,"37874":5,"379":5,"379292":5,"37e":12,"38":[0,5,8,12],"380":5,"38009":5,"380393":5,"380887":5,"381":5,"3811":12,"382":5,"382144":5,"382472":5,"383":5,"38316":5,"3832":12,"384":5,"3849":12,"385":5,"386":5,"387":5,"3875":12,"38788e":15,"388":5,"388321":5,"389":5,"38908":5,"389208":5,"38921":5,"389749":5,"38m":12,"39":[5,6,7,8,10,11,12,13,14,15,16,17],"390":5,"3905":12,"391":5,"3914":18,"39152e":5,"391798":5,"392":[5,18],"39205":15,"392194":5,"392487":5,"3927":18,"3928":[5,18],"3929":18,"393":5,"3930":[12,18],"3931":[12,18],"3932":18,"393886":5,"394":5,"394722435913e":15,"395":5,"39521":5,"3954":12,"3957":5,"3959":5,"396":5,"396133472739e":15,"396288708628e":15,"3963":5,"396675941641e":15,"3967":5,"397":5,"3971":5,"39754":15,"3977":12,"397754":5,"3978":5,"398":5,"39831":5,"39834":5,"398381":5,"398419":5,"398927":5,"399":5,"3995":5,"3999999999996":14,"3d":[0,7],"3e":18,"3m":12,"3mb":[8,12],"3msun":30,"3s":[8,12],"4":[0,1,5,6,7,8,9,10,11,12,13,14,15,16,18,20,29,30,35],"40":[5,8,12,13,14],"400":5,"4000":[0,12],"40049":5,"401":5,"4011":5,"401263":5,"4013":5,"401728":5,"4018":5,"402":5,"40238":5,"402750e":18,"402961":5,"403":5,"40339":5,"404":5,"4046":5,"404641347602e":15,"4048":5,"404962":5,"405":5,"405068":5,"405577":5,"406":[5,12],"407":5,"40735":5,"4076":5,"408":5,"409":5,"4098":5,"40e":12,"41":[5,12],"410":[5,18],"4101":5,"4102":5,"4108":5,"410828":5,"411":5,"411151":5,"412":5,"41238":5,"413":[5,6],"413467":5,"414":5,"41457":5,"4146":5,"41485":5,"414875":5,"415":5,"416":5,"416141":6,"4162":5,"417":5,"41726":5,"4176":5,"418":5,"418029":5,"4182":5,"4183":5,"4184":5,"4186":5,"41862":5,"418757":5,"4188":5,"419":5,"4192":5,"4197":5,"41996":5,"41e":12,"42":[0,5,8,12],"420":5,"420182":5,"4202":5,"420316":5,"4205":5,"42052":5,"42097":5,"421":5,"421365":5,"421436":5,"421475":5,"4218":5,"4219":5,"422":5,"422436":5,"42266":5,"4229":5,"423":5,"42362":5,"424":[5,6],"4243":5,"424712":5,"424924":5,"425":5,"4251":5,"4256":5,"425788":5,"426":5,"427":5,"427601421985e":15,"42785":5,"428":5,"428699":5,"429":[5,12],"429122":5,"429398":5,"42e":12,"42msun":[0,7],"43":[5,12],"430":5,"4304":5,"430936289925951":15,"431":5,"4311":5,"431313":5,"431680e":18,"43173":5,"432":5,"4321":5,"432729":5,"433":[5,15],"4330":5,"433207":12,"4333":5,"433477":5,"434":5,"43422e":15,"435":5,"4357":5,"435809":5,"436":5,"43618":5,"4365":5,"4369":5,"437":[5,12,15],"43711":15,"4379":5,"438":5,"4380":5,"4385":5,"438686":5,"4387":5,"438861":5,"439":5,"4397":15,"44":[5,12],"440":5,"441":5,"441158":5,"44170":5,"442":5,"44211":5,"4422":5,"44223e":5,"443":5,"4433":5,"4438":5,"444":[5,18],"444217227690e":15,"445":5,"4454":5,"4455":5,"44558":5,"445821":5,"446":5,"447":5,"447918":5,"448":5,"448242":5,"448401":5,"44852":5,"449":[5,12],"4493":5,"44e":12,"44msun":[0,7],"45":[5,6,8,12,15],"450":5,"4500":7,"45000000080":15,"4501":5,"4504":15,"450629":5,"4507":5,"450818":5,"450828476487e":15,"4509":5,"451":[5,8],"45114":5,"451192744924e":15,"451732":5,"452":5,"453":5,"4530":[9,11,18],"453059":12,"453317880232e":15,"453348":5,"453412":5,"453932":5,"454":5,"4540":5,"454013":5,"45407":15,"454268":5,"454409":5,"455":5,"45534":5,"455552":5,"456":12,"456313":5,"456519":5,"457":5,"45757":5,"457987":5,"458":5,"458064":5,"458272":18,"4588":5,"45889":5,"459":5,"459382":5,"45msun":[0,7],"46":[5,8,12,15],"460":5,"460081":5,"46057":5,"46089":5,"462":[5,18],"4621":15,"4622":5,"46220":5,"4623":5,"462779538274e":15,"463":5,"463455":5,"464":5,"464494":5,"465":5,"465133":5,"46573":15,"465867":5,"46607":5,"4666":5,"4670":5,"4673":5,"467851":5,"468":5,"4680":8,"46822":5,"4683":5,"469":5,"46901":5,"469056":5,"469524":5,"47":[5,8,12],"470":5,"471":5,"4710":5,"471379":5,"4714":5,"472":[14,18],"472105":5,"472318":5,"4734":5,"473762":5,"474":5,"47419":5,"475":5,"4752":5,"475287":5,"47534":5,"4755":5,"4759":5,"476":5,"4764":5,"476589":5,"477":5,"477089":5,"4773":5,"47745":15,"477535":5,"477791":5,"478":5,"478253":5,"478315":5,"4788":5,"478807":5,"479":5,"47946":5,"4797":5,"479973":5,"48":[5,12],"480":5,"480045":5,"48046":5,"4807":5,"4809":5,"481":5,"482":5,"4822":5,"4825":5,"482668":5,"483":5,"48336":5,"4838":[7,9,11],"484":5,"4845":5,"485":5,"48586":5,"486":5,"4862":5,"4865":5,"4867":5,"4872":5,"48749":5,"4877":5,"488":5,"48809":5,"489":5,"489077":5,"48926":5,"48e":[8,12],"49":[5,6,12],"490":5,"491":5,"491811":5,"492":5,"492242":5,"492302":5,"492484":5,"492707":5,"492818":5,"493":5,"493648":5,"493975":5,"494":5,"4945":5,"4949":5,"495":5,"4957":5,"4959":5,"495924":5,"496":5,"4961":5,"496312":5,"4966016":14,"497":5,"497008":5,"497294":5,"498":5,"4981":5,"498232":5,"499":5,"49e":12,"4b8c7f4a86e445099d73f27dffaad94b":14,"4e":[0,7,18],"4e3":[0,7],"4m":12,"4mb":[8,12],"4s":[8,12],"5":[0,1,5,6,7,8,9,10,11,12,13,14,15,16,18,27,29,30,32],"50":[0,5,7,8,12,14],"500":[0,5,7],"500000e":18,"501":5,"5017":5,"502":5,"502451":5,"502775":5,"502841":5,"503":5,"503726":5,"504":5,"5043":5,"5046":5,"505":5,"5051":5,"50537":5,"506":5,"5064":5,"50652":5,"5066257":14,"50682":5,"50687":5,"507":5,"507104":5,"507443":5,"508":[5,15],"5089":5,"509":5,"5094":5,"50973":5,"50e":12,"50fb66cc659c46c8bbc29fe0c8651c2f":15,"51":[5,8,12],"510":5,"511":5,"511114":5,"5112":5,"5114":5,"5117":5,"512":5,"512561":5,"512617":5,"512mb":21,"513":5,"514":5,"514087":5,"51478":5,"514898":5,"514916":5,"515":12,"515062":5,"5164":5,"517":5,"51742":5,"517454":5,"5175":5,"518":5,"51803":9,"51809":5,"51819":5,"518397":5,"518757914":13,"518851":5,"519":5,"51e":12,"52":[5,6,8,12],"52058":5,"5208":5,"520903":5,"5217":5,"522":5,"5221":5,"523":5,"523485":5,"523561":5,"524":5,"52414":15,"52415":15,"5244":5,"524629":18,"524755":5,"525":5,"526":5,"527":5,"528":5,"528102":5,"5286":5,"529":5,"5294":15,"52e":12,"53":[5,6,8,12],"530":5,"5301":5,"5309":5,"531":5,"531293":5,"531411":5,"5317":5,"532":5,"5324":5,"533":5,"5333":5,"534":5,"534699":5,"535":5,"5358":5,"536":5,"5366":5,"53715":5,"5374":5,"537743":5,"538":5,"53854":5,"539":5,"539343":5,"539941":5,"53e":12,"54":[5,12],"54027":5,"5403":5,"541":5,"541792":5,"542":5,"5423":5,"542419":5,"543":5,"54307":5,"54371":5,"544":5,"54439":5,"544482":5,"545":5,"5456":5,"545743":5,"546":5,"5462":5,"547002":5,"547729":5,"548":5,"5483":15,"548589":5,"548740826516e":15,"548864":5,"549":5,"5493":5,"54949":5,"55":[5,6,8,12,14,15,30],"550575":5,"551":[5,6],"551072":5,"552":5,"552711":5,"5528":5,"553":5,"5532":5,"554":5,"55458":9,"55473":5,"555":[5,8],"5556":5,"5557":5,"557":5,"558":5,"559":5,"5593":5,"55982":5,"559889":5,"55e":12,"56":[5,8,12,15],"560118":5,"5603":5,"561":5,"5612":5,"5619":5,"562":5,"562029":18,"56228":5,"564":5,"565":5,"56518":5,"5652":5,"566":[5,18],"566263":5,"56631":5,"566495":5,"567":5,"567303":5,"567898":5,"568":5,"5681":5,"56865":5,"569":5,"569581":5,"5696":5,"56e":12,"57":[5,6,8,12],"570":5,"570222":5,"5703":5,"57062":5,"57093":5,"571":5,"5712":5,"57141":5,"5717":15,"572":5,"573":5,"5734":5,"5735":5,"573703":5,"5738":5,"573874":5,"574":5,"57443":9,"574826":5,"575":5,"57538":5,"57571":15,"576":5,"577":5,"57739":5,"5775":5,"577826":5,"578":5,"57878":5,"579":5,"579099761269e":15,"5791":5,"5794":5,"5795":5,"5796":5,"5798":5,"58":[5,12],"581":5,"5812":5,"581558":5,"58166":5,"582":5,"582318":5,"583":5,"58332":5,"583346":5,"5834":0,"583436":5,"584622":5,"585":5,"58504":5,"58518":15,"585985":5,"586":5,"587":[5,14],"588":5,"588396":5,"5885":5,"589":5,"58e":8,"59":[5,6,12],"590":5,"5904":5,"590877":5,"591":5,"5919":5,"592":5,"592309":5,"592733":5,"593":5,"594":5,"59429":5,"59452":9,"595":5,"596":[5,12],"59616":5,"596161":5,"597":5,"5977":5,"598":5,"5982":5,"59867":5,"59e":12,"5dex":[8,12,13,14],"5e":12,"5m":12,"5mb":[8,12],"5msun":[0,7],"5s":12,"6":[0,1,5,6,7,8,9,10,11,12,13,14,15,18,22,37],"60":[5,12,15,29],"600":5,"6000":[0,7],"600000":0,"60007":15,"600258":5,"600593":5,"6008":5,"601":5,"60101":5,"602":5,"603":[5,12],"6032":5,"604":5,"60468":5,"605":5,"60547":5,"6058":5,"606":[5,12],"606169":5,"60636":5,"607":12,"608":[5,12],"608269":5,"608402":18,"608485":5,"608655":5,"60876":5,"609":5,"6094":5,"61":[5,12],"610184":5,"610285":5,"611":[5,12],"61117":5,"611632":5,"611763":5,"611785":5,"612":[5,12],"612281":5,"613":[5,12],"613167":5,"614":[5,12],"6145":5,"615":5,"615165":5,"61521":5,"616":[5,12],"6161":5,"616737":5,"61679":5,"617":[5,12],"617224":5,"6179":5,"618":5,"6181":5,"6182":5,"618382":5,"618445":5,"6185":5,"618705":5,"619":[5,12],"619099":5,"61e":12,"62":[0,5,12],"620":12,"621":14,"6212":5,"62124":18,"621375":5,"6215":5,"62172":11,"622":5,"62200":5,"622081":5,"622494":5,"6225":5,"623":12,"623052":5,"623232":5,"623354":5,"62366":5,"624":[5,12],"624125":5,"6249793":15,"625":[0,5],"62549":5,"626":[5,12],"627748":18,"628":[5,12],"628169":5,"629":[5,12],"63":[5,8,12],"630":12,"631":[5,8],"63153":5,"632":[5,12],"6328":5,"633":5,"633148":5,"633684":5,"634":[5,12],"634261":5,"6344":5,"634667":18,"635":[0,7,12],"63566e":5,"635703":5,"636":12,"636985":5,"637":[5,12],"637666":5,"637754":5,"6379":5,"638":[5,12],"63818":5,"6384":5,"6388":5,"639":[5,12,18],"63923":5,"639951":5,"63e":12,"64":[5,12],"640":[5,12],"6409":5,"641":12,"6413":5,"64137":5,"642":12,"64207":5,"64265":5,"6429":5,"643":12,"64359":5,"6438124832773024":12,"644":[5,12],"644553":11,"64463":5,"645":[5,11,12,18],"645286":5,"645339":5,"645763":5,"646":5,"64611":5,"646273":5,"647":5,"647161":5,"64724":5,"6474":5,"6475":5,"648":5,"648549":5,"6485656144116352":12,"648566":12,"6489":5,"6492":5,"6493":5,"64932":5,"649327":5,"64e":12,"65":[5,12,35],"651":5,"6514":5,"6515":5,"65262":5,"652638":12,"652755":5,"653":[5,15],"6548":5,"6550":5,"6552":5,"655371":5,"6556":5,"6559":5,"656":5,"6562":5,"657":5,"6571":5,"6579":5,"658":5,"6588":5,"659":5,"659393":5,"659448":5,"659469":5,"659526":5,"659581":5,"659743":5,"65976":5,"65e":12,"66":[5,12],"66003":15,"66016":5,"66025":5,"6602514":12,"6604":5,"660415":5,"661":5,"661725":5,"662":5,"6626":5,"663":5,"663251":5,"663976":5,"664":5,"664546":5,"6649":5,"665406":5,"66554":5,"665969":5,"666661":5,"667":5,"6674":5,"668":5,"668328":5,"669":5,"66915":5,"669442":5,"66e":12,"67":[5,12],"670":5,"67023":5,"670337":5,"670413":5,"670422":5,"67059":5,"671":5,"671001":5,"671551":5,"67179":5,"672":5,"67245":5,"673":5,"674":5,"674063083432e":15,"6745":5,"674645":5,"6747":5,"6749":5,"675":5,"675689":5,"6758":5,"67586e":15,"676":5,"676181":5,"676215":5,"6764":5,"6765":5,"677":5,"6771":5,"677623":5,"678":5,"679":[5,8],"679223":5,"6797":5,"67e":12,"68":[5,8,12],"681":5,"681473":5,"681487":5,"6816":5,"682":[5,8],"6822":5,"683":5,"6831":5,"6832":5,"6834":5,"683467":5,"68376":5,"684":[5,8,15],"684890":12,"685":[8,12],"685255":5,"685872":5,"686":5,"686591":5,"687":[5,8],"68746":5,"68748":15,"688":[5,8],"6883":5,"6885":5,"689":5,"689781":5,"689835":5,"68e":12,"69":[5,12],"690":12,"690194":12,"690203":5,"6905":5,"690746":5,"6908":5,"6909":5,"691":[5,8],"691586":5,"692":5,"693":[5,8],"693128":5,"693321":5,"6934":5,"693944":5,"694":[5,8,12],"6944":0,"694517":12,"695":[5,15],"6952":5,"695505":5,"69569":5,"696":5,"696003":18,"696284":5,"697":5,"6975":5,"697827":5,"698":[5,12],"69808":5,"698517":5,"6989":5,"699":5,"6e":[8,12],"6e1":30,"6e5":[0,7],"6m":12,"6mb":[8,12],"6msun":[0,7],"6s":[8,12],"7":[0,1,5,6,7,8,9,11,12,13,14,15,17,18,22,30,37],"70":[5,8,12,15,30],"700":[5,18],"70005":5,"700359":5,"70043":5,"70052":5,"70054":5,"701":5,"702":5,"70235":5,"7028":5,"703":5,"703545":5,"70365":5,"704":5,"70429":5,"7046":5,"705":[5,18],"7052":5,"705715":5,"706":5,"7060":5,"706029":5,"706126":5,"706483":5,"706780":12,"7069":5,"706984":5,"707":[5,12],"708":5,"7085":5,"7087":18,"709":5,"7093":5,"709965":5,"70e":12,"71":[5,12],"710":5,"71025":15,"7106":18,"7107":5,"7108":5,"711":5,"7114":5,"71196":15,"712":5,"712414":5,"7128":15,"713946":5,"714712":5,"716":[5,11],"71617":11,"71662":9,"71746":5,"71818":5,"7184":5,"718549":5,"7188":5,"719058":5,"71e":12,"72":[5,12],"720749":5,"721":5,"7210":5,"7214":5,"7219":5,"722":5,"72386":5,"724":[5,9],"72498e":[9,15],"725":5,"725718":5,"726":18,"726002":5,"72611":5,"72617":5,"7267":5,"7269":5,"727":5,"727196":5,"72764":5,"728":[5,8],"7282":5,"728237":5,"72832e":5,"728797":5,"729":5,"729193":5,"7292":5,"7296":5,"72983":5,"72e":12,"73":[5,12,15],"730":5,"731":5,"7315":5,"7319":5,"732":5,"7322":5,"732244":8,"7324":5,"7326":5,"732818":5,"732953":5,"732983":5,"7335":5,"734":5,"7342":5,"734534":5,"735":5,"7354":5,"7359":5,"736":[5,8],"736112":5,"7365":5,"737":5,"7370":5,"737411":5,"738":5,"7380":5,"7381":5,"738399":5,"7384":5,"7385":5,"738524":5,"7386":5,"739":5,"7390":5,"739962":5,"73e":12,"74":[5,12],"740":5,"740494":5,"740929":5,"7413":5,"741346":5,"741448":5,"7418":5,"7419":5,"742":5,"7420":5,"7421":5,"7422":5,"7423":5,"7424":5,"7425":5,"7426":5,"7427":5,"7428":5,"7429":5,"743":5,"7430":5,"7431":5,"743118":5,"7432":5,"7433":5,"7434":5,"7435":5,"7436":5,"7437":5,"7438":5,"743837":5,"7439":5,"744":5,"7440":5,"7446":5,"7447":5,"7448":5,"7449":5,"745":5,"7450":5,"7451":5,"7452":5,"7453":5,"7454":5,"7455":5,"7456":5,"7457":5,"7458":5,"74583":5,"7459":5,"746":5,"7460":5,"7461":5,"7462":5,"747":5,"7472":5,"748":[5,18],"748832":5,"749":5,"75":[0,5,8,12],"750":[5,6],"7500":5,"75005":5,"750149":5,"750806":5,"7509":18,"751305":5,"752":5,"752134":5,"752438":5,"7527":5,"753":5,"7530":5,"7536":5,"7537":5,"754":5,"754141":5,"7544":5,"755":5,"75508":5,"755323":5,"7554":5,"7557":5,"756":5,"7561":15,"7564":5,"7566":5,"756795":5,"757":[5,8],"757025":5,"7572":5,"758":[5,18],"7582":5,"7589":5,"759":5,"75921":5,"75931":5,"7595":5,"7598":5,"75e":12,"76":[5,12],"760064":5,"760389":5,"7605":5,"7607":5,"761":5,"7612":5,"7613":5,"76134":5,"761478":5,"7617":5,"7619":0,"7620":5,"7622":5,"7626":5,"7629":5,"763":[5,30],"7631":5,"7633":5,"7635":5,"764":5,"76416e":5,"7644":5,"7645":5,"764629":5,"7647":5,"7647737053496777":15,"764989":5,"765":5,"7650":5,"7657":5,"7659":5,"766":5,"766094":5,"7666":5,"7669":5,"767":5,"7671":5,"7675":5,"7677":5,"7678":5,"7679":5,"768":5,"7683":5,"768339":5,"7684":5,"768655":5,"7689":5,"769":5,"7690":5,"7691":5,"769195":5,"7695":18,"76e":8,"77":[5,12,14],"7705":5,"770532":5,"7706":5,"7709":5,"7714":5,"7717":5,"7718":5,"772":5,"7720":5,"7721":5,"772169325355e":15,"7722":5,"7727":5,"7728":5,"77287":15,"773":5,"7730":5,"7731":5,"773166":5,"7734":5,"7735":5,"7736":5,"7737":5,"774":5,"7741":5,"77416":5,"7742":5,"7743":5,"7745":5,"77455":5,"7748":5,"774954":5,"774969":5,"775":[5,18],"7750":5,"77505":5,"7751":5,"7752":5,"77541":5,"7757":5,"7759":5,"776":[5,18],"7761":5,"77624":5,"776263":5,"77631":5,"7764":5,"7765":5,"776523":5,"7766":5,"7767":5,"776818":5,"7769":5,"777":5,"7772":5,"7773":[5,18],"7774":5,"77766":5,"7779":5,"778":5,"7781":5,"7782":5,"7785":5,"7789":5,"779":5,"7790":5,"779197348711e":15,"7792":5,"7795":5,"7797":5,"78":[5,12],"78012":5,"7803":5,"7806":5,"7809":15,"781":5,"781046":5,"78125":0,"7813":5,"7817":5,"7819":5,"782":5,"7823":5,"7825":5,"7826":5,"7827":5,"7828":5,"783":[5,11],"7831":5,"7836":5,"783746":5,"783792":5,"784":5,"7840":5,"7842":5,"7843":5,"7844":5,"7845":5,"7848":5,"78488":5,"784972":5,"785":5,"7852":5,"785539":5,"7856":5,"7858":5,"786":5,"786062":5,"7861":5,"7863":5,"7864":5,"7868":5,"786e":18,"787":5,"7871":5,"787102":5,"787368":5,"7874":5,"7875":5,"7877":5,"787705":5,"7879":5,"788":5,"78817":18,"7882":5,"7883":5,"7886":5,"7887":5,"789":5,"789064":5,"7891":5,"789188":5,"7893":5,"7898":5,"789859":5,"7899":5,"78e":12,"79":[5,12],"7901":5,"7902":5,"7903":5,"7905":5,"7907":5,"7909":5,"79092":15,"790941":5,"791":5,"7911":5,"7912":5,"791274":5,"7913":5,"791478":5,"7916":5,"7918":5,"7919":5,"791991":5,"792":5,"7920":5,"7925":5,"7926":5,"79264":5,"7927":5,"792721":5,"792744":5,"7928":5,"7933":5,"7934":5,"7936":5,"793832":5,"7941":5,"79412":5,"7942":5,"7943":5,"7944":5,"79487":15,"795":[5,30],"795024":5,"7958":5,"796":5,"7960":5,"7962":5,"7964":5,"796455":18,"7965":5,"7967":5,"7968":5,"7969":5,"797":5,"7973":5,"7974":5,"7975":5,"7979":5,"798":5,"7980":5,"7982":5,"7988":5,"799":5,"7990":5,"79911":5,"7996":5,"7997":5,"799889":5,"79e":12,"7a2e4301f5224b2cb8939d2297df0aad":14,"7e":12,"7m":12,"7mb":12,"7s":8,"8":[0,3,5,6,7,8,9,11,12,13,14,15,18,29,30],"80":[5,12,30,35],"800":6,"8000":5,"8001":5,"8003":5,"8004":5,"8008":5,"8009":5,"801":5,"8010":5,"8012":5,"8013":5,"802":5,"802706":6,"802986496151e":15,"803":5,"8031":5,"8034":5,"8039":5,"804":5,"80402":5,"8043":5,"8044":5,"8047":5,"8048":5,"804961":5,"805":5,"8050":5,"8053":5,"8055":5,"805733":5,"8058":5,"8059":5,"80592":15,"806":5,"8060":5,"80602":18,"8062":5,"806431":5,"8065":5,"8066":5,"8067":5,"806722":5,"807":5,"8071":5,"8073":5,"807331":5,"807361":5,"8074":5,"807403":5,"8076":5,"8079":5,"808":5,"808134":5,"809":[5,6],"8091":5,"8095":5,"80954":5,"809662":5,"80e":12,"80msol":30,"81":[5,8,12],"810":8,"8101":5,"8104":5,"8105":5,"81066":15,"8107":5,"8108":5,"8109":5,"811":5,"8111":5,"8115":5,"812":5,"8121":5,"8123":5,"8124797":6,"813":5,"81352":5,"8138":5,"81395":9,"814":5,"8140":5,"8141":5,"814387":5,"81495":15,"81499":15,"815":5,"8151":5,"81529":15,"81536":15,"8155":5,"81562":5,"81563":15,"8158":5,"816":5,"8163":5,"81636":15,"81689":15,"816958":5,"817":[5,11],"81705":5,"817432":5,"817620e":18,"81762e":18,"817843":5,"817888":5,"818":5,"8182":5,"818294":5,"819":5,"8194":5,"8195":5,"81957":15,"8196":5,"819715":5,"8199":5,"81e":12,"82":[5,12],"8200":5,"8202":5,"8205":5,"82061":15,"82064":5,"82074":15,"82088":15,"821":5,"82123":15,"821301":5,"821367":5,"8216":15,"822":5,"82224":5,"8224":5,"82245":5,"82255":15,"823":5,"823059079115e":15,"82325":5,"8234":5,"823767":5,"824494":5,"8245":5,"8247":5,"824848":5,"82486":5,"8249":5,"825":5,"8250":5,"825086":5,"8251":5,"8252":5,"8254":5,"82563":12,"825648":5,"826":5,"8261":5,"8263":5,"82642":5,"826771":5,"8268":5,"826831":5,"827":5,"8271":5,"8276":5,"82797":5,"828":5,"8280":5,"828241":5,"828858":5,"829":5,"829017":5,"8292":5,"8293":5,"8295":5,"829668":5,"829726":5,"829757":5,"8299":5,"82e":12,"83":[5,8,12],"830":[5,18],"8300":5,"8303":5,"830541":5,"831236":5,"832":5,"832981":5,"833":5,"8339":5,"834303":5,"834483":5,"835":5,"8354":5,"836":[5,6],"836621":5,"83672":5,"836783":5,"837":5,"8372":5,"83762":5,"8377":5,"837816":5,"8379":5,"838":[5,6],"838411":6,"838423":5,"83843":5,"839":5,"8399":5,"83e":12,"84":[5,8,12],"840":5,"84029":5,"84071":5,"840796":5,"840994":5,"841":5,"841284":5,"841718":5,"8427e":18,"8429":5,"843":5,"8435":5,"8435e":18,"844":[5,6],"8441":5,"84428":5,"8443":5,"845":5,"84502":5,"8452":5,"845387":5,"845641":5,"846":[5,6],"846045":6,"847":5,"847153":5,"84827":5,"848380621869e":9,"848866":5,"8493":5,"85":[5,8,12,35],"850":5,"850309":5,"851":5,"851646":5,"852":5,"852252":5,"8523":5,"852712":5,"853":5,"8533":5,"854":5,"85406e":5,"8544":5,"8545":5,"854649":5,"855":5,"856":[5,12],"85661":18,"8569":5,"857":5,"8573":5,"857699":5,"8577":5,"858":[5,6],"8585":5,"859":5,"8596":5,"859753":5,"8598":5,"859977":5,"86":[5,8,12],"860402":5,"8605":5,"861":5,"861368":5,"863":[5,8],"86323":5,"86334":5,"8635":5,"8638":5,"865":5,"8653":5,"8654":5,"865806":5,"866":5,"8664":5,"867":5,"86728":5,"8674":5,"8678":5,"86794":5,"868":5,"8683":5,"86878":5,"869":5,"86918":5,"8694":5,"869544":5,"87":[5,12,15],"870":5,"8704":5,"8706":5,"8708":5,"871":5,"872":[5,15],"872312":5,"872316":5,"873":5,"8731":5,"873639":5,"874":5,"874638":5,"875":5,"876":5,"876084":5,"876382":5,"877":5,"877963":5,"878":5,"87813":5,"878253":5,"879":5,"8791":5,"87e":12,"88":[5,12],"880":5,"8805":5,"880528":5,"881":5,"8813":5,"882017":5,"8828":5,"883":5,"883252":5,"88343":5,"8837":5,"884":5,"8840":5,"8843":5,"88441":5,"884461":5,"8846":5,"8848":5,"885":5,"8851":5,"8853":5,"8855":5,"885537":5,"8856":5,"8858":5,"88581":5,"886":5,"8860":5,"8862":[5,15],"8864":5,"8866":5,"8867":5,"8868":5,"8869":5,"887":5,"8870":5,"8871":5,"8872":5,"8873":5,"8874":5,"8875":5,"8876":5,"8877":5,"8878":5,"888":5,"8880":5,"8881":5,"888123":5,"8882":5,"8884":5,"8886":5,"888613":5,"8887":5,"8889":5,"889":5,"8891":5,"8892":5,"8893":5,"8894":5,"8896":5,"8897":5,"8898":5,"8899":5,"89":[5,6,12,14],"890":5,"8901":5,"8902":5,"8903":5,"8904":5,"8906":5,"8907":5,"8908":5,"8909":5,"891":5,"8910":5,"891056":5,"8911":5,"8912":5,"8917":5,"892":5,"89211":18,"8924":5,"8926":5,"893":5,"8934":5,"8935":5,"8939":5,"893941":5,"894":5,"894041":5,"8941":5,"8949":5,"895":5,"895821":5,"896":5,"8961":5,"896110e":18,"896196":5,"896286":5,"8972":5,"8975":5,"897612":5,"898":5,"8982":5,"898786":5,"899":5,"8992":5,"899464":5,"8a7d52edc59346ce991063d9e05e9ba7":6,"8bc1eafea1c34b05894c1618639d8c37":15,"8e":[0,7],"8m":[8,12],"8mb":12,"8s":[8,12],"9":[0,5,6,7,8,9,11,12,14,15,18],"90":[5,8,12],"900":5,"901":5,"901988":5,"902":5,"903":5,"9032":5,"9036":5,"9038":5,"904":5,"9043":5,"9046":5,"9047":5,"905":5,"905335716621e":15,"9057":5,"906":5,"906059":5,"906299":5,"90695":5,"907":5,"9071":5,"90716":5,"9073":5,"9074":5,"908":5,"9087":5,"909":5,"9093":5,"9098":5,"90e":12,"91":[5,8,12],"910419":5,"9105":5,"910817":5,"910981":5,"911":5,"9110":5,"911093":5,"9113":5,"912":5,"912238":5,"912283":5,"912289":5,"912327":5,"9127":5,"912919":5,"913":5,"9139":5,"914":5,"9147":5,"9148":5,"915":[5,8],"915148":5,"915221":5,"9153":5,"91548":5,"916":5,"916093":5,"916207":5,"917":5,"917439":5,"9179":5,"918":5,"918543":5,"9189":5,"919":5,"9196":5,"91e":12,"92":[5,12],"920":5,"9203":5,"9206":5,"920832":5,"921":5,"9214":5,"922":5,"922199":5,"923":5,"92382":5,"924":5,"924056":18,"925":5,"9253":5,"9255":5,"9256":5,"925761":5,"926":5,"9263":5,"9264":5,"927":5,"929":5,"929511":5,"92995":5,"92e":12,"93":[5,12,15],"930":[5,14],"930282":5,"9304":5,"93044":5,"9308":5,"9309":5,"930943":5,"931":5,"9310":5,"932":5,"9323":5,"932839":5,"933":5,"9339":5,"934":5,"9342":5,"935":5,"935069":5,"9351":5,"9357":5,"935816":5,"935920339886e":15,"936":5,"936532":5,"936762":5,"937":5,"9373e":18,"938":5,"938568":5,"938576":5,"93898":5,"939":5,"939376":5,"939378":5,"939757":5,"93e":12,"94":[5,6,8,12,19],"941":[5,8],"9411":5,"941478":5,"942":5,"942154":5,"9423":5,"9427":5,"942854":5,"943":5,"9436":15,"944":5,"9445":5,"94464":5,"945":5,"9452":5,"946":5,"946468":5,"946757":5,"947":5,"9471":5,"947719":5,"947774":5,"94797":5,"948":5,"949":5,"95":[5,12,14],"950":5,"9505":5,"950733":5,"951":5,"951344":5,"951597":5,"952":5,"9524":5,"952496":5,"953":5,"953182":5,"9537":5,"953738":5,"953798":5,"954":5,"954624":5,"9548":5,"954848":5,"955":5,"9557":5,"956":5,"9561":5,"956619":5,"957":5,"9573":5,"95783":5,"957894":5,"958":5,"959":5,"959422":5,"959492":5,"9595":5,"9598":5,"95e":8,"96":[5,6,8,12],"960":5,"9603":5,"9606":5,"960734":5,"961":5,"9610":5,"96112":5,"96161":5,"962":5,"962482":5,"962876":5,"963":[5,8],"963621764679e":15,"964":5,"9648":5,"965":5,"9650":5,"965167":5,"96557e":5,"966":5,"966681":5,"967":5,"968":5,"969":5,"96963":5,"96e":12,"97":[5,12],"970":5,"97008":15,"970206":5,"970505":5,"970783":5,"971":5,"971686":5,"971941":5,"972":5,"9725":5,"973":[5,12],"973135":5,"97316":5,"9739":5,"9739752":8,"974":5,"9743":5,"9749":5,"975":5,"9757":5,"9758":5,"975864":5,"976":5,"976041":5,"977":5,"9779":5,"97797":5,"978":5,"979":5,"97923e":15,"9794":5,"9797":5,"97e":[8,12],"98":[5,12,14],"98061":5,"98081":5,"98096":5,"981":5,"981292":5,"9814":5,"981555":5,"9816":5,"982":5,"9825":5,"983":5,"983229":5,"984":[5,14],"9841":5,"9842":5,"985":5,"9851":5,"985359":5,"9859":5,"986":[5,8],"9869":5,"987":5,"988":5,"988755":5,"989":5,"98e":12,"99":[5,12,14],"990":5,"9900":5,"9902":5,"991":5,"9912":5,"991224":5,"991657":8,"99191":9,"99192":9,"99194":9,"992":5,"99203":5,"9927":[5,11],"993":5,"994":5,"994118":5,"995":5,"995631":14,"995687":5,"995824":5,"996":[5,8],"996798":5,"997":5,"9977":5,"997751":5,"998":5,"998023":5,"99808":5,"9983":11,"998563":5,"999":5,"999122":5,"9999999999999998":14,"99e":12,"9e":8,"9m":12,"9mb":[8,12],"9s":[8,12],"abstract":38,"boolean":[0,2,7,19,20,21,24,36,40],"break":[0,7],"case":[0,2,4,7,15,19,21,22,25,29,35],"catch":[6,8,11,12,13,14,15,18,19,21],"char":21,"class":[2,3,19,20,22,23],"const":[2,6,8,12,13,14,15],"default":[0,1,2,3,6,7,9,10,12,13,14,15,18,19,20,21,25,27,28,29,30,31,34,35,36,38],"do":[0,1,2,5,6,7,8,9,12,13,14,15,18,20,21,22,24,25,29,30,31,35,37,40],"export":[3,15,19,20,29],"final":[5,8,12,13,14,18],"float":[0,2,3,5,7,10,11,16,19,30,35,40],"function":[0,1,2,3,4,5,6,8,9,17,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40],"import":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,32],"int":[0,1,2,5,7,12,15,19,20,21,25,30,31,32,35,40],"krtickov\u00e1":[0,7],"kub\u00e1t":[0,7],"long":[0,6,7,8,15,21,26,29,32,36,39],"new":[0,2,6,7,8,11,12,13,14,15,20,25,29,30,32],"null":[0,6,7,8,15,19],"paczy\u0144ski":[0,7],"public":[12,13,14,15,22],"return":[1,2,3,5,6,7,8,10,11,12,13,14,15,18,19,20,21,24,25,26,27,28,29,30,31,32,34,35,36,38,40],"short":[0,6,7,8,12,13,14,39],"super":[0,7],"switch":[0,7],"throw":[22,37],"true":[0,2,3,5,6,7,8,10,12,13,14,15,17,18,19,20,21,24,25,26,28,29,31,32,34,35,36],"try":[0,5,7,8,11,12,13,14,15,22,25,29,32,37],"void":9,"while":[0,5,6,7,8,12],A:[0,2,4,7,15,27,40],And:[22,31,37,40],As:[0,6,7,8,11,12,13,14,15,25],At:[6,15],But:11,By:[0,6,7,12,13,14,15,18,21],For:[0,2,7,9,11,12,13,14,24],If:[0,2,6,7,8,12,13,14,15,20,21,22,24,25,26,28,29,30,32,34,37,38,40],In:[0,2,6,7,8,9,10,11,12,13,14,15,18,21,29,35],It:[0,6,7,8,11,12,13,14,15,16,18,21,22,29,31,37],Its:21,NO:21,NOT:[0,7,32,35,38],No:[5,7,21,22,37],Not:[6,8],OR:[2,18],On:[0,7,15,19,29],One:[0,7,21],Or:[15,18],Such:8,That:[0,6,7],The:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,24,25,26,27,28,29,30,32,34,35,37,38],Then:[2,6,19,22,37],There:[6,7,8,9,10,11,12,13,14,15,16,18,20,21,24,30,31],These:[6,7,12,13,14,15,19,21,24,25],To:[0,7,11,12,13,14,15,21,22,29,30,37],Will:[0,7,19,21,38],With:31,_1:[12,13,14],_:[6,8,12,13,14,21,31],__:15,__arg_begin:7,__attribute__:9,__delitem__:27,__enter__:19,__exit__:19,__getitem__:[2,27],__iadd__:2,__setitem__:27,_actually_evolve_system:21,_binary_c_bind:[7,9,11,16,36,40],_binary_c_config_execut:21,_binary_c_dir:21,_binary_c_execut:21,_binary_c_shared_librari:21,_commandline_input:21,_count:21,_custom_logging_shared_library_fil:21,_end_time_evolut:21,_errors_exceed:21,_errors_found:21,_evolution_type_opt:21,_failed_count:21,_failed_prob:21,_failed_systems_error_cod:21,_generate_grid_cod:21,_grid_vari:[13,14,21,32],_kill:21,_loaded_moe2017_data:21,_main_pid:21,_moe2017_json_data:21,_population_id:21,_pre_run_setup:20,_probtot:21,_process_run_population_grid:21,_queue_don:21,_repeat:21,_restart_dir:25,_set:20,_set_moe2017_grid:21,_start_time_evolut:21,_store_memaddr:21,_system_gener:21,_total_mass_run:21,_total_probability_weighted_mass_run:21,_total_starcount:21,_zero_prob_stars_skip:21,a173:[0,7],a3146490:0,a_in:5,a_out:5,abat:[0,7],abbrevi:39,abl:7,about:[4,6,8,12,13,14,15,19,20,21,25,29,31,40],abov:[0,6,7,9,11,13,14,15,19,20,30],abridg:[7,9],absolut:[0,7,19,35],abund:[0,7],ac:[6,15],acceler:[0,7],accept:[15,19],access:[2,9,11,12,13,14,15,21,25,29],accord:[0,6,7,29,30,35],accordingli:[11,13,14,15],account:[0,7,21,30],accret:[0,5,7],accretion_limit_dynamical_multipli:[0,7],accretion_limit_eddington_lmms_multipli:[0,7],accretion_limit_eddington_steady_multipli:[0,7],accretion_limit_eddington_wd_to_remnant_multipli:[0,7],accretion_limit_thermal_multipli:[0,7],accretor:[0,5,7,40],accur:[12,13,14],acquir:5,act:[0,7,13,14,15,21],activ:[0,7,21],actual:[0,3,6,7,8,9,11,12,13,14,15,20,21,22,24,25,28,30,35,37],ad:[2,4,6,8,11,29,32],adam:[0,7],adapt:[0,7,13,14],add:[0,2,6,7,8,9,11,12,13,14,15,20,21,24,30,32,33,35],add_ensemble_metadata:33,add_grid_valu:35,add_grid_vari:[6,8,12,13,14,15,32],add_system_metadata:33,addit:0,address:[1,7,9,21,40],admittedli:24,adress:[7,9,40],advis:9,af:5,affect:[0,6,7],after:[0,6,7,8,9,12,13,14,15,20,21,29,32,35],ag89:[0,7],ag:[0,4,5,6,7,8,14,22,35],again:[2,3,6,10,11,19,21],against:24,agb:[0,6,7],agb_3dup_algorithm:[0,7],agb_core_algorithm:[0,7],agb_core_algorithm_default:0,agb_core_algorithm_hurlei:0,agb_core_algorithm_karaka:0,agb_luminosity_algorithm:[0,7],agb_luminosity_algorithm_default:0,agb_luminosity_algorithm_hurlei:0,agb_luminosity_algorithm_karaka:0,agb_radius_algorithm:[0,7],agb_radius_algorithm_default:0,agb_radius_algorithm_hurlei:0,agb_radius_algorithm_karaka:0,agb_third_dredge_up_algorithm_default:0,agb_third_dredge_up_algorithm_hurlei:0,agb_third_dredge_up_algorithm_karaka:0,agb_third_dredge_up_algorithm_stancliff:0,ago:6,al:[0,7,30,40],albedo:[0,7],algorithm:[7,22],algothim:[0,7],all:[0,1,2,3,6,7,8,10,11,12,13,14,15,17,18,19,20,21,22,23,24,25,29,30,31,35,36,37,38],all_info:20,alloc:[7,35],allow:[0,2,7,9,17,18,21,27,30],allow_nan:3,almost:21,along:[0,21,22,31,37],alpha:[0,5,7],alpha_:8,alpha_c:[0,5,6,7,8],alpha_ej:5,alphacb:[0,7],alreadi:[6,15,16,25,29,32],also:[0,4,5,6,7,8,9,12,13,14,15,18,19,20,21,22,25,26,29,31,36,37,40],alter:[8,12,32],altern:[0,7,21],although:16,alwai:[0,7,21,30,35],amanda:[0,7],amax:30,amin:30,amount:[0,7],amp:[6,7,8],an:[0,2,3,6,7,8,10,11,12,13,14,15,18,19,21,22,25,28,29,30,31,32,33,34,35,38],analys:38,analyt:[6,8,12,13,14,15,20,22,23],analyz:11,andrew:[22,37],andronov:[0,7],angelou_lithium_cheb_decay_tim:[0,7],angelou_lithium_cheb_massfrac:[0,7],angelou_lithium_cheb_tim:[0,7],angelou_lithium_decay_funct:[0,7],angelou_lithium_decay_tim:[0,7],angelou_lithium_eagb_decay_tim:[0,7],angelou_lithium_eagb_massfrac:[0,7],angelou_lithium_eagb_tim:[0,7],angelou_lithium_gb_decay_tim:[0,7],angelou_lithium_gb_massfrac:[0,7],angelou_lithium_gb_tim:[0,7],angelou_lithium_hg_decay_tim:[0,7],angelou_lithium_hg_massfrac:[0,7],angelou_lithium_hg_tim:[0,7],angelou_lithium_lmms_decay_tim:[0,7],angelou_lithium_lmms_massfrac:[0,7],angelou_lithium_lmms_tim:[0,7],angelou_lithium_ms_decay_tim:[0,7],angelou_lithium_ms_massfrac:[0,7],angelou_lithium_ms_tim:[0,7],angelou_lithium_tpagb_decay_tim:[0,7],angelou_lithium_tpagb_massfrac:[0,7],angelou_lithium_tpagb_tim:[0,7],angelou_lithium_vrot_trigg:[0,7],angelou_lithium_vrotfrac_trigg:[0,7],angular:[0,7,16,24],ani:[0,3,7,11,15,19,20,22,25,30,32,36,37],anoth:[0,7,25],ansi:[0,7,19],ansi_colour:[0,7],anyth:[0,7,12,13,14,15,19,21,25,35],anywai:[11,15,30,32],api:[0,4,19,22,25],api_log_filename_prefix:[0,5,7,11,16],appear:21,append:[1,2,6,11,12,13,14,16],appli:[0,7],apply_darwin_radau_correct:[0,7],appropri:[0,7,15,21,25,27,28,29,32,34],approxim:[0,6,7,8],ar:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,24,27,28,29,30,31,32,34,35,36,37,40],arang:18,aren:[21,30],arenou2010_binary_fract:30,arg:[5,7,15,19,27,30],arg_dict:[2,19],argh:16,argopt:[0,7],argpair:[10,36],argstr:[7,9,11,16,18],argument:[0,2,7,11,13,15,16,17,18,19,20,21,25,30,36,38],argument_of_periastron:[0,7],argument_of_periastron_quadrupl:[0,7],argument_of_periastron_tripl:[0,7],aritif:8,around:[0,7,9,11,17,18],arrai:[11,15,18,19,21,30,32,35],arrow:[0,7],artefact:[13,14],artifici:[0,7],artificial_accretion_end_tim:[0,7],artificial_accretion_ignor:0,artificial_accretion_start_tim:[0,7],artificial_angular_momentum_accretion_r:[0,7],artificial_mass_accretion_r:[0,7],artificial_mass_accretion_rate_by_stellar_typ:[0,7],artificial_orbital_angular_momentum_accretion_r:[0,7],arxiv:[0,7,30],ask:[0,7,40],asplund:[0,7],assign:[12,13,14,15,32],associ:[6,8,12,13,14,28,34],assum:[0,6,7,8,12,16,24,35],ast871:[0,7],astronomi:[0,7],astrophys:[8,13,14],astropi:[22,24,37],asymptot:6,atom:36,attempt:[3,20],au:16,auto:[1,23],autogen_c_logging_cod:[1,9,18],autogener:18,automat:[0,1,7,9,15,17,18,21,22,27,29,31,32,37],autoviv:2,autovivif:2,autovivificationdict:2,avaibl:[22,37],avail:[0,7,8,9,12,13,14,15,19,21,22,26,37],avoid:[6,7,8],awai:[0,7,12],ax:18,axessubplot:17,axi:[0,7,24],b6213f2eb7f94d3196cf966b7b76b9f9:14,b:[21,29],b_1:[0,7],b_2:[0,7],b_3:[0,7],b_4:[0,7],b_inclination1:[0,7],b_inclination2:[0,7],b_inclination3:[0,7],b_inclination4:[0,7],back:[0,2,5,7],background:18,backward:[0,7],bagb:[0,7],bar:[13,14],barn:[0,7],base:[0,2,3,7,8,12,13,14,15,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,40],base_filenam:[15,20],bash:21,basic:[15,29],batch:21,batchmod:[0,7],batchnam:21,bb:[0,7],bbox_inch:18,beasor:[0,7],becaus:[0,2,6,7,8,11,12,13,14,16,18,20,21,22,27,29,30,37],becom:[0,1,2,5,7,9,13,14,16,19,21],been:[0,7,10,20,21,25,26,28,34],befor:[0,5,6,7,8,12,13,14,15,20,21,22,29,30,37],beg_bss:5,beg_rch:5,beg_symb:5,begin:6,behaviour:[2,6,12,13,14,15,38],behind:18,being:[28,34],belczynski:[0,7],below:[0,4,6,7,8,9,12,13,14,15,21,30],berro:[0,7],bertolami:[0,7],best:[5,20,21],beta:[0,7],beta_reverse_nova:[0,7],beta_reverse_novae_geometri:0,better:[0,2,4,7,15,29,40],between:[0,7,21,30,35],bewar:[15,29,32],beyond:16,bh:[0,5,8],bh_belczynski:[0,5,7],bh_bh:5,bh_fryer12_delai:[0,7],bh_fryer12_rapid:[0,5,7],bh_fryer12_startrack:[0,7],bh_hurley2002:[0,7],bh_prescript:[0,5,7],bh_spera2015:[0,7],bhbh:5,big:[0,7,21],biinari:15,bin:[0,7,8,12,13,14,19,21,22,35,37],bin_data:[8,12,13,14,19],binari:[4,7,8,11,13,14,15,21,22,24,30,32,37,40],binary_c2:[22,37],binary_c:[1,2,3,4,6,8,12,13,14,16,19,20,21,24,27,29,30,32,36,38],binary_c_api_funct:9,binary_c_cal:[15,29],binary_c_default:15,binary_c_grid:[6,8,12,15],binary_c_grid_25014bc73b334765a1c09a4e4a97ed66:12,binary_c_grid_26171201413c43f5b91552a374879940:6,binary_c_grid_2b66f805db424c48a1d29c45092b6e3c:8,binary_c_grid_50fb66cc659c46c8bbc29fe0c8651c2f:15,binary_c_grid_8a7d52edc59346ce991063d9e05e9ba7:6,binary_c_grid_f4e5925effeb42e69b5be956f400ae41:6,binary_c_inline_config:1,binary_c_log_cod:[1,9,11,17,18],binary_c_macro:[0,7],binary_c_output:3,binary_c_paramet:[0,6,12,13,14,15],binary_c_python:[6,7,8,11,12,13,14,15,19],binary_c_python_api:18,binary_c_task_:[0,7],binary_c_write_log_cod:1,binary_grid:[0,7],binary_star:40,binaryc:[1,19,38],binaryc_config:1,binaryc_json_seri:3,binarycdecod:3,binarycencod:3,binarycpython:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40],binarygrid:[12,13,14,15],bind:[0,7,9,11,16],binned_log_luminos:[12,13,14],binned_post_period:8,binned_pre_period:8,binwidth:[8,12,13,14,19],birth:[0,7],bit:[6,12],bivari:[0,7],black:[0,4,6,7,22],black_hol:0,block:[15,32],bloecker:[0,7],blog:1,boltzman:24,boltzmann:[0,7],bondi:[0,7],bondi_hoyle_accretion_factor:[0,7],bool:[2,15,19,20,24,29,31,32,36],born:[0,6,7,12,13,14],bosswissam:19,both:[0,2,7,12,13,14,15],bottom:[0,7,15,32],bottomcod:[6,8,15,32],bound:[5,30,35],boundari:30,brake:[0,7],branch:[0,6,7,19,36],branch_david:0,branchcod:[6,8,15,32],branchpoint:[6,8,15,32],breakup:[0,7],brighten:[13,14],broken:[0,7],bse:[0,7,9,15,30],bse_opt:[6,8,11,12,13,14,15,20,35],bsf:[0,7],buffer:[0,7,29],build:[0,1,4,7,19,25,30],build_q_tabl:30,built:[0,1,10,19,22,37],burn:[0,7],busso:[0,7],bye:[0,7],bz2:29,c13_eff:[0,7],c2:30,c:[0,1,5,7,9,11,15,38],c_auto_log:21,c_log:0,c_logging_cod:[6,8,9,11,12,13,14,15,21],cach:[20,21,22,23,26,31,35],cache_dir:[21,35],cachedir:35,cachetool:[21,27],cachetyp:27,calc_e_integr:30,calc_p_integr:30,calc_period_from_sep:40,calc_sep_from_period:[8,12,15,40],calc_total_probden:30,calcul:[0,2,6,7,8,12,13,14,15,19,21,26,30,32,40],calculate_constants_three_part_powerlaw:30,call:[0,1,2,7,11,13,14,15,16,19,20,21,24,25,28,29,32,34,35,36,38],call_binary_c_config:19,calls_filenam:15,can:[0,1,2,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,24,25,29,30,32,37,38,40],candid:8,cannot:[6,9,27,29,31],canon:21,cap:[0,7],capit:[12,13,14],capsul:[1,7,19],captur:[0,7,19],carbon:[0,5,6,7],carbon_oxygen_white_dwarf:0,care:[6,12,13,14,21],carlo:[0,7,21],carrasco:[0,7],carri:[0,7],carriag:[19,21],cast:[18,19],catchtim:19,categor:7,categori:[7,15],categoris:19,caught:[11,19,36],caus:[5,12,40],cbdisc:[0,7],cbdisc_albedo:[0,7],cbdisc_alpha:[0,7],cbdisc_eccentricity_pumping_dermin:0,cbdisc_eccentricity_pumping_method:[0,7],cbdisc_eccentricity_pumping_non:0,cbdisc_end_evolution_after_disc:[0,7],cbdisc_fail_ring_inside_separ:[0,7],cbdisc_gamma:[0,7],cbdisc_init_djdm:[0,7],cbdisc_init_dm:[0,7],cbdisc_inner_edge_strip:[0,7],cbdisc_inner_edge_stripping_timescal:[0,7],cbdisc_kappa:[0,7],cbdisc_mass_loss_constant_r:[0,7],cbdisc_mass_loss_fuv_multipli:[0,7],cbdisc_mass_loss_inner_l2_cross_multipli:[0,7],cbdisc_mass_loss_inner_viscous_accretion_method:[0,7],cbdisc_mass_loss_inner_viscous_accretion_method_equ:0,cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015:0,cbdisc_mass_loss_inner_viscous_accretion_method_non:0,cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015:0,cbdisc_mass_loss_inner_viscous_angular_momentum_multipli:[0,7],cbdisc_mass_loss_inner_viscous_multipli:[0,7],cbdisc_mass_loss_ism_pressur:[0,7],cbdisc_mass_loss_ism_ram_pressure_multipli:[0,7],cbdisc_mass_loss_xray_multipli:[0,7],cbdisc_max_lifetim:[0,7],cbdisc_minimum_evaporation_timescal:[0,7],cbdisc_minimum_fr:[0,7],cbdisc_minimum_luminos:[0,7],cbdisc_minimum_mass:[0,7],cbdisc_no_wind_if_cbdisc:[0,7],cbdisc_outer_edge_strip:[0,7],cbdisc_outer_edge_stripping_timescal:[0,7],cbdisc_resonance_damp:[0,7],cbdisc_resonance_multipli:[0,7],cbdisc_torquef:[0,7],cbdisc_viscous_l2_coupl:[0,7],cbdisc_viscous_photoevaporative_coupl:[0,7],cbdisc_viscous_photoevaporative_coupling_inst:[0,7],cbdisc_viscous_photoevaporative_coupling_non:[0,7],cbdisc_viscous_photoevaporative_coupling_visc:[0,7],ce:[0,7,8],cee:[0,7,8],cell:[7,12,13,14,15],cemp:[0,7],cemp_cfe_minimum:[0,7],centr:[8,15,32],central:16,central_object:[0,7],centralis:38,certain:[21,22,37],certainli:21,cf:[0,7],cf_amanda_log:[0,7],cflag:[22,37],chabrier:30,challeng:[13,14],chandrasekhar:[0,7],chandrasekhar_mass:[0,7],chang:[0,1,2,5,6,7,8,9,12,13,14,15,18,19,20,21,22,31,32,37],chapter:[0,21,23],charact:[19,21,29],cheb:[0,7],check:[0,6,7,8,12,13,14,15,18,19,20,21,25,28,29,30,31,34,38,40],check_circular:3,check_if_in_shel:19,chemic:[0,7,35],chen:[0,7],child:19,choic:[0,7,24,30],choos:[0,6,7,8,9,12,18,24,25,29],chose:11,chosen:[12,13,14,15,32],chunk:[28,34],ci:16,circular:[0,5,7],circumbinari:[0,7],circumstanti:[0,7],cl:3,claei:[0,7],clark:[0,7],clean:[1,6,11,13,14,20],clean_up_custom_logging_fil:20,clear:[13,14,36],clearli:[13,14],clock:19,close:[0,5,7,8,13,14,16,29],closedir:29,closefd:29,closer:5,cloud:[0,7],clusterid:[21,28],co2:[13,14],co:[0,5,7],coalesc:5,code:[0,1,6,7,8,9,11,12,13,14,15,17,18,20,22,24,28,29,30,31,32,34,35,37,38,40],collaps:[0,7],collapsar:[0,7],collect:40,collid:40,color:[19,24],color_by_index:24,colour:[0,7],colour_log:[0,7],column:[6,8,11,15,16,18,24],column_nam:11,com:[1,19,30],combin:[1,2,9,19,20,21],combine_ensemble_with_thread_join:21,combined_output_dict:33,come:[2,22,35,37],comenv:[5,8],comenv_bs:0,comenv_count:8,comenv_disc_angmom_fract:[0,7],comenv_disc_mass_fract:[0,7],comenv_ejection_spin_method:[0,7],comenv_ejection_spin_method_do_noth:[0,7],comenv_ejection_spin_method_sychron:[0,7],comenv_ejection_spin_method_synchron:0,comenv_merger_spin_method:[0,7],comenv_merger_spin_method_breakup:0,comenv_merger_spin_method_conserve_angmom:[0,7],comenv_merger_spin_method_conserve_omega:[0,7],comenv_merger_spin_method_specif:[0,7],comenv_ms_accret:[0,7],comenv_ms_accretion_fract:[0,7],comenv_ms_accretion_mass:[0,7],comenv_nandez2016:0,comenv_nelemans_tout:0,comenv_ns_accret:[0,7],comenv_ns_accretion_fract:[0,7],comenv_ns_accretion_mass:[0,7],comenv_post_eccentr:[0,7],comenv_prescript:[0,7],comenv_splitmass:[0,7],comenv_undef:0,comma:35,command:[0,1,7,15,20,21,22,29,37],command_lin:21,commandlin:15,comment:15,common:[0,4,5,6,7,9,11,12,13,14,15,22],compact:[8,15],companion:[0,5,7,18,29],compar:[0,7,8,12,15,21],compens:[13,14],compil:[1,9,15,18,22,37],compile_shared_lib:1,complaint:29,complet:[6,8,12,13,14,15],complex:[8,9,15,17,18,21],compon:[19,24],compress:[3,29],compress_pickl:29,compression_typ:29,compresslevel:29,comput:[0,6,7,12,13,14],concaten:2,conceptu:12,concurr:21,condit:[6,8,9,12,13,14,15,17,18,32],condor:[21,22,23,25],condor_bash:21,condor_batchnam:21,condor_check_requir:28,condor_clusterid:[21,28],condor_d:21,condor_dir:[21,25,28,34],condor_env:21,condor_extra_set:21,condor_getenv:21,condor_grid:28,condor_initial_dir:21,condor_kill_sig:21,condor_memori:21,condor_njob:21,condor_outfil:28,condor_postpone_join:21,condor_postpone_submit:21,condor_process:[21,28],condor_pwd:21,condor_q:21,condor_queue_stat:28,condor_requir:21,condor_should_transfer_fil:21,condor_snapshot_on_kil:21,condor_status_fil:28,condor_stream_error:21,condor_stream_output:21,condor_submit:21,condor_univers:21,condor_warn_max_memori:21,condor_when_to_transfer_output:21,condorid:28,condorpath:28,config:[1,19,21,22,37],config_fil:1,configur:[6,11,12,13,14,15,18,21,30],confirm:29,conjunct:10,conserv:[0,7],consid:[0,1,2,7,12,13,14,20,21,24,31,35],const_distribut:30,const_dt:35,const_dt_cach:35,const_int:35,const_linear:[32,35],const_rang:35,constant:[0,2,7,13,14,24,30,35],construct:[0,1,6,7,8,11,12,13,14,16,18,21],contact:5,contain:[0,1,2,3,7,10,11,12,13,14,15,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],content:[2,3,7,19,20,25],context:19,continu:[15,28,32,34],contribut:[22,37],control:[0,6,7,12,13,14,15,21],conv_time_unit:19,convect:[0,7],conveni:19,converg:[0,7],convers:2,convert:[2,3,6,8,16,19,20,29,30,35],convert_byt:19,convert_float_kei:3,convfloat:19,convfrac:5,cool:[0,6,7],copi:[0,7,8,13,14,21,40],core:[0,6,7,8,12,13,14,15,21,24],core_co:9,core_h:9,core_helium_burn:0,core_mass:[0,7,9],correct:[0,7,11,20,24,30,40],correctli:[11,18,22,37],correspon:[28,34],correspond:[15,24,28,32,34],corretor:[0,7],cosmic:30,cosmic_sfh_madau_dickinson2014:30,cost:[12,13,14],could:[0,3,7,13,14,15,18,19,36],count:[2,5,6,18,19,21],count_keys_recurs:2,counter:21,coupl:[0,4,7],cours:[6,24],cover:[10,12,13,14],coverag:[22,37],cowd:[0,7],cpu:[0,6,7,8,12,13,14,15,21,26],cpu_tim:26,cpython:7,crap_paramet:[0,7],creat:[3,6,8,9,11,12,13,14,15,19,20,26,29,30,32,34],create_and_load_logging_funct:[1,9,18],create_arg_str:19,create_hdf5:19,creation:7,critic:[0,7],cross:[0,7],crunch:[6,8,12,13,14],cs1:16,ctype:1,cube:12,cubic:12,cuntz:[0,7],current:[0,2,7,8,9,12,13,14,19,22,25,29,37],curv:[8,13,14],custom:[0,1,2,3,4,6,7,8,11,12,13,14,15,19,20,21,22,24,30,38],custom_format:2,custom_gener:21,custom_log:[11,18,20,21],custom_logging_cod:[1,9,11,17,18,38],custom_logging_func_memaddr:[7,9,21],custom_logging_funct:[9,11,15,17,18,21,22,23],custom_logging_info:20,custom_logging_memaddr:9,custom_logging_print_stat:11,custom_logging_stat:[6,8,12,13,14,15],custom_opt:[6,11,12,13,14,15,20,29],custom_output_funct:9,custom_sort_dict:2,custom_tmp_dir:1,customis:24,cut:18,cvode:[0,7],d48r:18,d:[0,1,2,5,6,7,8,9,11,12,15,16,19,35],d_:19,dai:[0,5,7,8,9,11,12,15,18,30,40],damp:[0,7],darwin:[0,7],dat:[0,15,19],data:[0,3,5,6,7,8,11,12,13,14,15,16,18,19,21,25,29,30,32,38,40],data_dict:30,data_dir:[15,19,20,21,29],datadir:[15,29],datafram:[6,8,11,12,13,14,16,17,18,24],dataio:[20,22,23],datalinedict:[6,8,12,13,14,19],datamodel:2,dataset:[15,21,25],date:[19,20,21],david:[0,2,18,22,37],david_logging_funct:0,dd7:[0,7],de:[0,5,7],deactiv:[0,7],deal:[3,11],dear:5,death:[0,7],debug:[0,5,6,7,8,12,13,14,15,21],dec:0,decai:[0,7],decid:[0,2,7,9,17,18,19,20,21,25],decod:3,decompress:3,decreas:[0,7],deepcopi:8,deeper:[15,32],def:[5,6,8,11,12,13,14,15,18],default_cache_dir:[27,31],default_to_metal:[0,7],defaultdict:19,defer:[0,7],defin:[0,1,7,15,16,20,24,30,32],definit:[1,12,13,14,40],degener:[0,7],degenerate_core_helium_merger_ignit:[0,7],degenerate_core_merger_dredgeup_fract:[0,7],degenerate_core_merger_nucsyn:[0,7],degner:[0,7],degre:[0,7],del:8,delai:[0,7,21],delet:[27,32],delete_grid_vari:32,delta:[19,35],delta_mcmin:[0,7],demonstr:8,den:[0,7],densiti:[12,13,14,30],depend:[0,6,7,19,21,22,24,30,37],deprec:[0,7,20],depth:35,dermin:[0,7],describ:[0,7,18,21,30],descript:[0,7,10,19,21,30,31],design:24,desir:[0,7],destruct:[15,32],detail:[0,6,7,11,19,21],detect:[0,5,7,8,16],detector:5,determin:[0,7,9,12,13,14,15,20,30,32,40],deton:[0,7],dev:[0,7],develop:1,development_requir:[22,37],deviat:[30,35],dewi:[0,7],dex:[0,7,8,35],df2:18,df:[16,17,18,24],di:[15,22,30],diagnost:21,diagram:[0,4,7,22,24],dickonson:30,dict2:2,dict:[1,3,5,6,11,12,13,14,15,16,19,20,21,22,23,25,27,29,30,31,36,39],dict_1:2,dict_2:2,dict_kei:[6,10,11],dictionari:[1,2,3,4,6,8,12,13,14,15,19,20,21,24,26,29,30,31,32,36,39],did:[19,22,37],differ:[0,6,7,8,12,13,14,15,18,19,21,22,24,35,37],differenti:19,dimmer:[0,7,12],dir:[22,28,37],dir_ok:29,direct:[0,7,20],directli:[2,11,21,25,29],director:21,directori:[0,4,7,15,19,20,21,22,25,27,28,29,31,34,37],disabl:[0,7,15],disable_debug:[0,7],disable_end_log:[0,7],disable_ev:[0,7],disc:[0,7,16],disc_legacy_log:[0,7],disc_log2d:[0,7],disc_log:[0,7],disc_log_directori:[0,7],disc_log_dt:[0,7],disc_log_level_non:0,disc_log_level_norm:0,disc_log_level_normal_first_disc_onli:0,disc_log_level_subtimestep:0,disc_log_level_subtimestep_first_disc_onli:0,disc_n_monte_carlo_guess:[0,7],disc_stripping_timescale_infinit:0,disc_stripping_timescale_inst:0,disc_stripping_timescale_orbit:0,disc_stripping_timescale_visc:0,disc_timestep_factor:[0,7],discret:15,discs_circumbinary_from_comenv:[0,7],discs_circumbinary_from_wind:[0,7],disk:[0,7,20],dispers:[0,7,35],displai:[0,6,7,8,16],disrupt:[0,5,7,18],dist:19,distanc:[6,16],distant:16,distefano2017:21,distefano:[25,30],distinct:20,distribut:[0,2,4,7,8,12,15,19,25,30,35],distribution_funct:[6,8,12,13,14,15,20,22,23],dj:[0,7],dlnm1:[8,12,15],dlnm:[13,14],dlnm_1:[13,14,32],dlog10per:[8,12,15],dlogp:30,dlogt:35,dm1:[6,13,14],dm:[0,5,7,13,14,30,35],dm_1:[6,13,14],dn:[19,30],do_analyt:21,do_dry_run:21,doc:[2,6,12,13,14,15,19,22,31,37],doc_fetch:30,docstr:[11,22,24,37],document:[12,13,14,15,21,23,29,31],doe:[0,2,6,7,9,10,11,12,13,14,15,20,21,27,29,30,32,40],doesn:[6,21],doesnt:[18,31],doesntt:25,don:[2,6,19,21,25],done:[0,2,5,6,7,12,13,14,15,18,21,22,29,37],donor:[0,5,7,40],donor_limit_dynamical_multipli:[0,7],donor_limit_envelope_multipli:[0,7],donor_limit_thermal_multipli:[0,7],donor_rate_algorithm_bs:0,donor_rate_algorithm_claeys2014:0,dont:[7,18],doubl:[6,9,15],down:15,dp:30,dphasevol:[6,8,12,13,14,15,32],dprob:[6,8,13,14],dq:[8,12,15],dr2:[0,7],dr3:[0,7],drai:[0,7],dredg:[0,7],drop:11,dry:[6,8,12,14,15,21,32],dry_parallel:32,dry_run:[6,8,12,15],dry_run_hook:21,dry_run_num_cor:21,dstep:30,dt:[0,1,7,19,27,35],dt_limit:10,dtfac:[0,7],dtlimit:36,dtm:[1,9,15],dtype:[16,17,18],due:[22,37],dummi:[21,24,30],dump:[0,3,7,11,20,29],dumpvers:[0,7],duquennoi:30,duquennoy1991:30,dure:[0,5,7,18],dust:[0,7],dwarf:[0,6,7,13,14],dx:[0,7],dynam:[0,7],e2:[0,7],e2_hurley_2002:0,e2_izzard:0,e2_mint:0,e2_prescript:[0,7],e:[0,5,6,7,8,9,11,12,13,14,15,19,20,21,22,25,27,28,29,30,32,34,35,37,40],each:[0,2,7,8,12,13,14,15,16,19,21,25,32,35],eagb:[0,5,7],eagb_wind_beasor_etal_2020:0,eagb_wind_bs:0,eagb_wind_goldman_etal_2017:0,eagbwind:[0,7],eagbwindfac:[0,7],earli:[0,7],early_asymptotic_giant_branch:0,earth:16,easi:[3,11],easier:[15,18,19],ebindi:5,ecc2:30,ecc3:30,ecc:[5,11,15,18,29,30],eccentr:[0,7,9,11,12,13,14,15,16,18,24,30,40],eccentric_rlof_model:[0,7],eccentricity_quadrupl:[0,7],eccentricity_tripl:[0,7],echo:[0,7],eddington:[0,7],edg:[0,6,7,15,32],edit:9,edu:[0,7],eej:5,eff:6,effect:[0,5,7,9,12,21,30],effective_metal:[0,7,18],effici:[0,6,7,8],egg:[22,37],eggleton:[0,7,40],either:[0,2,3,7,12,13,14,15,18,20,21,22,25,32,36,37,38],eject:[0,7,8,16],el:[11,15],elabor:9,elaps:26,eld:[0,7],eldridg:[0,7],electon:[0,7],electron:[0,7],element:[0,1,7,10,16,21,24,36],els:[2,5,8,21],email:36,emp:[0,7],emp_feh_maximum:[0,7],emp_logg_maximum:[0,7],emp_minimum_ag:[0,7],empti:[2,11,28,31,34],enabl:[0,7],encod:[3,29],encount:21,end:[0,5,7,19,21,26,30],end_bss:5,end_index:30,end_rch:5,end_symb:5,end_timestamp:[6,8,12,14,15],energi:[0,7],enhanc:[0,7],enlarg:[0,7],enough:30,ensembl:[0,7,10,21,22,23,29,32,33,36],ensemble_compress:3,ensemble_def:[0,7],ensemble_dictionari:3,ensemble_dt:[0,7],ensemble_factor_in_probability_weighted_mass:21,ensemble_file_typ:3,ensemble_filt:10,ensemble_filter_:[0,7],ensemble_filters_off:[0,7],ensemble_json:3,ensemble_legacy_ensembl:[0,7],ensemble_list:20,ensemble_logdt:[0,7],ensemble_logtim:[0,7],ensemble_macro:[0,7],ensemble_output_:21,ensemble_set:3,ensemble_startlogtim:[0,7],ensemebl:3,ensure_ascii:[3,20,29],enter:[0,7,21],enthalpi:[0,7],entir:[9,11,17,18],entri:[3,19,20],env:[21,24],envelop:[0,4,5,6,7,22],environ:21,eorbf:5,eorbi:5,ep:18,equal:[0,2,7,13,14,15,19],equat:[0,7],equation_of_state_algorithm:[0,7],equation_of_state_paczynski:0,equatori:[0,7],equival:[12,21,25],errno:[22,37],error:[0,2,6,7,8,12,13,14,15,19,21,22,25,29,37],error_on_overwit:25,error_on_overwrit:25,errors_exceed:[6,8,12,14,15],errors_found:[6,8,12,14,15],esa:30,escap:[0,7],escape_fract:[0,7],escape_veloc:[0,7],estim:[6,16,19,21],et:[0,7,30,40],eta:[0,7,8,12],etal:[0,7],etc:[0,7,11,13,14,15,19,20,21,22,24,29,30,37,38],etf:[8,12],euler:[0,7],evalu:[15,30,32,35,40],evan:[0,7],evapor:[0,7],evaporate_escaped_orbiting_object:[0,7],even:[3,10,13,14],event:[0,5,6,7],everi:[0,7,8,19,21,22,37],everyth:[11,15,20,21],everytim:[22,37],evid:[0,7],evolut:[0,1,4,5,6,7,11,12,13,14,15,18,21,22,24,35],evolution_split:[0,7],evolution_splitting_maxdepth:[0,7],evolution_splitting_sn_eccentricity_threshold:[0,7],evolution_splitting_sn_n:[0,7],evolution_stop:8,evolution_typ:[6,8,12,14,15,21],evolutionari:[0,7,11],evolv:[0,4,7,9,20,21],evolve_popul:15,evolve_singl:[9,11,20],exact:[1,2,21],exactli:[0,7,13,14],exampl:[1,2,11,19,30,32,35,38],example_compact_object:15,example_dco:15,example_df:11,example_head:19,example_header_1:18,example_header_2:18,example_log:38,example_log_co:[1,9],example_logging_string_co:9,example_logging_string_post_m:9,example_massloss:[9,11],example_output:11,example_parse_output:[17,19],example_pop:[11,15],example_pop_set:15,example_post_m:9,example_python_population_result:15,example_sn:9,exc_tb:19,exc_typ:19,exc_val:19,exce:[0,7,12],except:[2,5,6,7,12,13,14,15,21,24,31],excess:21,excit:8,execut:[0,7,15,21,32],exist:[0,2,6,7,15,18,21,25,29,31,32],exist_ok:[15,19],exists_ok:29,exit:[0,7,19,20,21,25,28,29,34],exit_after_dry_run:21,exit_cod:21,exp:[8,12,13,14,15,32],expand:15,expect:[6,7,8,12,13,14,21,22,37],experiment:[0,7,19],explain:[4,36],explicitli:[0,1,7],explod:[0,5,7],explor:16,explos:[0,5,6,7,18],expoenti:[0,7],expon:[0,7,19],export_all_info:[15,20],express:[0,7,19],extend:[0,7,8,22,36,37],extens:[3,7,22,23],extern:[0,7],extra:[0,4,7,15,21,22,32,38],extra_text:31,extract:[3,15],extract_ensemble_json_from_str:3,extrapol:[21,30],f4e5925effeb42e69b5be956f400ae41:6,f:[0,5,7,11,15,18,30],fa:30,fabian:[0,7],fabian_imf_log:[0,7],fabian_imf_log_tim:[0,7],fabian_imf_log_timestep:[0,7],factor:[0,2,7,21,35],fade:[0,7],fail:[0,6,7,8,12,19,21,22,29,37],fail_sil:19,failed_count:[6,8,12,14,15],failed_prob:[6,8,12,14,15],failed_system:21,failed_system_log:21,failed_systems_error_cod:[6,8,12,14,15],failed_systems_threshold:21,failsaf:11,failur:[0,7,19,25],fallback:[0,7],fals:[0,3,5,6,7,8,12,14,15,16,19,20,21,24,25,26,27,28,29,32,34,35,36],fancy_parsing_funct:38,far:[0,5,6,7,13,14,16],farmer:0,fase:15,fast:[0,7],faster:[2,12,13,14,15],fatal_open_error:29,favorit:11,fe:[0,7],featur:[2,4,15,22],feed:21,ferguson:[0,7],fetch:11,few:[0,7,8],fewer:11,field:[0,7],fifocach:21,fig:[0,7,18,30],figsiz:[6,8,12,13,14,16,18],figur:[6,8,12,13,14,16,24],file:[0,1,3,5,7,11,15,19,20,21,22,24,25,27,28,29,31,32,34,36,37,38],file_log:[0,7],file_object:29,filehandl:31,filenam:[0,1,3,5,7,11,15,19,20,21,25,28,29,34,38],filenotfounderror:[22,37],filepath:1,fill:[11,19],fill_data:30,filter:[0,2,7,19],filter_arg_dict:19,filter_dict:2,filter_dict_through_valu:2,filter_list:2,filter_valu:19,fin:[0,7],final_mass:18,final_tim:18,find:[2,5,8,15,19,21,27,31],finish:[6,8,12,14,15,19,24,29,34],finit:[6,8,12,13,14],first:[0,2,6,7,8,11,12,13,14,15,16,19,22,25,29,30,37,40],first_giant_branch:0,fishlock:[0,7],fit:[0,2,7,11,30,40],fix:[0,5,7,11,15,19,20,24,29,30],flag:[0,1,20,21,29,35,36],flash:[0,7],flat:[21,30],flatsect:[8,12,15,30],flaw:20,float64:[17,18],float_overflow_check:[0,7],flto:[22,37],flufl:29,flush:[3,20,29],fo:21,focu:8,fold:30,follow:[0,7,9,18,19,21,22,24,30,35,37],font_scal:[6,8,12,13,14,16],fontsiz:18,forc:[0,5,7,21,26],force_circularization_on_rlof:[0,7],force_corotation_of_primary_and_orbit:[0,7],foreach_star:[6,12],form:[0,6,7,8,12,13,14,15,20,25,29,31,36],formal:[0,7],format:[0,2,3,5,7,8,9,11,12,13,14,15,16,18,19,21,28,29,30,32,35],format_ensemble_result:3,format_numb:19,format_stat:29,former:5,formula:[0,7],forward:[0,7],found:[5,6,8,12,14,15,28,30,34],four:[0,7],fourth:16,fraction:[0,7,12,18,21,30],fractions_z0002:18,fractions_z001:18,fractions_z002:18,framework:7,free:[6,8,12],free_persistent_data_memaddr_and_return_json_output:7,free_store_memaddr:7,frequenc:[0,7,16],friction:[0,7],fring:[0,7],from:[0,2,3,5,6,8,10,11,12,13,14,15,16,17,18,19,20,21,24,25,28,29,30,32,34,36,40],from_binary_c_config:1,from_dict:[8,12,13,14,17,18],fryer:[0,7],fsampl:35,ftz:[22,37],full:[4,9,16,19,21,28,34],full_path:19,func:27,func_memaddr:18,function_cach:21,function_cache_default_maxs:21,function_cache_default_typ:21,function_cache_funct:[21,27],function_cache_s:27,function_cache_ttl:21,further:15,futur:16,fuv:[0,7],g:[0,1,2,5,6,7,8,9,11,12,13,14,15,17,18,19,21,22,25,27,28,29,30,34,35,37],ga:[0,7],gaia:[0,7,30],gaia_colour_transform_method:[0,7],gaia_conversion_ubvri_bivariate_jordi2010:[0,7],gaia_conversion_ubvri_riello2020:[0,7],gaia_conversion_ubvri_univariate_evans2018:[0,7],gaia_conversion_ubvri_univariate_jordi2010:[0,7],gaia_conversion_ugriz_bivariate_jordi2010:[0,7],gaia_conversion_ugriz_riello2020:[0,7],gaia_conversion_ugriz_univariate_evans2018:[0,7],gaia_conversion_ugriz_univariate_jordi2010:[0,7],gaia_l_binwidth:[0,7],gaia_teff_binwidth:[0,7],galact:[0,7,35],gallino:[0,7],gamma:[0,7],gap:[0,7],garcia:[0,7],gauss:[0,7],gaussian:[30,35],gaussian_func:30,gaussian_normalizing_const:30,gaussian_zoom:35,gb:[0,7],gb_reimers_eta:[0,7],gb_wind_beasor_etal_2020:0,gb_wind_goldman_etal_2017:0,gb_wind_reim:0,gb_wind_schroeder_cuntz_2005:0,gbwind:[0,7],gbwindfac:[0,7],gcc:[1,22,37],gce:[0,7],gener:[0,1,6,7,8,9,11,12,14,15,17,18,19,20,21,24,25,29,30,31,32,35],general_info:2,generalis:30,geometr:[0,7],geq:6,gerosa:[0,7],get:[0,2,3,4,6,9,11,12,13,14,15,16,18,19,20,22,25,28,30,31,32,34,37,38,40],get_ansi_colour:19,get_arg_kei:19,get_condor_statu:28,get_default:[10,19],get_grid_options_defaults_dict:31,get_grid_options_descript:31,get_help:[10,19],get_help_al:[10,19,20],get_help_sup:[10,19],get_integration_constant_q:30,get_max_multipl:30,get_siz:19,get_slurm_statu:34,get_usernam:19,getitem:2,gettempdir:18,getter:27,giant:[0,6,7,16],giant_branch:0,git:[0,12,13,14,15,19],git_branch:36,git_build:36,github:[19,29],gitlab:22,give:[0,5,7,8,19,20,30,40],given:[0,1,3,7,12,13,14,17,18,19,20,21,25,27,28,29,30,32,34,35,38,40],global:[0,2,7,12,13,14,19,30,35],global_dict:2,gmax:30,gmin:30,gnu:7,go:[0,6,7,10,12,15,20,22,24,37],goal:30,goe:[0,2,7,9,11,24],gogo:[0,7],goldman:[0,7],gonna:30,good:[0,7,11,12,13,14,15,21,40],got:[13,14],gov:[0,7],gravit:[0,6,7,8,15],gravitational_const:6,gravitational_radiation_bs:0,gravitational_radiation_bse_when_no_rlof:0,gravitational_radiation_landau_lifshitz:0,gravitational_radiation_landau_lifshitz_when_no_rlof:0,gravitational_radiation_model:[0,7],gravitational_radiation_modulator_:[0,7],gravitational_radiation_modulator_j:[0,7],gravitational_radiation_non:0,grb:[0,7],great:[0,7,13,14,21],greater:[0,7],grevess:[0,7],grid:[0,4,7,9,11,19,20,22,25,28,29,30,31,32,33,34,35,40],grid_cod:20,grid_ensemble_result:[29,33],grid_log:20,grid_opt:[6,8,11,12,13,14,15,20,25,27,28,29,32,33,34,35],grid_options_default:[20,22,23,27],grid_options_defaults_dict:31,grid_options_descript:[6,15,31],grid_options_description_check:31,grid_options_help:31,grid_result:[6,8,12,13,14,21],grid_vari:[15,21],grid_variable_numb:[6,8,15,32],gridcod:[20,22,23],gridcode_filenam:21,gridtyp:[6,8,15,32],group:[6,12,16,36],grvitation:5,gsl:[22,37],gsl_dir:[22,37],gt:[5,6,7,8,9,11,13,15,16,17,18],guess:[0,7,30],gyr:[5,6,8],gz:29,gzip:29,h5py:[22,37],h:[0,5,7,9,19],ha:[0,1,2,5,6,7,8,9,10,12,13,14,15,18,19,21,26,29,32],hachisu:[0,7],hachisu_disk_wind:[0,7],hachisu_ignore_qcrit:0,hachisu_qcrit:[0,7],hack:31,had:[6,8,12,13,14,20],half:[0,7,30],hall:[0,7],handi:[0,7],handl:[0,2,3,4,7,11,19,20,21,25,32,33,36,38,40],handle_ensemble_string_to_json:3,happen:[0,6,7,8],hardcod:[9,12,13,14,15],hardli:36,have:[0,2,3,4,5,6,7,8,9,11,12,13,14,15,18,19,20,21,22,24,25,28,29,31,34,37,38],haven:6,hbb:[0,7],hbbtfac:[0,7],hd:24,hdf5:19,hdf5file:19,he:[0,5,7],head:16,header:[1,6,8,9,11,12,13,14,15,18,19],headerlin:15,headlin:21,hegb:[0,5],hehg:0,height:[8,12,15,30],held:[28,34],helium:[0,6,7],helium_flash_mass_loss:[0,7],helium_white_dwarf:0,help:[0,4,5,7,11,12,13,14,15,19,31],help_al:[0,7],hem:0,henc:[0,7,8,13,14,16],hendrik:[0,18,22,37],here:[1,6,7,9,11,12,13,14,16,18,19,20,21,24,30,38],hertzsprung:[0,4,7,22],hertzsprung_gap:0,hertzstrpung:[0,7],heuvel:[0,7],hewd:[0,7],hewd_hewd_ignition_mass:[0,7],hex:21,hg:[0,7],hi:30,high:[0,7,13,14,30],higher:[0,6,7,8,12,13,14,15,19,21,22,30,37],highlight:2,histogram:8,histori:30,hole:[0,4,6,7,22],home:7,homogen:[0,7],hood:11,hook:21,hopefulli:[0,7],hot:[0,7],hour:19,how:[0,2,5,6,7,8,9,11,12,13,14,15,18,21,26,30,32],howev:[0,7,9,12,13,14,15],hoyl:[0,7],hpc:[20,21,22,23,28,34],hpc_can_join:25,hpc_check_requir:25,hpc_dir:25,hpc_dump_statu:25,hpc_force_join:21,hpc_get_statu:25,hpc_grid:25,hpc_id_filenam:25,hpc_id_from_dir:25,hpc_job:25,hpc_job_task:25,hpc_job_typ:25,hpc_jobid:[20,25],hpc_jobid_tupl:25,hpc_join_from_fil:25,hpc_join_previ:25,hpc_joinlist:25,hpc_load_joinfiles_list:25,hpc_make_joiningfil:25,hpc_njob:25,hpc_path:25,hpc_queue_stat:25,hpc_rebuild_joinlist:[21,25],hpc_restor:25,hpc_set_statu:25,hpc_snapshot_filenam:25,hpc_statu:25,hpc_task:25,hpc_touch:25,hr:24,hr_diagram:24,hrd:[0,6,7,8],hrdiag:[0,7],hrdiag_output:[0,7],htcondor:21,html:[2,6,15,22,29,37],http:[0,1,2,6,7,15,19,29,30],human:19,hurlei:[0,7],hut:[0,7],hybrid:[0,7],hydro:[0,7],hydrogen:[0,6,7],i:[1,2,5,6,7,8,9,11,12,13,14,15,16,19,20,21,22,25,30,32,36,37,40],ia:[0,7,8],iadd:2,ib:[0,5,7],ibc:[0,7],id:[20,21,25,28,29,30,34],id_cor:9,idea:[15,24],ident:2,idum:[0,7],ignit:[0,6,7],ignor:[0,2,7,9,11,15,18,21,30,32],ii:[0,7,18],iia:[0,7],iloc:[11,18],images:21,imf:[0,7,13,14,30],imf_chabrier2003:30,imf_scalo1986:30,imf_scalo1998:30,imf_tinsley1980:30,immedi:[0,6,7,21],implement:[0,2,7,21],impli:[0,7],implic:[13,14],impos:[6,8,12,13,14,15],imposs:8,improv:[30,35],inclin:[0,7],inclination1:[0,7],inclination2:[0,7],inclination3:[0,7],inclination4:[0,7],inclini:[0,7],incliniation_quadrupl:[0,7],incliniation_tripl:[0,7],includ:[0,1,2,6,7,9,11,13,14,15,16,19,20,22,24,29,30,37],include_binary_c_default:[15,20],include_binary_c_help_al:[15,20],include_binary_c_version_info:[15,20],include_default:[15,29],include_popul:15,include_population_set:20,incom:[0,7],increas:[0,5,7,8,12,13,14],inde:[0,7,13,14],indent:[2,3,11,20,29],independ:30,index:[0,7,10,11,16,21,22,25,30,32],indic:[0,7,30],individu:[4,12,22],individual_nova:[0,7],induc:[0,7],inertia:[0,7],info:[7,10,15,19,20,22,24,36,37],inform:[0,1,3,4,6,9,11,12,13,14,15,19,20,21,24,25,30,31,33,36],init:20,init_abund:[0,7],init_abund_dex:[0,7],init_abund_mult:[0,7],init_abunds_onli:[0,7],initi:[0,4,5,7,10,11,18,20,30],initial_abundance_hash:20,initial_abundance_mix:[0,7],initial_abunds_onli:[0,7],initial_grid:18,initial_mass:[11,18],initial_tim:18,inlin:18,inner:[0,7,16],input:[1,3,7,10,11,19,20,21,22,24,29,30,31,38,40],input_dict:2,insert:[15,32],insid:[0,7],inspect:[2,11,24],inspect_dict:2,inspir:[1,24,40],instabl:[0,7],instal:[21,40],install_without_depend:[22,37],instanc:[2,11,12,13,14,15,30],instant:[0,7],instantli:[0,7],instead:[0,5,7,13,14,19,21],integ:[0,6,7,21,35,40],integr:[12,13,14,30,35],integrals_str:30,intens:[13,14],interact:[0,3,5,6,7,8,16,18,31],interfac:[7,16,19,22,25,37],interfer:[22,37],intermedi:8,intern:[0,7,10,21],internal_buff:[0,7],internal_buffering_off:0,internal_buffering_print:0,internal_buffering_stor:0,interpol:[30,35],interpolate_in_mass_izzard2012:30,interpolator_nam:30,intershel:[0,7],interstellar:[0,7],intger:[0,7],intro:[0,7],introduc:5,introduct:6,inv:[5,18],invers:40,invert_xaxi:6,involv:[0,7],inward:[0,7],io:29,ipykernel_216542:16,ipykernel_519112:13,ipynb:[12,13,14,15],is_capsul:19,isfil:15,isfloat:19,isint:19,isn:[13,14,19],isnt:15,isotop:[0,7,10,36],isotope_hash:20,isotope_list:20,issu:25,item:[1,2,6,8,12,13,14],iter:19,its:[0,2,3,7,12,13,14,15,16,19,21,22,24,25,29,31,35,36,37,38],itself:[3,6,9,11,21,22,30,37],iwamoto:[0,7],izzard2012_period_distribut:30,izzard:[0,6,7,8,11,12,13,14,15,22,37],jager:[0,7],jaschek:30,jeff:[22,37],jej:5,jerki:6,jf:5,jia:[0,7],job:[20,21,25,28,34],job_id:25,job_index:25,jobarrayindex:[21,34],jobid:[20,21,34],john:[0,7],join:[7,9,11,15,18,21,25],joinfil:25,joiningfil:25,joinlist:[21,25],jorb_in:5,jorb_out:5,jordi:[0,7],json:[3,7,11,15,20,21,29],json_data:2,jsondecod:3,jsonencod:3,jtot_in:5,jupit:16,jupyt:[22,37],just:[0,2,6,7,8,15,18,19,20,21,22,29,36,37,40],k1:[5,11,18],k2:[5,11,18],k:[0,6,7,16,30],kap:[0,7],kappa:[0,7],kaps_rentrop:[0,7],karaka:[0,7],keep:[8,15,29],kei:[1,2,3,6,10,11,15,16,18,19,20,21,24,27,29,30,31,32,36],kelvin:[0,7],keplerian:[0,7],keys_to_float:2,keyword:[13,24,38],kick:[0,5,7,18,21],kick_backward:0,kick_forward:0,kick_inward:0,kick_outward:0,kick_random:0,kick_straight_up:0,kick_velocity_custom:0,kick_velocity_fix:0,kick_velocity_maxwellian:0,kill:[1,9,15,20],kilonova:6,kim:[0,7],kind:[0,7],kippenhahn:[0,7],klencki:[0,7],km:[0,7],know:[0,1,7,10,11,13,14,21,29,31],known:[0,6,7,11,12,13,14,15,20,30,38],kroupa2001:[15,30,32],kroupa:[13,14,30],krticka:[0,7],ktg93:30,kwarg:[18,20,24,25,26,27,28,29,30,31,32,33,34,35,36,38],l1:5,l2:[0,7],l:[0,6,7,12,13,14],l_:[12,13,14],label:[6,18,30],lambda:[0,5,7,8],lambda_:8,lambda_c:[0,5,7,8],lambda_ce_dewi_tauri:[0,7],lambda_ce_klencki_2020:[0,7],lambda_ce_polytrop:[0,7],lambda_ce_wang_2016:[0,7],lambda_enthalpi:[0,7],lambda_ion:5,lambda_ionis:[0,7],lambda_min:[0,7],lambda_mult:[0,7],lambda_multipli:[0,7],lambda_v:30,lamer:[0,7],landau:[0,7],langer:[0,7],languag:6,larger:[0,6,7],last:[4,13,16,18,19,30],last_st:18,last_stellar_type_change_time_1:18,lastli:[7,11],late:18,later:[12,13,14,21],latest0:[6,8,12],latest1:[6,8,12],latest2:[6,15],latest3:6,latest4:6,latest5:6,latest:[22,37],latter:[0,7],launch:[21,28,34],law:[13,14,30],law_const:30,lbv:[0,7],ld_library_path:[22,37],ldist:[13,14],lead:[0,6,7,12,13,14,15,29,30,40],learn:[9,21],least:[22,37],leav:[0,7,21],left:[0,7],legaci:[0,7],legacy_yield:[0,7],legend:[16,18],len:[5,6,11,15,18],length:[5,19],lengthen:[0,7],leq:6,less:[0,1,4,5,7,29,30],let:[5,8,11,12,13,14,15,16,20],level:[1,6,19],lfucach:21,li7:[0,7],li:[0,7],lib:[7,11,17,18,22,37],libbinary_c:21,libcustom_logging_0639ee205c7d4782b4a27378f5d890bd:11,libcustom_logging_dafa15d2b1e64e19972ac0e9eb5c9a55:11,libgsl:[22,37],libmemo:[22,37],librari:[0,1,6,7,9,18,20,21,38],library_path:[22,37],librinterpol:[22,37],life:8,lifetim:[0,7,8,12,13,14,15,35],lifshitz:[0,7],like:[0,1,6,7,8,12,13,14,15,18,19,21,22,24,29,35,37],limit:[0,6,7,8,12,13,14,15,21,24],line:[1,5,6,8,9,11,12,13,14,15,16,17,19,20,21,22,24,29,35,37],linear2:21,linear:[0,7,12,13,14,21,30,35],linear_extrapolation_q:30,linearli:[13,14,35],linedata:[6,8,12,13,14],lineplot:[6,8,12,13,14,16],linewidth:[6,8,12,13,14,16],linker:1,linspac:35,linux:7,list:[0,1,2,3,6,7,8,11,12,13,14,15,16,19,21,25,27,30,32,35,38],list_arg:[0,7],list_of_sub_kei:2,lit:[0,7],lithium:[0,7],lithium_gb_post_1dup:[0,7],lithium_gb_post_heflash:[0,7],lithium_hbb_multipli:[0,7],lithium_t:[0,7],littl:[5,6,8,12,16,27],littleton:[0,7],liu:[0,7],ll:[9,10,13,14,16,29],llnl:[0,7],ln:30,lnm1:[8,12,13,14,15],lnm_1:[13,14,32],load:[0,1,3,6,7,8,9,11,12,13,14,15,18,19,20,21,24,25,29,32],load_ensembl:3,load_logfil:19,load_population_object:29,load_snapshot:29,lobe:[0,5,7,8,40],loc:16,local:[7,21,30],locat:[0,7,21,22,30,35,37],lock:[5,29],lock_lifetim:29,lock_object:29,lock_suffix:29,lock_timeout:29,locked_clos:29,locked_open_for_writ:29,lockfil:29,lodder:[0,7],log10:[0,6,7,8,12,13,14,15,30,35],log10m1:21,log10mass:35,log10p:30,log10per:[8,12,15],log10pmin:30,log:[0,1,4,5,7,11,16,17,19,21,22,24,29,30,32,35,37,38,40],log_:[6,8,12,13,14],log_arg:21,log_args_dir:21,log_arrow:[0,7],log_dt:[8,21],log_every_timestep:[9,11],log_fil:[5,21],log_filenam:[0,5,7,11,18,38],log_newlin:21,log_runtime_system:21,logarithm:[13,14,30,35],logensembletim:[0,7],logfil:[11,19,22,37],logg:[0,6,7],logger:15,logging_dict:1,logging_lin:[9,17,18],loggrav:6,logi:17,logic:[1,2,9,20,21],logl:6,logmass:[30,35],logp:30,logper:[8,30],logperiod:30,logperrang:[8,12],logspac:35,logteff:6,long_spectral_typ:30,longer:[0,6,7,8],longnam:[6,8,12,13,14,15,32],look:[1,3,6,8,12,13,14,15,18,22,30,37],lookback:[0,7],loon:[0,7],loop:[6,8,11,12,13,14,15,29,32],loos:24,lose:[0,7,18],loss:[0,5,7,11,12,16],lost:[0,7,8,18],lot:[6,12,13,14,15,16,21,36,38],lovegrov:0,low:[0,6,7,8,13,14,30],low_mass_m:0,low_mass_main_sequ:0,lower:[0,7,12,15,30,32,35],lowest:30,lru:27,lru_:27,lrucach:21,lsoda:[0,7],lsun:[0,7,24],lt:[6,7,8,11,13,15,16,17],lucianopaz:29,lugaro:[0,7],luminos:[0,4,6,7,22,24],luminosity_1:24,luminosity_2:24,luminosu:6,lw:[0,7],lynnett:[0,7],m01:5,m0:30,m1:[0,5,7,8,9,11,12,13,14,15,18,29,30,40],m2:[5,8,9,11,12,15,18,29,30,40],m3:30,m4:30,m:[0,5,6,7,8,12,13,14,16,18,19,30,40],m_1:[0,5,6,7,8,9,10,11,12,13,14,15,16,17,18,32,38],m_2:[0,5,6,7,8,9,11,12,15,17,18],m_3:[0,7],m_4:[0,7],m_:18,m_max:[15,30,32],m_min:[15,32],m_sun:6,maccretor:[0,5,7],machin:[8,21,22,37],macro:[0,7,10,19,36],madau:30,made:[6,22,25,37],maeder:[0,7],magellan:[0,7],magnet:[0,7],magnetic_braking_algorithm:[0,7],magnetic_braking_algorithm_andronov_2003:0,magnetic_braking_algorithm_barnes_2010:0,magnetic_braking_algorithm_hurley_2002:0,magnetic_braking_algorithm_rappaport_1983:0,magnetic_braking_factor:[0,7],magnetic_braking_gamma:[0,7],magnitud:19,mai:[0,7,8,12,29],main:[0,1,6,7,9,12,13,14,15,18,21,22,37],main_sequ:[0,7,12,13,14,18],mainprocess:[6,8,12],major:[0,7],make:[0,1,2,3,5,6,7,8,11,12,13,14,15,16,18,19,20,21,22,24,25,28,29,30,37,38,40],make_analytics_dict:26,make_build_text:19,make_condor_dir:28,make_slurm_dir:34,makedir:[15,19],makejoiningfil:25,manag:[19,22,37],mani:[0,6,7,8,10,12,13,14,15,21,28],manual:[9,21],manufactur:[0,7],map:21,mar:16,maria:[0,7],mass:[0,1,2,4,5,6,7,8,10,11,12,15,16,18,19,21,24,30,32,35,36,38,40],mass_1:[15,18,24],mass_2:[15,18,24],mass_accretion_for_eld:[0,7],mass_accretor:40,mass_donor:40,mass_evolut:24,mass_for_hestar_ia_low:[0,7],mass_for_hestar_ia_upp:[0,7],mass_loss_m:18,mass_lost:18,mass_of_pmz:[0,7],mass_rang:18,mass_str:30,massiv:[0,4,5,6,7,8,12,16,22,30],massless:[0,7],massless_remn:0,massloss:0,massrang:[6,8,12,13,14],master:[21,24],match:[0,2,6,7,11,12,15,16,21,24,27],materi:[0,6,7],math:[6,8,12,13,14,15,16,32,35],mathieu:30,mathrm:[6,8,12,13,14],matplotlib:[6,8,13,14,16,18,22,24,37],matter:[0,7],mattsson:[0,7],mattsson_mass_loss:[0,7],mattsson_orich_tpagbwind:[0,7],max:[0,7,8,9,12,13,14,15,21,30],max_bound:[30,35],max_column:[6,8,16],max_evolution_tim:[0,1,6,7,8,9,11,12,13,14,15,16,18,35],max_hewd_mass:[0,7],max_logp:30,max_model_numb:[0,7],max_multipl:30,max_neutron_star_mass:[0,7],max_queue_s:21,max_row:[6,8,16],max_stellar_angmom_chang:[0,7],max_stellar_type_1:[0,7],max_stellar_type_2:[0,7],max_stellar_type_3:[0,7],max_stellar_type_4:[0,7],max_tim:[5,11,18],max_val:30,maxcount:5,maxdm:35,maximum:[0,6,7,8,9,12,13,14,15,21,30,35,40],maximum_mass_ratio_for_instant_rlof:[0,7],maximum_mass_ratio_for_rlof:40,maximum_mcbagb_for_degenerate_carbon_ignit:[0,7],maximum_nuclear_burning_timestep:[0,7],maximum_timestep:[0,7],maximum_timestep_factor:[0,7],maxmimum:[0,7],maxsiz:21,maxwellian:[0,7],mayb:24,mayor:30,mb:[6,8,12,14,15,19,21],mc13_pocket_multipli:[0,7],mc1:5,mc:[0,5,7,15,18,29],mch:[0,7],mcmin:[0,7],mdonor:[0,5,7],mean:[0,5,7,19,21,22,28,30,34,35,37],meant:21,measur:19,medium:[0,7],mega:30,megabyt:21,mem:[8,12],mem_us:19,memaddr:[7,9],memori:[1,6,7,8,9,12,14,15,18,19,20,21,29,40],menv:[0,5,7],mer:5,mercuri:16,merg:[0,2,5,6,7,8,21,25,29,30],merge_dict:[2,10],merge_multipl:30,merge_popul:29,merge_populations_from_fil:29,merger:[0,5,7],merger_angular_momentum_factor:[0,7],merger_mass_loss_fract:[0,7],mesa:[22,37],mesasdk_init:[22,37],mesasdk_root:[22,37],mess:16,messag:[19,20],messi:6,mestel:[0,7],met:[15,20,25,32],metadata:[20,22,23,32],metal:[0,5,6,7,8,9,11,12,13,14,15,16,17,18,30,40],metallicity_0002:18,metallicity_001:18,metallicity_002:18,method:[0,7,9,11,12,13,14,15,18,20,21,29,31,32,36],meynet:[0,7],mf1:5,mf2:5,might:[2,3,8,12,15,16,19,21,22,29,37],milki:[0,7],miller:[0,7],min:[8,9,12,13,14,15,30],min_bound:[30,35],min_logp:30,min_per:30,min_val:30,mind:18,mindm:35,minimal_verbos:19,minimum:[0,7,19,21,30,35,36,40],minimum_co_core_mass_for_carbon_ignit:[0,7],minimum_co_core_mass_for_neon_ignit:[0,7],minimum_donor_menv_for_comenv:[0,7],minimum_envelope_mass_for_third_dredgeup:[0,7],minimum_helium_ignition_core_mass:[0,7],minimum_mcbagb_for_nondegenerate_carbon_ignit:[0,7],minimum_orbital_period_for_instant_rlof:[0,7],minimum_period_for_rlof:40,minimum_separation_for_instant_rlof:[0,7],minimum_separation_for_rlof:40,minimum_stellar_mass:36,minimum_time_between_pn:[0,7],minimum_timestep:[0,7],mint:[0,7],mint_data_cleanup:[0,7],mint_dir:[0,7],mint_disable_grid_load_warn:[0,7],mint_fallback_to_test_data:[0,7],mint_hard_max_nshel:[0,7],mint_hard_min_nshel:[0,7],mint_kippenhahn:[0,7],mint_kippenhahn_companion_stellar_typ:[0,7],mint_kippenhahn_stellar_typ:[0,7],mint_maximum_nshel:[0,7],mint_maximum_shell_mass:[0,7],mint_metal:[0,7],mint_minimum_nshel:[0,7],mint_minimum_shell_mass:[0,7],mint_ms_rejuven:[0,7],mint_nshel:[0,7],mint_nuclear_burn:[0,7],mint_remesh:[0,7],mint_use_zams_profil:[0,7],minut:[8,19],mira:[0,7],misc:[7,22],miscellan:[10,36],miss:[0,7,12,13,14,19,31],mistak:21,mix:[0,2,7,21],mixtur:[0,7,12],mmax:[13,14,30,35],mmin:[13,14,21,30,35],mnra:40,mode:29,model:[0,1,6,7,8,9,11,12,13,14,15,16,17,18,21],model_numb:[12,13,14],modif:4,modifi:[0,2,7,9,22,37],modul:[0,7,8,10,12,13,14,15,16,21,23],modulo:21,moe2017_opt:21,moe:[15,22,25,30],moe_di_stefano_2017:20,moe_di_stefano_2017_multiplicity_fract:30,moe_di_stefano_2017_pdf:30,moment:[0,6,7,9,15,18,35],momenta:[0,7,24],momentum:[0,7,16],monoton:[13,14],mont:[0,7,21],monte_carlo_kick:[0,7],more:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,24,35,37],most:[6,7,8,13,14,16,19],mostli:[6,8,12,13,14,15,18,19,21,24,31,38],mount:29,move:[0,6,7],mrucach:21,ms:[0,5,7,9,12],msgpack:29,mstart:5,msun:[0,6,7,9,11,12,13,14,16,18,30,35,36],mu:[0,7],much:[0,6,7,8,12,15,18,19,26],multipl:[0,2,6,7,21,30],multiplc:[0,7],multipli:[0,2,7,13,14,21,35],multiplicity_arrai:30,multiplicity_fraction_funct:21,multiplicity_model:21,multiplicity_modul:21,multiply_float_valu:2,multiply_values_dict:[2,10],multiprocess:21,must:[0,2,6,7,8,11,12,13,14,15,16,29,32,35],mw:[0,7],my:11,my_stellar_data:[1,9,15,17,18],myr:[0,6,7,8,11,12,13,14,16,35],n100:[0,7],n100_z0:[0,7],n100h:[0,7],n100l:[0,7],n10:[0,7],n150:[0,7],n1600:[0,7],n1600c:[0,7],n1:[0,7],n200:[0,7],n20:[0,7],n300c:[0,7],n3:[0,7],n40:[0,7],n5:[0,7],n:[0,1,5,6,7,8,9,11,12,13,14,15,17,18,19,21,25,30],n_logging_stat:21,naked_helium_star_giant_branch:0,naked_helium_star_hertzsprung_gap:0,naked_main_sequence_helium_star:0,name:[1,2,5,6,7,8,12,13,14,15,16,18,19,21,28,29,31,32,38,39],nameerror:16,narrow:[13,14],natur:[0,7,13,14],nauenberg:[0,7],nazehdin:0,nb:[0,7],nbinary_c:18,ncol:18,nearer:[0,7],nearest:[8,12,13,14],nebula:[0,7],necessari:[8,15,16,18,19,20,34],need:[0,2,7,9,11,12,13,14,15,16,18,21,22,25,30,37,40],neg:[0,2,7,35],neither:[0,7,20],neleman:[0,7],nelemans_gamma:[0,7],nelemans_max_frac_j_chang:[0,7],nelemans_minq:[0,7],nelemans_n_comenv:[0,7],nelemans_recalc_eccentr:[0,7],nemp:[0,7],nemp_cfe_minimum:[0,7],nemp_nfe_minimum:[0,7],nenamg:[0,7],neon:[0,6,7],neptun:16,nest:[2,15,32,36],network:[0,7,10],neutrn:[0,7],neutron:[0,6,7,15],neutron_star:0,never:[0,6,7,13,14,21,27],newdict:2,newer:[0,2,7],newli:[0,7],newlin:[19,21,29],newnam:32,newobj:25,newopt:[2,30],newpop:29,newton:[0,7],next:[12,13,14,15,19],nf:[21,29],nfs_flush_hack:29,nfspath:29,nice:[20,24],nieuwenhuijzen:[0,7],nieuwenhuijzen_windfac:[0,7],nine:6,nmax:30,no_thermohaline_mix:[0,7],nocach:21,node:21,noecho:[0,7],noechonow:[0,7],noel:[0,7],nolowq:21,nomin:[0,7],non:[0,2,7,13,14,21,29],nonconservative_angmom_gamma:[0,7],none:[0,1,2,3,5,6,7,8,12,14,15,16,18,19,20,21,25,27,28,29,30,31,32,34,35,40],nonetyp:2,nonzero:21,nor:[0,7],norm:21,normal:[0,2,7,20,25,35,36],normalis:[2,21,30],normalize_dict:2,normalize_multipl:21,nospac:19,notabl:15,notat:19,note:[0,5,6,7,12,13,14,15,18,19,21,25,29,32,35,36],notebook:[5,6,7,8,9,10,11,12,13,14,15,16,22,37],notebook_api_funct:11,notebook_bhbh:5,notebook_comenv:8,notebook_custom_log:[11,12,13,14,15],notebook_hrd:6,notebook_individual_system:[9,11,12,13,14,15],notebook_luminos:[13,14],notebook_luminosity_funct:12,notebook_luminosity_function_binari:[13,14],notebook_popul:[11,15],notebook_solar_system:16,noteworthi:4,noth:[2,21,25,29],notic:[13,14],notifi:38,nov:18,nova:[0,6,7,8],nova_faml_multipli:[0,7],nova_irradiation_multipli:[0,7],nova_retention_algorithm_claeys2014:0,nova_retention_algorithm_const:0,nova_retention_algorithm_hillman2015:0,nova_retention_fract:[0,7],nova_retention_method:[0,7],nova_timestep_accelerator_index:[0,7],nova_timestep_accelerator_max:[0,7],nova_timestep_accelerator_num:[0,7],now:[0,2,5,6,7,8,9,11,12,13,14,15,16,18,19,30],now_object:19,np:[11,17,18,35],nre:[12,35],nrow:18,ns:[0,1,7,8,9,15],nsep:8,nsep_max:8,nsep_min:8,nstar:[6,12],nuclear:[0,7],nuclear_mass_hash:20,nuclear_mass_list:20,nucleosynthesi:[0,7,36],nucleosynthesis_sourc:[10,36],nucreacmult:[0,7],nucsyn:[7,22],nucsyn_angelou_lithium:[0,7],nucsyn_gce_outflow_check:[0,7],nucsyn_hbb:[0,7],nucsyn_metal:[0,7],nucsyn_network:[0,7],nucsyn_network_error:[0,7],nucsyn_s_process:[0,7],nucsyn_solv:[0,7],nucsyn_third_dredge_up:[0,7],nugi:[0,7],nullcach:[21,27],num_ansi_colour:[0,7],num_cor:[6,8,12,13,14,15,21],num_cores_avail:21,number:[0,2,3,5,6,7,8,12,13,14,15,16,18,19,20,21,22,25,29,30,31,32,35,37],numer:2,numpi:[11,15,17,18,19,22,32,35,37],o:[3,7,19,22,30],obj:[3,19],object:[0,2,3,4,7,16,19,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,38],object_hook:3,object_pairs_hook:3,object_parse_funct:11,observ:[12,13,14],obtain:[0,6,8,12,13,14,29],obvious:9,occur:[0,7,40],odot:[6,8,18],off:[0,5,7,15,18,21],off_m:[5,11,18],offset:[0,7],oh:5,ohio:[0,7],ok:[25,29],old:[13,14,21,32],oldnam:32,omega:[0,5,7,18],on_exit_or_evict:21,onc:[0,7,35],one:[0,2,7,10,13,14,15,16,17,18,21,24,27,29,31,35,38],onewd:0,onli:[0,2,6,7,9,12,13,14,15,16,18,19,21,25,29,35,40],onset:[0,7],onto:[0,7,30],oop:5,opac:[0,7],opacity_algorithm:[0,7],opacity_algorithm_ferguson_op:0,opacity_algorithm_paczynski:0,opacity_algorithm_star:0,opal:[0,7],open:[3,5,11,15,18,29],open_ensembl:3,opendir:29,oper:[2,29],opm:30,opt:[2,5,7,30],option:[0,1,2,6,7,8,12,13,14,15,16,17,18,19,20,22,25,27,29,30,31,32,35,37,40],orb:[8,15,29],orbit:[0,5,7,8,12,16,24,30,40],orbit_evolut:24,orbital_eccentr:16,orbital_inclin:[0,7],orbital_inclinationi:[0,7],orbital_period:[0,5,7,8,9,11,12,15,17,18,40],orbital_period_quadrupl:[0,7],orbital_period_tripl:[0,7],orbital_phas:[0,7],orbital_phase_quadrupl:[0,7],orbital_phase_tripl:[0,7],orbital_separ:16,orbiting_object:[0,7,16],orbiting_objects_close_pc_threshold:[0,7],orbiting_objects_log:[0,7,16],orbiting_objects_tides_multipli:[0,7],orbiting_objects_wind_accretion_multipli:[0,7],order:[2,4,15,19,32],ordereddict:2,org:[0,2,7,30],orient:8,origin:[16,22,29,37],original_command_lin:21,original_submission_tim:21,original_working_diretori:21,os:[5,6,8,11,12,13,14,15,16,18,19],other:[0,1,2,6,7,10,11,12,13,14,15,19,21,22,24,25,30,31,37],otherwis:[0,7,19,20,21,25,26,28,29,31,34],our:[6,8,12,13,14,21,30],out:[2,3,6,8,9,12,13,14,16,19,21,30,31],outcom:[0,7],outer:[0,6,7],outermost_core_mass:6,outfil:[15,20],outfile_nam:1,outfilenam:15,output:[1,2,3,4,5,7,9,10,11,16,17,18,19,20,21,22,24,29,36,37,38,40],output_dict:[6,8,11,12],output_dir:[11,15,29],output_fil:[11,19,29,31],output_filenam:[15,29],output_lin:19,outsid:[0,7,30],outward:[0,7],over:[2,6,8,10,11,12,13,14,15,19,20,29],overflow:[0,5,7,8],overhead:21,overlap:2,overrid:[2,18,21,30,32,35],overriden:15,overshoot:[0,7],overspin_algorithm:[0,7],overspin_bs:[0,7],overspin_massloss:[0,7],overview:7,overwrit:[21,25],own:[9,11,15,17,18,21,22,32,37],oxygen:[0,6,7],oxygen_neon_white_dwarf:0,p0:30,p1:30,p2:30,p3:30,p:[6,8,12,13,14,16,30,31],p_:8,p_in:5,p_out:5,packag:[3,7,15,19,22,32,33,34,35,37],paczynski:[0,7],pad:[8,12,13,14],pad_output_distribut:[6,8,12,13,14,19],page:[0,6,7,15,22,37],pair:[0,2,5,19,32,36],panda:[6,8,11,12,13,14,16,17,18,19,22,24,37],pane:24,panel:[0,7],paper:[0,7],parallel:32,param:19,param_nam:19,paramet:[1,2,3,4,6,7,8,9,11,12,13,14,15,19,20,21,22,24,25,27,28,29,30,31,32,34,35,36,38,40],parameter_nam:[3,6,7,8,10,12,13,14,15,19,32],parameter_value_input_typ:[10,19],pars:[3,4,6,8,11,12,13,14,15,18,19,20,24,36,38],parse_binary_c_version_info:36,parse_cmdlin:20,parse_const:3,parse_data:8,parse_float:3,parse_funct:[6,8,11,12,13,14,15,20,21,38],parse_function_hr_diagram:24,parse_function_mass:24,parse_function_orbit:24,parse_int:3,parse_output:18,parsec:30,part:[6,7,11,12,13,14,15,18,20,30,32,40],partial:[0,7],particularli:[0,7],partit:21,partner:29,pasp:30,pass:[7,9,11,15,16,18,19,20,21,22,24,25,28,29,34,35,37,38],path:[11,15,18,19,21,22,25,27,28,29,31,34,37],patho:[22,37],pd:[6,8,11,12,13,14,16,17,18],pdf:[0,7,18,22,30,37],peak:[8,13,14,35],peak_normalized_gaussian_func:35,pend:[0,5,7],per:[0,5,7,8,11,12,15,19,21,29,40],percentag:[0,7],peret:[0,7],perfect:[13,14],perfectli:[12,13,14],perform:[0,7,29],perhap:[0,6,7,8,20],periastron:[0,7],pericent:40,period:[0,5,7,8,9,11,12,13,14,15,16,18,24,30,40],period_str:30,perl:[1,2,12,13,14,15,28],persist:7,persistent_data:7,pgo:[0,7],phase:[0,6,7,8,12,13,14],phasevol:[0,7,15],phdi:0,phi:[5,18],photoevapor:[0,7],php:30,physic:[6,12,13,14,15,21],pick:24,pickl:29,pid:20,piec:[15,18,32],pinnsonneault:[0,7],pisn:0,pkg:[22,37],pl:20,place:[0,7,12,19,21],placehold:[24,27,28,29],plai:[0,7,13,14],plan:21,planet:16,planetari:[0,7],plaw2:21,pleas:[0,6,7,12,13,14,15,19,21,27],plot:[0,6,7,8,11,12,13,14,16,17,18,24],plot_data:[8,12,13,14],plot_funct:[22,23],plot_hr_diagram:24,plot_hr_diagram_singl:24,plot_mass:24,plot_orbit:24,plot_system:24,plot_typ:24,plt:[6,8,13,14,16,18],plu:[0,7],pluto:16,pm:24,pms_mass_1:24,pms_mass_2:24,pn:[0,7],pn_comenv_transition_tim:[0,7],pn_fast_wind:[0,7],pn_fast_wind_dm_agb:[0,7],pn_fast_wind_dm_gb:[0,7],pn_fast_wind_mdot_agb:[0,7],pn_fast_wind_mdot_gb:[0,7],pn_hall_fading_time_algorithm:[0,7],pn_hall_fading_time_algorithm_maximum:[0,7],pn_hall_fading_time_algorithm_minimum:[0,7],pn_resolv:[0,7],pn_resolve_maximum_envelope_mass:[0,7],pn_resolve_minimum_effective_temperatur:[0,7],pn_resolve_minimum_luminos:[0,7],pne:[0,7],png:18,pogg:[0,7],point:[0,3,6,7,19,20,21,22,29,30,35,37],poisson:[21,30],pol:[0,7],polytrop:[0,7],poor:[13,14],pop:[5,9,16,27],pop_macro:9,popitem:27,popul:[0,3,4,7,20,22,23,37,38],population_class:[22,23],population_extens:[20,25,26,27,28,29,30,31,32,33,34,35,36],population_id:21,population_nam:[6,8,12,14,15],population_object:29,population_set:20,posit:[0,7,8,30],possibl:[0,1,2,6,7,11,16,19,21,22,27,30,31,37],post:[0,5,6,7,8,9,20],post_ce_adaptive_menv:[0,7],post_ce_envelope_dm_eagb:[0,7],post_ce_envelope_dm_gb:[0,7],post_ce_envelope_dm_tpagb:[0,7],post_ce_objects_have_envelop:[0,7],post_comenv_period:8,post_sn_orbit_bs:0,post_sn_orbit_method:[0,7],post_sn_orbit_tt98:0,postagb_legacy_log:[0,7],postagb_wind_gi:0,postagb_wind_krticka2020:[0,7],postagb_wind_non:[0,7],postagb_wind_use_gi:[0,7],postagbwind:[0,7],postcod:[6,8,15,32],potenti:[0,7],pow2:6,power:[0,7,8,13,14,21,30],powerlaw:30,powerlaw_const:30,powerlaw_constant_nocach:30,powerlaw_extrapolation_q:30,ppisn:0,ppisn_additional_massloss:0,ppisn_core_mass_range_shift:0,ppisn_farmer19:0,ppisn_new_fit_21:0,ppisn_non:0,ppisn_prescript:0,ppn_envelope_mass:[0,7],pragma:9,pre:[0,5,7,8,18,24],pre_comenv_period:8,pre_events_stardata:[0,7],pre_main_sequ:[0,7],pre_main_sequence_fit_lob:[0,7],precis:3,precod:[6,8,12,13,14,15,32],predefin:[12,13,14,15,30],predict:21,predictor:[0,7],prefer:[0,7,20],prefix:[0,7],preloaded_popul:29,prep:0,prepar:2,prepare_dict:2,presc:5,prescrib:[0,7],prescript:[0,5,7,15],prescrit:[0,7],present:[2,3,6,12,13,14,15,18,20,29,30],preserv:[0,7],preset:24,pressur:[0,7],prev_stellar_type_1:15,prev_stellar_type_2:15,prevent:[0,5,6,7,21],previou:[8,13,14,19,21,36],previous:[11,15,25],previous_stardata:[1,8,9,11,15],primari:[1,6,8,12,13,14,15,30,32,40],prime:8,pringl:[0,7],print:[2,5,6,7,8,9,10,11,12,13,14,15,16,18,19,21,25,31],print_help:[10,19],print_info:31,print_option_descript:31,print_stack_on_exit:21,print_structur:2,printf:[1,6,8,9,11,12,13,14,15,17,18],prior:[0,6,7],privat:[20,22],prob_dict:30,probability_weighted_mass:21,probabl:[0,1,2,6,7,8,9,12,13,14,15,18,20,21,24,29,30,31,32],probdist:[6,8,12,13,14,15,32],problem:[0,7,12],probtot:[13,14],process:[0,6,7,8,12,13,14,15,17,18,19,20,21,25,28],process_:29,processor:[6,8,12],produc:6,profil:[0,7],progenitor:[0,7,15],program:[6,22,37],progress:19,project:[0,7],proper:[6,9,31],properli:[0,7],properti:[0,19,21,24,32],proport:8,prot1:[0,7],prot2:[0,7],prot3:[0,7],prot4:[0,7],provid:[0,7,15,20,21,25,30,38],pseudorandom:[0,7],publicli:9,puls:[0,6,7,40],pulsat:0,pump:[0,7],purpos:[12,13,14,15,21,24],push:16,push_macro:9,put:[1,6,8,12,13,14,15,18,19,21,24,25,31,32,33],pwd:21,py:[6,8,12,13,14,15,16,21,22,27,37],py_rinterpol:[22,37],pyenv:[22,37],pyplot:[6,8,13,14,16,18],pysiz:19,pytest:[22,37],python3:[7,22,37],python:[2,3,4,6,8,12,13,14,19,21,27,29,30,32],q:[0,5,7,8,12,15,18,21,30,40],q_high_extrapolation_method:21,q_interpol:30,q_low_extrapolation_method:21,q_min:30,qc:5,qcrit_bh:[0,7],qcrit_bs:0,qcrit_cheb:[0,7],qcrit_chen_han_formula:0,qcrit_chen_han_t:0,qcrit_cowd:[0,7],qcrit_degenerate_bh:[0,7],qcrit_degenerate_cheb:[0,7],qcrit_degenerate_cowd:[0,7],qcrit_degenerate_eagb:[0,7],qcrit_degenerate_gb:[0,7],qcrit_degenerate_hegb:[0,7],qcrit_degenerate_hehg:[0,7],qcrit_degenerate_hem:[0,7],qcrit_degenerate_hewd:[0,7],qcrit_degenerate_hg:[0,7],qcrit_degenerate_lmm:[0,7],qcrit_degenerate_m:[0,7],qcrit_degenerate_n:[0,7],qcrit_degenerate_onewd:[0,7],qcrit_degenerate_tpagb:[0,7],qcrit_eagb:[0,7],qcrit_gb:[0,7],qcrit_gb_bs:0,qcrit_gb_chen_han_formula:0,qcrit_gb_chen_han_t:0,qcrit_gb_ge2015:0,qcrit_gb_hjellming_webbink:0,qcrit_gb_q_no_comenv:0,qcrit_gb_temmink2021:0,qcrit_gb_vos2018:0,qcrit_ge2015:0,qcrit_hegb:[0,7],qcrit_hehg:[0,7],qcrit_hem:[0,7],qcrit_hewd:[0,7],qcrit_hg:[0,7],qcrit_hjellming_webbink:0,qcrit_lmm:[0,7],qcrit_m:[0,7],qcrit_n:[0,7],qcrit_onewd:[0,7],qcrit_q_no_comenv:0,qcrit_temmink2021:0,qcrit_tpagb:[0,7],qcrit_vos2018:0,qcrits_:[0,7],qcrits_degenerate_:[0,7],qdata:30,qlimit:30,qmin:30,qs:30,quad:21,quadrat:[0,7],quadrulpl:[0,7],quadrupl:[0,7,21,30],quantiti:24,queri:[11,25],queue:[6,8,12,21,25,28],quickli:11,quit:[0,6,7,19,30],r1:[5,11,18],r2:[5,11,18],r:[0,1,5,6,7,11,15,18,22,29,37],r_l:40,r_sun:6,radau:[0,7],radi:[0,7],radiat:[0,7],radii:[0,7,40],radiu:[0,1,6,7,9,15,17,24,40],radius_1:24,radius_2:24,ragb:40,raghavan2010_binary_fract:30,raghavan:30,rai:[0,7],railton:[0,7],rais:[0,2,7,15,19,21],ram:[0,7,21],ran:[6,8,12,21],randbuf:[5,18],random:[0,5,7,18,21],random_count:[5,11,18],random_se:[0,5,7,11,18],random_skip:[0,7],random_system:[0,7],random_systems_se:[0,7],rang:[0,6,7,8,11,12,13,14,15,21,30,32,35],rapid:[0,7],rapidli:[0,7],rappaport:[0,7],rate:[0,7,13,14,30],rather:[0,2,7,9,11,15,19,21,22,25,36,37],ratio:[0,6,7,8,12,13,14,15,30,40],raw:[3,7,18,19,20,21,24,36,38],raw_output:3,rc:[5,6,8,12,13,14,16,24],re:[0,1,6,7,8,12,13,14,16,25,31],reach:[0,5,6,7,8],reaction:[0,7],read:[3,4,5,11,15,18,19,21,29],readabl:19,readlin:5,real:[6,12,15,32],realist:[13,14],realiti:[13,14],realli:[0,6,7,15,20,21,31,32],reason:[0,7,13,14],rebuild:[0,7,21,22,25,37],rebuilt:[22,37],recalcul:[0,7],receiv:19,recent:[13,16],recogn:15,recognis:29,recombin:[0,7],recommend:[1,4,22,37],recompil:[12,13,14,15,22,37],reconsid:31,recurs:[2,19],recursive_change_key_to_float:2,recursive_change_key_to_str:2,red:[0,6,7,13,14,16],redhat:1,redshift:30,reduc:[0,5,7],reduct:21,refer:[2,21,29],refpop:29,regardless:24,region:[0,7,35],regist:15,reignit:[0,7],reimer:[0,7],reinstal:[22,37],reject:[0,7],rejects_in_log:[0,7],rejuven:[0,7,12],rel:[0,7],relat:[0,7],releas:[19,22,37],relev:20,reliabl:7,remain:[0,7,19,21],rememb:[5,6,13,14],remesh:[0,7],remnant:[0,6,7],remov:[0,2,7,8,11,15,16,19,20],remove_fil:19,renam:[13,14,32],rename_grid_vari:[13,14,32],renormalis:30,rentrop:[0,7],repeat:[0,7,21],replac:28,repo:22,report:[0,6,7,8,12,13,14,15],repositori:4,repres:21,represent:[3,15,32],reproduc:[0,7],requir:[0,3,7,8,11,12,13,14,15,16,18,19,21,24,25,30,38],rerun:[6,21],reset:[0,7],reset_pref:[0,7],reset_star:[0,7],reset_stars_default:[0,7],resolut:[0,6,7,8,12,13,14,15,21,32,35],resolv:[0,7,12,29],reson:[0,7],resourc:[13,14,25],respect:[0,7,28,30,34],rest:[15,30,32],restor:25,restore_from_snapshot_dir:21,restore_from_snapshot_fil:[21,25],restructuredtext:19,result:[0,1,2,3,6,7,8,11,12,13,14,15,18,19,21,22,25,29,30,35,37],result_arrai:30,result_dict:2,result_example_head:18,result_example_header_1:18,result_example_header_2:18,results_dictionari:[6,8,12,13,14],retain:[0,7],rethink:19,return_after_dry_run:21,return_all_info:20,return_arglin:7,return_binary_c_default:20,return_binary_c_version_info:[10,20,36],return_compilation_dict:1,return_help:7,return_help_al:[7,19],return_maximum_mass_ratio_for_rlof:[7,40],return_minimum_orbit_for_rlof:[7,40],return_persistent_data_memaddr:7,return_population_set:20,return_store_memaddr:7,return_version_info:[7,36],reus:20,revap_in:[0,7],revap_out:[0,7],revers:[0,7,24],reverse_tim:[0,7],revis:[0,36],rewrit:20,rgb:6,rhagavan:21,ri0005:[6,15],rich:[0,7],riello:[0,7],rin:[0,7],ring:[0,7],risk:[15,32],ritter:[0,7],rk2:[0,7],rk4:[0,7],rl1:5,rl2:5,rl:[0,5,7],rlof:[0,5,7,40],rlof_angular_momentum_transfer_model:[0,7],rlof_angular_momentum_transfer_model_bs:0,rlof_angular_momentum_transfer_model_conserv:0,rlof_eccentric_as_circular:[0,7],rlof_entry_threshold:[0,7],rlof_f:[0,7],rlof_interpolation_binary_c:0,rlof_interpolation_bs:0,rlof_interpolation_method:[0,7],rlof_mdot_factor:[0,7],rlof_mdot_modul:[0,7],rlof_method:[0,7],rlof_method_adapt:0,rlof_method_adaptive2:0,rlof_method_bs:0,rlof_method_claei:0,rlof_method_ritt:0,rlof_nonconservative_gamma_donor:0,rlof_nonconservative_gamma_isotrop:0,rlof_radiation_correct:[0,7],rlof_transition_objects_escap:[0,7],rob:[0,7,30,40],robert:[22,37],roch:[0,5,7,8,40],roche_lob:40,rochelob:40,rol1:[5,11,18],rol2:[5,11,18],room:[15,32],root:[22,37],rotat:[0,7,30],rotation:[0,7],rotationally_enhanced_expon:[0,7],rotationally_enhanced_mass_loss:[0,7],rotationally_enhanced_massloss:[0,7],rotationally_enhanced_massloss_angmom:0,rotationally_enhanced_massloss_langer_formula:[0,7],rotationally_enhanced_massloss_langer_formula_and_angmom:0,rotationally_enhanced_massloss_non:0,rough:6,rout:[0,7],routin:[0,2,4,7,22,24,38],row:[11,18,24],rrcach:21,rring:[0,7],rssd:30,rst:[19,31],rsun:[6,24],rubric:32,run:[0,1,4,5,6,7,8,12,13,14,17,19,20,21,22,25,26,28,30,32,34,37,38,40],run_and_calc_mass:18,run_binary_custom_log:18,run_popul:7,run_system:[5,7,9,10,11,16,17,24,38],run_system_wrapp:[4,5,9,17,22,23],run_zero_probability_system:21,runawai:[5,18],rungrid:21,runtim:[1,21],russel:[0,4,7,22],rzam:[5,40],s:[0,2,3,5,6,7,8,11,13,14,15,16,18,19,20,21,25,26,27,29,30,33,40],safe:[15,29],sai:[0,6,7],said:[0,7],same:[0,2,7,11,15,21,22,30,32,37,38],sampl:[0,4,7,12,15,30,32,35],sample_valu:30,sampler:22,samplerfunc:[6,8,12,13,14,15,21,32,35],sana12:[8,12,15,30],sana:30,sander:0,saturn:16,save:[0,1,6,7,8,9,12,13,14,15,21,25,29,30,35],save_ensemble_chunk:21,save_loop:18,save_population_object:[21,29],save_pre_events_stardata:[0,7],save_snapshot:[20,21,29],sbatch:21,scalar:19,scalo:30,scandir:29,scanf:0,scene:18,scheme:[0,7],schneider:[0,7],schroeder:[0,7],scientif:19,script:[4,9,19,21,22,25,28,34,37],sdb:[0,7],sdo:[0,7],seaborn:[6,8,12,13,14,16],search:[6,12,16,22],search_for_bhbh:5,second:[0,2,7,8,16,19,24,29,30],secondari:[5,6,12,30,40],section:[7,15,19,22,30,37],see:[0,5,6,7,8,9,10,11,12,13,14,15,18,20,21,22,24,27,29,30,32,36,37],seed:[0,7],seem:[22,24,31,37],seen:19,segment:35,seitenzahl2013_model:[0,7],seitenzahl:[0,7],select:[0,3,7,11,12,16,18,19],select_kei:3,selected_head:[18,19],selector:[0,7],self:[6,8,11,12,13,14,15,20,21,25,27,28,29,30,32,34,35,36],semi:[0,7],sent:[0,7],sentenc:1,sep:[5,8,11,12,15,18,29,30,40],sep_max:[8,12,15],sep_min:[8,12,15],separ:[0,3,5,6,7,9,11,15,16,17,18,24,29,30,40],separation_quadrupl:[0,7],separation_tripl:[0,7],separta:[0,7],seper:15,sepf:5,sequenc:[0,6,7,9,12,13,14,18],sequnec:[12,13,14],seri:[0,7,35],serialis:3,serv:[18,19],server:18,set:[0,1,2,3,4,5,9,10,11,16,18,19,20,21,22,24,25,26,27,28,29,30,31,32,34,35,36,37],set_condor_statu:28,set_context:[6,8,12,13,14,16],set_opt:[2,6,8,16],set_slurm_statu:34,set_statu:29,set_tim:26,set_titl:18,set_xlabel:[6,8,12,13,14,16,18],set_ylabel:[6,8,12,13,14,16,18],set_yscal:18,setter:27,setup:[6,15,38],setup_function_cach:27,sever:[10,15,18,21,24,31,38],sfh:30,sh:[22,37],shannon:35,shara:[0,7],share:[1,11,17,18,21,29,38],shared_lib_filenam:9,shared_memori:29,shell:[0,7,19],shellular:[0,7],shift:0,shorten:[0,5,7],shorter:5,shortli:6,should:[0,1,5,6,7,8,11,12,13,14,15,18,19,21,22,24,25,28,29,30,31,34,35,37,38],shouldn:[0,7,19],show:[0,4,5,6,7,8,11,12,13,14,15,18,21,24,35],show_plot:24,show_stellar_typ:24,showlist:35,shown:[0,7,24,35],showtabl:35,shrink:[5,8],shrinkagb:11,side:[12,13,14,15],siess:[0,7],sigint:21,sigkil:21,sigma:[30,35],signal:[6,8,12,21],silent:19,sill:[0,7],sim10:8,sim:6,similar:35,simpl:[6,8,12,16],simplest:11,simpli:[0,7,13,14],simul:[0,1,6,7,8,9,12,13,14,15,34],simulation_:20,sinc:[19,24,30],singl:[0,4,5,6,7,12,13,14,15,18,20,21,24,25,30],single_star_lifetim:[7,9,11],sit:[0,7],site:7,situat:7,size:[19,21,27],skip:[0,2,6,7,8,12,21],skipkei:3,slice:18,sliced_df:18,slightli:7,slope:30,slow:[0,6,7,8,12,13,14],slower:[0,7],slurm:[21,22,23,25],slurm_arrai:21,slurm_array_max_job:21,slurm_bash:21,slurm_check_requir:34,slurm_dat:21,slurm_dir:[21,25,28,34],slurm_env:21,slurm_extra_set:21,slurm_grid:34,slurm_jobarrayindex:[21,34],slurm_jobid:[21,34],slurm_jobnam:21,slurm_memori:21,slurm_njob:21,slurm_ntask:21,slurm_outfil:34,slurm_partit:21,slurm_postpone_join:21,slurm_postpone_sbatch:21,slurm_pwd:21,slurm_queue_stat:[25,34],slurm_sbatch:21,slurm_status_fil:34,slurm_tim:21,slurm_warn_max_memori:21,slurmid:34,slurmpath:34,small:[0,5,7,13,14],small_envelope_method:[0,7],small_envelope_method_bs:0,small_envelope_method_miller_bertolami:0,smaller:[0,7,35],smarter:[13,14],smooth:[6,13,14],smoother:[8,13,14],sn:[0,5,6,7,8,12,13,14,16,18],sn_impulse_liu2015:0,sn_impulse_non:0,sn_impulse_wheeler1975:0,sn_kick_companion_a:[0,7],sn_kick_companion_aic_bh:[0,7],sn_kick_companion_bh_bh:[0,7],sn_kick_companion_bh_n:[0,7],sn_kick_companion_ecap:[0,7],sn_kick_companion_grb_collapsar:[0,7],sn_kick_companion_hestaria:[0,7],sn_kick_companion_ia_chand:[0,7],sn_kick_companion_ia_chand_co:[0,7],sn_kick_companion_ia_eld:[0,7],sn_kick_companion_ia_h:[0,7],sn_kick_companion_ia_he_co:[0,7],sn_kick_companion_ia_hybrid_hecowd:[0,7],sn_kick_companion_ia_hybrid_hecowd_sublumin:[0,7],sn_kick_companion_ibc:[0,7],sn_kick_companion_ii:[0,7],sn_kick_companion_iia:[0,7],sn_kick_companion_ns_n:[0,7],sn_kick_companion_phdi:0,sn_kick_companion_pisn:0,sn_kick_companion_ppisn:0,sn_kick_companion_tz:[0,7],sn_kick_companion_wdkick:[0,7],sn_kick_dispersion_aic_bh:[0,7],sn_kick_dispersion_bh_bh:[0,7],sn_kick_dispersion_bh_n:[0,7],sn_kick_dispersion_ecap:[0,7],sn_kick_dispersion_grb_collapsar:[0,5,7],sn_kick_dispersion_ia_hybrid_hecowd:[0,7],sn_kick_dispersion_ia_hybrid_hecowd_sublumin:[0,7],sn_kick_dispersion_ibc:[0,5,7],sn_kick_dispersion_ii:[0,5,7],sn_kick_dispersion_ns_n:[0,7],sn_kick_dispersion_phdi:0,sn_kick_dispersion_pisn:0,sn_kick_dispersion_ppisn:0,sn_kick_dispersion_tz:[0,7],sn_kick_distribution_aic_bh:[0,7],sn_kick_distribution_bh_bh:[0,7],sn_kick_distribution_bh_n:[0,7],sn_kick_distribution_ecap:[0,7],sn_kick_distribution_grb_collapsar:[0,7],sn_kick_distribution_ia_hybrid_hecowd:[0,7],sn_kick_distribution_ia_hybrid_hecowd_sublumin:[0,7],sn_kick_distribution_ibc:[0,7],sn_kick_distribution_ii:[0,7],sn_kick_distribution_ns_n:[0,7],sn_kick_distribution_phdi:0,sn_kick_distribution_pisn:0,sn_kick_distribution_ppisn:0,sn_kick_distribution_tz:[0,7],sn_none:9,sn_type:9,snapshot:[21,25,29],snapshot_filenam:29,sneia:[0,7],snia:[0,7],snippet:[7,11],so:[0,2,5,6,7,8,9,11,12,13,14,15,20,21,24,25,29],solar:[0,4,6,7,8,10,22,30,40],solver:[0,7],solver_forward_eul:0,solver_predictor_corrector:0,solver_rk2:0,solver_rk4:0,some:[0,1,6,7,8,9,10,11,12,13,14,15,18,21,22,24,30,32,33,37],someth:[0,6,7,8,11,12,13,14,21,40],sometim:10,somewhat:[12,13,14,15,16],soon:35,sort:[2,6,12,13,14,16,19,29],sort_kei:[3,29],sourc:[1,2,3,8,19,20,21,23,24,25,26,27,28,29,30,31,32,33,34,35,36,38,40],source_file_filenam:21,source_list:20,sourcecod:[7,9,22,37],sourcefile_nam:1,sp:30,space:[0,6,7,12,13,14,15,29,32,35],spacing_funct:[20,22,23],spawn:19,special:[0,7,15],specif:[0,7,10,11,24,28,34],specifi:[0,7,19,21,25,35],spectral:30,speed:[0,7,27],speedtest:[0,7],spent:19,spera:[0,7],spheric:[0,7],spiki:[13,14],spin:[0,7,16],spinrat:[0,7],split:[0,5,7,11,15,16,18,21],split_lin:11,splitlin:[6,7,8,9,11,12,13,14,15,16],splitpoint:[0,7],spread:20,sqrt:[0,7],src:[0,7,9,22,37],st1:18,st2:18,st:5,stabil:[0,7],stabl:[0,7,22,37],stack:21,stackoverflow:30,stacktrac:20,stage:25,stancliff:[0,7],standard:[0,7,12,13,14,28,30,34,35],star1:16,star:[1,4,5,7,8,9,10,11,12,13,15,16,17,18,21,22,24,28,30,34,35,40],star_with_no_mass:0,starcount:[6,8,12,14,15],stardata:[0,1,6,7,8,9,11,12,13,14,15,17,18],stardata_dump_filenam:[0,7],stardata_load_filenam:[0,7],stardata_t:9,starnum:[6,12],start:[0,1,5,6,7,8,11,12,13,14,15,18,19,21,26,31,32],start_at:21,start_tim:[0,7,21],start_timestamp:[6,8,12,14,15],startrack:[0,7],startswith:11,stat:25,state:[0,7,29],statement:[1,9,11,12,13,14,15,16,17,18,21],statist:[0,7,21,28],statu:[0,1,6,7,8,12,13,14,15,21,25,28,29,34],status_dir:21,stderr:[0,7,21],stdout:[19,21,35],steadi:[0,7],stefan:24,stefano:[15,22,30],stellar:[0,4,5,7,14,21,22,24,30,35,36,39],stellar_structure_algorithm:[0,7],stellar_structure_algorithm_external_funct:0,stellar_structure_algorithm_mint:0,stellar_structure_algorithm_modified_bs:0,stellar_structure_algorithm_non:0,stellar_typ:[1,6,9,11,12,13,14,15,22,23,24],stellar_type1:5,stellar_type2:5,stellar_type_1:[0,7,15,24],stellar_type_2:[0,7,15,24],stellar_type_3:[0,7],stellar_type_4:[0,7],stellar_type_dict:39,stellar_type_dict_short:39,step:[3,6,8,9,11,12,13,14,15,24,32,35],stepsiz:[15,32],stick:21,stiff:[0,7],still:[1,9,16,21,40],stop:[0,6,7,8,12,18,19,21],stop_queu:21,stopfil:[0,7],storag:[0,7],store:[0,2,4,6,8,11,12,13,14,15,19,20,21,22,29,35,37,40],store_capsul:7,store_memaddr:[7,40],str:[1,3,5,6,15,19,20,24,29,31,32,36],straightforward:[6,12,13,14,15],straniero:[0,7],stream:21,strength:[0,7],strict:3,strictli:[12,13,14],string:[0,1,2,3,4,7,11,12,13,14,15,16,19,20,21,24,25,28,29,31,32,34,36,38],strip:[0,7,11,16],strong:6,stronger:[0,6,7],struct:[0,7,9],structur:[0,2,7,8,19,21,24],studi:6,stuff:[11,15,21],style:[0,7,19],sub:[0,2,7,19],subdict:2,subject:[0,7],sublumin:[0,7],submiss:21,submit:[21,22],subplot:18,subsequ:[0,7],subtract:2,subtract_dict:2,succe:[0,7],suddenli:6,suffer:6,suffici:6,suggest:[0,7,22,37],suit:[22,37],suitabl:35,sum:[0,7],sun:16,sundial:[0,7],supercrit:[0,7],superflu:16,supernova:[0,5,7,8,21],superwind:[0,7],superwind_mira_switchon:[0,7],support:29,sure:[2,11,12,13,14,15,22,25,29,30,37,38],surfac:[0,7],surrei:[6,15],surviv:[0,7,16],survivor:[0,7],sview:21,swallow:16,switcher:[0,7],sy:20,symlink:[6,8,12,15],symlink_latest_gridcod:21,symmetr:[0,7],synchron:[0,7],synonym:[0,7],synthesi:[12,13,14,15,21,22,37],system:[0,4,6,7,8,9,12,13,14,15,17,18,19,20,21,22,24,30,33,37,38,40],system_gener:[15,29],system_queue_fil:[6,8,12],t:[0,1,2,5,6,7,11,13,14,15,19,21,25,29,35],t_:6,tabl:[0,7,30,35],take:[0,2,7,8,12,15,18,19,21,29,30,32,38],taken:[0,2,7,9,30],talk:6,target:[1,31],task:[0,7,15,18,19,20,24,25,27,30,35,38,40],tauri:[0,7],tbse:[0,7],te:21,technic:[6,8,9,12,13,14,15],teff:[0,5,7,30],teff_1:24,teff_2:24,teff_from_star_struct:6,teff_postagb_max:[0,7],teff_postagb_min:[0,7],tell:[19,25],temp_dir:[5,6,8,11,13,14,15,16,19],temperatur:[0,7,16,24,30],tempfil:18,termin:[1,6,9,15,22,37],test:[0,7,11,15,19,21,22,27,29,37],test_cach:27,test_data:[0,7],test_func:7,test_log:18,test_logfil:11,test_pop:15,text:[6,8,16,19,31],than:[0,2,6,7,8,12,13,14,15,19,21,22,25,29,30,36,37],thats:15,thei:[0,2,5,6,7,8,12,15,16,20,21,24,25,28,34,35],thelog:[0,7],them:[2,6,7,8,15,17,18,19,28,29,30,31,38],themselv:[3,30],theoret:[12,13,14],thermal:[0,6,7,30,40],thermally_pulsing_asymptotic_giant_branch:0,thermohalin:[0,7],thermonuclear:6,thesi:[0,7],thi:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,40],thick:[0,7],thick_disc_end_ag:[0,7],thick_disc_logg_max:[0,7],thick_disc_logg_min:[0,7],thick_disc_start_ag:[0,7],thin:[0,7],thing:[0,3,6,7,8,12,13,14,15,18,19,20,30,38],think:[0,7,19,20],third:[0,7,16,30,35],third_dup:[0,7],third_dup_multipli:[0,7],thorn:[0,7],those:[2,6,8,12,13,14,15,18,20,22,30,36,37],thread:[6,8,12,13,14,19,21],thread_id:21,three:[0,7,13,14,15,30],three_part_powerlaw:[8,12,13,14,15,30],threshold:[0,7,19,21],through:[6,7,11,12,13,14,15,24,25,32,38],throughout:[12,13,14,15,32],thu:35,tidal:[0,5,7],tidal_strength_factor:[0,7],tide:[0,7,16],tides_convective_damp:[0,7],tides_diagnosis_log:[0,7],tides_hurley2002:[0,7],tides_zahn1989:[0,7],tight:18,time:[0,1,2,3,5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,21,22,24,26,29,30,35,37],time_elaps:26,timedelta:19,timescal:[0,7],timestamp:[21,26],timestep:[0,7,8,9,11,12,13,14],timestep_limit:[0,7],timestep_log:[0,7],timestep_modul:[0,7],timestep_multipli:[0,7],timestep_solver_factor:[0,7],tini:6,tinslei:30,tip:[6,30],titl:[12,31],tmax:35,tmin:35,tmp:[0,6,7,8,11,12,13,14,15,16,19,22,37],tmp_dir:[5,6,8,11,13,14,15,16,21,32],tmp_tabl:30,toasti:16,todo:[0,1,2,5,7,10,15,19,20,21,24,25,28,29,30,31,34,35,36,38,40],toler:[0,7],too:[0,2,6,7,13,14,16,21,22,37,38],took:[6,8,12,14,15,18],tool:21,top:[0,15,32],topcod:[6,8,15,32],topic:[0,7],torqu:[0,7],total:[0,2,6,7,8,12,13,14,15,18,19,21,24,30,32],total_count:[6,8,12,14,15],total_mass_run:[6,8,12,14,15],total_prob:[6,8,12,13,14,15],total_probability_weighted_mass_run:[6,8,12,14,15],touch:[25,29],tout:[0,7,40],tout_pringle_1992_multipli:[0,7],tp:[0,7],tpagb:[0,6,7],tpagb_reimers_eta:[0,7],tpagb_wind_beasor_etal_2020:0,tpagb_wind_bloeck:0,tpagb_wind_goldman_etal_2017:0,tpagb_wind_mattsson:0,tpagb_wind_reim:0,tpagb_wind_rob_cwind:0,tpagb_wind_van_loon:0,tpagb_wind_vw93_karaka:0,tpagb_wind_vw93_karakas_carbon_star:0,tpagb_wind_vw93_orig:0,tpagb_wind_vw93_orig_carbon_star:0,tpagbwind:[0,7],tpagbwindfac:[0,7],tpr:[8,12],trace:21,traceback:[13,16],track:[6,21,24],trade:[0,7],trail:[19,35],transfer:[0,6,7,21],transform:[0,3,7],transit:[0,7],treat:[0,7,35],trem:19,trigger:[0,7],trio:[12,13,14,15],tripl:[0,7,21,30],truli:[0,7],ttlcach:21,tupl:[1,6,19,25,29,35],turn:[0,3,5,7,11,15],tutori:[4,22],two:[0,2,6,7,9,19,29,39,40],txt:[11,15,18,22,29,37,38],type:[0,1,2,3,5,7,8,11,12,13,14,15,18,19,20,21,24,25,29,30,31,32,35,36,39,40],type_chng:[5,11,18],type_ia_mch_supernova_algorithm:[0,7],type_ia_sub_mch_supernova_algorithm:[0,7],typeerror:13,typic:[0,7],ubvri:[0,7],ugriv:[0,7],uk:[6,15],unavail:[0,7],unbound:5,unclos:29,uncom:[11,12,13,14,15,16],unction:7,undef:9,under:[11,35],undergo:[0,8],understand:21,undescrib:31,unexpect:13,uniform:30,union:[15,30,32,35,36,40],uniqu:[2,15,18,21],unit:[0,6,7,10,19,40],univari:[0,7],univers:[6,8,21],unknown:38,unless:[1,20,21],unlik:[13,14],unload:20,unlock:29,unmerg:8,unnecessari:31,unpars:7,unphys:[5,8,12],unrecogn:[22,37],unresolv:12,unsign:0,unstabl:[0,5,7],until:[0,2,6,7,29,30],unus:[0,7,21],unweight:15,up:[0,1,4,9,11,16,19,20,25,27,28,30,34],updat:[2,13,14,15,20,22,32,37],update_dict:[2,10],update_grid_vari:[13,14,32],upon:40,upper:[0,7,30,35],uranu:16,us:[0,1,2,3,4,10,11,15,19,20,21,22,24,25,26,27,28,29,30,31,32,34,35,36,37,38,40],usag:[0,4],use_astropy_valu:24,use_datadir:[15,20],use_fixed_timestep_:[0,7],use_lwn_fallback:0,use_periastron_roche_radiu:[0,7],use_tabular_intershell_abundances_karakas_2012:[0,7],usecach:35,usecas:4,useful_func:[22,23],user:[1,9,19,20,21,30,31,38],usernam:19,usr:21,usual:[0,5,6,7,12,13,14,15,19,21,29,30],utf:[3,29],util:[1,2,3,5,6,7,8,9,10,11,12,13,14,15,16,17,19,20,24,25,26,27,28,29,30,31,32,33,34,35,36,38,40],v:[5,18,22,37],val:30,valid:[0,7,9,19,30],valu:[0,1,2,3,6,7,10,11,12,13,14,15,18,19,20,21,24,26,27,30,31,32,35],value_lin:11,valueerror:15,valuerang:[6,8,12,13,14,15,32],values_arrai:11,van:[0,7],vandenheuvel_log:[0,7],vanilla:21,vari:[0,6,7,8,15],variabl:[0,4,6,7,8,19,21,28,29,32],variant:[0,7],variou:[0,7],vassiliadi:[0,7],vb:[5,25,27,29,35],ve:26,veloc:[0,7,30],venu:16,verbos:[1,6,8,11,12,13,14,15,17,19,21,22,29,30,35,37],verbose_print:19,veri:[0,5,6,7,8,9,11,13,14,15,29,32,35],versa:40,version:[0,2,7,10,15,19,20,22,36,37],version_info:[20,22,23],version_info_dict:10,version_info_str:36,version_onli:[0,7],via:[4,6,7,9,12,13,14,15,20,21,24],vice:40,vink:[0,7],virtual:[22,37],virtualenviron:[22,37],viscos:[0,7],viscou:[0,7],visibl:9,visit:22,vk:[5,18],vn:[5,18],volum:[0,7],vr:[5,18],vrot1:[0,7],vrot2:[0,7],vrot3:[0,7],vrot4:[0,7],vrot_breakup:0,vrot_bs:0,vrot_non_rot:0,vrot_sync:0,vs:[16,24],vw93:[0,7],vw93_eagb_wind_spe:[0,7],vw93_mira_shift:[0,7],vw93_multipli:[0,7],vw93_tpagb_wind_spe:[0,7],vwind:[0,7],vwind_beta:[0,7],vwind_multipli:[0,7],w:[1,11,15,20,29],wa:[0,6,7,10,11,13,14,15,20,21,22,25,29,30,37],wai:[0,2,7,11,13,14,20,21,25],wait:29,wait_for_unlock:29,wang:[0,7],want:[0,2,3,5,7,8,9,10,12,13,14,15,18,19,21,22,24,25,29,30,31,32,37],warmup_cpu:[0,7],warn:[0,7,11,15,21,25],was_kil:20,wast:[8,13,14],wave:[0,6,7,8,15],wd:[0,7],wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor:[0,7],wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor:[0,7],wd_accretion_rate_new_giant_envelope_lower_limit_other_donor:[0,7],wd_accretion_rate_novae_upper_limit_helium_donor:[0,7],wd_accretion_rate_novae_upper_limit_hydrogen_donor:[0,7],wd_accretion_rate_novae_upper_limit_other_donor:[0,7],wd_kick:[0,7],wd_kick_at_every_puls:0,wd_kick_at_given_puls:0,wd_kick_direct:[0,7],wd_kick_end_agb:0,wd_kick_first_rlof:0,wd_kick_pulse_numb:[0,7],wd_kick_when:[0,7],wd_sigma:[0,7],wdwd_merger_algorithm:[0,7],wdwd_merger_algorithm_bs:0,wdwd_merger_algorithm_chen2016:0,wdwd_merger_algorithm_perets2019:0,we:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,25,26,27,28,29,30,31,34,35,37,40],weight:[0,7,13,14,21],weirdli:12,well:[0,3,7,9,11,12,13,14,21,22,37],went:[13,14],were:[6,8,12,14,15,19,36],what:[0,1,2,5,6,7,8,9,11,12,13,14,15,18,21,22,25,30,31,35,36,37,38],whatev:[0,7,9,18,19,20,22,25,29,37],wheeler:[0,7],when:[0,1,2,3,6,7,8,10,11,15,16,19,21,22,25,26,27,28,29,30,31,34,35,37,38],whenev:[22,37],where:[0,1,2,6,7,12,13,14,15,19,21,22,25,26,29,30,31,35,37],whether:[0,7,15,19,20,21,24,28,29,30,31,34,35,36,40],which:[0,1,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,25,28,29,30,31,32,34,35,36,37,38,40],whichev:21,white:[0,6,7],white_dwarf_cooling_carrasco2014:[0,7],white_dwarf_cooling_mestel:[0,7],white_dwarf_cooling_mestel_modifi:[0,7],white_dwarf_cooling_model:[0,7],white_dwarf_radius_carrasco2014:[0,7],white_dwarf_radius_model:[0,7],white_dwarf_radius_mu:[0,7],white_dwarf_radius_nauenberg1972:[0,7],whole:[0,7,8,9,20,21],why:8,wide:[5,12,13,14],wider:5,width:[0,7,8],wiggl:[13,14],wind:[0,5,6,7,12],wind_algorithm_binary_c_2020:[0,5],wind_algorithm_hendriks_2022:0,wind_algorithm_hurley2002:0,wind_algorithm_non:[0,5],wind_algorithm_schneider2018:0,wind_angmom_loss_bs:0,wind_angmom_loss_lw:0,wind_angmom_loss_lw_hybrid:0,wind_angmom_loss_spherically_symmetr:0,wind_angular_momentum_loss:[0,7],wind_disc_angmom_fract:[0,7],wind_disc_mass_fract:[0,7],wind_djorb_fac:[0,7],wind_gas_to_dust_ratio:[0,7],wind_lbv_luminosity_lower_limit:[0,7],wind_mass_loss:[0,5,7],wind_multiplier_:[0,7],wind_nieuwenhuijzen_luminosity_lower_limit:[0,7],wind_type_multiplier_:[0,7],wink:0,within:[0,2,7,9,10,15,19,22,30,32,37],without:[9,11,13,14,19,21,30],won:[0,7,11],wood:[0,7],wooslei:0,work:[0,2,3,7,9,11,12,13,14,18,19,21,22,25,29,37],working_diretori:21,would:[0,2,7,13,14,15,21,24],wouldn:[15,29],wr:[0,7],wr_wind:[0,7],wr_wind_bs:0,wr_wind_eldridg:0,wr_wind_fac:[0,7],wr_wind_maeder_meynet:0,wr_wind_nugis_lam:0,wrap:[1,9,27],wrapper:[3,7,9,11,20,29,40],write:[1,5,6,7,8,9,11,12,15,17,18,19,20,21,29,31,38],write_binary_c_calls_to_fil:[15,29],write_binary_c_parameter_descriptions_to_rst_fil:19,write_ensembl:29,write_grid_options_to_rst_fil:31,write_logfil:7,written:[7,11,15,21,29,31,32,38],written_data:11,wrlof_mass_transf:[0,7],wrlof_method:[0,7],wrlof_non:0,wrlof_q_depend:0,wrlof_quadrat:0,wrong:[13,14,22,37],wrt:18,wrwindfac:[0,7],wtts2:[0,7],wtts_log:[0,7],www:[0,7,30],x0:30,x0d:21,x1:30,x86_64:7,x:[0,6,7,9,11,16,18,19,20,24,25,30,35],xlabel:17,xlim:[8,16],xx:16,xxx:34,y:[5,6,16,19,20,24,25],ye:21,year:[0,7,30],year_length_in_dai:8,yet:[0,2,7,18,19,21,24],yield:[0,7,35],ylim:16,you:[0,1,2,5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,21,22,24,25,29,30,31,32,35,37,40],young:[0,7],your:[9,11,17,18,21,22,37],yourself:[6,8,12,13,14,15,24],yscale:[12,13,14,16],yy:16,z:[0,6,7,8,18,20,30,40],zahn:[0,7],zam:[0,4,6,7,12,30,38,40],zams_collis:40,zams_mass:[6,12,13,14,15],zams_mass_1:15,zams_mass_2:15,zero:[0,1,4,5,6,7,8,14,19,21,22,29],zero_ag:[6,9,11,12,13,14,15],zero_age_main_sequence_star:[12,13,14],zero_age_main_sequence_starn:12,zero_prob_stars_skip:[6,8,12,14,15],zone:[0,7],zoom:[0,7,35],zoom_dispers:35,zoom_magnitud:35,zoom_magntiud:35,zoom_mean:35,zoomfac_multiplier_decreas:[0,7],zoomfac_multiplier_increas:[0,7],zsolar:30,zytkow:[0,7]},titles:["Binary_c parameters","custom_logging_functions module","dicts module","ensemble module","Example notebooks","Example use case: Binary black hole systems","Example use case: Hertzsprung-Russell diagrams","Tutorial: Using the API functionality of binary_c-python","Example use case: Common-envelope evolution","Tutorial: Using custom logging routines with binary_c-python","Tutorial: Extra features and functionality of binary_c-python","Tutorial: Running individual systems with binary_c-python","Example use case: Zero-age stellar luminosity function in binaries","Example use case: Zero-age stellar luminosity function","Example use case: Massive star luminosity","Tutorial: Running populations with binary_c-python","Example use case: Solar system using the API functionality","&lt;no title&gt;","Binary_c and python example notebook","functions module","Population_class module","Population grid code options","Welcome to binary_c-python\u2019s documentation!","Binarycpython code","plot_functions module","Population class extension: HPC module","Population class extension: analytics module","Population class extension: cache module","Population class extension: condor module","Population class extension: dataIO module","Population class extension: distribution_functions module","Population class extension: grid_options_defaults module","Population class extension: gridcode module","Population class extension: metadata module","Population class extension: slurm module","Population class extension: spacing_functions module","Population class extension: version_info module","Python module for binary_c","run_system_wrapper module","stellar_types module","useful_funcs module"],titleterms:{"case":[5,6,8,12,13,14,16],"class":[25,26,27,28,29,30,31,32,33,34,35,36],"function":[7,10,11,12,13,14,15,16,18,19],"public":21,A:[13,14],about:10,ad:[12,13,14,15],after:[22,37],ag:[12,13],algorithm:0,analyt:26,api:[7,9,11,16,18],better:[13,14],binari:[0,5,6,12,18],binary_c:[0,7,9,10,11,15,18,22,37],binarycpython:23,black:5,build:[10,22,37],cach:27,code:[21,23],common:8,compact:9,condor:28,content:[4,22],core:18,custom:[9,18],custom_logging_funct:1,dataio:29,develop:[22,37],di:21,diagram:6,dict:2,dictionari:10,directli:9,distribut:[13,14],distribution_funct:30,document:[22,37],ensembl:3,envelop:8,environ:[22,37],evolut:[8,9],evolv:[6,8,12,13,14,15],exampl:[4,5,6,7,8,9,10,12,13,14,15,16,18,22,37],extens:[25,26,27,28,29,30,31,32,33,34,35,36],extra:10,faq:[22,37],featur:10,free:7,from:[7,9,22,37],full:15,get:[7,10],grid:[6,8,12,13,14,15,21],grid_options_default:31,gridcod:32,handl:[6,8,12,13,14,15],help:10,hertzsprung:6,hole:5,hpc:25,i:0,indic:22,individu:11,inform:[7,10],initi:[13,14],input:0,instal:[22,37],instruct:[22,37],issu:[22,37],line:18,log:[6,8,9,12,13,14,15,18],luminos:[12,13,14],mass:[9,13,14],massiv:14,metadata:33,misc:0,modif:10,modul:[1,2,3,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],moe:21,note:[22,37],notebook:[4,18],noteworthi:15,nucsyn:0,o:0,object:[6,8,9,11,12,13,14,15],option:21,other:18,output:[0,6,8,12,13,14,15],paramet:[0,10],pars:10,pip:[22,37],plot_funct:24,popul:[6,8,9,11,12,13,14,15,21,25,26,27,28,29,30,31,32,33,34,35,36],population_class:20,privat:21,python:[7,9,10,11,15,18,22,37],requir:[22,37],routin:9,run:[9,11,15,18],run_binari:18,run_binary_with_log:18,run_system:18,run_system_wrapp:[11,38],russel:6,s:22,sampl:[13,14],sampler:21,script:15,section:0,set:[6,7,8,12,13,14,15],singl:11,slurm:34,solar:16,sourc:[22,37],spacing_funct:35,star:[0,6,14],stefano:21,stellar:[6,8,12,13],stellar_typ:39,store:7,string:9,supernova:9,system:[5,11,16],tabl:22,tutori:[7,9,10,11,15],up:[6,7,8,12,13,14,15],us:[5,6,7,8,9,12,13,14,16,18],usag:[7,9,22,37],useful_func:40,util:18,variabl:[12,13,14,15,22,37],version_info:36,via:[11,22,37],welcom:22,when:9,wrapper:18,zam:[13,14],zero:[12,13]}})
\ No newline at end of file
+Search.setIndex({docnames:["binary_c_parameters","custom_logging_functions","dicts","ensemble","example_notebooks","examples/notebook_BHBH","examples/notebook_HRD","examples/notebook_api_functionality","examples/notebook_common_envelope_evolution","examples/notebook_custom_logging","examples/notebook_extra_features","examples/notebook_individual_systems","examples/notebook_luminosity_function_binaries","examples/notebook_luminosity_function_single","examples/notebook_massive_remnants","examples/notebook_population","examples/notebook_solar_system","examples/old/basic_example","examples/old/workshop_example_notebook","functions","grid","grid_options_descriptions","index","modules","plot_functions","population_extensions/HPC","population_extensions/Moe_di_Stefano_2017","population_extensions/analytics","population_extensions/cache","population_extensions/condor","population_extensions/dataIO","population_extensions/distribution_functions","population_extensions/grid_logging","population_extensions/grid_options_defaults","population_extensions/gridcode","population_extensions/metadata","population_extensions/slurm","population_extensions/spacing_functions","population_extensions/version_info","readme_link","run_system_wrapper","stellar_types","useful_funcs"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,nbsphinx:3,sphinx:56},filenames:["binary_c_parameters.rst","custom_logging_functions.rst","dicts.rst","ensemble.rst","example_notebooks.rst","examples/notebook_BHBH.ipynb","examples/notebook_HRD.ipynb","examples/notebook_api_functionality.ipynb","examples/notebook_common_envelope_evolution.ipynb","examples/notebook_custom_logging.ipynb","examples/notebook_extra_features.ipynb","examples/notebook_individual_systems.ipynb","examples/notebook_luminosity_function_binaries.ipynb","examples/notebook_luminosity_function_single.ipynb","examples/notebook_massive_remnants.ipynb","examples/notebook_population.ipynb","examples/notebook_solar_system.ipynb","examples/old/basic_example.ipynb","examples/old/workshop_example_notebook.ipynb","functions.rst","grid.rst","grid_options_descriptions.rst","index.rst","modules.rst","plot_functions.rst","population_extensions/HPC.rst","population_extensions/Moe_di_Stefano_2017.rst","population_extensions/analytics.rst","population_extensions/cache.rst","population_extensions/condor.rst","population_extensions/dataIO.rst","population_extensions/distribution_functions.rst","population_extensions/grid_logging.rst","population_extensions/grid_options_defaults.rst","population_extensions/gridcode.rst","population_extensions/metadata.rst","population_extensions/slurm.rst","population_extensions/spacing_functions.rst","population_extensions/version_info.rst","readme_link.rst","run_system_wrapper.rst","stellar_types.rst","useful_funcs.rst"],objects:{"binarycpython.utils":[[1,0,0,"-","custom_logging_functions"],[2,0,0,"-","dicts"],[3,0,0,"-","ensemble"],[19,0,0,"-","functions"],[20,0,0,"-","grid"],[24,0,0,"-","plot_functions"],[40,0,0,"-","run_system_wrapper"],[41,0,0,"-","stellar_types"],[42,0,0,"-","useful_funcs"]],"binarycpython.utils.custom_logging_functions":[[1,1,1,"","autogen_C_logging_code"],[1,1,1,"","binary_c_log_code"],[1,1,1,"","binary_c_write_log_code"],[1,1,1,"","compile_shared_lib"],[1,1,1,"","create_and_load_logging_function"],[1,1,1,"","from_binary_c_config"],[1,1,1,"","return_compilation_dict"]],"binarycpython.utils.dicts":[[2,2,1,"","AutoVivificationDict"],[2,1,1,"","count_keys_recursive"],[2,1,1,"","custom_sort_dict"],[2,1,1,"","filter_dict"],[2,1,1,"","filter_dict_through_values"],[2,1,1,"","inspect_dict"],[2,1,1,"","keys_to_floats"],[2,1,1,"","merge_dicts"],[2,1,1,"","multiply_float_values"],[2,1,1,"","multiply_values_dict"],[2,1,1,"","normalize_dict"],[2,1,1,"","prepare_dict"],[2,1,1,"","recursive_change_key_to_float"],[2,1,1,"","recursive_change_key_to_string"],[2,1,1,"","set_opts"],[2,1,1,"","subtract_dicts"],[2,1,1,"","update_dicts"]],"binarycpython.utils.dicts.AutoVivificationDict":[[2,3,1,"","__getitem__"],[2,3,1,"","__iadd__"]],"binarycpython.utils.ensemble":[[3,2,1,"","BinaryCEncoder"],[3,2,1,"","binarycDecoder"],[3,1,1,"","binaryc_json_serializer"],[3,1,1,"","ensemble_compression"],[3,1,1,"","ensemble_file_type"],[3,1,1,"","ensemble_setting"],[3,1,1,"","extract_ensemble_json_from_string"],[3,1,1,"","format_ensemble_results"],[3,1,1,"","handle_ensemble_string_to_json"],[3,1,1,"","load_ensemble"],[3,1,1,"","open_ensemble"]],"binarycpython.utils.ensemble.BinaryCEncoder":[[3,3,1,"","default"]],"binarycpython.utils.ensemble.binarycDecoder":[[3,3,1,"","decode"]],"binarycpython.utils.functions":[[19,2,1,"","Capturing"],[19,1,1,"","bin_data"],[19,1,1,"","call_binary_c_config"],[19,2,1,"","catchtime"],[19,1,1,"","check_if_in_shell"],[19,1,1,"","conv_time_units"],[19,1,1,"","convert_bytes"],[19,1,1,"","convfloat"],[19,1,1,"","create_arg_string"],[19,1,1,"","create_hdf5"],[19,1,1,"","datalinedict"],[19,1,1,"","example_parse_output"],[19,1,1,"","filter_arg_dict"],[19,1,1,"","format_number"],[19,1,1,"","get_ANSI_colours"],[19,1,1,"","get_arg_keys"],[19,1,1,"","get_defaults"],[19,1,1,"","get_help"],[19,1,1,"","get_help_all"],[19,1,1,"","get_help_super"],[19,1,1,"","get_size"],[19,1,1,"","get_username"],[19,1,1,"","imports"],[19,1,1,"","is_capsule"],[19,1,1,"","isfloat"],[19,1,1,"","isint"],[19,1,1,"","load_logfile"],[19,1,1,"","make_build_text"],[19,1,1,"","mem_use"],[19,1,1,"","now"],[19,1,1,"","output_lines"],[19,1,1,"","pad_output_distribution"],[19,1,1,"","remove_file"],[19,1,1,"","temp_dir"],[19,1,1,"","timedelta"],[19,1,1,"","trem"],[19,1,1,"","verbose_print"],[19,1,1,"","write_binary_c_parameter_descriptions_to_rst_file"]],"binarycpython.utils.functions.Capturing":[[19,3,1,"","__enter__"],[19,3,1,"","__exit__"]],"binarycpython.utils.functions.catchtime":[[19,3,1,"","__enter__"],[19,3,1,"","__exit__"]],"binarycpython.utils.grid":[[20,2,1,"","Population"]],"binarycpython.utils.grid.Population":[[20,3,1,"","clean"],[20,3,1,"","evolve"],[20,3,1,"","evolve_single"],[20,3,1,"","exit"],[20,3,1,"","export_all_info"],[20,3,1,"","jobID"],[20,3,1,"","parse_cmdline"],[20,3,1,"","return_all_info"],[20,3,1,"","return_binary_c_defaults"],[20,3,1,"","return_population_settings"],[20,3,1,"","set"],[20,3,1,"","was_killed"]],"binarycpython.utils.plot_functions":[[24,1,1,"","color_by_index"],[24,1,1,"","dummy"],[24,1,1,"","parse_function_hr_diagram"],[24,1,1,"","parse_function_masses"],[24,1,1,"","parse_function_orbit"],[24,1,1,"","plot_HR_diagram"],[24,1,1,"","plot_masses"],[24,1,1,"","plot_orbit"],[24,1,1,"","plot_system"]],"binarycpython.utils.population_extensions":[[25,0,0,"-","HPC"],[26,0,0,"-","Moe_di_Stefano_2017"],[27,0,0,"-","analytics"],[28,0,0,"-","cache"],[29,0,0,"-","condor"],[30,0,0,"-","dataIO"],[31,0,0,"-","distribution_functions"],[32,0,0,"-","grid_logging"],[33,0,0,"-","grid_options_defaults"],[34,0,0,"-","gridcode"],[35,0,0,"-","metadata"],[36,0,0,"-","slurm"],[37,0,0,"-","spacing_functions"],[38,0,0,"-","version_info"]],"binarycpython.utils.population_extensions.HPC":[[25,2,1,"","HPC"]],"binarycpython.utils.population_extensions.HPC.HPC":[[25,3,1,"","HPC_can_join"],[25,3,1,"","HPC_check_requirements"],[25,3,1,"","HPC_dir"],[25,3,1,"","HPC_dirs"],[25,3,1,"","HPC_dump_status"],[25,3,1,"","HPC_get_status"],[25,3,1,"","HPC_grid"],[25,3,1,"","HPC_id_filename"],[25,3,1,"","HPC_id_from_dir"],[25,3,1,"","HPC_job"],[25,3,1,"","HPC_jobID"],[25,3,1,"","HPC_jobID_tuple"],[25,3,1,"","HPC_job_task"],[25,3,1,"","HPC_job_type"],[25,3,1,"","HPC_join_from_files"],[25,3,1,"","HPC_join_previous"],[25,3,1,"","HPC_joinlist"],[25,3,1,"","HPC_load_joinfiles_list"],[25,3,1,"","HPC_make_joiningfile"],[25,3,1,"","HPC_njobs"],[25,3,1,"","HPC_path"],[25,3,1,"","HPC_queue_stats"],[25,3,1,"","HPC_restore"],[25,3,1,"","HPC_set_status"],[25,3,1,"","HPC_snapshot_filename"],[25,3,1,"","HPC_status"],[25,3,1,"","HPC_touch"]],"binarycpython.utils.population_extensions.Moe_di_Stefano_2017":[[26,2,1,"","Moe_di_Stefano_2017"]],"binarycpython.utils.population_extensions.Moe_di_Stefano_2017.Moe_di_Stefano_2017":[[26,3,1,"","Moe_di_Stefano_2017"],[26,3,1,"","get_Moe_di_Stefano_2017_default_options"],[26,3,1,"","get_Moe_di_Stefano_2017_default_options_description"],[26,3,1,"","get_moe_di_stefano_dataset"],[26,3,1,"","set_moe_di_stefano_settings"]],"binarycpython.utils.population_extensions.analytics":[[27,2,1,"","analytics"]],"binarycpython.utils.population_extensions.analytics.analytics":[[27,3,1,"","CPU_time"],[27,3,1,"","make_analytics_dict"],[27,3,1,"","set_time"],[27,3,1,"","time_elapsed"]],"binarycpython.utils.population_extensions.cache":[[28,2,1,"","cache"]],"binarycpython.utils.population_extensions.cache.cache":[[28,2,1,"","NullCache"],[28,3,1,"","default_cache_dir"],[28,3,1,"","setup_function_cache"],[28,3,1,"","test_caches"]],"binarycpython.utils.population_extensions.cache.cache.NullCache":[[28,3,1,"","__delitem__"],[28,3,1,"","__getitem__"],[28,3,1,"","__setitem__"],[28,3,1,"","popitem"]],"binarycpython.utils.population_extensions.condor":[[29,2,1,"","condor"]],"binarycpython.utils.population_extensions.condor.condor":[[29,3,1,"","condorID"],[29,3,1,"","condor_check_requirements"],[29,3,1,"","condor_dirs"],[29,3,1,"","condor_grid"],[29,3,1,"","condor_outfile"],[29,3,1,"","condor_queue_stats"],[29,3,1,"","condor_status_file"],[29,3,1,"","condorpath"],[29,3,1,"","get_condor_status"],[29,3,1,"","make_condor_dirs"],[29,3,1,"","set_condor_status"]],"binarycpython.utils.population_extensions.dataIO":[[30,2,1,"","dataIO"]],"binarycpython.utils.population_extensions.dataIO.dataIO":[[30,3,1,"","NFS_flush_hack"],[30,3,1,"","NFSpath"],[30,3,1,"","compression_type"],[30,3,1,"","dir_ok"],[30,3,1,"","load_population_object"],[30,3,1,"","load_snapshot"],[30,3,1,"","locked_close"],[30,3,1,"","locked_open_for_write"],[30,3,1,"","merge_populations"],[30,3,1,"","merge_populations_from_file"],[30,3,1,"","open"],[30,3,1,"","save_population_object"],[30,3,1,"","save_snapshot"],[30,3,1,"","set_status"],[30,3,1,"","snapshot_filename"],[30,3,1,"","wait_for_unlock"],[30,3,1,"","write_binary_c_calls_to_file"],[30,3,1,"","write_ensemble"]],"binarycpython.utils.population_extensions.distribution_functions":[[31,2,1,"","distribution_functions"]],"binarycpython.utils.population_extensions.distribution_functions.distribution_functions":[[31,3,1,"","Arenou2010_binary_fraction"],[31,3,1,"","Izzard2012_period_distribution"],[31,3,1,"","Kroupa2001"],[31,3,1,"","Moe_di_Stefano_2017_multiplicity_fractions"],[31,3,1,"","Moe_di_Stefano_2017_pdf"],[31,3,1,"","build_q_table"],[31,3,1,"","calc_P_integral"],[31,3,1,"","calc_e_integral"],[31,3,1,"","calc_total_probdens"],[31,3,1,"","calculate_constants_three_part_powerlaw"],[31,3,1,"","const_distribution"],[31,3,1,"","cosmic_SFH_madau_dickinson2014"],[31,3,1,"","duquennoy1991"],[31,3,1,"","fill_data"],[31,3,1,"","flat"],[31,3,1,"","flatsections"],[31,3,1,"","gaussian"],[31,3,1,"","gaussian_func"],[31,3,1,"","gaussian_normalizing_const"],[31,3,1,"","get_integration_constant_q"],[31,3,1,"","get_max_multiplicity"],[31,3,1,"","imf_chabrier2003"],[31,3,1,"","imf_scalo1986"],[31,3,1,"","imf_scalo1998"],[31,3,1,"","imf_tinsley1980"],[31,3,1,"","interpolate_in_mass_izzard2012"],[31,3,1,"","ktg93"],[31,3,1,"","linear_extrapolation_q"],[31,3,1,"","merge_multiplicities"],[31,3,1,"","number"],[31,3,1,"","poisson"],[31,3,1,"","powerlaw"],[31,3,1,"","powerlaw_constant"],[31,3,1,"","powerlaw_constant_nocache"],[31,3,1,"","powerlaw_extrapolation_q"],[31,3,1,"","raghavan2010_binary_fraction"],[31,3,1,"","sana12"],[31,3,1,"","three_part_powerlaw"]],"binarycpython.utils.population_extensions.grid_logging":[[32,2,1,"","grid_logging"]],"binarycpython.utils.population_extensions.grid_logging.grid_logging":[[32,3,1,"","vb1print"],[32,3,1,"","vb2print"],[32,3,1,"","verbose_print"]],"binarycpython.utils.population_extensions.grid_options_defaults":[[33,2,1,"","grid_options_defaults"]],"binarycpython.utils.population_extensions.grid_options_defaults.grid_options_defaults":[[33,3,1,"","default_cache_dir"],[33,3,1,"","get_grid_options_defaults_dict"],[33,3,1,"","get_grid_options_descriptions"],[33,3,1,"","grid_options_description_checker"],[33,3,1,"","grid_options_help"],[33,3,1,"","print_option_descriptions"],[33,3,1,"","write_grid_options_to_rst_file"]],"binarycpython.utils.population_extensions.gridcode":[[34,2,1,"","gridcode"]],"binarycpython.utils.population_extensions.gridcode.gridcode":[[34,3,1,"","add_grid_variable"],[34,3,1,"","delete_grid_variable"],[34,3,1,"","rename_grid_variable"],[34,3,1,"","update_grid_variable"]],"binarycpython.utils.population_extensions.metadata":[[35,2,1,"","metadata"]],"binarycpython.utils.population_extensions.metadata.metadata":[[35,3,1,"","add_ensemble_metadata"],[35,3,1,"","add_system_metadata"]],"binarycpython.utils.population_extensions.slurm":[[36,2,1,"","slurm"]],"binarycpython.utils.population_extensions.slurm.slurm":[[36,3,1,"","get_slurm_status"],[36,3,1,"","make_slurm_dirs"],[36,3,1,"","set_slurm_status"],[36,3,1,"","slurmID"],[36,3,1,"","slurm_check_requirements"],[36,3,1,"","slurm_dirs"],[36,3,1,"","slurm_grid"],[36,3,1,"","slurm_outfile"],[36,3,1,"","slurm_queue_stats"],[36,3,1,"","slurm_status_file"],[36,3,1,"","slurmpath"]],"binarycpython.utils.population_extensions.spacing_functions":[[37,2,1,"","spacing_functions"]],"binarycpython.utils.population_extensions.spacing_functions.spacing_functions":[[37,3,1,"","const_dt"],[37,3,1,"","const_int"],[37,3,1,"","const_linear"],[37,3,1,"","const_ranges"],[37,3,1,"","gaussian_zoom"],[37,3,1,"","peak_normalized_gaussian_func"]],"binarycpython.utils.population_extensions.version_info":[[38,2,1,"","version_info"]],"binarycpython.utils.population_extensions.version_info.version_info":[[38,3,1,"","minimum_stellar_mass"],[38,3,1,"","parse_binary_c_version_info"],[38,3,1,"","return_binary_c_version_info"]],"binarycpython.utils.run_system_wrapper":[[40,1,1,"","run_system"]],"binarycpython.utils.useful_funcs":[[42,1,1,"","calc_period_from_sep"],[42,1,1,"","calc_sep_from_period"],[42,1,1,"","maximum_mass_ratio_for_RLOF"],[42,1,1,"","minimum_period_for_RLOF"],[42,1,1,"","minimum_separation_for_RLOF"],[42,1,1,"","ragb"],[42,1,1,"","roche_lobe"],[42,1,1,"","rzams"],[42,1,1,"","zams_collision"]]},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method"},terms:{"0":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21,25,26,28,31,34,37,42],"00":[5,11,12,15,18],"000":[5,11,18],"0000":[5,11,18],"00000":18,"000000":18,"000000000000e":11,"000000e":18,"000001":11,"000002":11,"000003":11,"0001":[5,7,42],"000122339":15,"000161974":15,"000214449":15,"000220016":15,"000283924":15,"000287968":15,"000375908":15,"000497691":15,"000498487":15,"00065893":15,"0007":31,"000872405":15,"001":[0,5,7],"00115504":15,"0013":5,"00152924":15,"00182":5,"002":[5,17,18],"00202467":15,"0021272":5,"00215604":5,"00235329":5,"00237669":5,"00239838":5,"00242158":5,"00247821":5,"00247864":5,"00248439":5,"00254115":5,"00254512":5,"00256681":5,"00261516":5,"00268237":5,"00280816":5,"00283345":5,"00286793":5,"00288661":5,"00294":5,"00296406":5,"003":5,"00300971":5,"00303761":5,"00311757":5,"00317508":5,"00319483":5,"0034":5,"004":5,"004698855121516281":15,"005":5,"00518983":5,"0055":5,"00585495":5,"006":5,"0062211552141636295":15,"00632092":7,"00666382":5,"007":[5,16],"00707417":5,"00712":5,"00730797":5,"0074":5,"008":5,"0081514":5,"00823663875514986":15,"00832":5,"0087":5,"009":[5,16],"00984861":5,"00e":12,"01":[0,5,6,7,8,9,12,15,18],"010":5,"0102":5,"010905083645619543":15,"011":5,"0118":5,"012":5,"0122109":5,"012246630357e":15,"0128":5,"013":5,"0131145":5,"014":5,"0141":7,"0143651":5,"0143896":8,"014832":5,"015":5,"0152545":5,"0153961":5,"0155":5,"0156":5,"01561":5,"0156945":5,"0159":5,"016":5,"0162":5,"016309":8,"0163656":8,"0164":5,"0165":5,"0166":5,"0168":5,"0169":5,"017":[5,16],"0171":5,"0175264":8,"0176575":6,"01791":5,"018":5,"0182":5,"0184":5,"0187":5,"019":5,"0192009":5,"019715467199999996":8,"01e":12,"01t09":[6,8,12],"01t10":12,"02":[0,5,6,7,8,9,11,12,15,16,18,31,42],"020":5,"0208":5,"021":5,"0214":5,"0214824":5,"021960493499e":15,"022":5,"023":5,"0232618":5,"02379":5,"024":5,"0241634":5,"0245":5,"024684":5,"02473":5,"0248684":15,"025":5,"0250231":5,"0251003":5,"0259932":5,"026":5,"0261496":5,"027":5,"0276":5,"02786":5,"0278672":5,"028":5,"02823":5,"0283541":5,"029":5,"0290733":5,"0295":5,"0298011":5,"0298364":5,"02e":[8,12],"03":[0,1,5,7,8,12],"030":5,"0303129":5,"030499912298e":15,"031":5,"0316266":5,"0319":5,"032":5,"03221":5,"033":5,"0335":5,"0335017":5,"034":5,"03493":5,"03499999999999":14,"035":5,"03502960360000004":8,"03507":5,"036":5,"0367878":5,"037":5,"0385396":5,"039":5,"0393944":5,"0394":5,"0399":5,"03996e":5,"03e":12,"04":[0,5,7,12,18],"040":5,"041":5,"0411":5,"0414":5,"04198":5,"042":5,"0425":5,"043":5,"0434":15,"044":5,"0440989":5,"044142002936e":9,"04440288843805411":15,"0444029":15,"044572277695e":9,"044654032097e":9,"0448877":5,"0449442":5,"045":5,"045084306856e":9,"0459174":5,"046":5,"0461":5,"0469097":5,"047":[5,15,16],"0474164":5,"0474572":5,"048":[5,16,18],"049":5,"04924":5,"04e":12,"05":[0,5,7,8,9,12,15],"0501":5,"050651207308e":9,"051":[5,6],"0511173":5,"0512":5,"052":5,"0523":5,"0528412":5,"053":5,"0531294":5,"0533803":5,"0535":5,"0536749":5,"054":[5,31],"0547419":5,"055":5,"055188":5,"056":[5,16],"0563088":5,"057":5,"0570946":18,"0572914":5,"057949":5,"058":5,"0583837":5,"0585":5,"059":5,"05e":12,"05e51ba114934b37bab48f1db40b7333":15,"06":[0,5,8,9,11,12],"0608":5,"061":5,"061141":5,"0613":5,"062":5,"0621119":5,"0625403":5,"06257":5,"0626266":5,"063":5,"064":5,"0641":5,"06459059967730083":8,"0645906":8,"0649":5,"065":5,"06527":5,"066":5,"06696":5,"067":5,"0670735":5,"068":5,"0683196":5,"069":5,"06987":5,"06e":12,"07":[5,12,13,14,18,31,37],"070":[5,15],"0701913":5,"071":5,"07108":5,"0714679":5,"0717":5,"0719":5,"072":5,"0722":5,"0727126":5,"0727584":5,"074":5,"0744186":5,"0745":5,"07484":5,"075":5,"075416":5,"0755737":5,"076":5,"077":5,"0770302":5,"0772021":5,"0772781":5,"078":5,"0784":5,"0784722":5,"0787729":5,"0789786":5,"079":[5,6],"0791":5,"07e":12,"08":[0,5,8,12,18],"080763":11,"0808":5,"081":[5,6],"081024":6,"082":5,"0820":[0,7],"0823499":5,"0831":5,"0834973":18,"0837":5,"084":5,"0849409":5,"085":5,"086":5,"086004":5,"0868":5,"087":5,"0877":5,"0877243":5,"0878":5,"088":5,"089":5,"0890815":5,"0896":5,"08e":12,"08msun":[0,7],"09":[5,6,8,12],"090":5,"0900":18,"0902":[0,7],"0907":5,"0907537":5,"091":5,"0910814":5,"0913095":5,"09164":5,"092":5,"09295167374":12,"093":[6,16],"0931922":5,"094":[5,8],"094409257247e":15,"095":5,"0958704":5,"096":5,"09665":5,"0967":15,"097":5,"09706e":5,"09786":5,"098":[5,6],"0987206":5,"099":5,"0991059":5,"0993":5,"099417":8,"0995":5,"0m":12,"0mb":[8,12],"0msun":37,"0x146f912dbc60":7,"0x149c2e81ec10":11,"0x149c95c56c10":8,"0x14bf2250fdc0":6,"0x1528ac7290d0":15,"1":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,21,22,24,25,29,30,31,32,34,36,37,39,40,42],"10":[0,2,5,6,7,8,9,11,12,13,14,15,16,17,18,21,31,37,40],"100":[0,5,6,7,8,12,13,14,31,37],"1000":[0,7,8,21,37],"100000000000":[17,18],"1001":12,"1005":5,"101":5,"101038":5,"1012":5,"101323":5,"101955":5,"102":5,"1021":5,"1024mb":21,"1025":12,"102750e":18,"103":5,"1035":5,"103702":5,"103789":5,"104":[5,8],"1043":5,"104427":5,"104997":5,"105":[5,13,14],"105082":5,"10522":5,"105704":5,"106":5,"1062":5,"106368":5,"106545":5,"10689":5,"107":5,"107187":5,"1075":5,"10782":5,"108":[5,15],"1082":5,"1085":11,"108571":5,"10877":5,"1088":5,"109":[5,8],"10941":5,"109679":5,"1098":5,"1099":5,"10e":12,"11":[0,5,6,8,9,11,12,14,15,16,18],"110":5,"11003":11,"1104":5,"1108":5,"111":5,"111023":5,"111583":5,"11182":5,"112":5,"11239":5,"1124":5,"113":5,"1130":5,"11346":5,"113492":18,"1135":5,"11376":5,"114":5,"114678":5,"11491":5,"115":[5,31],"11506":5,"115297":5,"11558":5,"115722":5,"11582":11,"116":5,"11686":5,"11695":5,"117":5,"11707":5,"1173":5,"1178":5,"118":5,"11802":5,"118229":5,"11854":5,"119":5,"1193":5,"1199":5,"11e":12,"12":[0,5,6,9,11,12,14,15,16,18,19,31],"120":5,"120000":[0,7],"120066":5,"1204":[5,18],"121":5,"121263":5,"12136":5,"1219":5,"122":5,"1222":5,"123":5,"123048":5,"12325":11,"123635":5,"1237":5,"123794969278e":15,"1239555":8,"124":5,"1241251901":16,"124379":18,"124496":5,"12457":11,"12460":11,"12461":11,"124931":5,"12495":5,"125":[0,5,7],"12500":0,"12522":5,"1254":5,"12548":5,"125553":5,"125886":5,"125968":5,"126":5,"126532":5,"127":5,"12741":5,"127442":5,"127957":5,"128":5,"12806":5,"129":5,"12974":5,"129879":5,"12e":[1,6,9,11,12,13,14,15],"13":[0,5,6,7,8,9,11,12,14,15,16,18],"130":5,"1301":11,"1302":11,"1306":5,"130725":5,"131":5,"13108":18,"1314":5,"131680e":18,"132":5,"132057":5,"1326":5,"13267":5,"1327":5,"13298":5,"133":5,"1334":5,"134":[5,15],"13416":5,"1345":11,"1346":11,"13461":11,"1347":11,"1348":11,"1349":11,"135":5,"135101":5,"135164":5,"1354":12,"1355":12,"13567":9,"136":5,"1360":5,"13607":5,"13626":15,"137":5,"13700":[6,8],"137502":5,"1379":5,"13796e":5,"138":5,"1380":18,"139":5,"139044":5,"1392":5,"139293101586e":15,"139732":5,"1398":5,"13e3":[0,7],"14":[0,5,6,7,9,11,12,14,15,16,18],"140":5,"1403":31,"141":5,"14112":5,"141361":5,"1415":5,"142":5,"14212":5,"143":5,"144":5,"144141":5,"14439":5,"14461":11,"1449":[5,12],"145":5,"145296":5,"145632":5,"146":5,"1468":5,"146844":5,"147":5,"1471":5,"1473":5,"14764":5,"1478":5,"148":[5,18],"1485":5,"148721":5,"149":5,"1492":5,"1494":12,"1498":5,"14e":12,"15":[0,5,7,8,9,11,12,14,15,16,18,21,31],"150":[5,8,12,13,14,15],"15000":[0,5,7,9,11,15,16,18],"1502":5,"150217":5,"15042":5,"150681":5,"151":5,"1514":5,"151616":5,"1517":5,"15186":5,"152":5,"1521":5,"1527":5,"153":5,"153329":5,"153852":5,"1539":12,"154":5,"155":5,"1551":5,"1553":5,"155342":5,"155662":12,"155678":8,"15594":5,"156":[5,8,18],"1560":5,"1567":5,"1569":5,"157":5,"1571":5,"1575":5,"158":5,"1585":12,"1586":5,"158640":8,"15884":5,"159":[5,8],"15907":5,"1599":5,"15e":12,"15msun":31,"16":[0,5,8,12,14,15,16,18,31],"160":5,"1606":5,"160675":12,"161":5,"1610":5,"1612":5,"1618":5,"162":5,"162006":5,"162038":5,"1622":5,"1624":[5,12],"162454":12,"16265":5,"1627":11,"162734":11,"162941":5,"163":[5,8],"1631":5,"1633":5,"163481":8,"1635760192":6,"1635760194":6,"1635760256":8,"1635760377":8,"1635760613":12,"1635760806":14,"1635760813":14,"1635760967":15,"1635760970":15,"1635761189":12,"1637":5,"164":5,"164714":5,"165":5,"16539":5,"16564":5,"166":[5,8],"1663":5,"166559":5,"167":[5,12],"1670":5,"16729":5,"16733":5,"1674":[5,12],"1678":5,"168":[5,8],"16833":5,"16837":5,"168379":8,"168558":5,"168972":5,"169":5,"1691":5,"1695":5,"169775":12,"17":[5,6,8,12,14,15,16,18],"170":5,"1703":12,"1708":5,"171":5,"171096":5,"1713":5,"1715":5,"172":5,"172014":5,"1722":5,"1729":5,"173":5,"1736":5,"174":5,"174169":5,"1747":5,"1749":12,"175":5,"175004":5,"1753":5,"17588":5,"176":5,"176751":12,"177":[5,8],"177444":5,"1775":5,"177551":5,"177727":5,"178":5,"1780":12,"1781":5,"1783":5,"1784":5,"1786":5,"179":5,"179142":5,"1792":5,"17932":5,"1796":5,"18":[5,12,14,16,18],"180":5,"1804":5,"180453":5,"1806":5,"1807":5,"1808":5,"1809":5,"181":5,"1810":5,"18108":5,"1811":5,"1812":5,"181244":5,"1813":5,"18139":5,"1814":[5,12],"18148":5,"1815":5,"1816":5,"1817":5,"181795":5,"1818":5,"1819":5,"181971798545e":15,"182":5,"1821":5,"1822":5,"1823":5,"1824":5,"1825":5,"1826":5,"1827":5,"1828":5,"1829":5,"183":5,"1830":5,"183048":5,"1831":5,"1833":5,"1834":5,"1835":5,"1838":5,"1839":5,"183974":5,"184":5,"1841":5,"1843":5,"1844":5,"184464":5,"1845":5,"1846":5,"1847":5,"184829":5,"185":5,"1851":[5,12],"1854":5,"1858":5,"186":[5,12],"1865":9,"187":5,"1876":5,"187694":5,"1877":5,"1879":12,"187993":5,"188":5,"1882":5,"189":5,"189239":5,"19":[5,8,12,15,18],"190":[0,5,18],"19097":5,"191":5,"1910":12,"1915":5,"191543":5,"192":5,"1920":5,"1923":5,"193":5,"193528":5,"19366":5,"19393":5,"194":5,"1947":12,"195":5,"1951":[0,7],"19521":5,"196":5,"196046":5,"196177":5,"19622":5,"196311":5,"1967":5,"1968":12,"197":5,"1972":[0,7],"1973":5,"1975":[0,7],"1977":5,"197729":5,"197x":[0,7],"198":5,"1980":31,"1983":42,"1986":[0,7,31],"1987":5,"1989":[0,7,12],"199":5,"19907":5,"1991":31,"1992":[0,7],"1993":[0,7],"1996":42,"1998":[0,5,7,31],"1999":[0,7],"19e":12,"1aearth":16,"1ajupit":16,"1amar":16,"1amercuri":16,"1aneptun":16,"1apluto":16,"1asaturn":16,"1auranu":16,"1avenu":16,"1ckzg0p9":[22,39],"1dex":[12,13,14],"1e":[0,7,8,9,11,12,18],"1e2":[0,7],"1e9":[0,7],"1gyr":37,"1m":12,"1mb":[8,12],"1mearth":16,"1mjupit":16,"1mmar":16,"1mmercuri":16,"1mneptun":16,"1mpluto":16,"1msaturn":16,"1msun":37,"1muranu":16,"1mvenu":16,"1s":[8,12],"1y":[0,7],"2":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,16,18,19,21,22,24,25,29,31,36,37,39],"20":[0,5,6,8,9,12,13,14,15,16,18,37],"200":[0,5,7],"2000":[0,5,7],"2001":[13,14,31],"2002":[0,7],"2003":[0,7,31],"2004":[0,5,7],"2005":[0,5,7],"2008":5,"2009":[0,7],"201":5,"2010":[0,7,21,31],"2012":[0,7,31],"2013":[0,7],"2014":[0,5,7,31],"2015":[0,5,7],"2016":[0,7],"201620bd7":0,"2017":[0,7,12,15,21,31],"2018":[0,1,5,7],"2019":[0,5,7,18],"202":5,"2020":[0,7],"2021":[5,6,8,12],"202196":5,"2022":0,"20220107":0,"202339":5,"202569":5,"20265":5,"202750e":18,"2029":5,"203":5,"2033":5,"204":5,"2044":5,"20447":5,"204663":5,"2048":12,"205":5,"2053":5,"205353":5,"205527":5,"205537":5,"2057":5,"206":[5,16],"2063":5,"20677":5,"207":5,"2071":12,"2075":5,"208":5,"2081":5,"208169":5,"208453":5,"20887":5,"208923":5,"209":5,"2091":12,"209274":5,"20938":5,"20980":5,"20e":[8,12],"21":[0,1,5,6,12,18],"210":[5,18],"21043":5,"211":[5,14],"2112":5,"2118":18,"212":5,"212034":5,"2122":12,"2127":5,"213":5,"2132":5,"21333":5,"213396":5,"2135":5,"213854":5,"214":5,"214274644851685":18,"2143":12,"2147":5,"215":5,"215504":5,"2156":5,"215638":5,"2157":5,"21587440567681537":15,"21587440567681548":15,"2158744056768156":15,"216":5,"21603":5,"216067":5,"2164":12,"216496":5,"216951":5,"217":5,"21764":5,"218":5,"2182":5,"218222":14,"21824":5,"2183":12,"21844":5,"219":5,"219029061236e":15,"219058":5,"2191":5,"21927":5,"21948":5,"21e":12,"22":[5,12,18],"220":5,"22036":5,"2206":12,"22098":5,"221":5,"2210":5,"2214":5,"2216":5,"221832":5,"222":5,"2221":5,"2224":5,"22281":5,"223":5,"2232":12,"2234":5,"224":5,"2245":12,"224923":5,"225":5,"225135":5,"22518":5,"22543":5,"2258":12,"226":5,"2261":5,"22611318083528548":8,"226424":5,"2266":5,"2268":5,"2269":12,"227":5,"227249":5,"2275":5,"22787":5,"227955577093495":15,"228":5,"2282":12,"228555":5,"229":5,"2291":5,"22936":5,"2295":5,"229591":5,"22e":8,"23":[5,12,15],"230":5,"2300":12,"230102":5,"2305":5,"230955":5,"231":5,"231680e":18,"231704":5,"232":5,"2329":12,"233":5,"2332":5,"2333":5,"2338":5,"234":[5,8],"2348":12,"235":[5,6],"23513":5,"2352":5,"235464":5,"235689312423":8,"236":[5,18],"2365":[12,18],"237":5,"2371":5,"237203":5,"237951":5,"238":5,"2383":12,"238584":5,"23894":5,"239":5,"239197":5,"239704":5,"24":[5,8,12],"240":5,"2400":12,"2403e":15,"2406":5,"24098":5,"241":5,"2413":5,"24165":5,"242":5,"2421":5,"242151":5,"2423":12,"242309":5,"2424":11,"243":[5,6],"243214":5,"243583":5,"2437":5,"2438":12,"2439":5,"244":[5,16],"2444":16,"244645":5,"245":5,"245209":5,"245223":5,"2454":12,"246":5,"2466":12,"246604":5,"246625":5,"246671":6,"247":5,"2472":5,"2477":[5,12],"248":[5,8],"248871":5,"249":5,"249106":5,"2492":12,"2493":5,"249848":5,"24e":12,"25":[0,5,8,12,18],"250":5,"25014bc73b334765a1c09a4e4a97ed66":12,"251":[5,8],"2514":5,"2516":12,"25164":5,"252":5,"2528":5,"252877":5,"2529":5,"253":5,"2537":12,"253705":5,"254":5,"2544031669784":15,"255":[0,5,7],"2551":5,"2552":5,"2554":12,"2556":5,"256":[5,6,21],"256488":5,"256783":5,"25694":5,"257":[5,42],"2570":12,"2572":15,"257278":5,"257437":5,"2576084265970895":15,"258":[5,8],"2583":5,"259":5,"2590":12,"25msun":[0,7],"26":[5,12],"260":5,"26051":5,"260676":5,"261":5,"2613":5,"261343":5,"26171201413c43f5b91552a374879940":6,"2618":5,"262":5,"2622":[5,12],"2626":5,"2629":5,"263":5,"263079":5,"2632":5,"263235":5,"2636":12,"264":5,"26416":5,"26441":5,"26456":5,"2646":18,"265":5,"2652":12,"266":5,"2663":5,"26637":5,"2664":5,"266485":5,"2666":12,"267":[5,8],"2670":5,"2671":5,"2672":5,"2673":5,"2674":5,"2676":5,"2677":5,"2678":5,"2679":5,"268":5,"2680":5,"2681":5,"2682":5,"2683":5,"2684":5,"2685":5,"2686":5,"2687":5,"2688":5,"2689":5,"269":5,"2690":5,"2691":[5,12],"2692":5,"2693":5,"2694":5,"2695":5,"2696":5,"2697":5,"2698":5,"2699":5,"27":[5,8,12,15],"270":5,"2700":5,"2701":5,"2702":5,"27025":5,"2703":5,"2704":5,"2705":5,"2706":5,"2707":5,"2708":5,"2709":5,"271":5,"2710":5,"2711":5,"2712":5,"2713":5,"2714":5,"27143e":15,"2715":5,"2716":5,"2717":5,"2718":5,"2719":5,"272":5,"2720":5,"2721":5,"2722":5,"2723":5,"2724":5,"2725":5,"2726":5,"2727":5,"2728":5,"2729":5,"272943":5,"273":5,"2730":5,"2731":5,"2732":5,"2733":[5,12],"2734":5,"274":5,"274206":5,"274445":5,"2746":12,"274854":5,"275":5,"2754":5,"27569e":5,"2757":12,"276":5,"2767":5,"277":5,"2773":5,"27734":5,"2775":12,"27767":5,"278":5,"27829":5,"279":5,"2791":5,"2795":12,"28":[5,7,8,9,11,12,21],"280":5,"2800":5,"2801":5,"2802":5,"28060251":31,"280723":5,"280749":5,"281":[5,42],"281309":5,"28134439269236855":15,"2816":5,"2819":5,"282":5,"282234":5,"2823":5,"282623":5,"283":5,"2831":12,"2834":5,"2835":5,"2836":5,"28369":5,"283972":5,"284":5,"2845":12,"2846":5,"285":5,"286":5,"2861":12,"287":5,"2871":5,"2873":5,"2875":12,"2878":5,"288":5,"2881":5,"288353":5,"28867":5,"289":5,"2891":12,"2898":5,"28984":5,"28e":8,"29":[5,8,12,15],"290":5,"290684":5,"291":5,"29136":5,"2914":5,"292":5,"2921":5,"2924":5,"292641":5,"2927":5,"293":5,"2930":12,"2934e":18,"293512":5,"294":[5,6],"29427":15,"29448":15,"29457":15,"2947":[12,15],"295":5,"295543":5,"296":5,"2961":5,"2965":12,"296544":5,"2967":5,"2969346":31,"297":5,"297187":5,"297506":5,"298":5,"29816":5,"298194":5,"2982":12,"299":5,"2991":5,"2996":5,"29e":12,"2b66f805db424c48a1d29c45092b6e3c":8,"2d":[0,7],"2e":[9,12,18],"2f":18,"2m":[8,12],"2mb":[8,12],"2msun":[0,7],"2s":12,"3":[0,1,2,5,6,7,8,9,10,11,12,13,14,15,18,19,21,22,29,31,36,37,39],"30":[1,5,6,8,9,11,12,13,14,15,16,18],"300":[5,37],"3000":[0,7,16],"3002":5,"3008":5,"301":5,"3010":12,"301129":5,"301483":5,"3017":5,"302":[5,18],"3025":5,"302750e":18,"303":5,"3034":5,"3035":12,"303533":5,"3038":5,"30388e":5,"304":5,"3042":5,"30441":5,"3046":5,"3048":5,"305":5,"305334":5,"3059":12,"306":5,"30642":15,"3065":5,"306619":5,"3069":5,"307199":5,"3078":12,"308":5,"3081e":18,"3082":5,"308203":5,"3084":5,"309":5,"30902":15,"309361":5,"309461":5,"3096":5,"30975":5,"30e4":[0,7],"31":[0,5,7,8,12,18],"310":5,"3100":[5,12],"310029":5,"3101":5,"311":5,"312":[5,6],"3124":12,"312637":5,"3127":5,"313":5,"313623":12,"314":5,"31408":5,"314533":5,"3148":12,"315":5,"315124":5,"315223":5,"3154":5,"315404":5,"315903":5,"315973":5,"316":[5,8],"316118":5,"317":5,"3171":5,"3172":5,"3174":12,"3176":5,"317663":5,"317921":5,"318":5,"3185":5,"318753":5,"319":5,"3192":5,"3193":5,"31958":5,"3197":12,"31e":12,"32":[5,8,12,15,19,21],"320":5,"3205":15,"32076":5,"321":5,"321082":5,"3211":5,"32118":5,"3216":5,"321643":5,"322":5,"3223":5,"3228":[5,15],"32282":5,"323":5,"3231":[5,12],"323359":8,"3235":5,"324":5,"3243":5,"3244":5,"3245144":15,"3246":5,"3247":5,"3248":5,"325":5,"325197":5,"3256":12,"325743":5,"325965":5,"326":5,"326147":5,"32620":5,"32631":5,"3264":5,"326601":5,"32684":5,"327":5,"3273":[5,12],"328":5,"328066":5,"3282":5,"328512":5,"329":[5,8],"3294":12,"32e":12,"33":[5,12],"330":5,"331":5,"331680e":18,"332":5,"332091":5,"3321":12,"332251":5,"332777":5,"33295":5,"333":5,"333032":5,"3331":5,"334":5,"33451":5,"33469":9,"3348":12,"335":5,"335153":5,"3352":5,"335342":5,"335428":5,"33552":5,"335642":5,"335847":5,"336":5,"336295":5,"3368":5,"33699":15,"337":5,"33719":5,"337249":5,"3373":12,"338":[5,9],"33817":18,"33879":5,"339":5,"3394":12,"339587":5,"3396":5,"34":[5,6,7,8,9,11,12,13,15,16],"340":5,"34018":5,"340477":5,"34081":5,"341":5,"3412":5,"34126":5,"34175":5,"3419":5,"342":[5,12],"34213":9,"342134":5,"3422":12,"342474":5,"3429":5,"343":5,"3438":5,"344":5,"34421":18,"3445":12,"344772":5,"3448":5,"345":5,"34537":5,"345842":12,"346":5,"3461":5,"3462":5,"3464":12,"3469":5,"347":5,"3471":5,"347169":5,"347405":5,"347623":5,"348":[5,8],"3483":12,"34870":5,"349":5,"3495":5,"3497":5,"34e":8,"35":[5,8,12,31],"350":[5,12],"3502":5,"35051":5,"3507":5,"3509":12,"351":5,"351532":5,"3518":5,"352":5,"3529":5,"353":5,"3533":12,"353432":5,"3536":5,"354":5,"3540":18,"354576":5,"35487":5,"354981":5,"355":5,"3550":12,"35505":5,"355513":5,"3559":5,"356":5,"3563":5,"3568":12,"356812":5,"357":5,"358":5,"3583":5,"3588":12,"3589":5,"35895":5,"359":5,"3591":5,"359784":5,"359881":5,"3599":5,"36":[5,8,12,15],"360":5,"360093":5,"36016":5,"361":5,"3616":5,"362":5,"3622":12,"362601":5,"36298":5,"363":5,"3630":18,"3631":18,"36314":5,"3632":18,"36323":5,"3633":18,"3634":18,"3635":18,"364":5,"3640":12,"364017":5,"36403":5,"364747":5,"3649":5,"365":5,"3657":12,"365763":5,"365949":5,"366":5,"366259":5,"366392":5,"367":5,"367065497322e":15,"367268":5,"3674":5,"36747":5,"3676":12,"367793":5,"368":5,"368345":5,"3688":5,"369":5,"3695":5,"36957":5,"3698":5,"36e":12,"37":[5,8,12],"370":5,"3702e":18,"3706":12,"371":5,"371427":5,"371458":5,"371625":5,"3719":5,"372":5,"3726":[5,12],"3729":5,"373":5,"373282":5,"374":5,"37409":5,"3746":12,"374905":5,"375":5,"3752":5,"375537":5,"3757":5,"375712":5,"3758":5,"376":5,"376059":5,"3763":12,"376604":5,"3767":5,"377":5,"3771":5,"378":5,"3781":5,"3786":12,"37874":5,"379":5,"379292":5,"37e":12,"38":[0,5,8,12],"380":5,"38009":5,"380393":5,"380887":5,"381":5,"3811":12,"382":5,"382144":5,"382472":5,"383":5,"38316":5,"3832":12,"384":5,"3849":12,"385":5,"386":5,"387":5,"3875":12,"38788e":15,"388":5,"388321":5,"389":5,"38908":5,"389208":5,"38921":5,"389749":5,"38m":12,"39":[5,6,7,8,10,11,12,13,14,15,16,17],"390":5,"3905":12,"391":5,"3914":18,"39152e":5,"391798":5,"392":[5,18],"39205":15,"392194":5,"392487":5,"3927":18,"3928":[5,18],"3929":18,"393":5,"3930":[12,18],"3931":[12,18],"3932":18,"393886":5,"394":5,"394722435913e":15,"395":5,"39521":5,"3954":12,"3957":5,"3959":5,"396":5,"396133472739e":15,"396288708628e":15,"3963":5,"396675941641e":15,"3967":5,"397":5,"3971":5,"39754":15,"3977":12,"397754":5,"3978":5,"398":5,"39831":5,"39834":5,"398381":5,"398419":5,"398927":5,"399":5,"3995":5,"3999999999996":14,"3d":[0,7],"3e":18,"3m":12,"3mb":[8,12],"3msun":31,"3s":[8,12],"4":[0,1,5,6,7,8,9,10,11,12,13,14,15,16,18,20,30,31,37],"40":[5,8,12,13,14],"400":5,"4000":[0,12],"40049":5,"401":5,"4011":5,"401263":5,"4013":5,"401728":5,"4018":5,"402":5,"40238":5,"402750e":18,"402961":5,"403":5,"40339":5,"404":5,"4046":5,"404641347602e":15,"4048":5,"404962":5,"405":5,"405068":5,"405577":5,"406":[5,12],"407":5,"40735":5,"4076":5,"408":5,"409":5,"4098":5,"40e":12,"41":[5,12],"410":[5,18],"4101":5,"4102":5,"4108":5,"410828":5,"411":5,"411151":5,"412":5,"41238":5,"413":[5,6],"413467":5,"414":5,"41457":5,"4146":5,"41485":5,"414875":5,"415":5,"416":5,"416141":6,"4162":5,"417":5,"41726":5,"4176":5,"418":5,"418029":5,"4182":5,"4183":5,"4184":5,"4186":5,"41862":5,"418757":5,"4188":5,"419":5,"4192":5,"4197":5,"41996":5,"41e":12,"42":[0,5,8,12],"420":5,"420182":5,"4202":5,"420316":5,"4205":5,"42052":5,"42097":5,"421":5,"421365":5,"421436":5,"421475":5,"4218":5,"4219":5,"422":5,"422436":5,"42266":5,"4229":5,"423":5,"42362":5,"424":[5,6],"4243":5,"424712":5,"424924":5,"425":5,"4251":5,"4256":5,"425788":5,"426":5,"427":5,"427601421985e":15,"42785":5,"428":5,"428699":5,"429":[5,12],"429122":5,"429398":5,"42e":12,"42msun":[0,7],"43":[5,12],"430":5,"4304":5,"430936289925951":15,"431":5,"4311":5,"431313":5,"431680e":18,"43173":5,"432":5,"4321":5,"432729":5,"433":[5,15],"4330":5,"433207":12,"4333":5,"433477":5,"434":5,"43422e":15,"435":5,"4357":5,"435809":5,"436":5,"43618":5,"4365":5,"4369":5,"437":[5,12,15],"43711":15,"4379":5,"438":5,"4380":5,"4385":5,"438686":5,"4387":5,"438861":5,"439":5,"4397":15,"44":[5,12],"440":5,"441":5,"441158":5,"44170":5,"442":5,"44211":5,"4422":5,"44223e":5,"443":5,"4433":5,"4438":5,"444":[5,18],"444217227690e":15,"445":5,"4454":5,"4455":5,"44558":5,"445821":5,"446":5,"447":5,"447918":5,"448":5,"448242":5,"448401":5,"44852":5,"449":[5,12],"4493":5,"44e":12,"44msun":[0,7],"45":[5,6,8,12,15],"450":5,"4500":7,"45000000080":15,"4501":5,"4504":15,"450629":5,"4507":5,"450818":5,"450828476487e":15,"4509":5,"451":[5,8],"45114":5,"451192744924e":15,"451732":5,"452":5,"453":5,"4530":[9,11,18],"453059":12,"453317880232e":15,"453348":5,"453412":5,"453932":5,"454":5,"4540":5,"454013":5,"45407":15,"454268":5,"454409":5,"455":5,"45534":5,"455552":5,"456":12,"456313":5,"456519":5,"457":5,"45757":5,"457987":5,"458":5,"458064":5,"458272":18,"4588":5,"45889":5,"459":5,"459382":5,"45msun":[0,7],"46":[5,8,12,15],"460":5,"460081":5,"46057":5,"46089":5,"462":[5,18],"4621":15,"4622":5,"46220":5,"4623":5,"462779538274e":15,"463":5,"463455":5,"464":5,"464494":5,"465":5,"465133":5,"46573":15,"465867":5,"46607":5,"4666":5,"4670":5,"4673":5,"467851":5,"468":5,"4680":8,"46822":5,"4683":5,"469":5,"46901":5,"469056":5,"469524":5,"47":[5,8,12],"470":5,"471":5,"4710":5,"471379":5,"4714":5,"472":[14,18],"472105":5,"472318":5,"4734":5,"473762":5,"474":5,"47419":5,"475":5,"4752":5,"475287":5,"47534":5,"4755":5,"4759":5,"476":5,"4764":5,"476589":5,"477":5,"477089":5,"4773":5,"47745":15,"477535":5,"477791":5,"478":5,"478253":5,"478315":5,"4788":5,"478807":5,"479":5,"47946":5,"4797":5,"479973":5,"48":[5,12],"480":5,"480045":5,"48046":5,"4807":5,"4809":5,"481":5,"482":5,"4822":5,"4825":5,"482668":5,"483":5,"48336":5,"4838":[7,9,11],"484":5,"4845":5,"485":5,"48586":5,"486":5,"4862":5,"4865":5,"4867":5,"4872":5,"48749":5,"4877":5,"488":5,"48809":5,"489":5,"489077":5,"48926":5,"48e":[8,12],"49":[5,6,12],"490":5,"491":5,"491811":5,"492":5,"492242":5,"492302":5,"492484":5,"492707":5,"492818":5,"493":5,"493648":5,"493975":5,"494":5,"4945":5,"4949":5,"495":5,"4957":5,"4959":5,"495924":5,"496":5,"4961":5,"496312":5,"4966016":14,"497":5,"497008":5,"497294":5,"498":5,"4981":5,"498232":5,"499":5,"49e":12,"4b8c7f4a86e445099d73f27dffaad94b":14,"4e":[0,7,18],"4e3":[0,7],"4m":12,"4mb":[8,12],"4s":[8,12],"5":[0,1,5,6,7,8,9,10,11,12,13,14,15,16,18,19,28,30,31,34],"50":[0,5,7,8,12,14],"500":[0,5,7],"500000e":18,"501":5,"5017":5,"502":5,"502451":5,"502775":5,"502841":5,"503":5,"503726":5,"504":5,"5043":5,"5046":5,"505":5,"5051":5,"50537":5,"506":5,"5064":5,"50652":5,"5066257":14,"50682":5,"50687":5,"507":5,"507104":5,"507443":5,"508":[5,15],"5089":5,"509":5,"5094":5,"50973":5,"50e":12,"50fb66cc659c46c8bbc29fe0c8651c2f":15,"51":[5,8,12],"510":5,"511":5,"511114":5,"5112":5,"5114":5,"5117":5,"512":5,"512561":5,"512617":5,"512mb":21,"513":5,"514":5,"514087":5,"51478":5,"514898":5,"514916":5,"515":12,"515062":5,"5164":5,"517":5,"51742":5,"517454":5,"5175":5,"518":5,"51803":9,"51809":5,"51819":5,"518397":5,"518757914":13,"518851":5,"519":5,"51e":12,"52":[5,6,8,12],"52058":5,"5208":5,"520903":5,"5217":5,"522":5,"5221":5,"523":5,"523485":5,"523561":5,"524":5,"52414":15,"52415":15,"5244":5,"524629":18,"524755":5,"525":5,"526":5,"527":5,"528":5,"528102":5,"5286":5,"529":5,"5294":15,"52e":12,"53":[5,6,8,12],"530":5,"5301":5,"5309":5,"531":5,"531293":5,"531411":5,"5317":5,"532":5,"5324":5,"533":5,"5333":5,"534":5,"534699":5,"535":5,"5358":5,"536":5,"5366":5,"53715":5,"5374":5,"537743":5,"538":5,"53854":5,"539":5,"539343":5,"539941":5,"53e":12,"54":[5,12],"54027":5,"5403":5,"541":5,"541792":5,"542":5,"5423":5,"542419":5,"543":5,"54307":5,"54371":5,"544":5,"54439":5,"544482":5,"545":5,"5456":5,"545743":5,"546":5,"5462":5,"547002":5,"547729":5,"548":5,"5483":15,"548589":5,"548740826516e":15,"548864":5,"549":5,"5493":5,"54949":5,"55":[5,6,8,12,14,15,31],"550575":5,"551":[5,6],"551072":5,"552":5,"552711":5,"5528":5,"553":5,"5532":5,"554":5,"55458":9,"55473":5,"555":[5,8],"5556":5,"5557":5,"557":5,"558":5,"559":5,"5593":5,"55982":5,"559889":5,"55e":12,"56":[5,8,12,15],"560118":5,"5603":5,"561":5,"5612":5,"5619":5,"562":5,"562029":18,"56228":5,"564":5,"565":5,"56518":5,"5652":5,"566":[5,18],"566263":5,"56631":5,"566495":5,"567":5,"567303":5,"567898":5,"568":5,"5681":5,"56865":5,"569":5,"569581":5,"5696":5,"56e":12,"57":[5,6,8,12],"570":5,"570222":5,"5703":5,"57062":5,"57093":5,"571":5,"5712":5,"57141":5,"5717":15,"572":5,"573":5,"5734":5,"5735":5,"573703":5,"5738":5,"573874":5,"574":5,"57443":9,"574826":5,"575":5,"57538":5,"57571":15,"576":5,"577":5,"57739":5,"5775":5,"577826":5,"578":5,"57878":5,"579":5,"579099761269e":15,"5791":5,"5794":5,"5795":5,"5796":5,"5798":5,"58":[5,12],"581":5,"5812":5,"581558":5,"58166":5,"582":5,"582318":5,"583":5,"58332":5,"583346":5,"583436":5,"5845":0,"584622":5,"585":5,"58504":5,"58518":15,"585985":5,"586":5,"587":[5,14],"588":5,"588396":5,"5885":5,"589":5,"58e":8,"59":[5,6,12],"590":5,"5904":5,"590877":5,"591":5,"5919":5,"592":5,"592309":5,"592733":5,"593":5,"594":5,"59429":5,"59452":9,"595":5,"596":[5,12],"59616":5,"596161":5,"597":5,"5977":5,"598":5,"5982":5,"59867":5,"59e":12,"5dex":[8,12,13,14],"5e":12,"5m":12,"5mb":[8,12],"5msun":[0,7],"5s":12,"6":[0,1,5,6,7,8,9,10,11,12,13,14,15,18,22,39],"60":[5,12,15,30],"600":5,"6000":[0,7],"600000":0,"60007":15,"600258":5,"600593":5,"6008":5,"601":5,"60101":5,"602":5,"603":[5,12],"6032":5,"604":5,"60468":5,"605":5,"60547":5,"6058":5,"606":[5,12],"606169":5,"60636":5,"607":12,"608":[5,12],"608269":5,"608402":18,"608485":5,"608655":5,"60876":5,"609":5,"6094":5,"61":[5,12],"610184":5,"610285":5,"611":[5,12],"61117":5,"611632":5,"611763":5,"611785":5,"612":[5,12],"612281":5,"613":[5,12],"613167":5,"614":[5,12],"6145":5,"615":5,"615165":5,"61521":5,"616":[5,12],"6161":5,"616737":5,"61679":5,"617":[5,12],"617224":5,"6179":5,"618":5,"6181":5,"6182":5,"618382":5,"618445":5,"6185":5,"618705":5,"619":[5,12],"619099":5,"61e":12,"62":[0,5,12],"620":12,"621":14,"6212":5,"62124":18,"621375":5,"6215":5,"62172":11,"622":5,"62200":5,"622081":5,"622494":5,"6225":5,"623":12,"623052":5,"623232":5,"623354":5,"62366":5,"624":[5,12],"624125":5,"6249793":15,"625":[0,5],"62549":5,"626":[5,12],"627748":18,"628":[5,12],"628169":5,"629":[5,12],"63":[5,8,12],"630":12,"631":[5,8],"63153":5,"632":[5,12],"6328":5,"633":5,"633148":5,"633684":5,"634":[5,12],"634261":5,"6344":5,"634667":18,"635":[0,7,12],"63566e":5,"635703":5,"636":12,"636985":5,"637":[5,12],"637666":5,"637754":5,"6379":5,"638":[5,12],"63818":5,"6384":5,"6388":5,"639":[5,12,18],"63923":5,"639951":5,"63e":12,"64":[5,12],"640":[5,12],"6409":5,"641":12,"6413":5,"64137":5,"642":12,"64207":5,"64265":5,"6429":5,"643":12,"64359":5,"6438124832773024":12,"644":[5,12],"644553":11,"64463":5,"645":[5,11,12,18],"645286":5,"645339":5,"645763":5,"646":5,"64611":5,"646273":5,"647":5,"647161":5,"64724":5,"6474":5,"6475":5,"648":5,"648549":5,"6485656144116352":12,"648566":12,"6489":5,"6492":5,"6493":5,"64932":5,"649327":5,"64e":12,"65":[5,12,37],"651":5,"6514":5,"6515":5,"65262":5,"652638":12,"652755":5,"653":[5,15],"6548":5,"6550":5,"6552":5,"655371":5,"6556":5,"6559":5,"656":5,"6562":5,"657":5,"6571":5,"6579":5,"658":5,"6588":5,"659":5,"659393":5,"659448":5,"659469":5,"659526":5,"659581":5,"659743":5,"65976":5,"65e":12,"66":[5,12],"66003":15,"66016":5,"66025":5,"6602514":12,"6604":5,"660415":5,"661":5,"661725":5,"662":5,"6626":5,"663":5,"663251":5,"663976":5,"664":5,"664546":5,"6649":5,"665406":5,"66554":5,"665969":5,"666661":5,"667":5,"6674":5,"668":5,"668328":5,"669":5,"66915":5,"669442":5,"66e":12,"67":[5,12],"670":5,"67023":5,"670337":5,"670413":5,"670422":5,"67059":5,"671":5,"671001":5,"671551":5,"67179":5,"672":5,"67245":5,"673":5,"674":5,"674063083432e":15,"6745":5,"674645":5,"6747":5,"6749":5,"675":5,"675689":5,"6758":5,"67586e":15,"676":5,"676181":5,"676215":5,"6764":5,"6765":5,"677":5,"6771":5,"677623":5,"678":5,"679":[5,8],"679223":5,"6797":5,"67e":12,"68":[5,8,12],"681":5,"681473":5,"681487":5,"6816":5,"682":[5,8],"6822":5,"683":5,"6831":5,"6832":5,"6834":5,"683467":5,"68376":5,"684":[5,8,15],"684890":12,"685":[8,12],"685255":5,"685872":5,"686":5,"686591":5,"687":[5,8],"68746":5,"68748":15,"688":[5,8],"6883":5,"6885":5,"689":5,"689781":5,"689835":5,"68e":12,"69":[5,12],"690":12,"690194":12,"690203":5,"6905":5,"690746":5,"6908":5,"6909":5,"691":[5,8],"691586":5,"692":5,"693":[5,8],"693128":5,"693321":5,"6934":5,"693944":5,"694":[5,8,12],"6944":0,"694517":12,"695":[5,15],"6952":5,"695505":5,"69569":5,"696":5,"696003":18,"696284":5,"697":5,"6975":5,"697827":5,"698":[5,12],"69808":5,"698517":5,"6989":5,"699":5,"6e":[8,12],"6e1":31,"6e5":[0,7],"6m":12,"6mb":[8,12],"6msun":[0,7],"6s":[8,12],"7":[0,1,5,6,7,8,9,11,12,13,14,15,17,18,22,31,39],"70":[5,8,12,15,31],"700":[5,18],"70005":5,"700359":5,"70043":5,"70052":5,"70054":5,"701":5,"702":5,"70235":5,"7028":5,"703":5,"703545":5,"70365":5,"704":5,"70429":5,"7046":5,"705":[5,18],"7052":5,"705715":5,"706":5,"7060":5,"706029":5,"706126":5,"706483":5,"706780":12,"7069":5,"706984":5,"707":[5,12],"708":5,"7085":5,"7087":18,"709":5,"7093":5,"709965":5,"70e":12,"71":[5,12],"710":5,"71025":15,"7106":18,"7107":5,"7108":5,"711":5,"7114":5,"71196":15,"712":5,"712414":5,"7128":15,"713946":5,"714712":5,"716":[5,11],"71617":11,"71662":9,"71746":5,"71818":5,"7184":5,"718549":5,"7188":5,"719058":5,"71e":12,"72":[5,12],"720749":5,"721":5,"7210":5,"7214":5,"7219":5,"722":5,"72386":5,"724":[5,9],"72498e":[9,15],"725":5,"725718":5,"726":18,"726002":5,"72611":5,"72617":5,"7267":5,"7269":5,"727":5,"727196":5,"72764":5,"728":[5,8],"7282":5,"728237":5,"72832e":5,"728797":5,"729":5,"729193":5,"7292":5,"7296":5,"72983":5,"72e":12,"73":[5,12,15],"730":5,"731":5,"7315":5,"7319":5,"732":5,"7322":5,"732244":8,"7324":5,"7326":5,"732818":5,"732953":5,"732983":5,"7335":5,"734":5,"7342":5,"734534":5,"735":5,"7354":5,"7359":5,"736":[5,8],"736112":5,"7365":5,"737":5,"7370":5,"737411":5,"738":5,"7380":5,"7381":5,"738399":5,"7384":5,"7385":5,"738524":5,"7386":5,"739":5,"7390":5,"739962":5,"73e":12,"74":[5,12],"740":5,"740494":5,"740929":5,"7413":5,"741346":5,"741448":5,"7418":5,"7419":5,"742":5,"7420":5,"7421":5,"7422":5,"7423":5,"7424":5,"7425":5,"7426":5,"7427":5,"7428":5,"7429":5,"743":5,"7430":5,"7431":5,"743118":5,"7432":5,"7433":5,"7434":5,"7435":5,"7436":5,"7437":5,"7438":5,"743837":5,"7439":5,"744":5,"7440":5,"7446":5,"7447":5,"7448":5,"7449":5,"745":5,"7450":5,"7451":5,"7452":5,"7453":5,"7454":5,"7455":5,"7456":5,"7457":5,"7458":5,"74583":5,"7459":5,"746":5,"7460":5,"7461":5,"7462":5,"747":5,"7472":5,"748":[5,18],"748832":5,"749":5,"75":[0,5,8,12],"750":[5,6],"7500":5,"75005":5,"750149":5,"750806":5,"7509":18,"751305":5,"752":5,"752134":5,"752438":5,"7527":5,"753":5,"7530":5,"7536":5,"7537":5,"754":5,"754141":5,"7544":5,"755":5,"75508":5,"755323":5,"7554":5,"7557":5,"756":5,"7561":15,"7564":5,"7566":5,"756795":5,"757":[5,8],"757025":5,"7572":5,"758":[5,18],"7582":5,"7589":5,"759":5,"75921":5,"75931":5,"7595":5,"7598":5,"75e":12,"76":[5,12],"760064":5,"760389":5,"7605":5,"7607":5,"761":5,"7612":5,"7613":5,"76134":5,"761478":5,"7617":5,"7619":0,"7620":5,"7622":5,"7626":5,"7629":5,"763":[5,31],"7631":5,"7633":5,"7635":5,"764":5,"76416e":5,"7644":5,"7645":5,"764629":5,"7647":5,"7647737053496777":15,"764989":5,"765":5,"7650":5,"7657":5,"7659":5,"766":5,"766094":5,"7666":5,"7669":5,"767":5,"7671":5,"7675":5,"7677":5,"7678":5,"7679":5,"768":5,"7683":5,"768339":5,"7684":5,"768655":5,"7689":5,"769":5,"7690":5,"7691":5,"769195":5,"7695":18,"76e":8,"77":[5,12,14],"7705":5,"770532":5,"7706":5,"7709":5,"7714":5,"7717":5,"7718":5,"772":5,"7720":5,"7721":5,"772169325355e":15,"7722":5,"7727":5,"7728":5,"77287":15,"773":5,"7730":5,"7731":5,"773166":5,"7734":5,"7735":5,"7736":5,"7737":5,"774":5,"7741":5,"77416":5,"7742":5,"7743":5,"7745":5,"77455":5,"7748":5,"774954":5,"774969":5,"775":[5,18],"7750":5,"77505":5,"7751":5,"7752":5,"77541":5,"7757":5,"7759":5,"776":[5,18],"7761":5,"77624":5,"776263":5,"77631":5,"7764":5,"7765":5,"776523":5,"7766":5,"7767":5,"776818":5,"7769":5,"777":5,"7772":5,"7773":[5,18],"7774":5,"77766":5,"7779":5,"778":5,"7781":5,"7782":5,"7785":5,"7789":5,"779":5,"7790":5,"779197348711e":15,"7792":5,"7795":5,"7797":5,"78":[5,12],"78012":5,"7803":5,"7806":5,"7809":15,"781":5,"781046":5,"78125":0,"7813":5,"7817":5,"7819":5,"782":5,"7823":5,"7825":5,"7826":5,"7827":5,"7828":5,"783":[5,11],"7831":5,"7836":5,"783746":5,"783792":5,"784":5,"7840":5,"7842":5,"7843":5,"7844":5,"7845":5,"7848":5,"78488":5,"784972":5,"785":5,"7852":5,"785539":5,"7856":5,"7858":5,"786":5,"786062":5,"7861":5,"7863":5,"7864":5,"7868":5,"786e":18,"787":5,"7871":5,"787102":5,"787368":5,"7874":5,"7875":5,"7877":5,"787705":5,"7879":5,"788":5,"78817":18,"7882":5,"7883":5,"7886":5,"7887":5,"789":5,"789064":5,"7891":5,"789188":5,"7893":5,"7898":5,"789859":5,"7899":5,"78e":12,"79":[5,12],"7901":5,"7902":5,"7903":5,"7905":5,"7907":5,"7909":5,"79092":15,"790941":5,"791":5,"7911":5,"7912":5,"791274":5,"7913":5,"791478":5,"7916":5,"7918":5,"7919":5,"791991":5,"792":5,"7920":5,"7925":5,"7926":5,"79264":5,"7927":5,"792721":5,"792744":5,"7928":5,"7933":5,"7934":5,"7936":5,"793832":5,"7941":5,"79412":5,"7942":5,"7943":5,"7944":5,"79487":15,"795":[5,31],"795024":5,"7958":5,"796":5,"7960":5,"7962":5,"7964":5,"796455":18,"7965":5,"7967":5,"7968":5,"7969":5,"797":5,"7973":5,"7974":5,"7975":5,"7979":5,"798":5,"7980":5,"7982":5,"7988":5,"799":5,"7990":5,"79911":5,"7996":5,"7997":5,"799889":5,"79e":12,"7a2e4301f5224b2cb8939d2297df0aad":14,"7e":12,"7m":12,"7mb":12,"7s":8,"8":[0,3,5,6,7,8,9,11,12,13,14,15,18,30,31],"80":[5,12,31,37],"800":6,"8000":5,"8001":5,"8003":5,"8004":5,"8008":5,"8009":5,"801":5,"8010":5,"8012":5,"8013":5,"802":5,"802706":6,"802986496151e":15,"803":5,"8031":5,"8034":5,"8039":5,"804":5,"80402":5,"8043":5,"8044":5,"8047":5,"8048":5,"804961":5,"805":5,"8050":5,"8053":5,"8055":5,"805733":5,"8058":5,"8059":5,"80592":15,"806":5,"8060":5,"80602":18,"8062":5,"806431":5,"8065":5,"8066":5,"8067":5,"806722":5,"807":5,"8071":5,"8073":5,"807331":5,"807361":5,"8074":5,"807403":5,"8076":5,"8079":5,"808":5,"808134":5,"809":[5,6],"8091":5,"8095":5,"80954":5,"809662":5,"80e":12,"80msol":31,"81":[5,8,12],"810":8,"8101":5,"8104":5,"8105":5,"81066":15,"8107":5,"8108":5,"8109":5,"811":5,"8111":5,"8115":5,"812":5,"8121":5,"8123":5,"8124797":6,"813":5,"81352":5,"8138":5,"81395":9,"814":5,"8140":5,"8141":5,"814387":5,"81495":15,"81499":15,"815":5,"8151":5,"81529":15,"81536":15,"8155":5,"81562":5,"81563":15,"8158":5,"816":5,"8163":5,"81636":15,"81689":15,"816958":5,"817":[5,11],"81705":5,"817432":5,"817620e":18,"81762e":18,"817843":5,"817888":5,"818":5,"8182":5,"818294":5,"819":5,"8194":5,"8195":5,"81957":15,"8196":5,"819715":5,"8199":5,"81e":12,"82":[5,12],"8200":5,"8202":5,"8205":5,"82061":15,"82064":5,"82074":15,"82088":15,"821":5,"82123":15,"821301":5,"821367":5,"8216":15,"822":5,"82224":5,"8224":5,"82245":5,"82255":15,"823":5,"823059079115e":15,"82325":5,"8234":5,"823767":5,"824494":5,"8245":5,"8247":5,"824848":5,"82486":5,"8249":5,"825":5,"8250":5,"825086":5,"8251":5,"8252":5,"8254":5,"82563":12,"825648":5,"826":5,"8261":5,"8263":5,"82642":5,"826771":5,"8268":5,"826831":5,"827":5,"8271":5,"8276":5,"82797":5,"828":5,"8280":5,"828241":5,"828858":5,"829":5,"829017":5,"8292":5,"8293":5,"8295":5,"829668":5,"829726":5,"829757":5,"8299":5,"82e":12,"83":[5,8,12],"830":[5,18],"8300":5,"8303":5,"830541":5,"831236":5,"832":5,"832981":5,"833":5,"8339":5,"834303":5,"834483":5,"835":5,"8354":5,"836":[5,6],"836621":5,"83672":5,"836783":5,"837":5,"8372":5,"83762":5,"8377":5,"837816":5,"8379":5,"838":[5,6],"838411":6,"838423":5,"83843":5,"839":5,"8399":5,"83e":12,"84":[5,8,12],"840":5,"84029":5,"84071":5,"840796":5,"840994":5,"841":5,"841284":5,"841718":5,"8427e":18,"8429":5,"843":5,"8435":5,"8435e":18,"844":[5,6],"8441":5,"84428":5,"8443":5,"845":5,"84502":5,"8452":5,"845387":5,"845641":5,"846":[5,6],"846045":6,"847":5,"847153":5,"84827":5,"848380621869e":9,"848866":5,"8493":5,"85":[5,8,12,37],"850":5,"850309":5,"851":5,"851646":5,"852":5,"852252":5,"8523":5,"852712":5,"853":5,"8533":5,"854":5,"85406e":5,"8544":5,"8545":5,"854649":5,"855":5,"856":[5,12],"85661":18,"8569":5,"857":5,"8573":5,"857699":5,"8577":5,"858":[5,6],"8585":5,"859":5,"8596":5,"859753":5,"8598":5,"859977":5,"86":[5,8,12],"860402":5,"8605":5,"861":5,"861368":5,"863":[5,8],"86323":5,"86334":5,"8635":5,"8638":5,"865":5,"8653":5,"8654":5,"865806":5,"866":5,"8664":5,"867":5,"86728":5,"8674":5,"8678":5,"86794":5,"868":5,"8683":5,"86878":5,"869":5,"86918":5,"8694":5,"869544":5,"87":[5,12,15],"870":5,"8704":5,"8706":5,"8708":5,"871":5,"872":[5,15],"872312":5,"872316":5,"873":5,"8731":5,"873639":5,"874":5,"874638":5,"875":5,"876":5,"876084":5,"876382":5,"877":5,"877963":5,"878":5,"87813":5,"878253":5,"879":5,"8791":5,"87e":12,"88":[5,12],"880":5,"8805":5,"880528":5,"881":5,"8813":5,"882017":5,"8828":5,"883":5,"883252":5,"88343":5,"8837":5,"884":5,"8840":5,"8843":5,"88441":5,"884461":5,"8846":5,"8848":5,"885":5,"8851":5,"8853":5,"8855":5,"885537":5,"8856":5,"8858":5,"88581":5,"886":5,"8860":5,"8862":[5,15],"8864":5,"8866":5,"8867":5,"8868":5,"8869":5,"887":5,"8870":5,"8871":5,"8872":5,"8873":5,"8874":5,"8875":5,"8876":5,"8877":5,"8878":5,"888":5,"8880":5,"8881":5,"888123":5,"8882":5,"8884":5,"8886":5,"888613":5,"8887":5,"8889":5,"889":5,"8891":5,"8892":5,"8893":5,"8894":5,"8896":5,"8897":5,"8898":5,"8899":5,"89":[5,6,12,14],"890":5,"8901":5,"8902":5,"8903":5,"8904":5,"8906":5,"8907":5,"8908":5,"8909":5,"891":5,"8910":5,"891056":5,"8911":5,"8912":5,"8917":5,"892":5,"89211":18,"8924":5,"8926":5,"893":5,"8934":5,"8935":5,"8939":5,"893941":5,"894":5,"894041":5,"8941":5,"8949":5,"895":5,"895821":5,"896":5,"8961":5,"896110e":18,"896196":5,"896286":5,"8972":5,"8975":5,"897612":5,"898":5,"8982":5,"898786":5,"899":5,"8992":5,"899464":5,"8a7d52edc59346ce991063d9e05e9ba7":6,"8bc1eafea1c34b05894c1618639d8c37":15,"8e":[0,7],"8m":[8,12],"8mb":12,"8s":[8,12],"9":[0,5,6,7,8,9,11,12,14,15,18],"90":[5,8,12],"900":5,"901":5,"901988":5,"902":5,"903":5,"9032":5,"9036":5,"9038":5,"904":5,"9043":5,"9046":5,"9047":5,"905":5,"905335716621e":15,"9057":5,"906":5,"906059":5,"906299":5,"90695":5,"907":5,"9071":5,"90716":5,"9073":5,"9074":5,"908":5,"9087":5,"909":5,"9093":5,"9098":5,"90e":12,"91":[5,8,12],"910419":5,"9105":5,"910817":5,"910981":5,"911":5,"9110":5,"911093":5,"9113":5,"912":5,"912238":5,"912283":5,"912289":5,"912327":5,"9127":5,"912919":5,"913":5,"9139":5,"914":5,"9147":5,"9148":5,"915":[5,8],"915148":5,"915221":5,"9153":5,"91548":5,"916":5,"916093":5,"916207":5,"917":5,"917439":5,"9179":5,"918":5,"918543":5,"9189":5,"919":5,"9196":5,"91e":12,"92":[5,12],"920":5,"9203":5,"9206":5,"920832":5,"921":5,"9214":5,"922":5,"922199":5,"923":5,"92382":5,"924":5,"924056":18,"925":5,"9253":5,"9255":5,"9256":5,"925761":5,"926":5,"9263":5,"9264":5,"927":5,"929":5,"929511":5,"92995":5,"92e":12,"93":[5,12,15],"930":[5,14],"930282":5,"9304":5,"93044":5,"9308":5,"9309":5,"930943":5,"931":5,"9310":5,"932":5,"9323":5,"932839":5,"933":5,"9339":5,"934":5,"9342":5,"935":5,"935069":5,"9351":5,"9357":5,"935816":5,"935920339886e":15,"936":5,"936532":5,"936762":5,"937":5,"9373e":18,"938":5,"938568":5,"938576":5,"93898":5,"939":5,"939376":5,"939378":5,"939757":5,"93e":12,"94":[5,6,8,12,19],"941":[5,8],"9411":5,"941478":5,"942":5,"942154":5,"9423":5,"9427":5,"942854":5,"943":5,"9436":15,"944":5,"9445":5,"94464":5,"945":5,"9452":5,"946":5,"946468":5,"946757":5,"947":5,"9471":5,"947719":5,"947774":5,"94797":5,"948":5,"949":5,"95":[5,12,14],"950":5,"9505":5,"950733":5,"951":5,"951344":5,"951597":5,"952":5,"9524":5,"952496":5,"953":5,"953182":5,"9537":5,"953738":5,"953798":5,"954":5,"954624":5,"9548":5,"954848":5,"955":5,"9557":5,"956":5,"9561":5,"956619":5,"957":5,"9573":5,"95783":5,"957894":5,"958":5,"959":5,"959422":5,"959492":5,"9595":5,"9598":5,"95e":8,"96":[5,6,8,12],"960":5,"9603":5,"9606":5,"960734":5,"961":5,"9610":5,"96112":5,"96161":5,"962":5,"962482":5,"962876":5,"963":[5,8],"963621764679e":15,"964":5,"9648":5,"965":5,"9650":5,"965167":5,"96557e":5,"966":5,"966681":5,"967":5,"968":5,"969":5,"96963":5,"96e":12,"97":[5,12],"970":5,"97008":15,"970206":5,"970505":5,"970783":5,"971":5,"971686":5,"971941":5,"972":5,"9725":5,"973":[5,12],"973135":5,"97316":5,"9739":5,"9739752":8,"974":5,"9743":5,"9749":5,"975":5,"9757":5,"9758":5,"975864":5,"976":5,"976041":5,"977":5,"9779":5,"97797":5,"978":5,"979":5,"97923e":15,"9794":5,"9797":5,"97e":[8,12],"98":[5,12,14],"98061":5,"98081":5,"98096":5,"981":5,"981292":5,"9814":5,"981555":5,"9816":5,"982":5,"9825":5,"983":5,"983229":5,"984":[5,14],"9841":5,"9842":5,"985":5,"9851":5,"985359":5,"9859":5,"986":[5,8],"9869":5,"987":5,"988":5,"988755":5,"989":5,"98e":12,"99":[5,12,14],"990":5,"9900":5,"9902":5,"991":5,"9912":5,"991224":5,"991657":8,"99191":9,"99192":9,"99194":9,"992":5,"99203":5,"9927":[5,11],"993":5,"994":5,"994118":5,"995":5,"995631":14,"995687":5,"995824":5,"996":[5,8],"996798":5,"997":5,"9977":5,"997751":5,"998":5,"998023":5,"99808":5,"9983":11,"998563":5,"999":5,"999122":5,"9999999999999998":14,"99e":12,"9e":8,"9m":12,"9mb":[8,12],"9s":[8,12],"abstract":40,"boolean":[0,2,7,19,20,21,24,38,42],"break":[0,7],"case":[0,2,4,7,15,19,21,22,25,30,37],"catch":[6,8,11,12,13,14,15,18,19,21],"char":21,"class":[2,3,19,22,23],"const":[2,6,8,12,13,14,15],"default":[0,1,2,3,6,7,9,10,12,13,14,15,18,19,20,21,25,26,28,29,30,31,33,36,37,38,40],"do":[0,1,2,5,6,7,8,9,12,13,14,15,18,20,21,22,24,25,30,31,33,37,39,42],"export":[3,15,19,20,30],"final":[5,8,12,13,14,18],"float":[0,2,3,5,7,10,11,16,19,31,32,37,42],"function":[0,1,2,3,4,5,6,8,9,17,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42],"import":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,34],"int":[0,1,2,5,7,12,15,19,20,21,25,31,32,33,34,37,42],"krtickov\u00e1":[0,7],"kub\u00e1t":[0,7],"long":[0,6,7,8,15,21,27,30,34,38,41],"new":[0,2,6,7,8,11,12,13,14,15,20,25,30,31,34],"null":[0,6,7,8,15,19],"paczy\u0144ski":[0,7],"public":[12,13,14,15,22],"return":[1,2,3,5,6,7,8,10,11,12,13,14,15,18,19,20,21,24,25,26,27,28,29,30,31,33,34,36,37,38,40,42],"short":[0,6,7,8,12,13,14,41],"super":[0,7],"switch":[0,7],"throw":[22,39],"true":[0,2,3,5,6,7,8,10,12,13,14,15,17,18,19,20,21,24,25,27,29,30,33,34,36,37,38],"try":[0,5,7,8,11,12,13,14,15,22,25,30,34,39],"void":9,"while":[0,5,6,7,8,12],A:[0,2,4,7,15,28,42],And:[22,33,39,42],As:[0,6,7,8,11,12,13,14,15,25],At:[6,15],But:11,By:[0,6,7,12,13,14,15,18,21],For:[0,2,7,9,11,12,13,14,24],If:[0,2,6,7,8,12,13,14,15,19,20,21,22,24,25,26,27,29,30,31,34,36,39,40,42],In:[0,2,6,7,8,9,10,11,12,13,14,15,18,21,30,37],It:[0,6,7,8,11,12,13,14,15,16,18,21,22,30,33,39],Its:21,NO:21,NOT:[0,7,34,37,40],No:[5,7,21,22,39],Not:[6,8],OR:[2,18],On:[0,7,15,19,30],One:[0,7,21],Or:[15,18],Such:8,That:[0,6,7],The:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,24,25,27,28,29,30,31,32,34,36,37,39,40],Then:[2,6,19,22,39],There:[6,7,8,9,10,11,12,13,14,15,16,18,20,21,24,31,33],These:[6,7,12,13,14,15,19,21,24,25],To:[0,7,11,12,13,14,15,21,22,30,31,39],Will:[0,7,19,21,40],With:33,_1:[12,13,14],_:[6,8,12,13,14,21,33],__:15,__arg_begin:7,__attribute__:9,__delitem__:28,__enter__:19,__exit__:19,__getitem__:[2,28],__iadd__:2,__setitem__:28,_actually_evolve_system:21,_binary_c_bind:[7,9,11,16,38,42],_binary_c_config_execut:21,_binary_c_dir:21,_binary_c_execut:21,_binary_c_shared_librari:21,_commandline_input:21,_count:21,_custom_logging_shared_library_fil:21,_end_time_evolut:21,_errors_exceed:21,_errors_found:21,_evolution_type_opt:21,_failed_count:21,_failed_prob:21,_failed_systems_error_cod:21,_generate_grid_cod:21,_grid_vari:[13,14,21,34],_kill:21,_loaded_moe2017_data:21,_main_pid:21,_moe2017_json_data:21,_population_id:21,_pre_run_setup:20,_probtot:21,_process_run_population_grid:21,_queue_don:21,_repeat:21,_restart_dir:25,_set:20,_set_moe2017_grid:21,_start_time_evolut:21,_store_memaddr:21,_system_gener:21,_total_mass_run:21,_total_probability_weighted_mass_run:21,_total_starcount:21,_zero_prob_stars_skip:21,a173:[0,7],a_in:5,a_out:5,ab:[0,19],abat:[0,7],abbrevi:41,abl:7,about:[4,6,8,12,13,14,15,19,20,21,25,30,33,42],abov:[0,6,7,9,11,13,14,15,19,20,31],abridg:[7,9],absolut:[0,7,19,37],abund:[0,7],ac:[6,15],acceler:[0,7],accept:[15,19,26],access:[2,9,11,12,13,14,15,21,25,30],accord:[0,6,7,30,31,37],accordingli:[11,13,14,15],account:[0,7,21,31],accret:[0,5,7],accretion_limit_dynamical_multipli:[0,7],accretion_limit_eddington_lmms_multipli:[0,7],accretion_limit_eddington_steady_multipli:[0,7],accretion_limit_eddington_wd_to_remnant_multipli:[0,7],accretion_limit_thermal_multipli:[0,7],accretor:[0,5,7,42],accur:[12,13,14],acquir:5,act:[0,7,13,14,15,21],activ:[0,7,21],actual:[0,3,6,7,8,9,11,12,13,14,15,20,21,22,24,25,29,31,37,39],ad:[2,4,6,8,11,30,34],adam:[0,7],adapt:[0,7,13,14],add:[0,2,6,7,8,9,11,12,13,14,15,20,21,24,31,34,35,37],add_ensemble_metadata:35,add_grid_valu:37,add_grid_vari:[6,8,12,13,14,15,34],add_system_metadata:35,addit:0,address:[1,7,9,21,42],admittedli:24,adress:[7,9,42],advis:9,af:5,affect:[0,6,7],after:[0,6,7,8,9,12,13,14,15,20,21,30,34,37],ag89:[0,7],ag:[0,4,5,6,7,8,14,22,37],again:[2,3,6,10,11,19,21],against:24,agb:[0,6,7],agb_3dup_algorithm:[0,7],agb_core_algorithm:[0,7],agb_core_algorithm_default:0,agb_core_algorithm_hurlei:0,agb_core_algorithm_karaka:0,agb_luminosity_algorithm:[0,7],agb_luminosity_algorithm_default:0,agb_luminosity_algorithm_hurlei:0,agb_luminosity_algorithm_karaka:0,agb_radius_algorithm:[0,7],agb_radius_algorithm_default:0,agb_radius_algorithm_hurlei:0,agb_radius_algorithm_karaka:0,agb_third_dredge_up_algorithm_default:0,agb_third_dredge_up_algorithm_hurlei:0,agb_third_dredge_up_algorithm_karaka:0,agb_third_dredge_up_algorithm_stancliff:0,ago:6,al:[0,7,31,42],albedo:[0,7],algorithm:[7,22],algothim:[0,7],all:[0,1,2,3,6,7,8,10,11,12,13,14,15,17,18,19,20,21,22,23,24,25,26,30,31,33,37,38,39,40],all_info:20,alloc:[7,37],allow:[0,2,7,9,17,18,21,28,31],allow_nan:3,almost:21,along:[0,21,22,33,39],alpha:[0,5,7],alpha_:8,alpha_c:[0,5,6,7,8],alpha_ej:5,alphacb:[0,7],alreadi:[6,15,16,25,30,34],also:[0,4,5,6,7,8,9,12,13,14,15,18,19,20,21,22,25,27,30,33,38,39,42],alter:[8,12,34],altern:[0,7,21],although:16,alwai:[0,7,21,31,37],amanda:[0,7],amax:31,amin:31,amount:[0,7],amp:[6,7,8],an:[0,2,3,6,7,8,10,11,12,13,14,15,18,19,21,22,25,26,29,30,31,32,33,34,35,36,37,40],analys:40,analyt:[6,8,12,13,14,15,20,22,23],analyz:11,andrew:[22,39],andronov:[0,7],angelou_lithium_cheb_decay_tim:[0,7],angelou_lithium_cheb_massfrac:[0,7],angelou_lithium_cheb_tim:[0,7],angelou_lithium_decay_funct:[0,7],angelou_lithium_decay_tim:[0,7],angelou_lithium_eagb_decay_tim:[0,7],angelou_lithium_eagb_massfrac:[0,7],angelou_lithium_eagb_tim:[0,7],angelou_lithium_gb_decay_tim:[0,7],angelou_lithium_gb_massfrac:[0,7],angelou_lithium_gb_tim:[0,7],angelou_lithium_hg_decay_tim:[0,7],angelou_lithium_hg_massfrac:[0,7],angelou_lithium_hg_tim:[0,7],angelou_lithium_lmms_decay_tim:[0,7],angelou_lithium_lmms_massfrac:[0,7],angelou_lithium_lmms_tim:[0,7],angelou_lithium_ms_decay_tim:[0,7],angelou_lithium_ms_massfrac:[0,7],angelou_lithium_ms_tim:[0,7],angelou_lithium_tpagb_decay_tim:[0,7],angelou_lithium_tpagb_massfrac:[0,7],angelou_lithium_tpagb_tim:[0,7],angelou_lithium_vrot_trigg:[0,7],angelou_lithium_vrotfrac_trigg:[0,7],angular:[0,7,16,24],ani:[0,3,7,11,15,19,20,22,25,31,34,38,39],anoth:[0,7,25],ansi:[0,7,19],ansi_colour:[0,7],anyth:[0,7,12,13,14,15,19,21,25,37],anywai:[11,15,31,34],api:[0,4,19,22,25],api_log_filename_prefix:[0,5,7,11,16],appear:21,append:[1,2,6,11,12,13,14,16],appli:[0,7],apply_darwin_radau_correct:[0,7],appropri:[0,7,15,21,25,28,29,30,34,36],approxim:[0,6,7,8],ar:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,24,28,29,30,31,33,34,36,37,38,39,42],arang:18,aren:[21,31],arenou2010_binary_fract:31,arg:[5,7,15,19,28,31,32],arg_dict:[2,19],argh:16,argopt:[0,7],argpair:[10,38],argstr:[7,9,11,16,18],argument:[0,2,7,11,13,15,16,17,18,19,20,21,25,26,31,38,40],argument_of_periastron:[0,7],argument_of_periastron_quadrupl:[0,7],argument_of_periastron_tripl:[0,7],aritif:8,around:[0,7,9,11,17,18],arrai:[11,15,18,19,21,31,34,37],arrow:[0,7],artefact:[13,14],artifici:[0,7],artificial_accretion_end_tim:[0,7],artificial_accretion_ignor:0,artificial_accretion_start_tim:[0,7],artificial_angular_momentum_accretion_r:[0,7],artificial_mass_accretion_r:[0,7],artificial_mass_accretion_rate_by_stellar_typ:[0,7],artificial_orbital_angular_momentum_accretion_r:[0,7],arxiv:[0,7,31],ask:[0,7,42],asplund:[0,7],assign:[12,13,14,15,34],associ:[6,8,12,13,14,29,36],assum:[0,6,7,8,12,16,24,37],ast871:[0,7],astronomi:[0,7],astrophys:[8,13,14],astropi:[22,24,39],asymptot:6,atom:38,attempt:[3,19,20],au:16,auto:[1,23],autogen_c_logging_cod:[1,9,18],autogener:18,automat:[0,1,7,9,15,17,18,21,22,28,30,33,34,39],autoviv:2,autovivif:2,autovivificationdict:2,avaibl:[22,39],avail:[0,7,8,9,12,13,14,15,19,21,22,27,39],avoid:[6,7,8],awai:[0,7,12],ax:18,axessubplot:17,axi:[0,7,24],b6213f2eb7f94d3196cf966b7b76b9f9:14,b:[21,30],b_1:[0,7],b_2:[0,7],b_3:[0,7],b_4:[0,7],b_inclination1:[0,7],b_inclination2:[0,7],b_inclination3:[0,7],b_inclination4:[0,7],back:[0,2,5,7],background:18,backward:[0,7],bagb:[0,7],bar:[13,14],barn:[0,7],base:[0,2,3,7,8,12,13,14,15,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,42],base_filenam:[15,20],bash:21,basic:[15,30],batch:21,batchmod:[0,7],batchnam:21,bb:[0,7],bbox_inch:18,beasor:[0,7],becaus:[0,2,6,7,8,11,12,13,14,16,18,20,21,22,28,30,31,39],becom:[0,1,2,5,7,9,13,14,16,19,21],been:[0,7,10,20,21,25,27,29,36],befor:[0,5,6,7,8,12,13,14,15,20,21,22,30,31,39],beg_bss:5,beg_rch:5,beg_symb:5,begin:6,behaviour:[2,6,12,13,14,15,40],behind:18,being:[29,36],belczynski:[0,7],below:[0,4,6,7,8,9,12,13,14,15,21,31],berro:[0,7],bertolami:[0,7],best:[5,20,21],beta:[0,7],beta_reverse_nova:[0,7],beta_reverse_novae_geometri:0,better:[0,2,4,7,15,30,42],between:[0,7,21,31,37],bewar:[15,30,34],beyond:16,bh:[0,5,8],bh_belczynski:[0,5,7],bh_bh:5,bh_fryer12_delai:[0,7],bh_fryer12_rapid:[0,5,7],bh_fryer12_startrack:[0,7],bh_hurley2002:[0,7],bh_prescript:[0,5,7],bh_spera2015:[0,7],bhbh:5,big:[0,7,21],biinari:15,bin:[0,7,8,12,13,14,19,21,22,37,39],bin_data:[8,12,13,14,19],binari:[4,7,8,11,13,14,15,21,22,24,31,34,39,42],binary_c2:[22,39],binary_c:[1,2,3,4,6,8,12,13,14,16,19,20,21,24,28,30,31,34,38,40],binary_c_api_funct:9,binary_c_cal:[15,30],binary_c_default:15,binary_c_grid:[6,8,12,15],binary_c_grid_25014bc73b334765a1c09a4e4a97ed66:12,binary_c_grid_26171201413c43f5b91552a374879940:6,binary_c_grid_2b66f805db424c48a1d29c45092b6e3c:8,binary_c_grid_50fb66cc659c46c8bbc29fe0c8651c2f:15,binary_c_grid_8a7d52edc59346ce991063d9e05e9ba7:6,binary_c_grid_f4e5925effeb42e69b5be956f400ae41:6,binary_c_inline_config:1,binary_c_log_cod:[1,9,11,17,18],binary_c_macro:[0,7],binary_c_output:3,binary_c_paramet:[0,6,12,13,14,15],binary_c_python:[6,7,8,11,12,13,14,15,19],binary_c_python_api:18,binary_c_task_:[0,7],binary_c_write_log_cod:1,binary_grid:[0,7],binary_star:42,binaryc:[1,19,40],binaryc_config:1,binaryc_json_seri:3,binarycdecod:3,binarycencod:3,binarycpython:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42],binarygrid:[12,13,14,15],bind:[0,7,9,11,16],binned_log_luminos:[12,13,14],binned_post_period:8,binned_pre_period:8,binwidth:[8,12,13,14,19],birth:[0,7],bit:[6,12],bivari:[0,7],black:[0,4,6,7,22],black_hol:0,block:[15,34],bloecker:[0,7],blog:1,boltzman:24,boltzmann:[0,7],bondi:[0,7],bondi_hoyle_accretion_factor:[0,7],bool:[2,15,19,20,24,30,33,34,38],born:[0,6,7,12,13,14],bosswissam:19,both:[0,2,7,12,13,14,15],bottom:[0,7,15,34],bottomcod:[6,8,15,34],bound:[5,31,37],boundari:31,brake:[0,7],branch:[0,6,7,19,38],branch_david:0,branchcod:[6,8,15,34],branchpoint:[6,8,15,34],breakup:[0,7],brighten:[13,14],broken:[0,7],bse:[0,7,9,15,31],bse_opt:[6,8,11,12,13,14,15,20,37],bsf:[0,7],buffer:[0,7,30],build:[0,1,4,7,19,25,31],build_q_tabl:31,built:[0,1,10,19,22,39],burn:[0,7],busso:[0,7],bye:[0,7],bz2:30,c13_eff:[0,7],c2:31,c:[0,1,5,7,9,11,15,40],c_auto_log:21,c_log:0,c_logging_cod:[6,8,9,11,12,13,14,15,21],cach:[20,21,22,23,27,33,37],cache_dir:[21,37],cachedir:37,cachetool:[21,28],cachetyp:28,calc_e_integr:31,calc_p_integr:31,calc_period_from_sep:42,calc_sep_from_period:[8,12,15,42],calc_total_probden:31,calcul:[0,2,6,7,8,12,13,14,15,19,21,27,31,34,42],calculate_constants_three_part_powerlaw:31,call:[0,1,2,7,11,13,14,15,16,19,20,21,24,25,29,30,32,34,36,37,38,40],call_binary_c_config:19,calls_filenam:15,can:[0,1,2,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,24,25,30,31,34,39,40,42],candid:8,cannot:[6,9,28,30,33],canon:21,cap:[0,7],capit:[12,13,14],capsul:[1,7,19],captur:[0,7,19],carbon:[0,5,6,7],carbon_oxygen_white_dwarf:0,care:[6,12,13,14,21],carlo:[0,7,21],carrasco:[0,7],carri:[0,7],carriag:[19,21],cast:[18,19],catchtim:19,categor:7,categori:[7,15],categoris:19,caught:[11,19,38],caus:[5,12,42],cbdisc:[0,7],cbdisc_albedo:[0,7],cbdisc_alpha:[0,7],cbdisc_eccentricity_pumping_dermin:0,cbdisc_eccentricity_pumping_method:[0,7],cbdisc_eccentricity_pumping_non:0,cbdisc_end_evolution_after_disc:[0,7],cbdisc_fail_ring_inside_separ:[0,7],cbdisc_gamma:[0,7],cbdisc_init_djdm:[0,7],cbdisc_init_dm:[0,7],cbdisc_inner_edge_strip:[0,7],cbdisc_inner_edge_stripping_timescal:[0,7],cbdisc_kappa:[0,7],cbdisc_mass_loss_constant_r:[0,7],cbdisc_mass_loss_fuv_multipli:[0,7],cbdisc_mass_loss_inner_l2_cross_multipli:[0,7],cbdisc_mass_loss_inner_viscous_accretion_method:[0,7],cbdisc_mass_loss_inner_viscous_accretion_method_equ:0,cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015:0,cbdisc_mass_loss_inner_viscous_accretion_method_non:0,cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015:0,cbdisc_mass_loss_inner_viscous_angular_momentum_multipli:[0,7],cbdisc_mass_loss_inner_viscous_multipli:[0,7],cbdisc_mass_loss_ism_pressur:[0,7],cbdisc_mass_loss_ism_ram_pressure_multipli:[0,7],cbdisc_mass_loss_xray_multipli:[0,7],cbdisc_max_lifetim:[0,7],cbdisc_minimum_evaporation_timescal:[0,7],cbdisc_minimum_fr:[0,7],cbdisc_minimum_luminos:[0,7],cbdisc_minimum_mass:[0,7],cbdisc_no_wind_if_cbdisc:[0,7],cbdisc_outer_edge_strip:[0,7],cbdisc_outer_edge_stripping_timescal:[0,7],cbdisc_resonance_damp:[0,7],cbdisc_resonance_multipli:[0,7],cbdisc_torquef:[0,7],cbdisc_viscous_l2_coupl:[0,7],cbdisc_viscous_photoevaporative_coupl:[0,7],cbdisc_viscous_photoevaporative_coupling_inst:[0,7],cbdisc_viscous_photoevaporative_coupling_non:[0,7],cbdisc_viscous_photoevaporative_coupling_visc:[0,7],ce:[0,7,8],cee:[0,7,8],cell:[7,12,13,14,15],cemp:[0,7],cemp_cfe_minimum:[0,7],centr:[8,15,34],central:16,central_object:[0,7],centralis:40,certain:[21,22,39],certainli:21,cf:[0,7],cf_amanda_log:[0,7],cflag:[22,39],chabrier:31,challeng:[13,14],chandrasekhar:[0,7],chandrasekhar_mass:[0,7],chang:[0,1,2,5,6,7,8,9,12,13,14,15,18,19,20,21,22,33,34,39],chapter:[0,21,23],charact:[19,21,30],cheb:[0,7],check:[0,6,7,8,12,13,14,15,18,19,20,21,25,29,30,31,33,36,40,42],check_circular:3,check_if_in_shel:19,chemic:[0,7,37],chen:[0,7],child:19,child_dir:19,choic:[0,7,24,31],choos:[0,6,7,8,9,12,18,24,25,30],chose:11,chosen:[12,13,14,15,34],chunk:[29,36],ci:16,circular:[0,5,7],circumbinari:[0,7],circumstanti:[0,7],cl:3,claei:[0,7],clark:[0,7],clean:[1,6,11,13,14,20],clean_up_custom_logging_fil:20,clear:[13,14,38],clearli:[13,14],clock:19,close:[0,5,7,8,13,14,16,30],closedir:30,closefd:30,closer:5,cloud:[0,7],clusterid:[21,29],cmdline_str:32,co2:[13,14],co:[0,5,7],coalesc:5,code:[0,1,6,7,8,9,11,12,13,14,15,17,18,20,22,24,29,30,31,33,34,36,37,39,40,42],collaps:[0,7],collapsar:[0,7],collect:42,collid:42,color:[19,24],color_by_index:24,colour:[0,7],colour_log:[0,7],column:[6,8,11,15,16,18,24],column_nam:11,com:[1,19,31],combin:[1,2,9,19,20,21],combine_ensemble_with_thread_join:21,combined_output_dict:35,come:[2,22,37,39],comenv:[5,8],comenv_bs:0,comenv_count:8,comenv_disc_angmom_fract:[0,7],comenv_disc_mass_fract:[0,7],comenv_ejection_spin_method:[0,7],comenv_ejection_spin_method_do_noth:[0,7],comenv_ejection_spin_method_sychron:[0,7],comenv_ejection_spin_method_synchron:0,comenv_merger_spin_method:[0,7],comenv_merger_spin_method_breakup:0,comenv_merger_spin_method_conserve_angmom:[0,7],comenv_merger_spin_method_conserve_omega:[0,7],comenv_merger_spin_method_specif:[0,7],comenv_ms_accret:[0,7],comenv_ms_accretion_fract:[0,7],comenv_ms_accretion_mass:[0,7],comenv_nandez2016:0,comenv_nelemans_tout:0,comenv_ns_accret:[0,7],comenv_ns_accretion_fract:[0,7],comenv_ns_accretion_mass:[0,7],comenv_post_eccentr:[0,7],comenv_prescript:[0,7],comenv_splitmass:[0,7],comenv_undef:0,comma:37,command:[0,1,7,15,20,21,22,30,39],command_lin:21,commandlin:15,comment:15,common:[0,4,5,6,7,9,11,12,13,14,15,22],compact:[8,15],companion:[0,5,7,18,30],compar:[0,7,8,12,15,21],compens:[13,14],compil:[1,9,15,18,22,39],compile_shared_lib:1,complaint:30,complet:[6,8,12,13,14,15],complex:[8,9,15,17,18,21],compon:[19,24],compress:[3,30],compress_pickl:30,compression_typ:30,compresslevel:30,comput:[0,6,7,12,13,14],concaten:2,conceptu:12,concurr:21,condit:[6,8,9,12,13,14,15,17,18,34],condor:[21,22,23,25],condor_bash:21,condor_batchnam:21,condor_check_requir:29,condor_clusterid:[21,29],condor_d:21,condor_dir:[21,25,29,36],condor_env:21,condor_extra_set:21,condor_getenv:21,condor_grid:29,condor_initial_dir:21,condor_kill_sig:21,condor_memori:21,condor_njob:21,condor_outfil:29,condor_postpone_join:21,condor_postpone_submit:21,condor_process:[21,29],condor_pwd:21,condor_q:21,condor_queue_stat:29,condor_requir:21,condor_should_transfer_fil:21,condor_snapshot_on_kil:21,condor_status_fil:29,condor_stream_error:21,condor_stream_output:21,condor_submit:21,condor_univers:21,condor_warn_max_memori:21,condor_when_to_transfer_output:21,condorid:29,condorpath:29,config:[1,19,21,22,39],config_fil:1,configur:[6,11,12,13,14,15,18,21,26,31],confirm:30,conjunct:10,conserv:[0,7],consid:[0,1,2,7,12,13,14,20,21,24,32,33,37],const_distribut:31,const_dt:37,const_dt_cach:37,const_int:37,const_linear:[34,37],const_rang:37,constant:[0,2,7,13,14,24,31,37],construct:[0,1,6,7,8,11,12,13,14,16,18,21],contact:5,contain:[0,1,2,3,7,10,11,12,13,14,15,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41],content:[2,3,7,19,20,25],context:19,continu:[15,29,34,36],contribut:[22,39],control:[0,6,7,12,13,14,15,21],conv_time_unit:19,convect:[0,7],conveni:19,converg:[0,7],convers:2,convert:[2,3,6,8,16,19,20,30,31,37],convert_byt:19,convert_float_kei:3,convfloat:19,convfrac:5,cool:[0,6,7],copi:[0,7,8,13,14,21,42],core:[0,6,7,8,12,13,14,15,21,24],core_co:9,core_h:9,core_helium_burn:0,core_mass:[0,7,9],correct:[0,7,11,20,24,31,32,42],correctli:[11,18,22,39],correspon:[29,36],correspond:[15,24,29,34,36],corretor:[0,7],cosmic:31,cosmic_sfh_madau_dickinson2014:31,cost:[12,13,14],could:[0,3,7,13,14,15,18,19,38],count:[2,5,6,18,19,21],count_keys_recurs:2,counter:21,coupl:[0,4,7],cours:[6,24],cover:[10,12,13,14],coverag:[22,39],cowd:[0,7],cpu:[0,6,7,8,12,13,14,15,21,27],cpu_tim:27,cpython:7,crap_paramet:[0,7],creat:[3,6,8,9,11,12,13,14,15,19,20,27,30,31,34,36],create_and_load_logging_funct:[1,9,18],create_arg_str:19,create_hdf5:19,creation:7,critic:[0,7],cross:[0,7],crunch:[6,8,12,13,14],cs1:16,ctype:1,cube:12,cubic:12,cuntz:[0,7],current:[0,2,7,8,9,12,13,14,19,22,25,30,39],curv:[8,13,14],custom:[0,1,2,3,4,6,7,8,11,12,13,14,15,19,20,21,22,24,31,40],custom_format:[2,19],custom_gener:21,custom_log:[11,18,20,21],custom_logging_cod:[1,9,11,17,18,40],custom_logging_func_memaddr:[7,9,21],custom_logging_funct:[9,11,15,17,18,21,22,23],custom_logging_info:20,custom_logging_memaddr:9,custom_logging_print_stat:11,custom_logging_stat:[6,8,12,13,14,15],custom_opt:[6,11,12,13,14,15,20,30],custom_output_funct:9,custom_sort_dict:2,custom_tmp_dir:1,customis:24,cut:18,cvode:[0,7],d48r:18,d:[0,1,2,5,6,7,8,9,11,12,15,16,19,37],d_:19,dai:[0,5,7,8,9,11,12,15,18,31,42],damp:[0,7],darwin:[0,7],dat:[0,15,19],data:[0,3,5,6,7,8,11,12,13,14,15,16,18,19,21,25,26,30,31,34,40,42],data_dict:31,data_dir:[15,19,20,21,30],datadir:[15,30],datafram:[6,8,11,12,13,14,16,17,18,24],dataio:[20,22,23],datalinedict:[6,8,12,13,14,19],datamodel:2,dataset:[15,21,25,26],date:[19,20,21],david:[0,2,18,22,39],david_logging_funct:0,dd7:[0,7],de:[0,5,7],deactiv:[0,7],deal:[3,11],dear:5,death:[0,7],debug:[0,5,6,7,8,12,13,14,15,21,32],decai:[0,7],decid:[0,2,7,9,17,18,19,20,21,25],decod:3,decompress:3,decreas:[0,7],deepcopi:8,deeper:[15,34],def:[5,6,8,11,12,13,14,15,18],default_cache_dir:[28,33],default_to_metal:[0,7],defaultdict:19,defer:[0,7],defin:[0,1,7,15,16,20,24,31,34],definit:[1,12,13,14,42],degener:[0,7],degenerate_core_helium_merger_ignit:[0,7],degenerate_core_merger_dredgeup_fract:[0,7],degenerate_core_merger_nucsyn:[0,7],degner:[0,7],degre:[0,7],del:8,delai:[0,7,21],delet:[28,34],delete_grid_vari:34,delta:[19,37],delta_mcmin:[0,7],demonstr:8,den:[0,7],densiti:[12,13,14,31],depend:[0,6,7,19,21,22,24,31,39],deprec:[0,7,20],depth:37,dermin:[0,7],describ:[0,7,18,21,31],descript:[0,7,10,19,21,26,31,33],design:24,desir:[0,7],destruct:[15,34],detail:[0,6,7,11,19,21],detect:[0,5,7,8,16],detector:5,determin:[0,7,9,12,13,14,15,20,31,34,42],deton:[0,7],dev:[0,7],develop:1,development_requir:[22,39],deviat:[31,37],dewi:[0,7],dex:[0,7,8,37],df2:18,df:[16,17,18,24],di:[15,22,26,31],diagnost:21,diagram:[0,4,7,22,24],dickonson:31,dict2:2,dict:[1,3,5,6,11,12,13,14,15,16,19,20,21,22,23,25,26,28,30,31,33,38,41],dict_1:2,dict_2:2,dict_kei:[6,10,11],dictionari:[1,2,3,4,6,8,12,13,14,15,19,20,21,24,26,27,30,31,33,34,38,41],did:[19,22,39],differ:[0,6,7,8,12,13,14,15,18,19,21,22,24,37,39],differenti:19,dimmer:[0,7,12],dir:[22,29,39],dir_ok:30,direct:[0,7,20],directli:[2,11,21,25,30],director:21,directori:[0,4,7,15,19,20,21,22,25,28,29,30,33,36,39],disabl:[0,7,15],disable_debug:[0,7],disable_end_log:[0,7],disable_ev:[0,7],disc:[0,7,16],disc_legacy_log:[0,7],disc_log2d:[0,7],disc_log:[0,7],disc_log_directori:[0,7],disc_log_dt:[0,7],disc_log_level_non:0,disc_log_level_norm:0,disc_log_level_normal_first_disc_onli:0,disc_log_level_subtimestep:0,disc_log_level_subtimestep_first_disc_onli:0,disc_n_monte_carlo_guess:[0,7],disc_stripping_timescale_infinit:0,disc_stripping_timescale_inst:0,disc_stripping_timescale_orbit:0,disc_stripping_timescale_visc:0,disc_timestep_factor:[0,7],discret:15,discs_circumbinary_from_comenv:[0,7],discs_circumbinary_from_wind:[0,7],disk:[0,7,20],dispers:[0,7,37],displai:[0,6,7,8,16],disrupt:[0,5,7,18],dist:19,distanc:[6,16],distant:16,distefano2017:21,distefano:[25,26,31],distinct:20,distrefano:26,distribut:[0,2,4,7,8,12,15,19,25,26,31,37],distribution_funct:[6,8,12,13,14,15,20,22,23],dj:[0,7],dlnm1:[8,12,15],dlnm:[13,14],dlnm_1:[13,14,34],dlog10per:[8,12,15],dlogp:31,dlogt:37,dm1:[6,13,14],dm:[0,5,7,13,14,31,37],dm_1:[6,13,14],dn:[19,31],do_analyt:21,do_dry_run:21,doc:[2,6,12,13,14,15,19,22,33,39],doc_fetch:31,docstr:[11,22,24,39],document:[12,13,14,15,21,23,30,33],doe:[0,2,6,7,9,10,11,12,13,14,15,20,21,28,30,31,34,42],doesn:[6,21],doesnt:[18,33],doesntt:25,don:[2,6,19,21,25],done:[0,2,5,6,7,12,13,14,15,18,21,22,30,39],donor:[0,5,7,42],donor_limit_dynamical_multipli:[0,7],donor_limit_envelope_multipli:[0,7],donor_limit_thermal_multipli:[0,7],donor_rate_algorithm_bs:0,donor_rate_algorithm_claeys2014:0,dont:[7,18],doubl:[6,9,15],down:15,dp:31,dphasevol:[6,8,12,13,14,15,34],dprob:[6,8,13,14],dq:[8,12,15],dr2:[0,7],dr3:[0,7],drai:[0,7],dredg:[0,7],drop:11,dry:[6,8,12,14,15,21,34],dry_parallel:34,dry_run:[6,8,12,15],dry_run_hook:21,dry_run_num_cor:21,dstep:31,dt:[0,1,7,19,28,37],dt_limit:10,dtfac:[0,7],dtlimit:38,dtm:[1,9,15],dtype:[16,17,18],due:[22,39],dummi:[21,24,31],dump:[0,3,7,11,20,30],dumpvers:[0,7],duquennoi:31,duquennoy1991:31,dure:[0,5,7,18],dust:[0,7],dwarf:[0,6,7,13,14],dx:[0,7],dynam:[0,7],e2:[0,7],e2_hurley_2002:0,e2_izzard:0,e2_mint:0,e2_prescript:[0,7],e:[0,5,6,7,8,9,11,12,13,14,15,19,20,21,22,25,28,29,30,31,34,36,37,39,42],each:[0,2,7,8,12,13,14,15,16,19,21,25,34,37],eagb:[0,5,7],eagb_wind_beasor_etal_2020:0,eagb_wind_bs:0,eagb_wind_goldman_etal_2017:0,eagbwind:[0,7],eagbwindfac:[0,7],earli:[0,7],early_asymptotic_giant_branch:0,earth:16,easi:[3,11],easier:[15,18,19],ebindi:5,ecc2:31,ecc3:31,ecc:[5,11,15,18,30,31],eccentr:[0,7,9,11,12,13,14,15,16,18,24,31,42],eccentric_rlof_model:[0,7],eccentricity_quadrupl:[0,7],eccentricity_tripl:[0,7],echo:[0,7],eddington:[0,7],edg:[0,6,7,15,34],edit:9,edu:[0,7],eej:5,eff:6,effect:[0,5,7,9,12,21,31],effective_metal:[0,7,18],effici:[0,6,7,8],egg:[22,39],eggleton:[0,7,42],either:[0,2,3,7,12,13,14,15,18,20,21,22,25,34,38,39,40],eject:[0,7,8,16],el:[11,15],elabor:9,elaps:27,eld:[0,7],eldridg:[0,7],electon:[0,7],electron:[0,7],element:[0,1,7,10,16,21,24,38],els:[2,5,8,19,21],email:38,emp:[0,7],emp_feh_maximum:[0,7],emp_logg_maximum:[0,7],emp_minimum_ag:[0,7],empti:[2,11,29,33,36],enabl:[0,7],encod:[3,30],encount:21,end:[0,5,7,19,21,27,31],end_bss:5,end_index:31,end_rch:5,end_symb:5,end_timestamp:[6,8,12,14,15],energi:[0,7],enhanc:[0,7],enlarg:[0,7],enough:31,ensembl:[0,7,10,21,22,23,30,34,35,38],ensemble_compress:3,ensemble_def:[0,7],ensemble_dictionari:3,ensemble_dt:[0,7],ensemble_factor_in_probability_weighted_mass:21,ensemble_file_typ:3,ensemble_filt:10,ensemble_filter_:[0,7],ensemble_filters_off:[0,7],ensemble_json:3,ensemble_legacy_ensembl:[0,7],ensemble_list:20,ensemble_logdt:[0,7],ensemble_logtim:[0,7],ensemble_macro:[0,7],ensemble_output_:21,ensemble_set:3,ensemble_startlogtim:[0,7],ensemebl:3,ensure_ascii:[3,20,30],enter:[0,7,21],enthalpi:[0,7],entir:[9,11,17,18],entri:[3,19,20],env:[21,24],envelop:[0,4,5,6,7,22],environ:21,eorbf:5,eorbi:5,ep:18,epoch:32,equal:[0,2,7,13,14,15,19],equat:[0,7],equation_of_state_algorithm:[0,7],equation_of_state_paczynski:0,equatori:[0,7],equival:[12,21,25],errno:[22,39],error:[0,2,6,7,8,12,13,14,15,19,21,22,25,30,39],error_on_overwit:25,error_on_overwrit:25,errors_exceed:[6,8,12,14,15],errors_found:[6,8,12,14,15],esa:31,escap:[0,7],escape_fract:[0,7],escape_veloc:[0,7],estim:[6,16,19,21],et:[0,7,31,42],eta:[0,7,8,12],etal:[0,7],etc:[0,7,11,13,14,15,19,20,21,22,24,30,31,39,40],etf:[8,12],euler:[0,7],evalu:[15,31,34,37,42],evan:[0,7],evapor:[0,7],evaporate_escaped_orbiting_object:[0,7],even:[3,10,13,14],event:[0,5,6,7],everi:[0,7,8,19,21,22,39],everyth:[11,15,20,21],everytim:[22,39],evid:[0,7],evolut:[0,1,4,5,6,7,11,12,13,14,15,18,21,22,24,37],evolution_split:[0,7],evolution_splitting_maxdepth:[0,7],evolution_splitting_sn_eccentricity_threshold:[0,7],evolution_splitting_sn_n:[0,7],evolution_stop:8,evolution_typ:[6,8,12,14,15,21],evolutionari:[0,7,11],evolv:[0,4,7,9,20,21],evolve_popul:15,evolve_singl:[9,11,20],exact:[1,2,21],exactli:[0,7,13,14],exampl:[1,2,11,19,31,34,37,40],example_compact_object:15,example_dco:15,example_df:11,example_head:19,example_header_1:18,example_header_2:18,example_log:40,example_log_co:[1,9],example_logging_string_co:9,example_logging_string_post_m:9,example_massloss:[9,11],example_output:11,example_parse_output:[17,19],example_pop:[11,15],example_pop_set:15,example_post_m:9,example_python_population_result:15,example_sn:9,exc_tb:19,exc_typ:19,exc_val:19,exce:[0,7,12],except:[2,5,6,7,12,13,14,15,21,24,33],excess:21,excit:8,execut:[0,7,15,21,34],exist:[0,2,6,7,15,18,21,25,30,33,34],exist_ok:[15,19],exists_ok:30,exit:[0,7,19,20,21,25,29,30,36],exit_after_dry_run:21,exit_cod:21,exp:[8,12,13,14,15,34],expand:15,expect:[6,7,8,12,13,14,21,22,39],experiment:[0,7,19],explain:[4,38],explicitli:[0,1,7],explod:[0,5,7],explor:16,explos:[0,5,6,7,18],expoenti:[0,7],expon:[0,7,19],export_all_info:[15,20],express:[0,7,19],extend:[0,7,8,22,38,39],extens:[3,7,22,23],extern:[0,7],extra:[0,4,7,15,21,22,32,34,40],extra_text:33,extract:[3,15],extract_ensemble_json_from_str:3,extrapol:[21,31],ey:32,f4e5925effeb42e69b5be956f400ae41:6,f:[0,5,7,11,15,18,31],fa:31,fabian:[0,7],fabian_imf_log:[0,7],fabian_imf_log_tim:[0,7],fabian_imf_log_timestep:[0,7],factor:[0,2,7,21,37],fade:[0,7],fail:[0,6,7,8,12,19,21,22,30,39],fail_sil:19,failed_count:[6,8,12,14,15],failed_prob:[6,8,12,14,15],failed_system:21,failed_system_log:21,failed_systems_error_cod:[6,8,12,14,15],failed_systems_threshold:21,failsaf:11,failur:[0,7,19,25],fallback:[0,7],fals:[0,3,5,6,7,8,12,14,15,16,19,20,21,24,25,27,28,29,30,34,36,37,38],fancy_parsing_funct:40,far:[0,5,6,7,13,14,16],farmer:0,fase:15,fast:[0,7],faster:[2,12,13,14,15],fatal_open_error:30,favorit:11,fe:[0,7],featur:[2,4,15,22],feed:21,ferguson:[0,7],fetch:11,few:[0,7,8],fewer:11,field:[0,7],fifocach:21,fig:[0,7,18,31],figsiz:[6,8,12,13,14,16,18],figur:[6,8,12,13,14,16,24],file:[0,1,3,5,7,11,15,19,20,21,22,24,25,28,29,30,33,34,36,38,39,40],file_log:[0,7],file_object:30,filehandl:33,filenam:[0,1,3,5,7,11,15,19,20,21,25,29,30,36,40],filenotfounderror:[22,39],filepath:1,fill:[11,19],fill_data:31,filter:[0,2,7,19],filter_arg_dict:19,filter_dict:2,filter_dict_through_valu:2,filter_list:2,filter_valu:19,fin:[0,7],final_mass:18,final_tim:18,find:[2,5,8,15,19,21,28,33],finish:[6,8,12,14,15,19,24,30,36],finit:[6,8,12,13,14],first:[0,2,6,7,8,11,12,13,14,15,16,19,22,25,30,31,39,42],first_giant_branch:0,fishlock:[0,7],fit:[0,2,7,11,31,42],fix:[0,5,7,11,15,19,20,24,30,31,32],flag:[0,1,20,21,30,37,38],flash:[0,7],flat:[21,31],flatsect:[8,12,15,31],flaw:20,float64:[17,18],float_overflow_check:[0,7],flto:[22,39],flufl:30,flush:[3,20,30],fo:21,focu:8,fold:31,follow:[0,7,9,18,19,21,22,24,31,37,39],font_scal:[6,8,12,13,14,16],fontsiz:18,forc:[0,5,7,21,27],force_circularization_on_rlof:[0,7],force_corotation_of_primary_and_orbit:[0,7],foreach_star:[6,12],form:[0,6,7,8,12,13,14,15,20,25,30,33,38],formal:[0,7],format:[0,2,3,5,7,8,9,11,12,13,14,15,16,18,19,21,29,30,31,34,37],format_ensemble_result:3,format_numb:19,format_stat:30,former:5,formula:[0,7,19],forward:[0,7],found:[5,6,8,12,14,15,29,31,36],four:[0,7],fourth:16,fraction:[0,7,12,18,21,31],fractions_z0002:18,fractions_z001:18,fractions_z002:18,framework:7,free:[6,8,12],free_persistent_data_memaddr_and_return_json_output:7,free_store_memaddr:7,frequenc:[0,7,16],friction:[0,7],fring:[0,7],from:[0,2,3,5,6,8,10,11,12,13,14,15,16,17,18,19,20,21,24,25,29,30,31,34,36,38,42],from_binary_c_config:1,from_dict:[8,12,13,14,17,18],fryer:[0,7],fsampl:37,ftz:[22,39],full:[4,9,16,19,21,29,36],full_path:19,func:28,func_memaddr:18,function_cach:21,function_cache_default_maxs:21,function_cache_default_typ:21,function_cache_funct:[21,28],function_cache_s:28,function_cache_ttl:21,further:15,futur:16,fuv:[0,7],g:[0,1,2,5,6,7,8,9,11,12,13,14,15,17,18,19,21,22,25,28,29,30,31,36,37,39],ga:[0,7],gaia:[0,7,31],gaia_colour_transform_method:[0,7],gaia_conversion_ubvri_bivariate_jordi2010:[0,7],gaia_conversion_ubvri_riello2020:[0,7],gaia_conversion_ubvri_univariate_evans2018:[0,7],gaia_conversion_ubvri_univariate_jordi2010:[0,7],gaia_conversion_ugriz_bivariate_jordi2010:[0,7],gaia_conversion_ugriz_riello2020:[0,7],gaia_conversion_ugriz_univariate_evans2018:[0,7],gaia_conversion_ugriz_univariate_jordi2010:[0,7],gaia_l_binwidth:[0,7],gaia_teff_binwidth:[0,7],galact:[0,7,37],gallino:[0,7],gamma:[0,7],gap:[0,7],garcia:[0,7],gauss:[0,7],gaussian:[31,37],gaussian_func:31,gaussian_normalizing_const:31,gaussian_zoom:37,gb:[0,7],gb_reimers_eta:[0,7],gb_wind_beasor_etal_2020:0,gb_wind_goldman_etal_2017:0,gb_wind_reim:0,gb_wind_schroeder_cuntz_2005:0,gbwind:[0,7],gbwindfac:[0,7],gcc:[1,22,39],gce:[0,7],gener:[0,1,6,7,8,9,11,12,14,15,17,18,19,20,21,24,25,30,31,33,34,37],general_info:2,generalis:31,geometr:[0,7],geq:6,gerosa:[0,7],get:[0,2,3,4,6,9,11,12,13,14,15,16,18,19,20,22,25,26,29,31,33,34,36,39,40,42],get_ansi_colour:19,get_arg_kei:19,get_condor_statu:29,get_default:[10,19],get_grid_options_defaults_dict:33,get_grid_options_descript:33,get_help:[10,19],get_help_al:[10,19,20],get_help_sup:[10,19],get_integration_constant_q:31,get_max_multipl:31,get_moe_di_stefano_2017_default_opt:26,get_moe_di_stefano_2017_default_options_descript:26,get_moe_di_stefano_dataset:26,get_siz:19,get_slurm_statu:36,get_usernam:19,getitem:2,gettempdir:18,getter:28,giant:[0,6,7,16],giant_branch:0,git:[0,12,13,14,15,19],git_branch:38,git_build:38,github:[19,30],gitlab:22,give:[0,5,7,8,19,20,31,42],given:[0,1,3,7,12,13,14,17,18,19,20,21,25,28,29,30,31,34,36,37,40,42],global:[0,2,7,12,13,14,19,31,37],global_dict:2,gmax:31,gmin:31,gnu:7,go:[0,6,7,10,12,15,20,22,24,39],goal:31,goe:[0,2,7,9,11,24],gogo:[0,7],goldman:[0,7],gonna:31,good:[0,7,11,12,13,14,15,21,42],got:[13,14],gov:[0,7],gravit:[0,6,7,8,15],gravitational_const:6,gravitational_radiation_bs:0,gravitational_radiation_bse_when_no_rlof:0,gravitational_radiation_landau_lifshitz:0,gravitational_radiation_landau_lifshitz_when_no_rlof:0,gravitational_radiation_model:[0,7],gravitational_radiation_modulator_:[0,7],gravitational_radiation_modulator_j:[0,7],gravitational_radiation_non:0,grb:[0,7],great:[0,7,13,14,21],greater:[0,7],grevess:[0,7],grid:[0,4,7,9,11,19,20,22,25,26,29,30,31,32,33,34,35,36,37,42],grid_cod:20,grid_ensemble_result:[30,35],grid_log:[20,22,23],grid_opt:[6,8,11,12,13,14,15,20,25,28,29,30,34,35,36,37],grid_options_default:[20,22,23,28],grid_options_defaults_dict:33,grid_options_descript:[6,15,33],grid_options_description_check:33,grid_options_help:33,grid_result:[6,8,12,13,14,21],grid_vari:[15,21],grid_variable_numb:[6,8,15,34],gridcod:[20,22,23],gridcode_filenam:21,gridtyp:[6,8,15,34],group:[6,12,16,38],grvitation:5,gsl:[22,39],gsl_dir:[22,39],gt:[5,6,7,8,9,11,13,15,16,17,18],guess:[0,7,31],gyr:[5,6,8],gz:30,gzip:30,h5py:[22,39],h:[0,5,7,9,19],ha:[0,1,2,5,6,7,8,9,10,12,13,14,15,18,19,21,27,30,34],hachisu:[0,7],hachisu_disk_wind:[0,7],hachisu_ignore_qcrit:0,hachisu_qcrit:[0,7],hack:33,had:[6,8,12,13,14,20],half:[0,7,31],hall:[0,7],handi:[0,7],handl:[0,2,3,4,7,11,19,20,21,25,26,34,35,38,40,42],handle_ensemble_string_to_json:3,happen:[0,6,7,8],hardcod:[9,12,13,14,15],hardli:38,have:[0,2,3,4,5,6,7,8,9,11,12,13,14,15,18,19,20,21,22,24,25,29,30,33,36,39,40],haven:6,hbb:[0,7],hbbtfac:[0,7],hd:24,hdf5:19,hdf5file:19,he:[0,5,7],head:16,header:[1,6,8,9,11,12,13,14,15,18,19],headerlin:15,headlin:21,hegb:[0,5],hehg:0,height:[8,12,15,31],held:[29,36],helium:[0,6,7],helium_flash_mass_loss:[0,7],helium_white_dwarf:0,help:[0,4,5,7,11,12,13,14,15,19,33],help_al:[0,7],hem:0,henc:[0,7,8,13,14,16],hendrik:[0,18,22,39],here:[1,6,7,9,11,12,13,14,16,18,19,20,21,24,31,40],hertzsprung:[0,4,7,22],hertzsprung_gap:0,hertzstrpung:[0,7],heuvel:[0,7],hewd:[0,7],hewd_hewd_ignition_mass:[0,7],hex:21,hg:[0,7],hi:31,high:[0,7,13,14,31],higher:[0,6,7,8,12,13,14,15,19,21,22,31,39],highlight:2,histogram:8,histori:31,hole:[0,4,6,7,22],home:7,homogen:[0,7],hood:11,hook:21,hopefulli:[0,7],hot:[0,7],hour:19,how:[0,2,5,6,7,8,9,11,12,13,14,15,18,21,27,31,34],howev:[0,7,9,12,13,14,15],hoyl:[0,7],hpc:[20,21,22,23,29,36],hpc_can_join:25,hpc_check_requir:25,hpc_dir:25,hpc_dump_statu:25,hpc_force_join:21,hpc_get_statu:25,hpc_grid:25,hpc_id_filenam:25,hpc_id_from_dir:25,hpc_job:25,hpc_job_task:25,hpc_job_typ:25,hpc_jobid:[20,25],hpc_jobid_tupl:25,hpc_join_from_fil:25,hpc_join_previ:25,hpc_joinlist:25,hpc_load_joinfiles_list:25,hpc_make_joiningfil:25,hpc_njob:25,hpc_path:25,hpc_queue_stat:25,hpc_rebuild_joinlist:[21,25],hpc_restor:25,hpc_set_statu:25,hpc_snapshot_filenam:25,hpc_statu:25,hpc_task:25,hpc_touch:25,hr:24,hr_diagram:24,hrd:[0,6,7,8],hrdiag:[0,7],hrdiag_output:[0,7],htcondor:21,html:[2,6,15,22,30,39],http:[0,1,2,6,7,15,19,30,31],human:19,hurlei:[0,7],hut:[0,7],hybrid:[0,7],hydro:[0,7],hydrogen:[0,6,7],i:[1,2,5,6,7,8,9,11,12,13,14,15,16,19,20,21,22,25,31,34,38,39,42],ia:[0,7,8],iadd:2,ib:[0,5,7],ibc:[0,7],id:[20,21,25,29,30,31,32,36],id_cor:9,idea:[15,24],ident:2,idum:[0,7],ignit:[0,6,7],ignor:[0,2,7,9,11,15,18,21,31,34],ii:[0,7,18],iia:[0,7],iloc:[11,18],images:21,imf:[0,7,13,14,31],imf_chabrier2003:31,imf_scalo1986:31,imf_scalo1998:31,imf_tinsley1980:31,immedi:[0,6,7,21],implement:[0,2,7,21],impli:[0,7],implic:[13,14],impos:[6,8,12,13,14,15],imposs:8,improv:[31,37],inclin:[0,7],inclination1:[0,7],inclination2:[0,7],inclination3:[0,7],inclination4:[0,7],inclini:[0,7],incliniation_quadrupl:[0,7],incliniation_tripl:[0,7],includ:[0,1,2,6,7,9,11,13,14,15,16,19,20,22,24,30,31,39],include_binary_c_default:[15,20],include_binary_c_help_al:[15,20],include_binary_c_version_info:[15,20],include_default:[15,30],include_popul:15,include_population_set:20,incom:[0,7],increas:[0,5,7,8,12,13,14],inde:[0,7,13,14],indent:[2,3,11,20,30],independ:31,index:[0,7,10,11,16,21,22,25,31,34],indic:[0,7,31],individu:[4,12,22],individual_nova:[0,7],induc:[0,7],inertia:[0,7],info:[7,10,15,19,20,22,24,38,39],inform:[0,1,3,4,6,9,11,12,13,14,15,19,20,21,24,25,31,33,35,38],init:20,init_abund:[0,7],init_abund_dex:[0,7],init_abund_mult:[0,7],init_abunds_onli:[0,7],initi:[0,4,5,7,10,11,18,20,31],initial_abundance_hash:20,initial_abundance_mix:[0,7],initial_abunds_onli:[0,7],initial_grid:18,initial_mass:[11,18],initial_tim:18,inlin:18,inner:[0,7,16],input:[1,3,7,10,11,19,20,21,22,24,26,30,31,32,33,40,42],input_dict:2,insert:[15,34],insid:[0,7],inspect:[2,11,24],inspect_dict:2,inspir:[1,24,42],instabl:[0,7],instal:[21,42],install_without_depend:[22,39],instanc:[2,11,12,13,14,15,31],instant:[0,7],instantli:[0,7],instead:[0,5,7,13,14,19,21],integ:[0,6,7,21,37,42],integr:[12,13,14,31,37],integrals_str:31,intens:[13,14],interact:[0,3,5,6,7,8,16,18,33],interfac:[7,16,19,22,25,39],interfer:[22,39],intermedi:8,intern:[0,7,10,21],internal_buff:[0,7],internal_buffering_off:0,internal_buffering_print:0,internal_buffering_stor:0,interpol:[26,31,37],interpolate_in_mass_izzard2012:31,interpolator_nam:31,intershel:[0,7],interstellar:[0,7],intger:[0,7],intro:[0,7],introduc:5,introduct:6,inv:[5,18],invers:42,invert_xaxi:6,involv:[0,7],inward:[0,7],io:30,ipykernel_216542:16,ipykernel_519112:13,ipynb:[12,13,14,15],is_capsul:19,isfil:15,isfloat:19,isint:19,isn:[13,14,19],isnt:15,isotop:[0,7,10,38],isotope_hash:20,isotope_list:20,issu:25,item:[1,2,6,8,12,13,14],iter:19,its:[0,2,3,7,12,13,14,15,16,19,21,22,24,25,26,30,33,37,38,39,40],itself:[3,6,9,11,21,22,31,39],iwamoto:[0,7],izzard2012_period_distribut:31,izzard:[0,6,7,8,11,12,13,14,15,22,39],jager:[0,7],jan:0,jaschek:31,jeff:[22,39],jej:5,jerki:6,jf:5,jia:[0,7],job:[20,21,25,29,36],job_id:25,job_index:25,jobarrayindex:[21,36],jobid:[20,21,36],john:[0,7],join:[7,9,11,15,18,21,25],joinfil:25,joiningfil:25,joinlist:[21,25],jorb_in:5,jorb_out:5,jordi:[0,7],json:[3,7,11,15,20,21,26,30],json_data:2,jsondecod:3,jsonencod:3,jtot_in:5,jupit:16,jupyt:[22,39],just:[0,2,6,7,8,15,18,19,20,21,22,26,30,38,39,42],k1:[5,11,18],k2:[5,11,18],k:[0,6,7,16,31],kap:[0,7],kappa:[0,7],kaps_rentrop:[0,7],karaka:[0,7],keep:[8,15,30,32],kei:[1,2,3,6,10,11,15,16,18,19,20,21,24,28,30,31,33,34,38],kelvin:[0,7],keplerian:[0,7],keys_to_float:2,keyword:[13,24,40],kick:[0,5,7,18,21],kick_backward:0,kick_forward:0,kick_inward:0,kick_outward:0,kick_random:0,kick_straight_up:0,kick_velocity_custom:0,kick_velocity_fix:0,kick_velocity_maxwellian:0,kill:[1,9,15,20],kilonova:6,kim:[0,7],kind:[0,7],kippenhahn:[0,7],klencki:[0,7],km:[0,7],know:[0,1,7,10,11,13,14,21,30,33],known:[0,6,7,11,12,13,14,15,20,31,40],kroupa2001:[15,31,34],kroupa:[13,14,31],krticka:[0,7],ktg93:31,kwarg:[18,20,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40],l1:5,l2:[0,7],l:[0,6,7,12,13,14],l_:[12,13,14],label:[6,18,31],lambda:[0,5,7,8],lambda_:8,lambda_c:[0,5,7,8],lambda_ce_dewi_tauri:[0,7],lambda_ce_klencki_2020:[0,7],lambda_ce_polytrop:[0,7],lambda_ce_wang_2016:[0,7],lambda_enthalpi:[0,7],lambda_ion:5,lambda_ionis:[0,7],lambda_min:[0,7],lambda_mult:[0,7],lambda_multipli:[0,7],lambda_v:31,lamer:[0,7],landau:[0,7],langer:[0,7],languag:6,larger:[0,6,7],last:[4,13,16,18,19,31],last_st:18,last_stellar_type_change_time_1:18,lastli:[7,11],late:18,later:[12,13,14,21],latest0:[6,8,12],latest1:[6,8,12],latest2:[6,15],latest3:6,latest4:6,latest5:6,latest:[22,39],latter:[0,7],launch:[21,29,36],law:[13,14,31],law_const:31,lbv:[0,7],ld_library_path:[22,39],ldist:[13,14],lead:[0,6,7,12,13,14,15,30,31,42],learn:[9,21],least:[22,39],leav:[0,7,21],left:[0,7],legaci:[0,7],legacy_yield:[0,7],legend:[16,18],len:[5,6,11,15,18],length:[5,19],lengthen:[0,7],leq:6,less:[0,1,4,5,7,30,31],let:[5,8,11,12,13,14,15,16,20],level:[1,6,19,32],lfucach:21,li7:[0,7],li:[0,7],lib:[7,11,17,18,22,39],libbinary_c:21,libcustom_logging_0639ee205c7d4782b4a27378f5d890bd:11,libcustom_logging_dafa15d2b1e64e19972ac0e9eb5c9a55:11,libgsl:[22,39],libmemo:[22,39],librari:[0,1,6,7,9,18,20,21,40],library_path:[22,39],librinterpol:[22,39],life:8,lifetim:[0,7,8,12,13,14,15,37],lifshitz:[0,7],like:[0,1,6,7,8,12,13,14,15,18,19,21,22,24,30,37,39],limit:[0,6,7,8,12,13,14,15,21,24],line:[1,5,6,8,9,11,12,13,14,15,16,17,19,20,21,22,24,30,37,39],linear2:21,linear:[0,7,12,13,14,21,31,37],linear_extrapolation_q:31,linearli:[13,14,37],linedata:[6,8,12,13,14],lineplot:[6,8,12,13,14,16],linewidth:[6,8,12,13,14,16],linker:1,linspac:37,linux:7,list:[0,1,2,3,6,7,8,11,12,13,14,15,16,19,21,25,28,31,34,37,40],list_arg:[0,7],list_of_sub_kei:2,lit:[0,7],lithium:[0,7],lithium_gb_post_1dup:[0,7],lithium_gb_post_heflash:[0,7],lithium_hbb_multipli:[0,7],lithium_t:[0,7],littl:[5,6,8,12,16,28],littleton:[0,7],liu:[0,7],ll:[9,10,13,14,16,30],llnl:[0,7],ln:31,lnm1:[8,12,13,14,15],lnm_1:[13,14,34],load:[0,1,3,6,7,8,9,11,12,13,14,15,18,19,20,21,24,25,26,30,34],load_ensembl:3,load_logfil:19,load_population_object:30,load_snapshot:30,lobe:[0,5,7,8,42],loc:16,local:[7,21,31],locat:[0,7,21,22,31,37,39],lock:[5,30],lock_lifetim:30,lock_object:30,lock_suffix:30,lock_timeout:30,locked_clos:30,locked_open_for_writ:30,lockfil:30,lodder:[0,7],log10:[0,6,7,8,12,13,14,15,31,37],log10m1:21,log10mass:37,log10p:31,log10per:[8,12,15],log10pmin:31,log:[0,1,4,5,7,11,16,17,19,21,22,24,30,31,32,34,37,39,40,42],log_:[6,8,12,13,14],log_arg:21,log_args_dir:21,log_arrow:[0,7],log_dt:[8,21],log_every_timestep:[9,11],log_fil:[5,21],log_filenam:[0,5,7,11,18,40],log_newlin:21,log_runtime_system:21,logarithm:[13,14,31,37],logensembletim:[0,7],logfil:[11,19,22,39],logg:[0,6,7],logger:15,logging_dict:1,logging_lin:[9,17,18],loggrav:6,logi:17,logic:[1,2,9,20,21],logl:6,logmass:[31,37],logp:31,logper:[8,31],logperiod:31,logperrang:[8,12],logspac:37,logteff:6,long_spectral_typ:31,longer:[0,6,7,8],longnam:[6,8,12,13,14,15,34],look:[1,3,6,8,12,13,14,15,18,22,31,39],lookback:[0,7],loon:[0,7],loop:[6,8,11,12,13,14,15,30,34],loos:24,lose:[0,7,18],loss:[0,5,7,11,12,16],lost:[0,7,8,18],lot:[6,12,13,14,15,16,21,38,40],lovegrov:0,low:[0,6,7,8,13,14,31],low_mass_m:0,low_mass_main_sequ:0,lower:[0,7,12,15,31,34,37],lowest:31,lru:28,lru_:28,lrucach:21,lsoda:[0,7],lsun:[0,7,24],lt:[6,7,8,11,13,15,16,17],lucianopaz:30,lugaro:[0,7],luminos:[0,4,6,7,22,24],luminosity_1:24,luminosity_2:24,luminosu:6,lw:[0,7],lynnett:[0,7],m01:5,m0:31,m1:[0,5,7,8,9,11,12,13,14,15,18,30,31,42],m2:[5,8,9,11,12,15,18,30,31,42],m3:31,m4:31,m:[0,5,6,7,8,12,13,14,16,18,19,31,42],m_1:[0,5,6,7,8,9,10,11,12,13,14,15,16,17,18,34,40],m_2:[0,5,6,7,8,9,11,12,15,17,18],m_3:[0,7],m_4:[0,7],m_:18,m_max:[15,31,34],m_min:[15,34],m_sun:6,maccretor:[0,5,7],machin:[8,21,22,39],macro:[0,7,10,19,38],madau:31,made:[6,22,25,39],maeder:[0,7],magellan:[0,7],magnet:[0,7],magnetic_braking_algorithm:[0,7],magnetic_braking_algorithm_andronov_2003:0,magnetic_braking_algorithm_barnes_2010:0,magnetic_braking_algorithm_hurley_2002:0,magnetic_braking_algorithm_rappaport_1983:0,magnetic_braking_factor:[0,7],magnetic_braking_gamma:[0,7],magnitud:19,mai:[0,7,8,12,30],main:[0,1,6,7,9,12,13,14,15,18,21,22,39],main_sequ:[0,7,12,13,14,18],mainprocess:[6,8,12],major:[0,7],make:[0,1,2,3,5,6,7,8,11,12,13,14,15,16,18,19,20,21,22,24,25,29,30,31,39,40,42],make_analytics_dict:27,make_build_text:19,make_condor_dir:29,make_slurm_dir:36,makedir:[15,19],makejoiningfil:25,manag:[19,22,39],mani:[0,6,7,8,10,12,13,14,15,21,29],manual:[9,21],manufactur:[0,7],map:21,mar:16,maria:[0,7],mass:[0,1,2,4,5,6,7,8,10,11,12,15,16,18,19,21,24,31,34,37,38,40,42],mass_1:[15,18,24],mass_2:[15,18,24],mass_accretion_for_eld:[0,7],mass_accretor:42,mass_donor:42,mass_evolut:24,mass_for_hestar_ia_low:[0,7],mass_for_hestar_ia_upp:[0,7],mass_loss_m:18,mass_lost:18,mass_of_pmz:[0,7],mass_rang:18,mass_str:31,massiv:[0,4,5,6,7,8,12,16,22,31],massless:[0,7],massless_remn:0,massloss:0,massrang:[6,8,12,13,14],master:[21,24],match:[0,2,6,7,11,12,15,16,21,24,28],materi:[0,6,7],math:[6,8,12,13,14,15,16,34,37],mathieu:31,mathrm:[6,8,12,13,14],matplotlib:[6,8,13,14,16,18,22,24,39],matter:[0,7],mattsson:[0,7],mattsson_mass_loss:[0,7],mattsson_orich_tpagbwind:[0,7],max:[0,7,8,9,12,13,14,15,21,31],max_bound:[31,37],max_column:[6,8,16],max_evolution_tim:[0,1,6,7,8,9,11,12,13,14,15,16,18,37],max_hewd_mass:[0,7],max_logp:31,max_model_numb:[0,7],max_multipl:31,max_neutron_star_mass:[0,7],max_queue_s:21,max_row:[6,8,16],max_stellar_angmom_chang:[0,7],max_stellar_type_1:[0,7],max_stellar_type_2:[0,7],max_stellar_type_3:[0,7],max_stellar_type_4:[0,7],max_tim:[5,11,18],max_val:31,maxcount:5,maxdm:37,maximum:[0,6,7,8,9,12,13,14,15,21,31,37,42],maximum_mass_ratio_for_instant_rlof:[0,7],maximum_mass_ratio_for_rlof:42,maximum_mcbagb_for_degenerate_carbon_ignit:[0,7],maximum_nuclear_burning_timestep:[0,7],maximum_timestep:[0,7],maximum_timestep_factor:[0,7],maxmimum:[0,7],maxsiz:21,maxwellian:[0,7],mayb:24,mayor:31,mb:[6,8,12,14,15,19,21],mc13_pocket_multipli:[0,7],mc1:5,mc:[0,5,7,15,18,30],mch:[0,7],mcmin:[0,7],mdonor:[0,5,7],mean:[0,5,7,19,21,22,29,31,36,37,39],meant:21,measur:19,medium:[0,7],mega:31,megabyt:21,mem:[8,12],mem_us:19,memaddr:[7,9],memori:[1,6,7,8,9,12,14,15,18,19,20,21,30,42],menv:[0,5,7],mer:5,mercuri:16,merg:[0,2,5,6,7,8,21,25,30,31,32],merge_dict:[2,10],merge_multipl:31,merge_popul:30,merge_populations_from_fil:30,merger:[0,5,7],merger_angular_momentum_factor:[0,7],merger_mass_loss_fract:[0,7],mesa:[22,39],mesasdk_init:[22,39],mesasdk_root:[22,39],mess:16,messag:[19,20],messi:6,mestel:[0,7],met:[15,20,25,34],metadata:[20,22,23,34],metal:[0,5,6,7,8,9,11,12,13,14,15,16,17,18,31,42],metallicity_0002:18,metallicity_001:18,metallicity_002:18,method:[0,7,9,11,12,13,14,15,18,20,21,26,30,32,33,34,38],meynet:[0,7],mf1:5,mf2:5,might:[2,3,8,12,15,16,19,21,22,30,39],milki:[0,7],miller:[0,7],min:[8,9,12,13,14,15,31],min_bound:[31,37],min_logp:31,min_per:31,min_val:31,mind:18,mindm:37,minimal_verbos:19,minimum:[0,7,19,21,31,37,38,42],minimum_co_core_mass_for_carbon_ignit:[0,7],minimum_co_core_mass_for_neon_ignit:[0,7],minimum_donor_menv_for_comenv:[0,7],minimum_envelope_mass_for_third_dredgeup:[0,7],minimum_helium_ignition_core_mass:[0,7],minimum_mcbagb_for_nondegenerate_carbon_ignit:[0,7],minimum_orbital_period_for_instant_rlof:[0,7],minimum_period_for_rlof:42,minimum_separation_for_instant_rlof:[0,7],minimum_separation_for_rlof:42,minimum_stellar_mass:38,minimum_time_between_pn:[0,7],minimum_timestep:[0,7],mint:[0,7],mint_data_cleanup:[0,7],mint_dir:[0,7],mint_disable_grid_load_warn:[0,7],mint_fallback_to_test_data:[0,7],mint_hard_max_nshel:[0,7],mint_hard_min_nshel:[0,7],mint_kippenhahn:[0,7],mint_kippenhahn_companion_stellar_typ:[0,7],mint_kippenhahn_stellar_typ:[0,7],mint_maximum_nshel:[0,7],mint_maximum_shell_mass:[0,7],mint_metal:[0,7],mint_minimum_nshel:[0,7],mint_minimum_shell_mass:[0,7],mint_ms_rejuven:[0,7],mint_nshel:[0,7],mint_nuclear_burn:[0,7],mint_remesh:[0,7],mint_use_zams_profil:[0,7],minut:[8,19],mira:[0,7],misc:[7,22],miscellan:[10,38],miss:[0,7,12,13,14,19,33],mistak:21,mix:[0,2,7,21],mixtur:[0,7,12],mmax:[13,14,31,37],mmin:[13,14,21,31,37],mnra:42,mode:30,model:[0,1,6,7,8,9,11,12,13,14,15,16,17,18,21],model_numb:[12,13,14],modif:4,modifi:[0,2,7,9,22,39],modul:[0,7,8,10,12,13,14,15,16,21,23],modulo:21,moe2017_opt:21,moe:[15,22,25,26,31],moe_di_stefano_2017:[20,22,23],moe_di_stefano_2017_multiplicity_fract:31,moe_di_stefano_2017_pdf:31,moment:[0,6,7,9,15,18,37],momenta:[0,7,24],momentum:[0,7,16],monoton:[13,14],mont:[0,7,21],monte_carlo_kick:[0,7],more:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,24,37,39],most:[6,7,8,13,14,16,19],mostli:[6,8,12,13,14,15,18,19,21,24,33,40],mount:30,move:[0,6,7],mrucach:21,ms:[0,5,7,9,12],msgpack:30,mstart:5,msun:[0,6,7,9,11,12,13,14,16,18,31,37,38],mu:[0,7],much:[0,6,7,8,12,15,18,19,27],multipl:[0,2,6,7,21,31],multiplc:[0,7],multipli:[0,2,7,13,14,21,37],multiplicity_arrai:31,multiplicity_fraction_funct:21,multiplicity_model:21,multiplicity_modul:21,multiply_float_valu:2,multiply_values_dict:[2,10],multiprocess:21,must:[0,2,6,7,8,11,12,13,14,15,16,30,34,37],mw:[0,7],my:11,my_stellar_data:[1,9,15,17,18],myr:[0,6,7,8,11,12,13,14,16,37],n100:[0,7],n100_z0:[0,7],n100h:[0,7],n100l:[0,7],n10:[0,7],n150:[0,7],n1600:[0,7],n1600c:[0,7],n1:[0,7],n200:[0,7],n20:[0,7],n300c:[0,7],n3:[0,7],n40:[0,7],n5:[0,7],n:[0,1,5,6,7,8,9,11,12,13,14,15,17,18,19,21,25,31],n_logging_stat:21,naked_helium_star_giant_branch:0,naked_helium_star_hertzsprung_gap:0,naked_main_sequence_helium_star:0,name:[1,2,5,6,7,8,12,13,14,15,16,18,19,21,29,30,33,34,40,41],nameerror:16,narrow:[13,14],natur:[0,7,13,14],nauenberg:[0,7],nazehdin:0,nb:[0,7],nbinary_c:18,ncol:18,nearer:[0,7],nearest:[8,12,13,14],nebula:[0,7],necessari:[8,15,16,18,19,20,36],need:[0,2,7,9,11,12,13,14,15,16,18,21,22,25,31,39,42],neg:[0,2,7,37],neither:[0,7,20],neleman:[0,7],nelemans_gamma:[0,7],nelemans_max_frac_j_chang:[0,7],nelemans_minq:[0,7],nelemans_n_comenv:[0,7],nelemans_recalc_eccentr:[0,7],nemp:[0,7],nemp_cfe_minimum:[0,7],nemp_nfe_minimum:[0,7],nenamg:[0,7],neon:[0,6,7],neptun:16,nest:[2,15,34,38],network:[0,7,10],neutrn:[0,7],neutron:[0,6,7,15],neutron_star:0,never:[0,6,7,13,14,21,28],newdict:2,newer:[0,2,7],newli:[0,7],newlin:[19,21,30,32],newnam:34,newobj:25,newopt:[2,31],newpop:30,newton:[0,7],next:[12,13,14,15,19],nf:[21,30],nfs_flush_hack:30,nfspath:30,nice:[20,24],nieuwenhuijzen:[0,7],nieuwenhuijzen_windfac:[0,7],nine:6,nmax:31,no_thermohaline_mix:[0,7],nocach:21,node:21,noecho:[0,7],noechonow:[0,7],noel:[0,7],nolowq:21,nomin:[0,7],non:[0,2,7,13,14,21,30],nonconservative_angmom_gamma:[0,7],none:[0,1,2,3,5,6,7,8,12,14,15,16,18,19,20,21,25,26,28,29,30,31,33,34,36,37,42],nonetyp:2,nonzero:21,nor:[0,7],norm:21,normal:[0,2,7,20,25,37,38],normalis:[2,21,31],normalize_dict:2,normalize_multipl:21,nospac:19,notabl:15,notat:19,note:[0,5,6,7,12,13,14,15,18,19,21,25,30,34,37,38],notebook:[5,6,7,8,9,10,11,12,13,14,15,16,22,39],notebook_api_funct:11,notebook_bhbh:5,notebook_comenv:8,notebook_custom_log:[11,12,13,14,15],notebook_hrd:6,notebook_individual_system:[9,11,12,13,14,15],notebook_luminos:[13,14],notebook_luminosity_funct:12,notebook_luminosity_function_binari:[13,14],notebook_popul:[11,15],notebook_solar_system:16,noteworthi:4,noth:[2,21,25,26,30],notic:[13,14],notifi:40,nov:18,nova:[0,6,7,8],nova_faml_multipli:[0,7],nova_irradiation_multipli:[0,7],nova_retention_algorithm_claeys2014:0,nova_retention_algorithm_const:0,nova_retention_algorithm_hillman2015:0,nova_retention_fract:[0,7],nova_retention_method:[0,7],nova_timestep_accelerator_index:[0,7],nova_timestep_accelerator_max:[0,7],nova_timestep_accelerator_num:[0,7],now:[0,2,5,6,7,8,9,11,12,13,14,15,16,18,19,31,32],now_object:19,np:[11,17,18,37],nre:[12,37],nrow:18,ns:[0,1,7,8,9,15],nsep:8,nsep_max:8,nsep_min:8,nstar:[6,12],nuclear:[0,7],nuclear_mass_hash:20,nuclear_mass_list:20,nucleosynthesi:[0,7,38],nucleosynthesis_sourc:[10,38],nucreacmult:[0,7],nucsyn:[7,22],nucsyn_angelou_lithium:[0,7],nucsyn_gce_outflow_check:[0,7],nucsyn_hbb:[0,7],nucsyn_metal:[0,7],nucsyn_network:[0,7],nucsyn_network_error:[0,7],nucsyn_s_process:[0,7],nucsyn_solv:[0,7],nucsyn_third_dredge_up:[0,7],nugi:[0,7],nullcach:[21,28],num_ansi_colour:[0,7],num_cor:[6,8,12,13,14,15,21],num_cores_avail:21,number:[0,2,3,5,6,7,8,12,13,14,15,16,18,19,20,21,22,25,30,31,32,33,34,37,39],numer:2,numpi:[11,15,17,18,19,22,34,37,39],o:[3,7,19,22,31],obj:[3,19],object:[0,2,3,4,7,16,19,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40],object_hook:3,object_pairs_hook:3,object_parse_funct:11,observ:[12,13,14],obtain:[0,6,8,12,13,14,30],obvious:9,occur:[0,7,42],odot:[6,8,18],off:[0,5,7,15,18,21],off_m:[5,11,18],offset:[0,7],oh:5,ohio:[0,7],ok:[25,30],old:[13,14,21,34],oldnam:34,omega:[0,5,7,18],on_exit_or_evict:21,onc:[0,7,37],one:[0,2,7,10,13,14,15,16,17,18,21,24,28,30,33,37,40],onewd:0,onli:[0,2,6,7,9,12,13,14,15,16,18,19,21,25,26,30,37,42],onset:[0,7],onto:[0,7,31],oop:5,opac:[0,7],opacity_algorithm:[0,7],opacity_algorithm_ferguson_op:0,opacity_algorithm_paczynski:0,opacity_algorithm_star:0,opal:[0,7],open:[3,5,11,15,18,30],open_ensembl:3,opendir:30,oper:[2,30],opm:31,opt:[2,5,7,31],option:[0,1,2,6,7,8,12,13,14,15,16,17,18,19,20,22,25,26,28,30,31,33,34,37,39,42],orb:[8,15,30],orbit:[0,5,7,8,12,16,24,31,42],orbit_evolut:24,orbital_eccentr:16,orbital_inclin:[0,7],orbital_inclinationi:[0,7],orbital_period:[0,5,7,8,9,11,12,15,17,18,42],orbital_period_quadrupl:[0,7],orbital_period_tripl:[0,7],orbital_phas:[0,7],orbital_phase_quadrupl:[0,7],orbital_phase_tripl:[0,7],orbital_separ:16,orbiting_object:[0,7,16],orbiting_objects_close_pc_threshold:[0,7],orbiting_objects_log:[0,7,16],orbiting_objects_tides_multipli:[0,7],orbiting_objects_wind_accretion_multipli:[0,7],order:[2,4,15,19,34],ordereddict:2,org:[0,2,7,31],orient:8,origin:[16,22,30,39],original_command_lin:21,original_submission_tim:21,original_working_diretori:21,os:[5,6,8,11,12,13,14,15,16,18,19],other:[0,1,2,6,7,10,11,12,13,14,15,19,21,22,24,25,31,33,39],otherwis:[0,7,19,20,21,25,27,29,30,33,36],our:[6,8,12,13,14,21,31],out:[2,3,6,8,9,12,13,14,16,19,21,31,33],outcom:[0,7],outer:[0,6,7],outermost_core_mass:6,outfil:[15,20],outfile_nam:1,outfilenam:15,output:[1,2,3,4,5,7,9,10,11,16,17,18,19,20,21,22,24,30,38,39,40,42],output_dict:[6,8,11,12],output_dir:[11,15,30],output_fil:[11,19,30,33],output_filenam:[15,30],output_lin:19,outsid:[0,7,31],outward:[0,7],over:[2,6,8,10,11,12,13,14,15,19,20,30],overflow:[0,5,7,8],overhead:21,overlap:2,overrid:[2,18,21,31,34,37],overriden:15,overshoot:[0,7],overspin_algorithm:[0,7],overspin_bs:[0,7],overspin_massloss:[0,7],overview:7,overwrit:[21,25],own:[9,11,15,17,18,21,22,34,39],oxygen:[0,6,7],oxygen_neon_white_dwarf:0,p0:31,p1:31,p2:31,p3:31,p:[6,8,12,13,14,16,31,33],p_:8,p_in:5,p_out:5,packag:[3,7,15,19,22,34,35,36,37,39],paczynski:[0,7],pad:[8,12,13,14],pad_output_distribut:[6,8,12,13,14,19],page:[0,6,7,15,22,39],pair:[0,2,5,19,34,38],panda:[6,8,11,12,13,14,16,17,18,19,22,24,39],pane:24,panel:[0,7],paper:[0,7],parallel:34,param_nam:19,paramet:[1,2,3,4,6,7,8,9,11,12,13,14,15,19,20,21,22,24,25,28,29,30,31,33,34,36,37,38,40,42],parameter_nam:[3,6,7,8,10,12,13,14,15,19,34],parameter_value_input_typ:[10,19],pars:[3,4,6,8,11,12,13,14,15,18,19,20,24,38,40],parse_binary_c_version_info:38,parse_cmdlin:20,parse_const:3,parse_data:8,parse_float:3,parse_funct:[6,8,11,12,13,14,15,20,21,40],parse_function_hr_diagram:24,parse_function_mass:24,parse_function_orbit:24,parse_int:3,parse_output:18,parsec:31,part:[6,7,11,12,13,14,15,18,20,31,34,42],partial:[0,7],particularli:[0,7],partit:21,partner:30,pasp:31,pass:[7,9,11,15,16,18,19,20,21,22,24,25,26,29,30,36,37,39,40],path:[11,15,18,19,21,22,25,28,29,30,33,36,39],patho:[22,39],pd:[6,8,11,12,13,14,16,17,18],pdf:[0,7,18,22,31,39],peak:[8,13,14,37],peak_normalized_gaussian_func:37,pend:[0,5,7],per:[0,5,7,8,11,12,15,19,21,30,42],percentag:[0,7],peret:[0,7],perfect:[13,14],perfectli:[12,13,14],perform:[0,7,30],perhap:[0,6,7,8,20],periastron:[0,7],pericent:42,period:[0,5,7,8,9,11,12,13,14,15,16,18,24,31,42],period_str:31,perl:[1,2,12,13,14,15,29],persist:7,persistent_data:7,pgo:[0,7],phase:[0,6,7,8,12,13,14],phasevol:[0,7,15],phdi:0,phi:[5,18],photoevapor:[0,7],php:31,physic:[6,12,13,14,15,21],pick:24,pickl:30,pid:20,piec:[15,18,34],pinnsonneault:[0,7],pisn:0,pkg:[22,39],pl:20,place:[0,7,12,19,21],placehold:[24,28,29,30],plai:[0,7,13,14],plan:21,planet:16,planetari:[0,7],plaw2:21,pleas:[0,6,7,12,13,14,15,19,21,28],plot:[0,6,7,8,11,12,13,14,16,17,18,24],plot_data:[8,12,13,14],plot_funct:[22,23],plot_hr_diagram:24,plot_hr_diagram_singl:24,plot_mass:24,plot_orbit:24,plot_system:24,plot_typ:24,plt:[6,8,13,14,16,18],plu:[0,7],pluto:16,pm:24,pms_mass_1:24,pms_mass_2:24,pn:[0,7],pn_comenv_transition_tim:[0,7],pn_fast_wind:[0,7],pn_fast_wind_dm_agb:[0,7],pn_fast_wind_dm_gb:[0,7],pn_fast_wind_mdot_agb:[0,7],pn_fast_wind_mdot_gb:[0,7],pn_hall_fading_time_algorithm:[0,7],pn_hall_fading_time_algorithm_maximum:[0,7],pn_hall_fading_time_algorithm_minimum:[0,7],pn_resolv:[0,7],pn_resolve_maximum_envelope_mass:[0,7],pn_resolve_minimum_effective_temperatur:[0,7],pn_resolve_minimum_luminos:[0,7],pne:[0,7],png:18,pogg:[0,7],point:[0,3,6,7,19,20,21,22,30,31,37,39],poisson:[21,31],pol:[0,7],polytrop:[0,7],poor:[13,14],pop:[5,9,16,28],pop_macro:9,popitem:28,popul:[0,3,4,7,22,23,39,40],population_extens:[20,25,26,27,28,29,30,31,32,33,34,35,36,37,38],population_id:21,population_nam:[6,8,12,14,15],population_object:30,population_set:20,posit:[0,7,8,31],possibl:[0,1,2,6,7,11,16,19,21,22,28,31,33,39],post:[0,5,6,7,8,9,20],post_ce_adaptive_menv:[0,7],post_ce_envelope_dm_eagb:[0,7],post_ce_envelope_dm_gb:[0,7],post_ce_envelope_dm_tpagb:[0,7],post_ce_objects_have_envelop:[0,7],post_comenv_period:8,post_sn_orbit_bs:0,post_sn_orbit_method:[0,7],post_sn_orbit_tt98:0,postagb_legacy_log:[0,7],postagb_wind_gi:0,postagb_wind_krticka2020:[0,7],postagb_wind_non:[0,7],postagb_wind_use_gi:[0,7],postagbwind:[0,7],postcod:[6,8,15,34],potenti:[0,7],pow2:6,power:[0,7,8,13,14,21,31],powerlaw:31,powerlaw_const:31,powerlaw_constant_nocach:31,powerlaw_extrapolation_q:31,ppisn:0,ppisn_additional_massloss:0,ppisn_core_mass_range_shift:0,ppisn_farmer19:0,ppisn_new_fit_21:0,ppisn_non:0,ppisn_prescript:0,ppn_envelope_mass:[0,7],pragma:9,pre:[0,5,7,8,18,24],pre_comenv_period:8,pre_events_stardata:[0,7],pre_main_sequ:[0,7],pre_main_sequence_fit_lob:[0,7],precis:3,precod:[6,8,12,13,14,15,34],predefin:[12,13,14,15,31],predict:21,predictor:[0,7],prefer:[0,7,20],prefix:[0,7],preloaded_popul:30,prep:0,prepar:2,prepare_dict:2,presc:5,prescrib:[0,7],prescript:[0,5,7,15],prescrit:[0,7],present:[2,3,6,12,13,14,15,18,20,30,31],preserv:[0,7],preset:24,pressur:[0,7],prev_stellar_type_1:15,prev_stellar_type_2:15,prevent:[0,5,6,7,21],previou:[8,13,14,19,21,38],previous:[11,15,25],previous_stardata:[1,8,9,11,15],primari:[1,6,8,12,13,14,15,31,34,42],prime:8,pringl:[0,7],print:[2,5,6,7,8,9,10,11,12,13,14,15,16,18,19,21,25,32,33],print_help:[10,19],print_info:33,print_option_descript:33,print_stack_on_exit:21,print_structur:2,printf:[1,6,8,9,11,12,13,14,15,17,18],prior:[0,6,7],privat:[20,22],prob_dict:31,probability_weighted_mass:21,probabl:[0,1,2,6,7,8,9,12,13,14,15,18,20,21,24,30,31,33,34],probdist:[6,8,12,13,14,15,34],problem:[0,7,12],probtot:[13,14],process:[0,6,7,8,12,13,14,15,17,18,19,20,21,25,29],process_:30,processor:[6,8,12],produc:6,profil:[0,7],progenitor:[0,7,15],program:[6,22,39],progress:19,project:[0,7],proper:[6,9,33],properli:[0,7],properti:[0,19,21,24,34],proport:8,prot1:[0,7],prot2:[0,7],prot3:[0,7],prot4:[0,7],provid:[0,7,15,20,21,25,31,40],pseudorandom:[0,7],publicli:9,puls:[0,6,7,42],pulsat:0,pump:[0,7],purpos:[12,13,14,15,21,24],push:16,push_macro:9,put:[1,6,8,12,13,14,15,18,19,21,24,25,33,34,35],pwd:21,py:[6,8,12,13,14,15,16,21,22,28,39],py_rinterpol:[22,39],pyenv:[22,39],pyplot:[6,8,13,14,16,18],pysiz:19,pytest:[22,39],python3:[7,22,39],python:[2,3,4,6,8,12,13,14,19,21,28,30,31,34],q:[0,5,7,8,12,15,18,21,31,42],q_high_extrapolation_method:21,q_interpol:31,q_low_extrapolation_method:21,q_min:31,qc:5,qcrit_bh:[0,7],qcrit_bs:0,qcrit_cheb:[0,7],qcrit_chen_han_formula:0,qcrit_chen_han_t:0,qcrit_cowd:[0,7],qcrit_degenerate_bh:[0,7],qcrit_degenerate_cheb:[0,7],qcrit_degenerate_cowd:[0,7],qcrit_degenerate_eagb:[0,7],qcrit_degenerate_gb:[0,7],qcrit_degenerate_hegb:[0,7],qcrit_degenerate_hehg:[0,7],qcrit_degenerate_hem:[0,7],qcrit_degenerate_hewd:[0,7],qcrit_degenerate_hg:[0,7],qcrit_degenerate_lmm:[0,7],qcrit_degenerate_m:[0,7],qcrit_degenerate_n:[0,7],qcrit_degenerate_onewd:[0,7],qcrit_degenerate_tpagb:[0,7],qcrit_eagb:[0,7],qcrit_gb:[0,7],qcrit_gb_bs:0,qcrit_gb_chen_han_formula:0,qcrit_gb_chen_han_t:0,qcrit_gb_ge2015:0,qcrit_gb_hjellming_webbink:0,qcrit_gb_q_no_comenv:0,qcrit_gb_temmink2021:0,qcrit_gb_vos2018:0,qcrit_ge2015:0,qcrit_hegb:[0,7],qcrit_hehg:[0,7],qcrit_hem:[0,7],qcrit_hewd:[0,7],qcrit_hg:[0,7],qcrit_hjellming_webbink:0,qcrit_lmm:[0,7],qcrit_m:[0,7],qcrit_n:[0,7],qcrit_onewd:[0,7],qcrit_q_no_comenv:0,qcrit_temmink2021:0,qcrit_tpagb:[0,7],qcrit_vos2018:0,qcrits_:[0,7],qcrits_degenerate_:[0,7],qdata:31,qlimit:31,qmin:31,qs:31,quad:21,quadrat:[0,7],quadrulpl:[0,7],quadrupl:[0,7,21,31],quantiti:24,queri:[11,25],queue:[6,8,12,21,25,29],quickli:11,quit:[0,6,7,19,31],r1:[5,11,18],r2:[5,11,18],r:[0,1,5,6,7,11,15,18,22,30,39],r_l:42,r_sun:6,radau:[0,7],radi:[0,7],radiat:[0,7],radii:[0,7,42],radiu:[0,1,6,7,9,15,17,24,42],radius_1:24,radius_2:24,ragb:42,raghavan2010_binary_fract:31,raghavan:31,rai:[0,7],railton:[0,7],rais:[0,2,7,15,19,21],ram:[0,7,21],ran:[6,8,12,21],randbuf:[5,18],random:[0,5,7,18,21],random_count:[5,11,18],random_se:[0,5,7,11,18],random_skip:[0,7],random_system:[0,7],random_systems_se:[0,7],rang:[0,6,7,8,11,12,13,14,15,21,31,34,37],rapid:[0,7],rapidli:[0,7],rappaport:[0,7],rate:[0,7,13,14,31],rather:[0,2,7,9,11,15,19,21,22,25,38,39],ratio:[0,6,7,8,12,13,14,15,31,42],raw:[3,7,18,19,20,21,24,38,40],raw_output:3,rc:[5,6,8,12,13,14,16,24],re:[0,1,6,7,8,12,13,14,16,25,33],reach:[0,5,6,7,8],reaction:[0,7],read:[3,4,5,11,15,18,19,21,30],readabl:19,readlin:5,real:[6,12,15,34],realist:[13,14],realiti:[13,14],realli:[0,6,7,15,20,21,33,34],reason:[0,7,13,14],rebuild:[0,7,21,22,25,39],rebuilt:[22,39],recalcul:[0,7],receiv:19,recent:[13,16],recogn:15,recognis:30,recombin:[0,7],recommend:[1,4,22,39],recompil:[12,13,14,15,22,39],reconsid:33,recurs:[2,19],recursive_change_key_to_float:2,recursive_change_key_to_str:2,red:[0,6,7,13,14,16],redhat:1,redshift:31,reduc:[0,5,7],reduct:21,refer:[2,21,30],refpop:30,regardless:24,region:[0,7,37],regist:15,reignit:[0,7],reimer:[0,7],reinstal:[22,39],reject:[0,7],rejects_in_log:[0,7],rejuven:[0,7,12],rel:[0,7],relat:[0,7],releas:[19,22,39],relev:20,reliabl:7,remain:[0,7,19,21],rememb:[5,6,13,14],remesh:[0,7],remnant:[0,6,7],remov:[0,2,7,8,11,15,16,19,20],remove_fil:19,renam:[13,14,34],rename_grid_vari:[13,14,34],renormalis:31,rentrop:[0,7],repeat:[0,7,21],replac:29,repo:22,report:[0,6,7,8,12,13,14,15],repositori:4,repres:21,represent:[3,15,34],reproduc:[0,7],requir:[0,3,7,8,11,12,13,14,15,16,18,19,21,24,25,31,40],rerun:[6,21],reset:[0,7],reset_pref:[0,7],reset_star:[0,7],reset_stars_default:[0,7],resolut:[0,6,7,8,12,13,14,15,21,34,37],resolv:[0,7,12,30],reson:[0,7],resourc:[13,14,25],respect:[0,7,29,31,36],rest:[15,31,34],restor:25,restore_from_snapshot_dir:21,restore_from_snapshot_fil:[21,25],restructuredtext:19,result:[0,1,2,3,6,7,8,11,12,13,14,15,18,19,21,22,25,30,31,37,39],result_arrai:31,result_dict:2,result_example_head:18,result_example_header_1:18,result_example_header_2:18,results_dictionari:[6,8,12,13,14],retain:[0,7],rethink:19,return_after_dry_run:21,return_all_info:20,return_arglin:7,return_binary_c_default:20,return_binary_c_version_info:[10,20,38],return_compilation_dict:1,return_help:7,return_help_al:[7,19],return_maximum_mass_ratio_for_rlof:[7,42],return_minimum_orbit_for_rlof:[7,42],return_persistent_data_memaddr:7,return_population_set:20,return_store_memaddr:7,return_version_info:[7,38],reus:20,revap_in:[0,7],revap_out:[0,7],revers:[0,7,24],reverse_tim:[0,7],revis:[0,38],rewrit:20,rgb:6,rhagavan:21,ri0005:[6,15],rich:[0,7],riello:[0,7],rin:[0,7],ring:[0,7],risk:[15,34],ritter:[0,7],rk2:[0,7],rk4:[0,7],rl1:5,rl2:5,rl:[0,5,7],rlof:[0,5,7,42],rlof_angular_momentum_transfer_model:[0,7],rlof_angular_momentum_transfer_model_bs:0,rlof_angular_momentum_transfer_model_conserv:0,rlof_eccentric_as_circular:[0,7],rlof_entry_threshold:[0,7],rlof_f:[0,7],rlof_interpolation_binary_c:0,rlof_interpolation_bs:0,rlof_interpolation_method:[0,7],rlof_mdot_factor:[0,7],rlof_mdot_modul:[0,7],rlof_method:[0,7],rlof_method_adapt:0,rlof_method_adaptive2:0,rlof_method_bs:0,rlof_method_claei:0,rlof_method_ritt:0,rlof_nonconservative_gamma_donor:0,rlof_nonconservative_gamma_isotrop:0,rlof_radiation_correct:[0,7],rlof_transition_objects_escap:[0,7],rob:[0,7,31,42],robert:[22,39],roch:[0,5,7,8,42],roche_lob:42,rochelob:42,rol1:[5,11,18],rol2:[5,11,18],room:[15,34],root:[22,39],rotat:[0,7,31],rotation:[0,7],rotationally_enhanced_expon:[0,7],rotationally_enhanced_mass_loss:[0,7],rotationally_enhanced_massloss:[0,7],rotationally_enhanced_massloss_angmom:0,rotationally_enhanced_massloss_langer_formula:[0,7],rotationally_enhanced_massloss_langer_formula_and_angmom:0,rotationally_enhanced_massloss_non:0,rough:6,rout:[0,7],routin:[0,2,4,7,22,24,40],row:[11,18,24],rrcach:21,rring:[0,7],rssd:31,rst:[19,33],rsun:[6,24],rubric:34,run:[0,1,4,5,6,7,8,12,13,14,17,19,20,21,22,25,27,29,31,34,36,39,40,42],run_and_calc_mass:18,run_binary_custom_log:18,run_popul:7,run_system:[5,7,9,10,11,16,17,24,40],run_system_wrapp:[4,5,9,17,22,23],run_zero_probability_system:21,runawai:[5,18],rungrid:21,runtim:[1,21],russel:[0,4,7,22],rzam:[5,42],s:[0,2,3,5,6,7,8,11,13,14,15,16,18,19,20,21,25,27,28,30,31,35,42],safe:[15,30],sai:[0,6,7],said:[0,7],same:[0,2,7,11,15,21,22,31,34,39,40],sampl:[0,4,7,12,15,31,34,37],sample_valu:31,sampler:22,samplerfunc:[6,8,12,13,14,15,21,34,37],sana12:[8,12,15,31],sana:31,sander:0,saturn:16,save:[0,1,6,7,8,9,12,13,14,15,21,25,30,31,37],save_ensemble_chunk:21,save_loop:18,save_population_object:[21,30],save_pre_events_stardata:[0,7],save_snapshot:[20,21,30],sbatch:21,scalar:19,scalo:31,scandir:30,scanf:0,scene:18,scheme:[0,7],schneider:[0,7],schroeder:[0,7],scientif:19,script:[4,9,19,21,22,25,29,36,39],sdb:[0,7],sdo:[0,7],seaborn:[6,8,12,13,14,16],search:[6,12,16,22],search_for_bhbh:5,second:[0,2,7,8,16,19,24,30,31,32],secondari:[5,6,12,31,42],section:[7,15,19,22,31,39],see:[0,5,6,7,8,9,10,11,12,13,14,15,18,20,21,22,24,28,30,31,34,38,39],seed:[0,7],seem:[22,24,33,39],seen:19,segment:37,seitenzahl2013_model:[0,7],seitenzahl:[0,7],select:[0,3,7,11,12,16,18,19],select_kei:3,selected_head:[18,19],selector:[0,7],self:[6,8,11,12,13,14,15,20,21,25,28,29,30,31,34,36,37,38],semi:[0,7],sent:[0,7],sentenc:1,sep:[5,8,11,12,15,18,30,31,42],sep_max:[8,12,15],sep_min:[8,12,15],separ:[0,3,5,6,7,9,11,15,16,17,18,24,30,31,42],separation_quadrupl:[0,7],separation_tripl:[0,7],separta:[0,7],seper:15,sepf:5,sequenc:[0,6,7,9,12,13,14,18],sequnec:[12,13,14],seri:[0,7,37],serialis:3,serv:[18,19],server:18,set:[0,1,2,3,4,5,9,10,11,16,18,19,20,21,22,24,25,26,27,28,29,30,31,33,34,36,37,38,39],set_condor_statu:29,set_context:[6,8,12,13,14,16],set_moe_di_stefano_set:26,set_opt:[2,6,8,16],set_slurm_statu:36,set_statu:30,set_tim:27,set_titl:18,set_xlabel:[6,8,12,13,14,16,18],set_ylabel:[6,8,12,13,14,16,18],set_yscal:18,setter:28,setup:[6,15,40],setup_function_cach:28,sever:[10,15,18,21,24,33,40],sfh:31,sh:[22,39],shannon:37,shara:[0,7],share:[1,11,17,18,21,30,40],shared_lib_filenam:9,shared_memori:30,shell:[0,7,19],shellular:[0,7],shift:0,shorten:[0,5,7],shorter:5,shortli:6,should:[0,1,5,6,7,8,11,12,13,14,15,18,19,21,22,24,25,29,30,31,33,36,37,39,40],shouldn:[0,7,19],show:[0,4,5,6,7,8,11,12,13,14,15,18,21,24,37],show_plot:24,show_stellar_typ:24,showlist:37,shown:[0,7,24,37],showtabl:37,shrink:[5,8],shrinkagb:11,side:[12,13,14,15],siess:[0,7],sigint:21,sigkil:21,sigma:[31,37],signal:[6,8,12,21],silent:19,sill:[0,7],sim10:8,sim:6,similar:37,simpl:[6,8,12,16],simplest:11,simpli:[0,7,13,14],simul:[0,1,6,7,8,9,12,13,14,15,36],simulation_:20,sinc:[19,24,31],singl:[0,4,5,6,7,12,13,14,15,17,18,20,21,24,25,31],single_star_lifetim:[7,9,11],sit:[0,7],site:7,situat:7,size:[19,21,28],skip:[0,2,6,7,8,12,21],skipkei:3,slice:18,sliced_df:18,slightli:7,slope:31,slow:[0,6,7,8,12,13,14],slower:[0,7],slurm:[21,22,23,25],slurm_arrai:21,slurm_array_max_job:21,slurm_bash:21,slurm_check_requir:36,slurm_dat:21,slurm_dir:[21,25,29,36],slurm_env:21,slurm_extra_set:21,slurm_grid:36,slurm_jobarrayindex:[21,36],slurm_jobid:[21,36],slurm_jobnam:21,slurm_memori:21,slurm_njob:21,slurm_ntask:21,slurm_outfil:36,slurm_partit:21,slurm_postpone_join:21,slurm_postpone_sbatch:21,slurm_pwd:21,slurm_queue_stat:[25,36],slurm_sbatch:21,slurm_status_fil:36,slurm_tim:21,slurm_warn_max_memori:21,slurmid:36,slurmpath:36,small:[0,5,7,13,14],small_envelope_method:[0,7],small_envelope_method_bs:0,small_envelope_method_miller_bertolami:0,smaller:[0,7,37],smarter:[13,14],smooth:[6,13,14],smoother:[8,13,14],sn:[0,5,6,7,8,12,13,14,16,18],sn_impulse_liu2015:0,sn_impulse_non:0,sn_impulse_wheeler1975:0,sn_kick_companion_a:[0,7],sn_kick_companion_aic_bh:[0,7],sn_kick_companion_bh_bh:[0,7],sn_kick_companion_bh_n:[0,7],sn_kick_companion_ecap:[0,7],sn_kick_companion_grb_collapsar:[0,7],sn_kick_companion_hestaria:[0,7],sn_kick_companion_ia_chand:[0,7],sn_kick_companion_ia_chand_co:[0,7],sn_kick_companion_ia_eld:[0,7],sn_kick_companion_ia_h:[0,7],sn_kick_companion_ia_he_co:[0,7],sn_kick_companion_ia_hybrid_hecowd:[0,7],sn_kick_companion_ia_hybrid_hecowd_sublumin:[0,7],sn_kick_companion_ibc:[0,7],sn_kick_companion_ii:[0,7],sn_kick_companion_iia:[0,7],sn_kick_companion_ns_n:[0,7],sn_kick_companion_phdi:0,sn_kick_companion_pisn:0,sn_kick_companion_ppisn:0,sn_kick_companion_tz:[0,7],sn_kick_companion_wdkick:[0,7],sn_kick_dispersion_aic_bh:[0,7],sn_kick_dispersion_bh_bh:[0,7],sn_kick_dispersion_bh_n:[0,7],sn_kick_dispersion_ecap:[0,7],sn_kick_dispersion_grb_collapsar:[0,5,7],sn_kick_dispersion_ia_hybrid_hecowd:[0,7],sn_kick_dispersion_ia_hybrid_hecowd_sublumin:[0,7],sn_kick_dispersion_ibc:[0,5,7],sn_kick_dispersion_ii:[0,5,7],sn_kick_dispersion_ns_n:[0,7],sn_kick_dispersion_phdi:0,sn_kick_dispersion_pisn:0,sn_kick_dispersion_ppisn:0,sn_kick_dispersion_tz:[0,7],sn_kick_distribution_aic_bh:[0,7],sn_kick_distribution_bh_bh:[0,7],sn_kick_distribution_bh_n:[0,7],sn_kick_distribution_ecap:[0,7],sn_kick_distribution_grb_collapsar:[0,7],sn_kick_distribution_ia_hybrid_hecowd:[0,7],sn_kick_distribution_ia_hybrid_hecowd_sublumin:[0,7],sn_kick_distribution_ibc:[0,7],sn_kick_distribution_ii:[0,7],sn_kick_distribution_ns_n:[0,7],sn_kick_distribution_phdi:0,sn_kick_distribution_pisn:0,sn_kick_distribution_ppisn:0,sn_kick_distribution_tz:[0,7],sn_none:9,sn_type:9,snapshot:[21,25,30],snapshot_filenam:30,sneia:[0,7],snia:[0,7],snippet:[7,11],so:[0,2,5,6,7,8,9,11,12,13,14,15,20,21,24,25,30],solar:[0,4,6,7,8,10,22,31,42],solver:[0,7],solver_forward_eul:0,solver_predictor_corrector:0,solver_rk2:0,solver_rk4:0,some:[0,1,6,7,8,9,10,11,12,13,14,15,18,21,22,24,31,34,35,39],someth:[0,6,7,8,11,12,13,14,21,42],sometim:10,somewhat:[12,13,14,15,16],soon:37,sort:[2,6,12,13,14,16,19,30],sort_kei:[3,30],sourc:[1,2,3,8,19,20,21,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40,42],source_file_filenam:21,source_list:20,sourcecod:[7,9,22,39],sourcefile_nam:1,sp:31,space:[0,6,7,12,13,14,15,30,34,37],spacing_funct:[20,22,23],spawn:19,special:[0,7,15],specif:[0,7,10,11,24,29,36],specifi:[0,7,21,25,37],spectral:31,speed:[0,7,28],speedtest:[0,7],spent:19,spera:[0,7],spheric:[0,7],spiki:[13,14],spin:[0,7,16],spinrat:[0,7],split:[0,5,7,11,15,16,18,21],split_lin:11,splitlin:[6,7,8,9,11,12,13,14,15,16],splitpoint:[0,7],spread:20,sqrt:[0,7],src:[0,7,9,22,39],st1:18,st2:18,st:5,stabil:[0,7],stabl:[0,7,22,39],stack:21,stackoverflow:31,stacktrac:20,stage:25,stancliff:[0,7],standard:[0,7,12,13,14,29,31,36,37],star1:16,star:[1,4,5,7,8,9,10,11,12,13,15,16,17,18,21,22,24,29,31,36,37,42],star_with_no_mass:0,starcount:[6,8,12,14,15],stardata:[0,1,6,7,8,9,11,12,13,14,15,17,18],stardata_dump_filenam:[0,7],stardata_load_filenam:[0,7],stardata_t:9,starnum:[6,12],start:[0,1,5,6,7,8,11,12,13,14,15,18,19,21,27,33,34],start_at:21,start_tim:[0,7,21],start_timestamp:[6,8,12,14,15],startrack:[0,7],startswith:11,stat:25,state:[0,7,30],statement:[1,9,11,12,13,14,15,16,17,18,21],statist:[0,7,21,29],statu:[0,1,6,7,8,12,13,14,15,21,25,29,30,36],status_dir:21,stderr:[0,7,21],stdout:[19,21,37],steadi:[0,7],stefan:24,stefano:[15,22,26,31],stellar:[0,4,5,7,14,21,22,24,31,37,38,41],stellar_structure_algorithm:[0,7],stellar_structure_algorithm_external_funct:0,stellar_structure_algorithm_mint:0,stellar_structure_algorithm_modified_bs:0,stellar_structure_algorithm_non:0,stellar_typ:[1,6,9,11,12,13,14,15,22,23,24],stellar_type1:5,stellar_type2:5,stellar_type_1:[0,7,15,24],stellar_type_2:[0,7,15,24],stellar_type_3:[0,7],stellar_type_4:[0,7],stellar_type_dict:41,stellar_type_dict_short:41,step:[3,6,8,9,11,12,13,14,15,24,34,37],stepsiz:[15,34],stick:21,stiff:[0,7],still:[1,9,16,21,42],stop:[0,6,7,8,12,18,19,21],stop_queu:21,stopfil:[0,7],storag:[0,7],store:[0,2,4,6,8,11,12,13,14,15,19,20,21,22,30,37,39,42],store_capsul:7,store_memaddr:[7,42],str:[1,3,5,6,15,19,20,24,30,33,34,38],straightforward:[6,12,13,14,15],straniero:[0,7],stream:21,strength:[0,7],strict:3,strictli:[12,13,14],string:[0,1,2,3,4,7,11,12,13,14,15,16,19,20,21,24,25,29,30,33,34,36,38,40],strip:[0,7,11,16],strong:6,stronger:[0,6,7],struct:[0,7,9],structur:[0,2,7,8,19,21,24],studi:6,stuff:[11,15,21],style:[0,7,19,32],sub:[0,2,7,19],subdict:2,subject:[0,7],sublumin:[0,7],submiss:21,submit:[21,22],subplot:18,subsequ:[0,7],subtract:2,subtract_dict:2,succe:[0,7],suddenli:6,suffer:6,suffici:6,suggest:[0,7,22,39],suit:[22,39],suitabl:37,sum:[0,7],sun:16,sundial:[0,7],supercrit:[0,7],superflu:16,supernova:[0,5,7,8,21],superwind:[0,7],superwind_mira_switchon:[0,7],support:30,sure:[2,11,12,13,14,15,22,25,30,31,39,40],surfac:[0,7],surrei:[6,15],surviv:[0,7,16],survivor:[0,7],sview:21,swallow:16,switcher:[0,7],sy:20,symlink:[6,8,12,15],symlink_latest_gridcod:21,symmetr:[0,7],synchron:[0,7],synonym:[0,7],synthesi:[12,13,14,15,21,22,39],system:[0,4,6,7,8,9,12,13,14,15,17,18,19,20,21,22,24,31,32,35,39,40,42],system_dict:32,system_gener:[15,30],system_numb:32,system_queue_fil:[6,8,12],t:[0,1,2,5,6,7,11,13,14,15,19,21,25,30,37],t_:6,tabl:[0,7,31,37],take:[0,2,7,8,12,15,18,19,21,26,30,31,34,40],taken:[0,2,7,9,31],talk:6,target:[1,33],task:[0,7,15,18,19,20,24,25,28,31,37,40,42],tauri:[0,7],tbse:[0,7],te:21,technic:[6,8,9,12,13,14,15],teff:[0,5,7,31],teff_1:24,teff_2:24,teff_from_star_struct:6,teff_postagb_max:[0,7],teff_postagb_min:[0,7],tell:[19,25],temp_dir:[5,6,8,11,13,14,15,16,19],temperatur:[0,7,16,24,31],tempfil:18,termin:[1,6,9,15,22,39],test:[0,7,11,15,19,21,22,28,30,39],test_cach:28,test_data:[0,7],test_func:7,test_log:18,test_logfil:11,test_pop:15,text:[6,8,16,19,33],than:[0,2,6,7,8,12,13,14,15,19,21,22,25,30,31,38,39],thats:15,thei:[0,2,5,6,7,8,12,15,16,20,21,24,25,29,36,37],thelog:[0,7],them:[2,6,7,8,15,17,18,19,29,30,31,33,40],themselv:[3,31],theoret:[12,13,14],thermal:[0,6,7,31,42],thermally_pulsing_asymptotic_giant_branch:0,thermohalin:[0,7],thermonuclear:6,thesi:[0,7],thi:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,23,24,25,26,28,29,30,31,32,33,34,35,36,37,38,39,40,42],thick:[0,7],thick_disc_end_ag:[0,7],thick_disc_logg_max:[0,7],thick_disc_logg_min:[0,7],thick_disc_start_ag:[0,7],thin:[0,7],thing:[0,3,6,7,8,12,13,14,15,18,19,20,31,40],think:[0,7,19,20],third:[0,7,16,31,37],third_dup:[0,7],third_dup_multipli:[0,7],thorn:[0,7],those:[2,6,8,12,13,14,15,18,20,22,31,38,39],thread:[6,8,12,13,14,19,21,32],thread_id:21,three:[0,7,13,14,15,31],three_part_powerlaw:[8,12,13,14,15,31],threshold:[0,7,19,21],through:[6,7,11,12,13,14,15,24,25,34,40],throughout:[12,13,14,15,34],thu:37,tidal:[0,5,7],tidal_strength_factor:[0,7],tide:[0,7,16],tides_convective_damp:[0,7],tides_diagnosis_log:[0,7],tides_hurley2002:[0,7],tides_zahn1989:[0,7],tight:18,time:[0,1,2,3,5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,21,22,24,27,30,31,32,37,39],time_elaps:27,timedelta:19,timescal:[0,7],timestamp:[21,27],timestep:[0,7,8,9,11,12,13,14],timestep_limit:[0,7],timestep_log:[0,7],timestep_modul:[0,7],timestep_multipli:[0,7],timestep_solver_factor:[0,7],tini:6,tinslei:31,tip:[6,31],titl:[12,33],tmax:37,tmin:37,tmp:[0,6,7,8,11,12,13,14,15,16,19,22,39],tmp_dir:[5,6,8,11,13,14,15,16,21,34],tmp_tabl:31,toasti:16,todo:[0,1,2,5,7,10,15,19,20,21,24,25,29,30,31,32,33,36,37,38,40,42],toler:[0,7],too:[0,2,6,7,13,14,16,21,22,39,40],took:[6,8,12,14,15,18],tool:21,top:[0,15,34],topcod:[6,8,15,34],topic:[0,7],torqu:[0,7],total:[0,2,6,7,8,12,13,14,15,18,19,21,24,31,34],total_count:[6,8,12,14,15],total_mass_run:[6,8,12,14,15],total_prob:[6,8,12,13,14,15],total_probability_weighted_mass_run:[6,8,12,14,15],touch:[25,30],tout:[0,7,42],tout_pringle_1992_multipli:[0,7],tp:[0,7],tpagb:[0,6,7],tpagb_reimers_eta:[0,7],tpagb_wind_beasor_etal_2020:0,tpagb_wind_bloeck:0,tpagb_wind_goldman_etal_2017:0,tpagb_wind_mattsson:0,tpagb_wind_reim:0,tpagb_wind_rob_cwind:0,tpagb_wind_van_loon:0,tpagb_wind_vw93_karaka:0,tpagb_wind_vw93_karakas_carbon_star:0,tpagb_wind_vw93_orig:0,tpagb_wind_vw93_orig_carbon_star:0,tpagbwind:[0,7],tpagbwindfac:[0,7],tpr:[8,12],trace:21,traceback:[13,16],track:[6,21,24],trade:[0,7],trail:[19,37],transfer:[0,6,7,21],transform:[0,3,7],transit:[0,7],treat:[0,7,37],trem:19,trigger:[0,7],trio:[12,13,14,15],tripl:[0,7,21,31],truli:[0,7],ttlcach:21,tupl:[1,6,19,25,30,37],turn:[0,3,5,7,11,15],tutori:[4,22],two:[0,2,6,7,9,19,30,32,41,42],txt:[11,15,18,22,30,39,40],type:[0,1,2,3,5,7,8,11,12,13,14,15,18,19,20,21,24,25,30,31,33,34,37,38,41,42],type_chng:[5,11,18],type_ia_mch_supernova_algorithm:[0,7],type_ia_sub_mch_supernova_algorithm:[0,7],typeerror:13,typic:[0,7],ubvri:[0,7],ugriv:[0,7],uk:[6,15],unavail:[0,7],unbound:5,unclos:30,uncom:[11,12,13,14,15,16],unction:7,undef:9,under:[11,37],undergo:[0,8],understand:21,undescrib:33,unexpect:13,uniform:31,union:[15,19,31,34,37,38,42],uniqu:[2,15,18,21],unit:[0,6,7,10,19,42],univari:[0,7],univers:[6,8,21],unix:32,unknown:40,unless:[1,20,21],unlik:[13,14],unload:20,unlock:30,unmerg:8,unnecessari:33,unpars:7,unphys:[5,8,12],unrecogn:[22,39],unresolv:12,unsign:0,unstabl:[0,5,7],until:[0,2,6,7,30,31],unus:[0,7,21],unweight:15,up:[0,1,4,9,11,16,19,20,25,26,28,29,31,36],updat:[2,13,14,15,20,22,34,39],update_dict:[2,10],update_grid_vari:[13,14,34],upon:42,upper:[0,7,31,37],uranu:16,us:[0,1,2,3,4,10,11,15,19,20,21,22,24,25,26,27,28,29,30,31,33,34,36,37,38,39,40,42],usag:[0,4],use_astropy_valu:24,use_datadir:[15,20],use_fixed_timestep_:[0,7],use_lwn_fallback:0,use_periastron_roche_radiu:[0,7],use_tabular_intershell_abundances_karakas_2012:[0,7],usecach:37,usecas:4,useful_func:[22,23],user:[1,9,19,20,21,26,31,33,40],usernam:19,usr:21,usual:[0,5,6,7,12,13,14,15,19,21,30,31],utf:[3,30],util:[1,2,3,5,6,7,8,9,10,11,12,13,14,15,16,17,19,20,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,40,42],v:[5,18,22,39],val:31,valid:[0,7,9,19,31],valu:[0,1,2,3,6,7,10,11,12,13,14,15,18,19,20,21,24,27,28,31,33,34,37],value_lin:11,valueerror:15,valuerang:[6,8,12,13,14,15,34],values_arrai:11,van:[0,7],vandenheuvel_log:[0,7],vanilla:21,vari:[0,6,7,8,15],variabl:[0,4,6,7,8,19,21,29,30,34],variant:[0,7],variou:[0,7],vassiliadi:[0,7],vb1print:32,vb2print:32,vb:[5,25,28,30,37],ve:27,veloc:[0,7,31],venu:16,verbos:[1,6,8,11,12,13,14,15,17,19,21,22,26,30,31,32,37,39],verbose_print:[19,32],veri:[0,5,6,7,8,9,11,13,14,15,30,34,37],versa:42,version:[0,2,7,10,15,19,20,22,38,39],version_info:[20,22,23],version_info_dict:10,version_info_str:38,version_onli:[0,7],via:[4,6,7,9,12,13,14,15,20,21,24],vice:42,vink:[0,7],virtual:[22,39],virtualenviron:[22,39],viscos:[0,7],viscou:[0,7],visibl:9,visit:22,vk:[5,18],vn:[5,18],volum:[0,7],vr:[5,18],vrot1:[0,7],vrot2:[0,7],vrot3:[0,7],vrot4:[0,7],vrot_breakup:0,vrot_bs:0,vrot_non_rot:0,vrot_sync:0,vs:[16,24],vw93:[0,7],vw93_eagb_wind_spe:[0,7],vw93_mira_shift:[0,7],vw93_multipli:[0,7],vw93_tpagb_wind_spe:[0,7],vwind:[0,7],vwind_beta:[0,7],vwind_multipli:[0,7],w:[1,11,15,20,30],wa:[0,6,7,10,11,13,14,15,20,21,22,25,30,31,39],wai:[0,2,7,11,13,14,20,21,25],wait:30,wait_for_unlock:30,wang:[0,7],want:[0,2,3,5,7,8,9,10,12,13,14,15,18,19,21,22,24,25,30,31,33,34,39],warmup_cpu:[0,7],warn:[0,7,11,15,21,25],was_kil:20,wast:[8,13,14],wave:[0,6,7,8,15],wd:[0,7],wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor:[0,7],wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor:[0,7],wd_accretion_rate_new_giant_envelope_lower_limit_other_donor:[0,7],wd_accretion_rate_novae_upper_limit_helium_donor:[0,7],wd_accretion_rate_novae_upper_limit_hydrogen_donor:[0,7],wd_accretion_rate_novae_upper_limit_other_donor:[0,7],wd_kick:[0,7],wd_kick_at_every_puls:0,wd_kick_at_given_puls:0,wd_kick_direct:[0,7],wd_kick_end_agb:0,wd_kick_first_rlof:0,wd_kick_pulse_numb:[0,7],wd_kick_when:[0,7],wd_sigma:[0,7],wdwd_merger_algorithm:[0,7],wdwd_merger_algorithm_bs:0,wdwd_merger_algorithm_chen2016:0,wdwd_merger_algorithm_perets2019:0,we:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19,20,21,22,25,26,27,28,29,30,31,33,36,37,39,42],weight:[0,7,13,14,21],weirdli:12,well:[0,3,7,9,11,12,13,14,21,22,39],went:[13,14],were:[6,8,12,14,15,19,38],what:[0,1,2,5,6,7,8,9,11,12,13,14,15,18,21,22,25,31,33,37,38,39,40],whatev:[0,7,9,18,19,20,22,25,30,39],wheeler:[0,7],when:[0,1,2,3,6,7,8,10,11,15,16,19,21,22,25,27,28,29,30,31,33,36,37,39,40],whenev:[22,39],where:[0,1,2,6,7,12,13,14,15,19,21,22,25,27,30,31,33,37,39],whether:[0,7,15,19,20,21,24,29,30,31,33,36,37,38,42],which:[0,1,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,25,29,30,31,33,34,36,37,38,39,40,42],whichev:21,white:[0,6,7],white_dwarf_cooling_carrasco2014:[0,7],white_dwarf_cooling_mestel:[0,7],white_dwarf_cooling_mestel_modifi:[0,7],white_dwarf_cooling_model:[0,7],white_dwarf_radius_carrasco2014:[0,7],white_dwarf_radius_model:[0,7],white_dwarf_radius_mu:[0,7],white_dwarf_radius_nauenberg1972:[0,7],whole:[0,7,8,9,20,21],why:8,wide:[5,12,13,14],wider:5,width:[0,7,8,19],wiggl:[13,14],wind:[0,5,6,7,12],wind_algorithm_binary_c_2020:[0,5],wind_algorithm_hendriks_2022:0,wind_algorithm_hurley2002:0,wind_algorithm_non:[0,5],wind_algorithm_schneider2018:0,wind_angmom_loss_bs:0,wind_angmom_loss_lw:0,wind_angmom_loss_lw_hybrid:0,wind_angmom_loss_spherically_symmetr:0,wind_angular_momentum_loss:[0,7],wind_disc_angmom_fract:[0,7],wind_disc_mass_fract:[0,7],wind_djorb_fac:[0,7],wind_gas_to_dust_ratio:[0,7],wind_lbv_luminosity_lower_limit:[0,7],wind_mass_loss:[0,5,7],wind_multiplier_:[0,7],wind_nieuwenhuijzen_luminosity_lower_limit:[0,7],wind_type_multiplier_:[0,7],wink:0,within:[0,2,7,9,10,15,19,22,31,34,39],without:[9,11,13,14,19,21,31],won:[0,7,11],wood:[0,7],wooslei:0,work:[0,2,3,7,9,11,12,13,14,18,19,21,22,25,30,39],working_diretori:21,would:[0,2,7,13,14,15,21,24],wouldn:[15,30],wr:[0,7],wr_wind:[0,7],wr_wind_bs:0,wr_wind_eldridg:0,wr_wind_fac:[0,7],wr_wind_maeder_meynet:0,wr_wind_nugis_lam:0,wrap:[1,9,28],wrapper:[3,7,9,11,20,30,32,42],write:[1,5,6,7,8,9,11,12,15,17,18,19,20,21,30,33,40],write_binary_c_calls_to_fil:[15,30],write_binary_c_parameter_descriptions_to_rst_fil:19,write_ensembl:30,write_grid_options_to_rst_fil:33,write_logfil:7,written:[7,11,15,21,30,33,34,40],written_data:11,wrlof_mass_transf:[0,7],wrlof_method:[0,7],wrlof_non:0,wrlof_q_depend:0,wrlof_quadrat:0,wrong:[13,14,22,39],wrt:18,wrwindfac:[0,7],wtts2:[0,7],wtts_log:[0,7],www:[0,7,31],x0:31,x0d:[19,21],x1:31,x86_64:7,x:[0,6,7,9,11,16,18,19,20,24,25,31,37],xlabel:17,xlim:[8,16],xx:16,xxx:36,y:[5,6,16,19,20,24,25],ye:21,year:[0,7,31],year_length_in_dai:8,yet:[0,2,7,18,19,21,24],yield:[0,7,37],ylim:16,you:[0,1,2,5,6,7,8,9,11,12,13,14,15,16,17,18,19,20,21,22,24,25,30,31,33,34,37,39,42],young:[0,7],your:[9,11,17,18,21,22,39],yourself:[6,8,12,13,14,15,24],yscale:[12,13,14,16],yy:16,z:[0,6,7,8,18,20,31,42],zahn:[0,7],zam:[0,4,6,7,12,31,40,42],zams_collis:42,zams_mass:[6,12,13,14,15],zams_mass_1:15,zams_mass_2:15,zero:[0,1,4,5,6,7,8,14,19,21,22,30],zero_ag:[6,9,11,12,13,14,15],zero_age_main_sequence_star:[12,13,14],zero_age_main_sequence_starn:12,zero_prob_stars_skip:[6,8,12,14,15],zone:[0,7],zoom:[0,7,37],zoom_dispers:37,zoom_magnitud:37,zoom_magntiud:37,zoom_mean:37,zoomfac_multiplier_decreas:[0,7],zoomfac_multiplier_increas:[0,7],zsolar:31,zytkow:[0,7]},titles:["Binary_c parameters","custom_logging_functions module","dicts module","ensemble module","Example notebooks","Example use case: Binary black hole systems","Example use case: Hertzsprung-Russell diagrams","Tutorial: Using the API functionality of binary_c-python","Example use case: Common-envelope evolution","Tutorial: Using custom logging routines with binary_c-python","Tutorial: Extra features and functionality of binary_c-python","Tutorial: Running individual systems with binary_c-python","Example use case: Zero-age stellar luminosity function in binaries","Example use case: Zero-age stellar luminosity function","Example use case: Massive star luminosity","Tutorial: Running populations with binary_c-python","Example use case: Solar system using the API functionality","Basic example","Binary_c and python example notebook","functions module","Population class module","Population grid code options","Welcome to binary_c-python\u2019s documentation!","Binarycpython code","plot_functions module","Population class extension: HPC module","Population class extension: Moe_di_Stefano_2017 module","Population class extension: analytics module","Population class extension: cache module","Population class extension: condor module","Population class extension: dataIO module","Population class extension: distribution_functions module","Population class extension: grid_logging module","Population class extension: grid_options_defaults module","Population class extension: gridcode module","Population class extension: metadata module","Population class extension: slurm module","Population class extension: spacing_functions module","Population class extension: version_info module","Python module for binary_c","run_system_wrapper module","stellar_types module","useful_funcs module"],titleterms:{"case":[5,6,8,12,13,14,16],"class":[20,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"function":[7,10,11,12,13,14,15,16,18,19],"public":21,A:[13,14],about:10,ad:[12,13,14,15],after:[22,39],ag:[12,13],algorithm:0,analyt:27,api:[7,9,11,16,18],basic:17,better:[13,14],binari:[0,5,6,12,18],binary_c:[0,7,9,10,11,15,18,22,39],binarycpython:23,black:5,build:[10,22,39],cach:28,code:[21,23],common:8,compact:9,condor:29,content:[4,22],core:18,custom:[9,18],custom_logging_funct:1,dataio:30,develop:[22,39],di:21,diagram:6,dict:2,dictionari:10,directli:9,distribut:[13,14],distribution_funct:31,document:[22,39],ensembl:3,envelop:8,environ:[22,39],evolut:[8,9],evolv:[6,8,12,13,14,15],exampl:[4,5,6,7,8,9,10,12,13,14,15,16,17,18,22,39],extens:[25,26,27,28,29,30,31,32,33,34,35,36,37,38],extra:10,faq:[22,39],featur:10,free:7,from:[7,9,22,39],full:15,get:[7,10],grid:[6,8,12,13,14,15,21],grid_log:32,grid_options_default:33,gridcod:34,handl:[6,8,12,13,14,15],help:10,hertzsprung:6,hole:5,hpc:25,i:0,indic:22,individu:11,inform:[7,10],initi:[13,14],input:0,instal:[22,39],instruct:[22,39],issu:[22,39],line:18,log:[6,8,9,12,13,14,15,18],luminos:[12,13,14],mass:[9,13,14],massiv:14,metadata:35,misc:0,modif:10,modul:[1,2,3,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],moe:21,moe_di_stefano_2017:26,note:[22,39],notebook:[4,18],noteworthi:15,nucsyn:0,o:0,object:[6,8,9,11,12,13,14,15],option:21,other:18,output:[0,6,8,12,13,14,15],paramet:[0,10],pars:10,pip:[22,39],plot_funct:24,popul:[6,8,9,11,12,13,14,15,20,21,25,26,27,28,29,30,31,32,33,34,35,36,37,38],privat:21,python:[7,9,10,11,15,18,22,39],requir:[22,39],routin:9,run:[9,11,15,18],run_binari:18,run_binary_with_log:18,run_system:18,run_system_wrapp:[11,40],russel:6,s:22,sampl:[13,14],sampler:21,script:15,section:0,set:[6,7,8,12,13,14,15],singl:11,slurm:36,solar:16,sourc:[22,39],spacing_funct:37,star:[0,6,14],stefano:21,stellar:[6,8,12,13],stellar_typ:41,store:7,string:9,supernova:9,system:[5,11,16],tabl:22,tutori:[7,9,10,11,15],up:[6,7,8,12,13,14,15],us:[5,6,7,8,9,12,13,14,16,18],usag:[7,9,22,39],useful_func:42,util:18,variabl:[12,13,14,15,22,39],version_info:38,via:[11,22,39],welcom:22,when:9,wrapper:18,zam:[13,14],zero:[12,13]}})
\ No newline at end of file
diff --git a/docs/build/html/stellar_types.html b/docs/build/html/stellar_types.html
index 6b2e26021..91b01cd87 100644
--- a/docs/build/html/stellar_types.html
+++ b/docs/build/html/stellar_types.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -151,9 +153,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/build/html/useful_funcs.html b/docs/build/html/useful_funcs.html
index 48676bb4c..c483bfbee 100644
--- a/docs/build/html/useful_funcs.html
+++ b/docs/build/html/useful_funcs.html
@@ -46,7 +46,7 @@
 <li class="toctree-l2"><a class="reference internal" href="dicts.html">dicts module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="ensemble.html">ensemble module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="functions.html">functions module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="grid.html">Population_class module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="grid.html">Population class module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="plot_functions.html">plot_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/analytics.html">Population class extension: analytics module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/cache.html">Population class extension: cache module</a></li>
@@ -54,9 +54,11 @@
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/dataIO.html">Population class extension: dataIO module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/distribution_functions.html">Population class extension: distribution_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/gridcode.html">Population class extension: gridcode module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_logging.html">Population class extension: grid_logging module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/grid_options_defaults.html">Population class extension: grid_options_defaults module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/HPC.html">Population class extension: HPC module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/metadata.html">Population class extension: metadata module</a></li>
+<li class="toctree-l2"><a class="reference internal" href="population_extensions/Moe_di_Stefano_2017.html">Population class extension: Moe_di_Stefano_2017 module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/slurm.html">Population class extension: slurm module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/spacing_functions.html">Population class extension: spacing_functions module</a></li>
 <li class="toctree-l2"><a class="reference internal" href="population_extensions/version_info.html">Population class extension: version_info module</a></li>
@@ -348,9 +350,9 @@ determine if two stars collide on the ZAMS</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 
 
diff --git a/docs/source/_templates/footer.html b/docs/source/_templates/footer.html
index a8c7eda10..9f09b2054 100644
--- a/docs/source/_templates/footer.html
+++ b/docs/source/_templates/footer.html
@@ -2,8 +2,8 @@
 
 {%- block extrafooter %}
 <br><br>
-Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 8f3ed88f14c91d76a1fccf71294de4f0e9a160fd url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
+Generated on binarycpython git branch: development_0.9.3/2.2.1 git revision 6c50cae388f9d9326bbb687ca0ecdc2df766f7f5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.3/2.2.1">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "5834:20211216:a3146490e" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch branch_david: git revision: "5845:20220107:201620bd7" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
 
 {% endblock %}
\ No newline at end of file
diff --git a/docs/source/binary_c_parameters.rst b/docs/source/binary_c_parameters.rst
index 8d359425f..2ecbfde05 100644
--- a/docs/source/binary_c_parameters.rst
+++ b/docs/source/binary_c_parameters.rst
@@ -4,7 +4,7 @@ The following chapter contains all the parameters that the current version of bi
 
 
 This information was obtained by the following binary_c build:
-	**binary_c git branch**: branch_david	**binary_c git revision**: 5834:20211216:a3146490e	**Built on**: Dec 20 2021 20:33:01
+	**binary_c git branch**: branch_david	**binary_c git revision**: 5845:20220107:201620bd7	**Built on**: Jan  7 2022 12:15:12
 
 
 Section: stars
@@ -1991,7 +1991,7 @@ Section: binary
 | **Default value**: 1e-06
 
 | **Parameter**: cbdisc_minimum_fRing
-| **Description**: Circumbinary disc minimum fRing. If the disc becomes a ring, and fRing = |Rout/Rin-1| < this value (and this value is non-zero), the disc is evaporated instantly. Requires DISCS.
+| **Description**: Circumbinary disc minimum fRing. If the disc becomes a ring, and fRing = abs(Rout/Rin-1) < this value (and this value is non-zero), the disc is evaporated instantly. Requires DISCS.
 | **Parameter input type**: Float
 | **Default value**: 0.2
 
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 9f57831e8..a8a47d898 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -6,6 +6,9 @@ list see the documentation:
     https://www.sphinx-doc.org/en/master/usage/configuration.html
     https://brendanhasz.github.io/2019/01/05/sphinx.html
     https://www.sphinx-doc.org/en/1.5/ext/example_google.html
+
+
+https://stackoverflow.com/questions/22256995/restructuredtext-in-sphinx-and-docstrings-single-vs-double-back-quotes-or-back
 """
 
 # -- Path setup --------------------------------------------------------------
@@ -92,27 +95,6 @@ Using binary_c with bit branch {binary_c_git_branch}: git revision: {binary_c_gi
     with open("_templates/footer.html", "w") as outfile_filehandle:
         outfile_filehandle.write(formatted_text)
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 #
 def patched_m2r2_setup(app):
     """
diff --git a/docs/source/examples/old/basic_example.ipynb b/docs/source/examples/old/basic_example.ipynb
index 9078cfcb5..7146b9767 100644
--- a/docs/source/examples/old/basic_example.ipynb
+++ b/docs/source/examples/old/basic_example.ipynb
@@ -1,5 +1,14 @@
 {
  "cells": [
+  {
+   "cell_type": "markdown",
+   "id": "c09b9f85-5250-4fd2-8142-bb8097d138b5",
+   "metadata": {},
+   "source": [
+    "# Basic example\n",
+    "Running a single system"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 1,
@@ -106,7 +115,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -120,7 +129,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/source/examples/old/workshop_example_notebook.ipynb b/docs/source/examples/old/workshop_example_notebook.ipynb
index 4eca58797..78d0860ad 100644
--- a/docs/source/examples/old/workshop_example_notebook.ipynb
+++ b/docs/source/examples/old/workshop_example_notebook.ipynb
@@ -619,7 +619,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -633,7 +633,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.4"
+   "version": "3.9.9"
   }
  },
  "nbformat": 4,
diff --git a/docs/source/population_extensions/Moe_di_Stefano_2017.rst b/docs/source/population_extensions/Moe_di_Stefano_2017.rst
new file mode 100644
index 000000000..703e95162
--- /dev/null
+++ b/docs/source/population_extensions/Moe_di_Stefano_2017.rst
@@ -0,0 +1,7 @@
+Population class extension: Moe\_di\_Stefano\_2017 module
+=========================================================
+
+.. automodule:: binarycpython.utils.population_extensions.Moe_di_Stefano_2017
+   :members:
+   :undoc-members:
+   :show-inheritance:
diff --git a/docs/source/population_extensions/grid_logging.rst b/docs/source/population_extensions/grid_logging.rst
new file mode 100644
index 000000000..dc607c6ea
--- /dev/null
+++ b/docs/source/population_extensions/grid_logging.rst
@@ -0,0 +1,7 @@
+Population class extension: grid\_logging module
+================================================
+
+.. automodule:: binarycpython.utils.population_extensions.grid_logging
+   :members:
+   :undoc-members:
+   :show-inheritance:
-- 
GitLab