From e3678d1945cad4b26641a1a5c74777a5179254c4 Mon Sep 17 00:00:00 2001
From: David Hendriks <davidhendriks93@gmail.com>
Date: Thu, 25 Aug 2022 17:42:06 +0100
Subject: [PATCH] updated docs

---
 .../doctrees/binary_c_parameters.doctree      | Bin 985316 -> 1022459 bytes
 docs/build/doctrees/ensemble.doctree          | Bin 47875 -> 48307 bytes
 docs/build/doctrees/environment.pickle        | Bin 976242 -> 991890 bytes
 .../doctrees/examples/notebook_BHBH.doctree   | Bin 204292 -> 205275 bytes
 docs/build/doctrees/functions.doctree         | Bin 170479 -> 172141 bytes
 docs/build/doctrees/grid.doctree              | Bin 80207 -> 82566 bytes
 .../grid_options_descriptions.doctree         | Bin 107716 -> 108567 bytes
 docs/build/doctrees/index.doctree             | Bin 45624 -> 46685 bytes
 .../nbsphinx/examples/notebook_BHBH.ipynb     |   9 +
 docs/build/doctrees/readme_link.doctree       | Bin 42335 -> 43396 bytes
 .../utils/custom_logging_functions.html       |   4 +-
 .../_modules/binarycpython/utils/dicts.html   |  20 +-
 .../binarycpython/utils/ensemble.html         |  91 +--
 .../binarycpython/utils/functions.html        |  46 +-
 .../_modules/binarycpython/utils/grid.html    | 523 ++++++++++++++----
 .../binarycpython/utils/plot_functions.html   |   4 +-
 .../utils/population_extensions/HPC.html      |   4 +-
 .../Moe_di_Stefano_2017.html                  |   4 +-
 .../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               |   4 +-
 .../population_extensions/grid_logging.html   |   4 +-
 .../grid_options_defaults.html                |   8 +-
 .../utils/population_extensions/gridcode.html |   4 +-
 .../utils/population_extensions/metadata.html |   4 +-
 .../utils/population_extensions/slurm.html    |   4 +-
 .../spacing_functions.html                    |   4 +-
 .../population_extensions/version_info.html   |   4 +-
 .../utils/run_system_wrapper.html             |   4 +-
 .../binarycpython/utils/useful_funcs.html     |   4 +-
 docs/build/html/_modules/index.html           |   4 +-
 .../html/_sources/binary_c_parameters.rst.txt | 461 ++++++++-------
 .../_sources/examples/notebook_BHBH.ipynb.txt |   9 +
 .../grid_options_descriptions.rst.txt         |   6 +-
 docs/build/html/binary_c_parameters.html      | 515 +++++++++--------
 docs/build/html/custom_logging_functions.html |   4 +-
 docs/build/html/dicts.html                    |   4 +-
 docs/build/html/ensemble.html                 |   6 +-
 docs/build/html/example_notebooks.html        |   4 +-
 docs/build/html/examples/notebook_BHBH.html   |  20 +-
 docs/build/html/examples/notebook_BHBH.ipynb  |   9 +
 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 +-
 .../html/examples/notebook_ensembles.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 +-
 .../html/examples/notebook_population.html    |   4 +-
 .../html/examples/notebook_solar_system.html  |   4 +-
 .../html/examples/old/basic_example.html      |   4 +-
 .../old/workshop_example_notebook.html        |   4 +-
 docs/build/html/functions.html                |  10 +-
 docs/build/html/genindex.html                 |  18 +-
 docs/build/html/grid.html                     |  29 +-
 .../build/html/grid_options_descriptions.html |  12 +-
 docs/build/html/index.html                    |   7 +-
 docs/build/html/modules.html                  |   4 +-
 docs/build/html/objects.inv                   | Bin 11835 -> 11906 bytes
 docs/build/html/plot_functions.html           |   4 +-
 .../build/html/population_extensions/HPC.html |   4 +-
 .../Moe_di_Stefano_2017.html                  |   4 +-
 .../html/population_extensions/analytics.html |   4 +-
 .../html/population_extensions/cache.html     |   4 +-
 .../html/population_extensions/condor.html    |   4 +-
 .../html/population_extensions/dataIO.html    |   4 +-
 .../distribution_functions.html               |   4 +-
 .../population_extensions/grid_logging.html   |   4 +-
 .../grid_options_defaults.html                |   4 +-
 .../html/population_extensions/gridcode.html  |   4 +-
 .../html/population_extensions/metadata.html  |   4 +-
 .../html/population_extensions/slurm.html     |   4 +-
 .../spacing_functions.html                    |   4 +-
 .../population_extensions/version_info.html   |   4 +-
 docs/build/html/py-modindex.html              |   4 +-
 docs/build/html/readme_link.html              |   7 +-
 docs/build/html/run_system_wrapper.html       |   4 +-
 docs/build/html/search.html                   |   4 +-
 docs/build/html/searchindex.js                |   2 +-
 docs/build/html/stellar_types.html            |   4 +-
 docs/build/html/useful_funcs.html             |   4 +-
 docs/source/_templates/footer.html            |   4 +-
 docs/source/binary_c_parameters.rst           | 461 ++++++++-------
 docs/source/examples/notebook_BHBH.ipynb      |   9 +
 docs/source/grid_options_descriptions.rst     |   6 +-
 89 files changed, 1526 insertions(+), 982 deletions(-)

diff --git a/docs/build/doctrees/binary_c_parameters.doctree b/docs/build/doctrees/binary_c_parameters.doctree
index ea119159cba8648e00796f867bea340c973657f3..2d1870caa1a186bee5eb083e0bbb64b153eb5a22 100644
GIT binary patch
literal 1022459
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

delta 111994
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
E2c=g6uK)l5

diff --git a/docs/build/doctrees/ensemble.doctree b/docs/build/doctrees/ensemble.doctree
index ea1ed82a33bd80825d6f333cda2ca7c88a8d9c4e..1dda8603c71aba850e20a8f186e7d152159e7cfb 100644
GIT binary patch
delta 797
zcmZ8f?MstU6!%>BY%bk>3}NQma8YZi<d%zyC>cdBm}?^tVkT-1o-P@)xexmgZAg6x
zDdNluS1Ws&5-xF1_*N?hed|LeL{K0V)PG=*MRe~oG40E}=bYd9{m#q113!rRlSol%
zXzazLbYKV=9vW&lHPrTn&j$MUAMQFA3ZV61K$ULB0sJ_8%kv-T7(c1*yS=2x_TgfE
zu|~tYJIc36ni*FNr{juwaK*bEkHs&>?TV!6l`1xclXooms@_a8Cfq33!D}9H3FotY
zCoEtr;eia!C!DI|UN<Sy(}Dud(xE$T!Feym;86+Rj7$-rXuV#A$p<H(Vg;1(n$KV~
z3q}o7OEBrH#v>2k!=6>#lrrdC9LHd5C2>*gd&I<*8?84e&Ag10qA#+!v@u__fnVWn
z=Ah_)oP_RmDjh2-(1A^<0n)KX#IK1MS4FU^!n%Rg<u$hna62(m5yhydh?M2iQLhck
z$I6XH%qgDDbcOsF6_%8@@XM7pH8u7LAjg}j!OmU_Wbx&b-!QNFrB^K_Sy882Dda17
zi)1_o-#O$WUn$0-Hmr5%U=hEK`{9okUZ&y=NQsOirY2a%59!^cQbxD4m2l`?qK+(5
zbe7plGkiPiq;pUE$O6UtyQ+8#-ib;wO)-7STd~0Fhn0GzM>HUMv9ti^&hfdLZTM^A
zxzQtQlOC7RdZCfB*?&pLWW3?sik<!<)7+XdD8krY^BGRducSv<+Ddw4zLIjnX4T|m
zgaE3Wo-GyHdIiq-5gIg}@9GWoM}mP6|AI^ao{(bYzmYL)nrVTL>ZKVw=%;x#mQ~ZU
GZSWWPAP5Tp

delta 691
zcmY*V-%FEG81|fPZeRGFZ~b60r^5vem)0^G*-c*5g&=)xH-j+4NrR6A#^&;3gfM^A
z2r25_Gzy21IljfTc_>H;>Ov?8s*C6%h=%nC7?}M6JLmhN^5%Wt^FHT!p7(v(cRcnL
z+cLKNx8;iMcpmk_$^2RHortqtQ#piGC{C*k-|DinkF)*Q@kXwx(LD4O#0p+`9VU?I
zvcaXhkMK(weAhjo&Yeb|{(uTxi`b>AU^G!y2Zcx@Y|gz!7Fb^pWCflS?ba=hL*i5e
z-r@@LRHUTdYS%is%`X`u>AlV$rs*b6L;dup4D0g+bYPoGfS4*M0BglD9us<-so^I=
zL;9-$F}H6A-7qD;2!jBw%AyMy)qy`4mJ-w&d-AQ4dfJub>eOoCVNg^yvx4g7D2tZf
zBQ(ipX@b51FU}GOPnBS?q<}Q-gpTrIbjJXlSG{#vPSzSV3qQwgSSpX83Wtv1GJ%nd
zADRzYkq-HV9`wR!uM*g)>__kT!wb!AF0=|)7LTIOhTK!79rF+Ey8{-gi|ltU@q=x1
zNIpp783MB*56a%GG~iJJ<uhUT44-01Yt_z+F~mgPZp5h*1fF&J;eKUBax2F2^$Pd~
zgM^O%`?N=a8{vJ>*W-{U{#%AXML*^`$Z6)4f}%366jb<?>M<Q>DobN@jy-?4Vexke
yJj6q4Qo0Zuh+j-6;;GzljtW3cX};lH3k|{A<8E}11(#b;?I?GnS=PG}MZW<sNbRlw

diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle
index 4c381d515cef510a9c2686e78ef968bd07b8f715..7e9f1b68bbcc0f7adc562d36aad253537ba15008 100644
GIT binary patch
delta 55316
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
D`{l<)

delta 44911
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
WUTTJua51>`nv(C@^k^)$D*S&7bsqHq

diff --git a/docs/build/doctrees/examples/notebook_BHBH.doctree b/docs/build/doctrees/examples/notebook_BHBH.doctree
index c1e74774a9383af3233bd81a2711ca1b1a8fccf8..d22864193117da756b5f92560efe490cb7a1c1cc 100644
GIT binary patch
delta 805
zcmZqK!*lyEPeTji7A8qSM!xM*f=qS)9eRXAGBWehixo=p6-tUK74lLmO01@2u*Xix
zu){9bI;C++?G%j+)~x633=Gp1MVZ~4ReHFSN^^2jOX71fi%X_Vo-%c@00S6kLKSDQ
zfy~s%Q0d_WDT&W4NzDbSgGu)UPPY?c4wQk|>;)6f`UA8A>KKR$ktqoK!IJV>|JWxB
zI2d#IUSY|Q&-%qa+3}k2^aZwzd>UClK)U6#zJe%)4CV~Q45bWZztW_vpFk0q9X)B&
zIR%;1Fsv5lfLjewfowHcQa($R17h`6kkx`5BwHOYy-|cY0K;l6gw+rg$X0_T<+F64
zR$l{ItwD~}fx^t*Vq74A7V16T(}8k69MFIV^Fq0@TtTjq&vJ%Zd>v%5J;GuUY{5PK
z!3IWoxgIu1>X_2Qs5_-JLoVwxC`Q1s0gScjfsTycOm|r(KNK)fREUMAK9*<@2OizP
z6eORO2exmr{(g0)Y>vqdCybdgI3_EulbgJgQDm~+4g;nZj>!c(beIY_CMO&h0ZEn}
yuV#F<eT69VK_<ql+p{E?zcMqfo1P%U?7+JY=pn!241wAyS(2RF*UB)5GXelBNCCJ2

delta 291
zcmcb8n5ShAPeTji7A8qS#!uU&1exmo%S4niGBAW>Wagz8E0p9bloVAe<fT@WSSiG4
zDNIikWDaBjvn+*~(;zH!5#|60%R!9UM|<iEZU!*OV2_=WVTaQ=2Dot`7Q{FZ3t}9I
z1vD;{Qs=N{$Y(uepDf^DJY7JLnQwZGBclW3jqUZ4%m<kmHMcv;Fn?ucWSVZS!0f=w
X#KFMeSDYbGJ0&ZZV|$ANb2uXa*Y8Vx

diff --git a/docs/build/doctrees/functions.doctree b/docs/build/doctrees/functions.doctree
index b654a456d89e13b745c572c39a6bd2aab572106f..3d6001033db6f1ed80c45a3cbe3885daf677a5d2 100644
GIT binary patch
delta 9841
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
Ii}%960T<cV3jhEB

delta 9408
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
HoCN;`b>lcD

diff --git a/docs/build/doctrees/grid.doctree b/docs/build/doctrees/grid.doctree
index 115cfcb38729c2a462b3da565d5c9a574ee919be..2e89a5e9e8e5e8953a59fc32d7ea210ec8994ea8 100644
GIT binary patch
literal 82566
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
O3l*A#gudo<F8+T6=TNBt

literal 80207
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
Ug{skBq*{|zns9_}<}@w+e<JCo1^@s6

diff --git a/docs/build/doctrees/grid_options_descriptions.doctree b/docs/build/doctrees/grid_options_descriptions.doctree
index bda4b2f9376dafcecfbd2c7998177cd056c08e4d..77d2588fb48b0e88966a9780578d93ce0571a74b 100644
GIT binary patch
delta 4357
zcmZu!X+Txg7Iqy#?lqY%AS#IBP|Bd7Vm*#i@k(EM!67SOaS0K;UIY>(Arr)TKoi%6
zC5o96rk0@`^{T0ev(Et>(=x4`l>|}KH1(}>wuTt|IOp8`ed}Ap-h1uM?gNdfva$Un
zhrCAX>_3#GZXsALb-)=?Jbx<HQWSc0_xB%@JSsXqX7rf2k<qCcspH}jacx3Z|7HyU
zss8>}vtyLi+$_gXXN4t&Ubrh?##Qr;(gq!dyxbj^kO>Fo>ztmKO~v`!Lql6Oq#HeQ
zbV{9evpVgk5fQk72VP$&eEcMQEMF9b1M<^xZ($fd%C|_M*IYkdYQl$9jRDJKr9(kK
zkX{kvxI9XEvS=URJ4IooOZH2WQH&eDGU10`R$zLujPc9vNvUGEW`zlFEsw?VD`h%8
z6O1@)wN?4}D;?mU-^hwm><ChsU_M!6QX;<Y1bF2;St(sv1ejc6Rj#de1;n+o(*4^!
zfS2%SX($d}XTqrOW-I+meE{v&&M#f>4fx%<ML2U~82vC4BCvLo6-O$C*n7)UukF7_
z#d|{{;PkCw%Fd0!5?<V9#p#<jp+}jF8C$-AYEAlBnF%+2e*`Ob$V&Ovb|87aq*Y^X
zxe3#^7ou(FQ^B%bRt(;;6x;0)15%72_S$R08|8-(_Q_bg^RP5S443UQ;n3ZcxO%^g
zrah~$>j5h+-W#tB{~xE&YX4lN<{*FUJ%CE)Vg5)vH~}jwWZZn%i1x><*z|A;4m_^?
zmJ*t35#^pRDT|Ku04zNz!yR<?Zmk4Vo&j8O%8Cn*t;guoGR`=DLb3_^+#gL?ePS1S
zoR#tSlbg}woK*??p#xyic^OXQm;N1bPWupCdto+ao;f4gIcZL^el;mKe&jiEx*#i&
zXZHa5U9#fJa}ROrWm!3QJ^`di!A!bpQhxq5nCI%6tn|OYf#hAcDjP020#@9Rm3x<8
z2P~_y;-Rbiu<Caik6ha)l?&6Fn<ngZV+FRYkzoi{T=T>>RZFES0$hHJ3-@~gPN|jg
zm754oG}azMG4{3zBdSl}_&YLWV|4W>+*9*4X5Y0gsGWj_dopxE*V<sLuI&xOg~gHk
zCM>_balr!_OYc-bmKYuK(1f0UJi^?+WLQGK#6fd(xj!AN?tKfzf^qAS2?PH;fyqx~
zEO}tT;s@ht41g8aKKzw#O3<-Yp54ku+Fz74%^YBkH+x%dIX7yQHiGwe@&e};c=@lB
z^szlymB`0!fNnd045ze;FCN%Mt$1D@{2+O`s1>Jmj$q1{;3nPEF>NWiN#J4YZ3kU}
zx-|hS**icrDKCL+>)aTOAjJx^E>2(~7ad%sKb#orss{jRmcZ6KGq$e@R8h7IYfhwJ
znm{HcHiaCiL@@feGGne2j3!Sv5bK#r+@OHGT)<*0HGmJ$5?4s4ksb^Wa)W5e&s7Vz
zttVTC8z7lBHe;xuEf}SKu2dcgq2$>DqUeY_<kRq$&#**c=HvrWwk%J06{xi@gxPAE
z!A+1*fLVU5nbHETkf|-_Vr>cGAZ-?yPdf<5U0yA179ZFE(gjx>>mCf}Z9{zFo+O>u
zNUmpH8#OZfnC;B1%z<X#0oT#5MKD~)a<5kOvmazjdN<Wda&V)gGvOU@pxn+7>MFU_
zv#Qdpswk=*?AM2?n75^yY8dF@!k@wQ+0~TP9`beJg7-RA2101ln&)_$cS{GZ$Zs9F
z7-}noA;NKFeW}~z))U&hzTn`tCUE&>7$$wDh0n8*^a{MmFD?4C`XYB56uGO3yxkEN
zO3O8oCSS0bwotoJOh*W&h)&QOz7Ud&>r38mQ1YIwu|M<z-F}tqZP}}4{x8^Nn-;*c
zraL7@PiXaUc+7-dl-(8D>B|KW>_%(4LMMt2g2hs`$m<3Lb%t2DA%eJCF9@SO<)%Uh
z&-%qN+Cka~%TAk17w`gI8-o^!FXaw^KzECe`cqp7Mn~WPnj0uF7_xQU1T93R1)<T-
zQ77=u2FeYAwz@!pH>XK`p`D@G3o7n{rFRo7X9H~wfyug|;^*MMMIDWL)v2?lQkS)j
zvyQTZF)A+v%(h-VV6KB?HmG~bHBJ@zd-)ohYbp17A?2o8%3PdI+182Hj%EjQWA#d5
zF|cv{p^g?W1EutY8&WF+Mfc)PlBbo%@O)`})hKhRvKORt<5Mf=X(<xP<f<<&AeT7E
zV4K|=W`b^$fHwY}r_SiDDk$}fm#d}S;<@5!e&(??t9co0Tl+$Qq{ema4d?+UG{^0q
zk1Ie`trYyP`1LF`S{4ogv^X64z;E@#RmpYX`urPa0o<k)Z$bh5r7}bK7f)$h9B8L=
zH2SIfHMXL+;1TEz?riF9adoGofzZv-__7Alh5m3s-$r1*&oF<1sf**;QmNFkb$c#b
zE&6$4?w_udIZqc(-3BOo8;;W0NNx%T2k>E47Rj4BNSpH)dVn#A21kQ0Z5s$@Xw4ut
zIBJA)DbZb9H5N6%x>Xa}ph6d+5D*D(N#ss`z7Rsc3<3{*4un}bb=0(AJ{=eW-CuP7
znlOHU5ci;M?povBtXg~OSBc_m7LjbMA4yn)k%S4cyupwr{icaY=eV}qkNK@7^izGA
zo(;<MB&VS;o-c1EJ6|dq3f*+h9@-=}B``sd)~faDNL^+6*jm5CXNS&55L;?QwE;LA
z`>K=rjIQ-c`CV8>TRz}gd%edeM}UWR>OKAtLM6Qig+@Ujg}e`!@=eSbJe-@>DH9~9
zP<S*$C;tnV=(Ud+yZZqgr`KWxRvg1vOcbB)%SSMlV}gD(*~FPI5%QI>Lf&yC^OB?C
z0JV%`Ug}4%hepH;jf!}IInlWo*iGX`F`-W^yicLA5GP#|LMF2i$}=;$+eki9*N^5C
zbyyrY0k{xk@F{)KA~@a&%y}3O8RRsEwMs^5sP+g?6qHXBdC%=I!yS5<#FQZxUatKu
z5KkS(LW1kFx;<^SL&XI5OMtx;m%{Y^V_*+t3#ZwsLUB_n1lWob;a#9v<2bS&$xsdO
zwIIc%2~uGiN49+|4-ff-b-ql2Z{V<?bRRD$3FDb^F_l|aa5__VkAsB#3{j}W42Jfn
z!E8$Sly5)51UcYE#h-BOLnjEzjtNYm@qFLe{TWl<5R@`ivm_k`=Vv}u%H)B93^+zl
zGTF(BPhkzj5oB@^w`GYq?qo5gY66_5Ta!4QC!g^(j9{{`PnxXSXL7w>ox=9&6@dJv
z3T)m~#@bBcPVm+=#sah9B-Kn4Sk!dJ7ER{+>4WKvrA&bmS};RkPi8Q-Wh&&*l9`NU
zPve_dhgtuejRY|pv!=sXN}A2g&>0XV{l`mN&Qs@z=)a%CVgWNDg*N6eMGa6&7L?k#
zg3@UoQ?}27wRCYFQ&!F9l3PC)vA}%BuFQc7a?fS#Rt_Ab=mi2hw1BZ;^Wbxui;T7Y
z9MUM<DzLRy#)9U<Wjd0_MT^Mg|59m3z5s)W!TSsN%xbrg4fi8V;O<zS&qYry5HYPT
zV9Hr5)Y7U&Ows3qjfxllvj!7H4Vc-4VhMIg6Pv3|OqbDI+<~ZaAy}y5BZiMIgfYAm
zR5z}lF#KHmm?-+t3#)yi&^}cF$E6}omUs8rMR0&$no41Pm8=F;vZzfVya#=3>4h*y
zg1a{RrSOMcRt4Ky4ylhIKJYF6>Z37tFN>Y}*rx)!`H_~RPl`#58<+8MT&j8}u&8zs
unoWepkI=XgX=XnaRRzsWH8pcDA*J3iG%2kKrsX)rCnt|fvSk#(0Qf&zR=V8)

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

diff --git a/docs/build/doctrees/index.doctree b/docs/build/doctrees/index.doctree
index 85010eee044d533a2317a8a4fb1d628e4c28d96d..95ce3154ffaa2ab0f9be5eba9dc58319d458518e 100644
GIT binary patch
delta 3120
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
C<lcq=

delta 2323
zcmai$e@vBC7{`5&zW3fEjA2(X;PRW|rwK`Ij=3@um*Rz7;;*71Tzz>JE?huFOh6<{
zabV9yz(Pa>1Wm<PoHUn7G*@#=oz1e)B)7E8bXjZ7ww~vlE(Epp&vWj1ete(LIp@9S
zeTVL{)3=yfsW!|w(W|D~ltfr!YeW0c7N#T`enFuruxjlv4>nDhp!w-G6I=>O@b#zJ
zliEZrN?WeQEGjnM)HH>~VldGL-uhBD%LIkb&LYpxX~8t?Zb(u$pnyL-(BEXK7<MJ9
zn}p-oy2JccDZkPLN<@-rGx<$0WnLr<uMdEGnPwa#d7eyKCmFP{3>A=;=i=ourA+9k
zRj8w3!|4!^KZk9XO>2a+E`I}Ski5x7Gub}Li=MWkcnT2jc9D7CnLU2J6>u&y7^(`K
zd{FiqkVt38BJF_Lg?ssBnQ~Dg)uQHEffVnW$F57Hdf_CbyQ4_IN+k3U5)Op)j>x?4
zoC>z$vhi3u1lGsJvw5IdoR+^?oR%NWMo+83m|s%CSQG~Fw1!JxW(j6GEhP$aH#U3x
zp=C}sPxviSSYNVQn*x89MZ?3gBu`4prV^InDSfahPHjXwKL{&dHlD0Okad=?;-!+T
zM3TA2lI=AXZcbNNwInOIC$m~9Ukx!^7AVzFxTS@)QfV|C<J?DYBQos?Z3Q;2hO~;G
zsFwEWJ#@IBv~r8m4+XBL)%{`~Rz4NxRyoGg?S)fSX-ctRjNBT>zmbgBB;(bwjP200
z^&0;{rrb7*=d}aXubQE++QomDf!}1HO9tv%V!^#_j>6&cwih_Jh{N%+P_5d7DQ1|m
zD^{6gRMkW<7H$#eGO+!17H1LX5)RAW`cVmo`i5uJ!<ZgS>1>h(S~H$AQ9bs)_jU$f
zB8Ah1u<8BL-n~0kE7>r0XF798@l#D<EKiC%;H#Z69)D<UGOP6Xch}BW9HQxQl*$r}
znNU>|WUSbwF{KR#>e5-e6ilc;#}3QFb|Y$cDDwmy5XC+e0ZTjLiO1-edk8w+ca(M^
z-izX`BjUke-E)E6u)xhdE7(mbzPz!I-4Pn(d9mpgPk@&3Xe8j%tSL8z<O!4<8kIEu
zXkN#77#G_f!o{{5m=XxR&9N*~?jx-c_wn(TB%UlYXNyczpA6Ks99L4|`F%Tistntu
z&}j@W6haF)3^fNC8LcUdua!9tnbVIsS(KwJ0Dd6HL^W5<M$v&*Wg1|n-aw|2Of#8x
zA?o0Ugcka_AC04SvMZ}JJFB2L*O~9uyU>LXy<USOUck|K0ehj~R%~E}Zx2TBN(zY8
zcz3MCU0&NU$S+9WXPj;XcAmqU&LwP!!v~$=G+ghr(eS7<jNPFW8zgtdSiYA<w@^6*
z|8OeQcd6ETbk=g0V@-}TFDn;$9&#w?j)yB<fxg33Adv!);06|kL&7YT6C`=Qrd?oP
za<KIT!Nx<OGp0?(3iE4j{W~m;sdB&Jj@DFt#Cv;;7d|-@t^`4EPYC;k1MiODe-j2w
zhQgR&58`A0LW}}u_frun_NukyIdgLJa~vDpw1@uy4n(}^@KN_nW+k;4Ntqrw25gZB
zcMRAfsP73?(*FZ&@&ACWB(N|6W-4-Ixw5tKST@9Z39;f#^lSbIns<jkT-1HR`$zyC
z=L4tJNIsIwyt-+TJ`R`5>4L(eR%77k&_wefZlivVL+1&n?uYLq-AblWMdK!Onat;8
zd??^W<_g|q`Xw@FXxdN4N>g7lPBQDsTp;r)nKRU-pG-AE=#@}mOlN}}nv4`Xb+wC*
zcG1l)I@v`RyXasS>UN=Q7pmw-F}qN+muUX<Y|Pc-X(90^3l%HuI~lZCuzo@4f|b5Z
iBrAO%NLG3+OICUlN>+OFNLISv^-2Oh&kal8Qspm~!QpKH

diff --git a/docs/build/doctrees/nbsphinx/examples/notebook_BHBH.ipynb b/docs/build/doctrees/nbsphinx/examples/notebook_BHBH.ipynb
index c3fa9b934..d639f4bd6 100644
--- a/docs/build/doctrees/nbsphinx/examples/notebook_BHBH.ipynb
+++ b/docs/build/doctrees/nbsphinx/examples/notebook_BHBH.ipynb
@@ -649,11 +649,20 @@
     "Playing around with the input for an individual system gives us some understanding of which parameters affect the formation of black hole systems, but, as mentioned in the introduction, this is nto the most appropriate way to find many such systems. We want to make use of the Population utilities, and set up custom logging and a parse function.\n",
     "\n",
     "Things to try next:\n",
+    "\n",
     "* Set up a population object with a grid in M1, q and orbital period (10 x 10 x 10)\n",
     "* Set up a custom logging function to catch BHBH systems, and include the ZAMS properties in the output.\n",
     "* Set up a parse function to process the output, try writing the output to a file.\n",
     "* Run this population at several different metallicities. Do you see a trend?"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "c8b4d134-1b41-49cc-a122-2aee89818248",
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
diff --git a/docs/build/doctrees/readme_link.doctree b/docs/build/doctrees/readme_link.doctree
index 142b88abc7c54eb8bd59ca1258496bd1aa06087d..c457d7a9eb001e78161837d7ec8378eb0db4785b 100644
GIT binary patch
delta 2592
zcmbVOYitx%6z(0I>8vDxlvf4HtX3>^`v7XCmWn*226b5!s==6U_tBkMce`aDg{9Ea
zS7_;mKF;#60V%IQsYYQTB!C3uj~X!n2?iyp{J;kWk)+Wm2;OsVXV(@(2!GD@e&?L;
z`|i1SX4?0q(D;oYt`|3ldk%^A31lW{6L!%!Jk>~M#<Efi7Qq+x;k751saimB`0OFC
zvm#g))O-~R1yo-k=yWJ_;nIShGFw(<nadeaf~wyaa;Zw04*NqD6;40J%Yuq?wbLF7
zvMQ%y_f-TbVL<VfD^_dv0E=DA4tqUxtt?ZW3T>{%Zo98i``<QdE0ALgX&y(88pJ*&
z=%Z|vA)80D=TMrcn*44wLmd~fKjJoO2aG+`KB7(0y68HpCqA;?P`RfbG`FZa(cLG4
zapj~JM&Ca}ws*Sq5rc=DFsVwk|7W;bVuIhZWk;WwloYbjhV=OKA29p`%|q75z0OIo
zTJJkJ-R#IAnS=~;ds}y#9(Vf~o_V4y!q;&%)A0Y?2VEt3;D#jH82bn?df6<d#Mw!9
zqQ-3?NlBczJvC1X&_8=cSQ<`&m8IXxg%V2^P>va+@^LXq9i~oJO={Y!Rk04MN=Pv%
zD<{Kv+j3&jm4spmro5JhKghY7a^_3$kF812B-mA#2Iq=WrL`PAV?QW|xymZqp9Q%k
zvQ)!!^X8_*1;@+sMxJkGE}90rr~|9hFK^=&TXY7ofig6~nDS-9-h|`^1SL3QPl4m*
zHgcFb-!vzOoY0+9Y^N(rILwW=@Om7^M0Lr~{nx>*6=|?d^~qPcdLQ$5Ww5^pShOzr
zCa<^=_qT~sUjdVQg>XCJuM@$zKf#cUPXVC8(Xg~K4}or%34d^`_@K~gbXVXB4|Nw|
z?tbtT$g`8#8Rk<8(^z#R?V5#1;vl!iY~ETySjgq>`IeH`nH&W+RBq#VE3qObFQl#b
zJi(Lx40ytyr+3-?ArjELZknfy@1qV_!eii#z=EOXwlZ^P1MkRDZmu(7u5GZn?J-x-
zLWFK^u6J=E=|LIN4U4LZ5&mRsDjcY4ASWq2ZG1%XJIh0UE$TjnPSs2`iyG+$&#D_(
zOy?$kK!G-huC5`Mpu27gUPf^@!z|(Z#<(3WhnJ8l=C^oFru-N8`)9&$|6srS;KZ8m
z<Ybx6T!b0zCg^_JAnm6D{mJa={aRfrkLCFkJumiP9u95Jgkx)qgsC$8v38z3l~-lx
zRnmvFDqW_J&@^I%dmU-9&(?{8Fjr>x<XUYhd4-ndAyB>kI{x52`G__ZvL?YOLtV~X
z5o!8iRQ+4Bk1Kd}1@Ys!kBjv-vL2pqun6^>|8l#LY(#!i4|f`->F|QaLb3zl$LlE>
zd)JPGQ4QnaV&gMdgBA``)*9}+I#$}$B#={ZZG%NP&6(e9K0`id%%@|ETNFXZn_HhH
z-w)u|TF(*0kuFB*P7cuF7$ASsSL6;1Yg-}Q<&4#BM+M0MS533XT_|r~uH$qMLaL7E
zc4&wr;}OdEw{GxWM~h&1(ZEh{jsb`<PdrNVvw?I?7pmC^*^UOz)4bVec$-(3@aki<
z8V~aj(ZIf?)u8e0dpvubW?hWSVd(6f91Cw<Bp4cbNj)z)K}%||ggC&|<q)x@pFK=H
zT`!S+vFlww3FLh2!j9(%ITDk1o)x5nl)$|o&hPTp&Y~|HcP<7m{rb7x7!F|AhanRa
z85nNSo9q4!!)07v!jOy0EDRA0Ef{{m@FRxZD6*4=P{dGC=5+?cmCgYEbKpjKvwE;u
z{kj=G-CeW*J(!uknQ5Duu9<0?nVy+xnVF86X_y(mIiwnqaX%F8@d&vR^zNB7pZV=Y
i`^+zXiMU_<8gRe(-sOJr^~U|;yM+05_s0x-OUS?eGGosG

delta 1736
zcmZ9NUrZcT6vnw%XLbfO&<C~HUD_o?7Xd9TNC*N2f;PoYA!$)SQwmh30~Bg^fu-eN
zgtEdmv>aC3t!Y6*A>by^5wRv}tv=b(7=5ydK^oJF!62qeO|0>rd%IA0Ih*;;Ip6us
znVGvCKhW84snjO<_6|=<<r_&N9NIX@Vpyb|B$^44sV_rM`7PzH6cVCuGX8|Q!o-M0
zys+wz=r%oGkIHkJpH%3ChRATB)(S7ZwU4SY%*Ag<W%H|1__LudNv>!8ixNavcG74W
zc0@(NOnRi;B-GoLW9l}U&)6yhu_wvLMItLR2A1_)HAf_~WUxQIH6jDARtZ|6^U&LB
zfhgI-`=xf)p8@vDry$=*r*E!Ilsb9hno&=ykT{PzIW4JzZ>kbdW3W;eFN&`&Uw^Z$
zuv8ocpI6taelhNhAo8sx>IPShUmX=C7X^`*dHSH>a54ROmF5%|k>;wPxh80?avG)~
zO&>4XRd;edO*f~Jj-;wfV$`CbSy)TsGrNwoQhHxJp%`ZYk)hyNEKF<*L-8Z$nP9HW
zRZAj+IpsdHah2&$LT0@KUaU_FR(a}OBtBS$;-dDP{62$RkfEZXa6P4uQ~ugeqU^Tt
zN1VrdBdkiqP83!jq~G*5<`Yr`rL{H~-<3wnf>W4Q)$|H2vcSX>kucNr4so&6_QxBT
zflH6m6WH`3IDPDQRv1y2EPcSPcf#f4EwtAXeA%P{F1niC>k0kvU-KT~<eb$lamppZ
zIkCbSSj#yCKeyaeu868Hc-4;0k4eMKKLG!>9#w9L)b*9r2v1G6>2%fto7%IKSy3?;
ztdPf8#ZSl@OK)1B{hZCb(=JhRkMAP1V?QMd|Elg;V4&kSrnB3W$63?e)utCRCA0}Z
z@`=|}hr*ZrjDp`2T<Lt21Yoi)4*oe&MpEI8u6&XPbNv}Khx@V%yC;@QHqbq3v@j_D
z=*gvN3jc;Dn0boA8Iu&oXf+4l)hTI!P;WkQGdCMFdcUIWqSbBIp4>to=z-p6X@5`;
zJvBq9TX;?~PuD}9HYn-4PNu*C#blaW4!{)sQnXG(PyaqHXVCAt6gJIn6JJuVBLx2F
zb3m6bg-#3WOU&AQ*xJl~uZpV6VljX5#mFWrT3Rh)E5y4D!2Ywz>IRjsFkHnIN>g0N
z754cXpwS;rqQT?uQKLmw46l+uWmQ{L+!3*vZRaYenlAEbB7d3XQy%1@;CzLI4FUM<
z{9ZC-hF`ctNw>K?m`q5GnK1M<mCISTQ3`(#*R(FMgV&hHP=mq1Fp6Oq!!H=-FpRNx
z%NW7X$G%{r7sEV;+Zb{&k&WR)3>Pqz;E>l@aCz0k2Wk#F-E{|#_BZ!C3>>fNV;=p6
z2X0+V&p`%_&)4{DjnCEiOpVXe_$-aj(fACF`)e-Uj*g{JHd0OJCHQW{n$3B~5t{Sj
eUyI<yBVO?0(JFZHSQET>Zg5^BU_L)uNd5<IN+}iq

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 1c8b3ee25..8f26f7bb9 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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/dicts.html b/docs/build/html/_modules/binarycpython/utils/dicts.html
index 0c78730b7..33d754f28 100644
--- a/docs/build/html/_modules/binarycpython/utils/dicts.html
+++ b/docs/build/html/_modules/binarycpython/utils/dicts.html
@@ -584,6 +584,21 @@
             <span class="p">):</span>
                 <span class="n">new_dict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">merge_dicts</span><span class="p">(</span><span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">],</span> <span class="n">dict_2</span><span class="p">[</span><span class="n">key</span><span class="p">])</span>
 
+            <span class="c1"># one key is None, just use the other</span>
+            <span class="k">elif</span> <span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+                <span class="k">try</span><span class="p">:</span>
+                    <span class="n">new_dict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">dict_2</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+                <span class="k">except</span><span class="p">:</span>
+                    <span class="n">msg</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">key</span><span class="si">}</span><span class="s2">: Failed to set from </span><span class="si">{</span><span class="n">dict_2</span><span class="p">[</span><span class="n">key</span><span class="p">]</span><span class="si">}</span><span class="s2"> when other key was of NoneType &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="kn">from</span> <span class="nn">e</span>
+
+            <span class="k">elif</span> <span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+                <span class="k">try</span><span class="p">:</span>
+                    <span class="n">new_dict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+                <span class="k">except</span><span class="p">:</span>
+                    <span class="n">msg</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">key</span><span class="si">}</span><span class="s2">: Failed to set from </span><span class="si">{</span><span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">]</span><span class="si">}</span><span class="s2"> when other key was of NoneType &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="kn">from</span> <span class="nn">e</span>
+
             <span class="c1"># string-int clash : convert both to ints and save</span>
             <span class="k">elif</span> <span class="p">(</span>
                 <span class="nb">isinstance</span><span class="p">(</span><span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">],</span> <span class="nb">str</span><span class="p">)</span>
@@ -599,6 +614,7 @@
                     <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="kn">from</span> <span class="nn">e</span>
 
+
             <span class="c1"># string-float clash : convert both to floats and save</span>
             <span class="k">elif</span> <span class="p">(</span>
                 <span class="nb">isinstance</span><span class="p">(</span><span class="n">dict_1</span><span class="p">[</span><span class="n">key</span><span class="p">],</span> <span class="nb">str</span><span class="p">)</span>
@@ -963,9 +979,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/ensemble.html b/docs/build/html/_modules/binarycpython/utils/ensemble.html
index 03fc1bc7b..9217509b0 100644
--- a/docs/build/html/_modules/binarycpython/utils/ensemble.html
+++ b/docs/build/html/_modules/binarycpython/utils/ensemble.html
@@ -189,7 +189,12 @@
 
 
 <div class="viewcode-block" id="load_ensemble"><a class="viewcode-back" href="../../../ensemble.html#binarycpython.utils.ensemble.load_ensemble">[docs]</a><span class="k">def</span> <span class="nf">load_ensemble</span><span class="p">(</span>
-    <span class="n">filename</span><span class="p">,</span> <span class="n">convert_float_keys</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">select_keys</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">timing</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">flush</span><span class="o">=</span><span class="kc">False</span>
+        <span class="n">filename</span><span class="p">,</span>
+        <span class="n">convert_float_keys</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+        <span class="n">select_keys</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+        <span class="n">timing</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+        <span class="n">flush</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+        <span class="n">quiet</span><span class="o">=</span><span class="kc">False</span>
 <span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">    Function to load an ensemeble file, even if it is compressed,</span>
@@ -203,7 +208,8 @@
     <span class="c1"># open the file</span>
 
     <span class="c1"># load with some info to the terminal</span>
-    <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Loading JSON...&quot;</span><span class="p">,</span> <span class="n">flush</span><span class="o">=</span><span class="n">flush</span><span class="p">)</span>
+    <span class="k">if</span> <span class="n">quiet</span> <span class="o">==</span> <span class="kc">False</span><span class="p">:</span>
+        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Loading JSON...&quot;</span><span class="p">,</span> <span class="n">flush</span><span class="o">=</span><span class="n">flush</span><span class="p">)</span>
 
     <span class="c1"># open the ensemble and get the file type</span>
     <span class="n">file_object</span> <span class="o">=</span> <span class="n">open_ensemble</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span>
@@ -216,47 +222,64 @@
         <span class="p">)</span>
         <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">()</span>
 
-    <span class="k">with</span> <span class="n">Halo</span><span class="p">(</span><span class="n">text</span><span class="o">=</span><span class="s2">&quot;Loading&quot;</span><span class="p">,</span> <span class="n">interval</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span> <span class="n">spinner</span><span class="o">=</span><span class="s2">&quot;moon&quot;</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s2">&quot;yellow&quot;</span><span class="p">):</span>
+    <span class="k">if</span> <span class="n">quiet</span> <span class="o">==</span> <span class="kc">True</span><span class="p">:</span>
         <span class="n">tstart</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
-        <span class="n">_loaded</span> <span class="o">=</span> <span class="kc">False</span>
-
-        <span class="k">def</span> <span class="nf">_hook</span><span class="p">(</span><span class="n">obj</span><span class="p">):</span>
-            <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">            Hook to load ensemble</span>
-<span class="sd">            &quot;&quot;&quot;</span>
-
-            <span class="k">nonlocal</span> <span class="n">_loaded</span>
-            <span class="k">if</span> <span class="n">_loaded</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
-                <span class="n">_loaded</span> <span class="o">=</span> <span class="kc">True</span>
-                <span class="nb">print</span><span class="p">(</span>
-                    <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">Loaded </span><span class="si">{}</span><span class="s2"> data, now putting in a dictionary&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">filetype</span><span class="p">),</span>
-                    <span class="n">flush</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
-                <span class="p">)</span>
-            <span class="k">return</span> <span class="n">obj</span>
-
         <span class="k">if</span> <span class="n">filetype</span> <span class="o">==</span> <span class="s2">&quot;JSON&quot;</span><span class="p">:</span>
-            <span class="c1"># orjson promises to be fast, but it doesn&#39;t seem to be</span>
-            <span class="c1"># and fails on &quot;Infinity&quot;... oops</span>
-            <span class="c1"># data = orjson.loads(file_object.read())</span>
-
-            <span class="c1"># simplejson is faster than standard json and &quot;just works&quot;</span>
-            <span class="c1"># on the big Moe set in 37s</span>
-            <span class="n">data</span> <span class="o">=</span> <span class="n">simplejson</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">file_object</span><span class="p">,</span> <span class="n">object_hook</span><span class="o">=</span><span class="n">_hook</span><span class="p">)</span>
+            <span class="n">data</span> <span class="o">=</span> <span class="n">simplejson</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">file_object</span><span class="p">)</span>
             <span class="n">file_object</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
-
-            <span class="c1"># standard json module</span>
-            <span class="c1"># on the big Moe set takes 42s</span>
-            <span class="c1"># data = json.load(file_object,</span>
-            <span class="c1">#                 object_hook=_hook)</span>
         <span class="k">elif</span> <span class="n">filetype</span> <span class="o">==</span> <span class="s2">&quot;msgpack&quot;</span><span class="p">:</span>
             <span class="n">data</span> <span class="o">=</span> <span class="n">msgpack</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">file_object</span><span class="p">,</span> <span class="n">object_hook</span><span class="o">=</span><span class="n">_hook</span><span class="p">)</span>
             <span class="n">file_object</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
-
         <span class="k">if</span> <span class="n">timing</span><span class="p">:</span>
             <span class="nb">print</span><span class="p">(</span>
                 <span class="s2">&quot;</span><span class="se">\n\n</span><span class="s2">Took </span><span class="si">{}</span><span class="s2"> s to load the data</span><span class="se">\n\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span> <span class="o">-</span> <span class="n">tstart</span><span class="p">),</span>
                 <span class="n">flush</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
             <span class="p">)</span>
+    <span class="k">else</span><span class="p">:</span>
+        <span class="k">with</span> <span class="n">Halo</span><span class="p">(</span><span class="n">text</span><span class="o">=</span><span class="s2">&quot;Loading&quot;</span><span class="p">,</span> <span class="n">interval</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span> <span class="n">spinner</span><span class="o">=</span><span class="s2">&quot;moon&quot;</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s2">&quot;yellow&quot;</span><span class="p">):</span>
+            <span class="n">tstart</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
+            <span class="n">_loaded</span> <span class="o">=</span> <span class="kc">False</span>
+
+            <span class="k">def</span> <span class="nf">_hook</span><span class="p">(</span><span class="n">obj</span><span class="p">):</span>
+                <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">                Hook to load ensemble</span>
+<span class="sd">                &quot;&quot;&quot;</span>
+
+                <span class="k">nonlocal</span> <span class="n">_loaded</span>
+                <span class="k">if</span> <span class="n">_loaded</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
+                    <span class="n">_loaded</span> <span class="o">=</span> <span class="kc">True</span>
+                    <span class="nb">print</span><span class="p">(</span>
+                        <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">Loaded </span><span class="si">{}</span><span class="s2"> data, now putting in a dictionary&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">filetype</span><span class="p">),</span>
+                        <span class="n">flush</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+                    <span class="p">)</span>
+                <span class="k">return</span> <span class="n">obj</span>
+
+            <span class="k">if</span> <span class="n">filetype</span> <span class="o">==</span> <span class="s2">&quot;JSON&quot;</span><span class="p">:</span>
+                <span class="c1"># orjson promises to be fast, but it doesn&#39;t seem to be</span>
+                <span class="c1"># and fails on &quot;Infinity&quot;... oops</span>
+                <span class="c1"># data = orjson.loads(file_object.read())</span>
+
+                <span class="c1"># simplejson is faster than standard json and &quot;just works&quot;</span>
+                <span class="c1"># on the big Moe set in 37s</span>
+                <span class="k">if</span> <span class="n">quiet</span> <span class="o">==</span> <span class="kc">False</span><span class="p">:</span>
+                    <span class="n">data</span> <span class="o">=</span> <span class="n">simplejson</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">file_object</span><span class="p">,</span> <span class="n">object_hook</span><span class="o">=</span><span class="n">_hook</span><span class="p">)</span>
+                <span class="k">else</span><span class="p">:</span>
+                    <span class="n">data</span> <span class="o">=</span> <span class="n">simplejson</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">file_object</span><span class="p">)</span>
+                <span class="n">file_object</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
+
+                <span class="c1"># standard json module</span>
+                <span class="c1"># on the big Moe set takes 42s</span>
+                <span class="c1"># data = json.load(file_object,</span>
+                <span class="c1">#                 object_hook=_hook)</span>
+            <span class="k">elif</span> <span class="n">filetype</span> <span class="o">==</span> <span class="s2">&quot;msgpack&quot;</span><span class="p">:</span>
+                <span class="n">data</span> <span class="o">=</span> <span class="n">msgpack</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="n">file_object</span><span class="p">,</span> <span class="n">object_hook</span><span class="o">=</span><span class="n">_hook</span><span class="p">)</span>
+                <span class="n">file_object</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
+
+            <span class="k">if</span> <span class="n">timing</span><span class="p">:</span>
+                <span class="nb">print</span><span class="p">(</span>
+                    <span class="s2">&quot;</span><span class="se">\n\n</span><span class="s2">Took </span><span class="si">{}</span><span class="s2"> s to load the data</span><span class="se">\n\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span> <span class="o">-</span> <span class="n">tstart</span><span class="p">),</span>
+                    <span class="n">flush</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+                <span class="p">)</span>
 
     <span class="c1"># strip non-selected keys, if a list is given in select_keys</span>
     <span class="k">if</span> <span class="n">select_keys</span><span class="p">:</span>
@@ -477,9 +500,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/functions.html b/docs/build/html/_modules/binarycpython/utils/functions.html
index ef155fe55..ed5529a26 100644
--- a/docs/build/html/_modules/binarycpython/utils/functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/functions.html
@@ -82,34 +82,32 @@
 <span class="sd">    - TODO: change all prints to verbose_prints</span>
 <span class="sd">&quot;&quot;&quot;</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">json</span>
-<span class="kn">import</span> <span class="nn">datetime</span>
 <span class="kn">import</span> <span class="nn">collections</span>
-<span class="kn">import</span> <span class="nn">resource</span>
-<span class="kn">import</span> <span class="nn">tempfile</span>
-<span class="kn">import</span> <span class="nn">subprocess</span>
-<span class="kn">import</span> <span class="nn">types</span>
-
-<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Union</span>
-<span class="kn">from</span> <span class="nn">io</span> <span class="kn">import</span> <span class="n">StringIO</span>
-
+<span class="kn">import</span> <span class="nn">datetime</span>
 <span class="kn">import</span> <span class="nn">h5py</span>
 <span class="kn">import</span> <span class="nn">humanize</span>
+<span class="kn">import</span> <span class="nn">json</span>
 <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
+<span class="kn">import</span> <span class="nn">os</span>
+<span class="kn">import</span> <span class="nn">platform</span>
 <span class="kn">import</span> <span class="nn">psutil</span>
-<span class="kn">from</span> <span class="nn">colorama</span> <span class="kn">import</span> <span class="n">Fore</span><span class="p">,</span> <span class="n">Back</span><span class="p">,</span> <span class="n">Style</span>
-
+<span class="kn">import</span> <span class="nn">resource</span>
+<span class="kn">import</span> <span class="nn">tempfile</span>
+<span class="kn">import</span> <span class="nn">time</span>
+<span class="kn">import</span> <span class="nn">socket</span>
+<span class="kn">import</span> <span class="nn">subprocess</span>
+<span class="kn">import</span> <span class="nn">sys</span>
+<span class="kn">import</span> <span class="nn">types</span>
 <span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span>
 <span class="kn">from</span> <span class="nn">binarycpython.utils.dicts</span> <span class="kn">import</span> <span class="n">filter_dict_through_values</span>
+<span class="kn">from</span> <span class="nn">colorama</span> <span class="kn">import</span> <span class="n">Fore</span><span class="p">,</span> <span class="n">Back</span><span class="p">,</span> <span class="n">Style</span>
+<span class="kn">from</span> <span class="nn">io</span> <span class="kn">import</span> <span class="n">StringIO</span>
+<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Union</span>
 
 <span class="c1">########################################################</span>
 <span class="c1"># Unsorted</span>
 <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">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, using the format ``%m/%d/%Y %H:%M:%S``</span>
@@ -1295,6 +1293,18 @@
 <span class="sd">    Given a list, turn it into a quoted command string</span>
 <span class="sd">    &quot;&quot;&quot;</span>
     <span class="k">return</span> <span class="s1">&#39; &#39;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">quotewrap</span><span class="p">(</span><span class="nb">list</span><span class="p">))</span></div>
+
+<div class="viewcode-block" id="hostnames"><a class="viewcode-back" href="../../../functions.html#binarycpython.utils.functions.hostnames">[docs]</a><span class="k">def</span> <span class="nf">hostnames</span><span class="p">():</span>
+    <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">    Return a list of possible hostnames for this machine</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">return</span> <span class="p">[</span>
+        <span class="n">os</span><span class="o">.</span><span class="n">getenv</span><span class="p">(</span><span class="s1">&#39;HOSTNAME&#39;</span><span class="p">),</span>
+        <span class="n">platform</span><span class="o">.</span><span class="n">uname</span><span class="p">()[</span><span class="mi">1</span><span class="p">],</span>
+        <span class="n">socket</span><span class="o">.</span><span class="n">gethostname</span><span class="p">(),</span>
+        <span class="n">socket</span><span class="o">.</span><span class="n">getfqdn</span><span class="p">(</span><span class="n">socket</span><span class="o">.</span><span class="n">gethostname</span><span class="p">()),</span>
+        <span class="n">platform</span><span class="o">.</span><span class="n">node</span><span class="p">()</span>
+    <span class="p">]</span></div>
 </pre></div>
 
            </div>
@@ -1312,9 +1322,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/binarycpython/utils/grid.html b/docs/build/html/_modules/binarycpython/utils/grid.html
index 6d8e6a8d0..adda118fc 100644
--- a/docs/build/html/_modules/binarycpython/utils/grid.html
+++ b/docs/build/html/_modules/binarycpython/utils/grid.html
@@ -81,46 +81,32 @@
 
 <span class="sd">Tasks:</span>
 <span class="sd">    - TODO: add functionality to &#39;on-init&#39; set arguments</span>
-<span class="sd">    - TODO: add functionality to return the initial_abundance_hash</span>
-<span class="sd">    - TODO: add functionality to return the isotope_hash</span>
-<span class="sd">    - TODO: add functionality to return the isotope_list</span>
-<span class="sd">    - TODO: add functionality to return the nuclear_mass_hash</span>
-<span class="sd">    - TODO: add functionality to return the nuclear_mass_list</span>
-<span class="sd">    - TODO: add functionality to return the source_list</span>
-<span class="sd">    - TODO: add functionality to return the ensemble_list</span>
+
 <span class="sd">    - TODO: consider spreading the functions over more files.</span>
 <span class="sd">    - TODO: type the private functions</span>
 <span class="sd">    - TODO: fix the correct object types for the default values of the bse_options</span>
 <span class="sd">    - TODO: think of a clean and nice way to unload and remove the custom_logging_info library from memory (and from disk)</span>
 <span class="sd">    - TODO: think of a nice way to remove the loaded grid_code/ generator from memory.</span>
 
-<span class="sd">TODO: Some of the methods that we have defined in the (mixin) class are designed to be used as a portal to information (return_binary_c_version_info for example.) THe current design is that they are all instance methods, but that is not always necessary. We can decorate them with @staticmethod, or @classmethod to make it easier to use them (https://realpython.com/instance-class-and-static-methods-demystified/)</span>
+<span class="sd">    - TODO: Some of the methods that we have defined in the (mixin) class are designed to be used as a portal to information (return_binary_c_version_info for example.) The current design is that they are all instance methods, but that is not always necessary. We can decorate them with @staticmethod, or @classmethod to make it easier to use them (https://realpython.com/instance-class-and-static-methods-demystified/)</span>
 <span class="sd">&quot;&quot;&quot;</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">sys</span>
-<span class="kn">import</span> <span class="nn">time</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">uuid</span>
-<span class="kn">import</span> <span class="nn">queue</span>
-<span class="kn">import</span> <span class="nn">signal</span>
 <span class="kn">import</span> <span class="nn">datetime</span>
 <span class="kn">import</span> <span class="nn">functools</span>
-<span class="kn">import</span> <span class="nn">traceback</span>
+<span class="kn">import</span> <span class="nn">gc</span>
+<span class="kn">import</span> <span class="nn">json</span>
 <span class="kn">import</span> <span class="nn">multiprocessing</span>
-
-<span class="kn">from</span> <span class="nn">collections</span> <span class="kn">import</span> <span class="p">(</span>
-    <span class="n">OrderedDict</span><span class="p">,</span>
-<span class="p">)</span>
-<span class="kn">from</span> <span class="nn">collections.abc</span> <span class="kn">import</span> <span class="n">Iterable</span>  <span class="c1"># drop `.abc` with Python 2.7 or lower</span>
-<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Union</span><span class="p">,</span> <span class="n">Any</span>
-
+<span class="kn">import</span> <span class="nn">os</span>
 <span class="kn">import</span> <span class="nn">psutil</span>
+<span class="kn">import</span> <span class="nn">queue</span>
 <span class="kn">import</span> <span class="nn">setproctitle</span>
+<span class="kn">import</span> <span class="nn">signal</span>
 <span class="kn">import</span> <span class="nn">str2bool</span>
-<span class="kn">from</span> <span class="nn">colorama</span> <span class="kn">import</span> <span class="n">init</span> <span class="k">as</span> <span class="n">colorama_init</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">traceback</span>
+<span class="kn">import</span> <span class="nn">uuid</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">check_if_in_shell</span><span class="p">,</span>
@@ -131,6 +117,7 @@
     <span class="n">mem_use</span><span class="p">,</span>
     <span class="n">timedelta</span><span class="p">,</span>
     <span class="n">now</span><span class="p">,</span>
+    <span class="n">hostnames</span>
 <span class="p">)</span>
 <span class="kn">from</span> <span class="nn">binarycpython.utils.ensemble</span> <span class="kn">import</span> <span class="p">(</span>
     <span class="n">binaryc_json_serializer</span><span class="p">,</span>
@@ -140,9 +127,8 @@
 <span class="kn">from</span> <span class="nn">binarycpython.utils.dicts</span> <span class="kn">import</span> <span class="p">(</span>
     <span class="n">AutoVivificationDict</span><span class="p">,</span>
     <span class="n">merge_dicts</span><span class="p">,</span>
-    <span class="n">keys_to_floats</span><span class="p">,</span>
+    <span class="n">keys_to_floats</span>
 <span class="p">)</span>
-
 <span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.analytics</span> <span class="kn">import</span> <span class="n">analytics</span>
 <span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.cache</span> <span class="kn">import</span> <span class="n">cache</span>
 <span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.dataIO</span> <span class="kn">import</span> <span class="n">dataIO</span>
@@ -163,13 +149,17 @@
     <span class="n">spacing_functions</span><span class="p">,</span>
 <span class="p">)</span>
 <span class="kn">from</span> <span class="nn">binarycpython.utils.population_extensions.version_info</span> <span class="kn">import</span> <span class="n">version_info</span>
-
 <span class="kn">from</span> <span class="nn">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span>
+<span class="kn">from</span> <span class="nn">collections</span> <span class="kn">import</span> <span class="p">(</span>
+    <span class="n">OrderedDict</span><span class="p">,</span>
+<span class="p">)</span>
+<span class="kn">from</span> <span class="nn">collections.abc</span> <span class="kn">import</span> <span class="n">Iterable</span>  <span class="c1"># drop `.abc` with Python 2.7 or lower</span>
+<span class="kn">from</span> <span class="nn">colorama</span> <span class="kn">import</span> <span class="n">init</span> <span class="k">as</span> <span class="n">colorama_init</span>
+<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Union</span><span class="p">,</span> <span class="n">Any</span>
 
-<span class="c1"># Initialise the colorama stuff</span>
+<span class="c1"># Initialise colorama</span>
 <span class="n">colorama_init</span><span class="p">()</span>
 
-
 <div class="viewcode-block" id="Population"><a class="viewcode-back" href="../../../grid.html#binarycpython.utils.grid.Population">[docs]</a><span class="k">class</span> <span class="nc">Population</span><span class="p">(</span>
     <span class="n">analytics</span><span class="p">,</span>
     <span class="n">cache</span><span class="p">,</span>
@@ -212,6 +202,7 @@
         <span class="bp">self</span><span class="o">.</span><span class="n">caches</span> <span class="o">=</span> <span class="p">{}</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">cached_function_cache</span> <span class="o">=</span> <span class="p">{}</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">original_function_cache</span> <span class="o">=</span> <span class="p">{}</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">hostnameslist</span> <span class="o">=</span> <span class="n">hostnames</span><span class="p">()</span>
 
         <span class="c1"># Different sections of options</span>
         <span class="c1"># get binary_c defaults and create a cleaned up dict</span>
@@ -390,15 +381,18 @@
 <span class="sd">        &quot;&quot;&quot;</span>
 
         <span class="c1"># Go over all the input</span>
-        <span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="n">kwargs</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">kwargs</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
+            <span class="c1"># match to hostname if appropriate</span>
+            <span class="n">value</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_match_arg_to_host</span><span class="p">(</span><span class="n">arg</span><span class="o">=</span><span class="p">{</span><span class="n">key</span><span class="p">:</span><span class="n">value</span><span class="p">})</span>
+
             <span class="c1"># Filter out keys for the bse_options</span>
             <span class="k">if</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">defaults</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;adding: </span><span class="si">{}</span><span class="s2">=</span><span class="si">{}</span><span class="s2"> to BSE_options&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]),</span>
+                    <span class="s2">&quot;adding: </span><span class="si">{}</span><span class="s2">=</span><span class="si">{}</span><span class="s2"> to BSE_options&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">value</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">2</span><span class="p">,</span>
                 <span class="p">)</span>
-                <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span>
 
             <span class="c1"># Extra check to check if the key fits one of parameter names that end with %d</span>
             <span class="c1"># TODO: abstract this function</span>
@@ -408,33 +402,33 @@
             <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;adding: </span><span class="si">{}</span><span class="s2">=</span><span class="si">{}</span><span class="s2"> to BSE_options by catching the </span><span class="si">%d</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
-                        <span class="n">key</span><span class="p">,</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+                        <span class="n">key</span><span class="p">,</span> <span class="n">value</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="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span>
 
             <span class="c1"># Filter out keys for the grid_options</span>
             <span class="k">elif</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="o">.</span><span class="n">keys</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;adding: </span><span class="si">{}</span><span class="s2">=</span><span class="si">{}</span><span class="s2"> to grid_options&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]),</span>
+                    <span class="s2">&quot;adding: </span><span class="si">{}</span><span class="s2">=</span><span class="si">{}</span><span class="s2"> to grid_options&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">value</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="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</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="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span>
 
             <span class="c1"># The of the keys go into a custom_options dict</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;&lt;&lt;&lt;&lt; Warning: Key does not match previously known parameter: </span><span class="se">\</span>
 <span class="s2">                    adding: </span><span class="si">{}</span><span class="s2">=</span><span class="si">{}</span><span class="s2"> to custom_options &gt;&gt;&gt;&gt;&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
-                        <span class="n">key</span><span class="p">,</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
+                        <span class="n">key</span><span class="p">,</span> <span class="n">value</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="c1"># NOTE: setting this to be 0 prevents mistakes being overlooked.</span>
                 <span class="p">)</span>
-                <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="n">key</span><span class="p">]</span></div>
+                <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span></div>
 
 <div class="viewcode-block" id="Population.parse_cmdline"><a class="viewcode-back" href="../../../grid.html#binarycpython.utils.grid.Population.parse_cmdline">[docs]</a>    <span class="k">def</span> <span class="nf">parse_cmdline</span><span class="p">(</span><span class="bp">self</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>
@@ -466,6 +460,9 @@
             <span class="c1"># cmdline_args = args</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_commandline_input&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">cmdline_args</span>
 
+            <span class="c1"># expand args by hostname</span>
+            <span class="n">cmdline_args</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_args_by_hostname</span><span class="p">(</span><span class="n">cmdline_args</span><span class="p">)</span>
+
             <span class="c1"># Make dict and fill it</span>
             <span class="n">cmdline_dict</span> <span class="o">=</span> <span class="p">{}</span>
             <span class="k">for</span> <span class="n">cmdline_arg</span> <span class="ow">in</span> <span class="n">cmdline_args</span><span class="p">:</span>
@@ -474,6 +471,7 @@
                 <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">split</span><span class="p">)</span> <span class="o">==</span> <span class="mi">2</span><span class="p">:</span>
                     <span class="n">parameter</span> <span class="o">=</span> <span class="n">split</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
                     <span class="n">value</span> <span class="o">=</span> <span class="n">split</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
+
                     <span class="n">old_value_found</span> <span class="o">=</span> <span class="kc">False</span>
 
                     <span class="c1"># Find an old value</span>
@@ -746,9 +744,7 @@
                         <span class="n">default</span><span class="o">=</span><span class="n">binaryc_json_serializer</span><span class="p">,</span>
                         <span class="n">ensure_ascii</span><span class="o">=</span><span class="n">ensure_ascii</span><span class="p">,</span>
                     <span class="p">)</span>
-                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;ok pre&quot;</span><span class="p">)</span>
                 <span class="bp">self</span><span class="o">.</span><span class="n">locked_close</span><span class="p">(</span><span class="n">f</span><span class="p">,</span> <span class="n">lock</span><span class="p">)</span>
-                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;ok ret&quot;</span><span class="p">)</span>
                 <span class="k">return</span> <span class="n">settings_fullname</span>
 
             <span class="c1"># TODO: turn it around and have the exception be within the if statement</span>
@@ -787,24 +783,111 @@
         <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">        Function to set the number of processes used in multiprocessing.</span>
 
-<span class="sd">        If grid_options[&#39;num_cores&#39;] &lt;= 0, set automatically</span>
+<span class="sd">        Test the value of grid_options[&#39;num_cores&#39;]:</span>
+
+<span class="sd">        * If 0 or &#39;logical&#39; or &#39;all logical&#39;, use all logical cores.</span>
+
+<span class="sd">        * If -1 or &#39;physical&#39; or &#39;all physical&#39;, use all physical cores.</span>
+
+<span class="sd">        * If integer &gt;=1 use the number of cores given.</span>
+
+<span class="sd">        * If  a dict, (key,value) pairs are (hostname,num_cores)</span>
+<span class="sd">          for particular machines. We then try to match this machine to</span>
+<span class="sd">          the (hostname,num_cores) pairs to set num_cores. If not found,</span>
+<span class="sd">          default to either the dict &quot;default&quot; setting, or the number</span>
+<span class="sd">          of logical cores available.</span>
+
+<span class="sd">        * If grid_options[&#39;num_cores&#39;] is missing, all logical cores are used.</span>
+
+<span class="sd">        Exit if none of the above are satisfied.</span>
 
-<span class="sd">        If grid_options[&#39;num_cores&#39;] is 0, we use as many as we have available</span>
 <span class="sd">        &quot;&quot;&quot;</span>
+        <span class="n">_vb</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="s1">&#39;verbosity&#39;</span><span class="p">]</span><span class="o">&gt;=</span><span class="mi">2</span>
+
+        <span class="k">def</span> <span class="nf">__nprocs</span><span class="p">(</span><span class="n">ncores</span><span class="p">):</span>
+            <span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">ncores</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">str</span><span class="p">:</span>
+                <span class="k">if</span> <span class="n">ncores</span> <span class="o">==</span> <span class="s1">&#39;all&#39;</span> <span class="ow">or</span> <span class="n">ncores</span> <span class="o">==</span> <span class="s1">&#39;logical&#39;</span> <span class="ow">or</span> <span class="n">ncores</span> <span class="o">==</span> <span class="s1">&#39;all logical&#39;</span><span class="p">:</span>
+                    <span class="c1"># use all logical cores available to us</span>
+                    <span class="k">return</span> <span class="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">True</span><span class="p">))</span>
+                <span class="k">elif</span> <span class="n">ncores</span> <span class="o">==</span> <span class="s1">&#39;all physical&#39;</span> <span class="ow">or</span> <span class="n">ncores</span> <span class="o">==</span> <span class="s1">&#39;physical&#39;</span><span class="p">:</span>
+                    <span class="c1"># use all physical cores available to us</span>
+                    <span class="k">return</span> <span class="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">False</span><span class="p">))</span>
+                <span class="k">else</span><span class="p">:</span>
+                    <span class="c1"># unknown string : fall back to one CPU</span>
+                    <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;grid_option[&#39;num_cores&#39;] = </span><span class="se">\&quot;</span><span class="si">{</span><span class="n">ncores</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2"> is not recognised.</span><span class="se">\n</span><span class="s2">Please consider either setting this option to a number, &#39;physical&#39; or &#39;logical&#39;, or a dict of (host,num_cores) pairs.&quot;</span><span class="p">)</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="n">code</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
+            <span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">ncores</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">int</span><span class="p">:</span>
+                <span class="k">if</span> <span class="n">ncores</span> <span class="o">==</span> <span class="o">-</span><span class="mi">1</span><span class="p">:</span>
+                    <span class="k">return</span> <span class="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">False</span><span class="p">))</span>
+                <span class="k">elif</span> <span class="n">ncores</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
+                    <span class="k">return</span> <span class="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">True</span><span class="p">))</span>
+                <span class="k">else</span><span class="p">:</span>
+                    <span class="k">return</span> <span class="n">ncores</span>
+            <span class="k">else</span><span class="p">:</span>
+                <span class="c1"># ncores should be int or string, oops</span>
+                <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;grid_option[&#39;num_cores&#39;] = </span><span class="se">\&quot;</span><span class="si">{</span><span class="n">ncores</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2"> is not recognised.</span><span class="se">\n</span><span class="s2">Please consider either setting this option to a number, &#39;physical&#39; or &#39;logical&#39;, or a dict of (host,num_cores) pairs.&quot;</span><span class="p">)</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="n">code</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
+
+        <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+            <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;NPROC: pre-eval </span><span class="se">\&quot;</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_cores&#39;</span><span class="p">]</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2"> type </span><span class="se">\&quot;</span><span class="si">{</span><span class="nb">type</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="s1">&#39;num_cores&#39;</span><span class="p">])</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2">&quot;</span><span class="p">)</span>
+
+        <span class="c1"># eval the incoming string if possible, it may be a JSON</span>
+        <span class="c1"># representation of a dict, and if this works we</span>
+        <span class="c1"># set the num_cores option to the eval&#39;d version.</span>
+        <span class="c1"># It may also be a normal string or int, so we can&#39;t just</span>
+        <span class="c1"># use the JSON parser.</span>
+        <span class="k">try</span><span class="p">:</span>
+            <span class="n">_x</span> <span class="o">=</span> <span class="nb">eval</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="s1">&#39;num_cores&#39;</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="s1">&#39;num_cores&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">_x</span>
+        <span class="k">except</span><span class="p">:</span>
+            <span class="k">pass</span>
+
         <span class="c1"># backwards compatibility</span>
-        <span class="k">if</span> <span class="s2">&quot;amt_cores&quot;</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_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;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;amt_cores&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;num_cores&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;amt_cores&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;num_cores&quot;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
-            <span class="c1"># use all logical cores available to us</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="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">True</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;num_cores&quot;</span><span class="p">]</span> <span class="o">==</span> <span class="o">-</span><span class="mi">1</span><span class="p">:</span>
-            <span class="c1"># use all physical cores available to us</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="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">False</span><span class="p">))</span>
-        <span class="k">else</span><span class="p">:</span>
-            <span class="c1"># manually specify number of cores made available</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;num_cores&quot;</span><span class="p">]</span>
+        <span class="k">if</span> <span class="s1">&#39;amt_cores&#39;</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_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="s1">&#39;num_cores&#39;</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="s1">&#39;amt_cores&#39;</span><span class="p">]</span>
+
+        <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+            <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;NPROC: </span><span class="se">\&quot;</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_cores&#39;</span><span class="p">]</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2"> type </span><span class="se">\&quot;</span><span class="si">{</span><span class="nb">type</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="s1">&#39;num_cores&#39;</span><span class="p">])</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2">&quot;</span><span class="p">)</span>
+
+        <span class="k">if</span> <span class="s1">&#39;num_cores&#39;</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;NPROC found in grid options&quot;</span><span class="p">)</span>
+            <span class="k">if</span> <span class="nb">type</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="s1">&#39;num_cores&#39;</span><span class="p">])</span> <span class="ow">is</span> <span class="nb">dict</span><span class="p">:</span>
+                <span class="c1"># try to match hostname to the dict keys</span>
+                <span class="n">hostnameslist</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">my_hostnames</span><span class="p">()</span>
+                <span class="k">for</span> <span class="n">host</span><span class="p">,</span><span class="n">ncores</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_cores&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
+                    <span class="c1"># check if we are this host</span>
+                    <span class="k">if</span> <span class="n">host</span> <span class="ow">in</span> <span class="n">hostnameslist</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="s1">&#39;num_processes&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">__nprocs</span><span class="p">(</span><span class="n">ncores</span><span class="p">)</span>
+                        <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+                            <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;SET NPROC = </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2"> FROM HOST </span><span class="si">{</span><span class="n">host</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+                        <span class="k">return</span>
+
+                <span class="c1"># no host match : use default number of cores</span>
+                <span class="k">if</span> <span class="s1">&#39;default&#39;</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_cores&#39;</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="s1">&#39;num_processes&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">__nprocs</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="s1">&#39;num_cores&#39;</span><span class="p">][</span><span class="s1">&#39;default&#39;</span><span class="p">])</span>
+                    <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+                        <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;SET NPROC = </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2"> FROM default&quot;</span><span class="p">)</span>
+                    <span class="k">return</span>
+            <span class="k">elif</span> <span class="nb">type</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="s1">&#39;num_cores&#39;</span><span class="p">])</span> <span class="ow">is</span> <span class="nb">str</span><span class="p">:</span>
+                <span class="c1"># just use int passed in</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span> <span class="o">=</span>  <span class="n">__nprocs</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="s1">&#39;num_cores&#39;</span><span class="p">])</span>
+                <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+                    <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;SET NPROC = </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2"> from string passed in&quot;</span><span class="p">)</span>
+                <span class="k">return</span>
+            <span class="k">elif</span> <span class="nb">type</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="s1">&#39;num_cores&#39;</span><span class="p">])</span> <span class="ow">is</span> <span class="nb">int</span><span class="p">:</span>
+                <span class="c1"># just use int passed in</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">__nprocs</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="s1">&#39;num_cores&#39;</span><span class="p">])</span>
+                <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+                    <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;SET NPROC = </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2"> from int passed in&quot;</span><span class="p">)</span>
+                <span class="k">return</span>
+
+        <span class="c1"># no host matched or no &#39;num_cores&#39; option provided: use all available logical cores</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</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">psutil</span><span class="o">.</span><span class="n">cpu_count</span><span class="p">(</span><span class="n">logical</span><span class="o">=</span><span class="kc">True</span><span class="p">))</span>
+        <span class="k">if</span> <span class="n">_vb</span><span class="p">:</span>
+            <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;SET NPROC = </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;num_processes&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2"> because no option given&quot;</span><span class="p">)</span>
+
+        <span class="k">return</span>
 
     <span class="k">def</span> <span class="nf">_pre_run_setup</span><span class="p">(</span><span class="bp">self</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>
@@ -971,7 +1054,12 @@
             <span class="k">return</span>
 
         <span class="c1"># Execute population evolution subroutines</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_evolve_population</span><span class="p">()</span>
+        <span class="n">result</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_evolve_population</span><span class="p">()</span>
+
+        <span class="k">if</span> <span class="n">result</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
+            <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Error detected in _evolve_population() : stopping here&quot;</span><span class="p">)</span>
+
+            <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">()</span>
 
         <span class="c1"># make analytics information</span>
         <span class="n">analytics_dict</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">make_analytics_dict</span><span class="p">()</span>
@@ -1020,6 +1108,8 @@
 
 <span class="sd">        Tasks:</span>
 <span class="sd">            - TODO: include options for different ways of generating a population here. (i.e. MC or source file)</span>
+
+<span class="sd">        Returns True if the grid runs, False on error.</span>
 <span class="sd">        &quot;&quot;&quot;</span>
 
         <span class="c1">############################################################</span>
@@ -1036,7 +1126,8 @@
             <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_evolution_type_options&quot;</span><span class="p">]</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;evolution_type&quot;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s2">&quot;grid&quot;</span><span class="p">,</span> <span class="s2">&quot;custom_generator&quot;</span><span class="p">]:</span>
-                <span class="bp">self</span><span class="o">.</span><span class="n">_evolve_population_grid</span><span class="p">()</span>
+                <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_evolve_population_grid</span><span class="p">()</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
+                    <span class="k">return</span> <span class="kc">False</span>
 
             <span class="c1"># elif self.grid_options[&quot;evolution_type&quot;] == &quot;mc&quot;:</span>
             <span class="c1">#     # TODO: add MC option</span>
@@ -1091,19 +1182,12 @@
                 <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="c1"># Some information afterwards</span>
-            <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
-                <span class="s2">&quot;The full argline commands for </span><span class="si">{}</span><span class="s2"> these systems have been written to </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="s2">&quot;ALL&quot;</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;_errors_exceeded&quot;</span><span class="p">]</span>
-                    <span class="k">else</span> <span class="s2">&quot;SOME (only the first ones, as there were too many to log all of them)&quot;</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;failed_systems_</span><span class="si">{}</span><span class="s2">_X.txt&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;_population_id&quot;</span><span class="p">]</span>
-                        <span class="p">),</span>
-                    <span class="p">),</span>
-                <span class="p">),</span>
+            <span class="c1"># Some information on where we logged the systems</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="s1">&#39;log_failed_systems&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="kc">True</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="s1">&#39;log_failed_systems_dir&#39;</span><span class="p">]</span> <span class="o">!=</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;The full failed arglines have been written to </span><span class="si">{self.grid_options[&#39;log_failed_systems_dir&#39;]}</span><span class="s2">/process_{self.jobID()}.txt&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">0</span><span class="p">,</span>
             <span class="p">)</span>
@@ -1114,9 +1198,9 @@
                 <span class="mi">0</span><span class="p">,</span>
             <span class="p">)</span>
 
-        <span class="k">return</span>
+        <span class="k">return</span> <span class="kc">True</span>
 
-    <span class="k">def</span> <span class="nf">_system_queue_filler</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">job_queue</span><span class="p">,</span> <span class="n">num_processes</span><span class="p">):</span>
+    <span class="k">def</span> <span class="nf">_system_queue_filler</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">job_queue</span><span class="p">,</span> <span class="n">processes</span><span class="p">,</span> <span class="n">num_processes</span><span class="p">):</span>
         <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">        Function that is responsible for keeping the queue filled.</span>
 
@@ -1149,8 +1233,11 @@
         <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;start_at&quot;</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
             <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Starting at model </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;start_at&quot;</span><span class="p">]))</span>
 
+        <span class="n">prev_process_check</span> <span class="o">=</span> <span class="kc">None</span>
+
         <span class="c1"># Continuously fill the queue while we are allowed to</span>
         <span class="k">for</span> <span class="n">system_number</span><span class="p">,</span> <span class="n">system_dict</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">generator</span><span class="p">):</span>
+            <span class="c1"># on stop, quit this loop</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;stop_queue&quot;</span><span class="p">]:</span>
                 <span class="k">break</span>
 
@@ -1188,6 +1275,15 @@
             <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;stop_queue&quot;</span><span class="p">]:</span>
                 <span class="k">break</span>
             <span class="k">else</span><span class="p">:</span>
+
+                <span class="c1"># check children are running every 1s</span>
+                <span class="n">_now</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
+                <span class="k">if</span> <span class="n">prev_process_check</span> <span class="ow">is</span> <span class="kc">None</span> <span class="ow">or</span> <span class="n">_now</span> <span class="o">-</span> <span class="n">prev_process_check</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
+                    <span class="n">prev_process_check</span> <span class="o">=</span> <span class="n">_now</span>
+                    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_all_children_running</span><span class="p">(</span><span class="n">processes</span><span class="p">)</span> <span class="ow">is</span> <span class="kc">False</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="s1">&#39;_job_crashed&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
+                        <span class="k">return</span>
+
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">job_queue</span><span class="o">.</span><span class="n">put</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="n">block</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
                 <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
@@ -1201,6 +1297,7 @@
                     <span class="mi">3</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;_queue_done&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
 
         <span class="c1"># Send closing signal to workers. When they receive this they will terminate</span>
@@ -1231,6 +1328,8 @@
 <span class="sd">        We then add any previous population</span>
 
 <span class="sd">        We read out the information in the result queue and store them in the grid object</span>
+
+<span class="sd">        Returns True if things go well, False on error.</span>
 <span class="sd">        &quot;&quot;&quot;</span>
 
         <span class="c1"># Set process name</span>
@@ -1279,17 +1378,38 @@
         <span class="p">)</span>
 
         <span class="c1"># Set up the system_queue in the parent process</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;_job_crashed&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">False</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_system_queue_filler</span><span class="p">(</span>
-            <span class="n">job_queue</span><span class="p">,</span> <span class="n">num_processes</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="n">job_queue</span><span class="p">,</span> <span class="n">processes</span><span class="p">,</span> <span class="n">num_processes</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="p">)</span>
 
-        <span class="c1"># Join the processes</span>
-        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Do join of subprocesses ...&quot;</span><span class="p">)</span>
-        <span class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span class="n">processes</span><span class="p">:</span>
-            <span class="n">p</span><span class="o">.</span><span class="n">join</span><span class="p">()</span>
-        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Joined subprocesses.&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="s1">&#39;_job_crashed&#39;</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">True</span><span class="p">:</span>
+            <span class="c1"># job crashed while in system_queue_filler : kill children</span>
+            <span class="c1"># and return False</span>
+            <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;A child process crashed or was killed : I will not join incomplete data&quot;</span><span class="p">)</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">_kill_child_processes</span><span class="p">(</span><span class="n">processes</span><span class="p">)</span>
+            <span class="k">return</span> <span class="kc">False</span>
+
+        <span class="k">else</span><span class="p">:</span>
+            <span class="c1"># Join the processes after the queue filler has finished</span>
+            <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Do join of subprocesses ...&quot;</span><span class="p">)</span>
+
+            <span class="k">while</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;_job_crashed&#39;</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">False</span> <span class="ow">and</span> <span class="n">processes</span><span class="p">:</span>
+                <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_all_children_running</span><span class="p">(</span><span class="n">processes</span><span class="p">)</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
+                    <span class="c1"># job crashed: stop children and return False</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;_job_crashed&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
+                <span class="k">else</span><span class="p">:</span>
+                    <span class="c1"># join first process: it should finish work soon</span>
+                    <span class="n">p</span> <span class="o">=</span> <span class="n">processes</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
+                    <span class="n">p</span><span class="o">.</span><span class="n">join</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="s1">&#39;_job_crashed&#39;</span><span class="p">]</span> <span class="ow">is</span> <span class="kc">True</span><span class="p">:</span>
+                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;A child process crashed or was killed : I will not join incomplete data&quot;</span><span class="p">)</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">_kill_child_processes</span><span class="p">(</span><span class="n">processes</span><span class="p">)</span>
+                <span class="k">return</span> <span class="kc">False</span>
+            <span class="k">else</span><span class="p">:</span>
+                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Joined all subprocesses.&quot;</span><span class="p">)</span>
 
-        <span class="c1"># todo: error codes</span>
 
         <span class="c1"># Handle the results by merging all the dictionaries. How that merging happens exactly is</span>
         <span class="c1"># described in the merge_dicts description.</span>
@@ -1341,12 +1461,10 @@
         <span class="k">for</span> <span class="n">output_dict</span> <span class="ow">in</span> <span class="nb">iter</span><span class="p">(</span><span class="n">result_queue</span><span class="o">.</span><span class="n">get</span><span class="p">,</span> <span class="n">sentinel</span><span class="p">):</span>
             <span class="k">if</span> <span class="n">output_dict</span><span class="p">:</span>
                 <span class="c1"># don&#39;t let Xinit be added</span>
-                <span class="k">if</span> <span class="p">(</span>
-                    <span class="s2">&quot;ensemble_results&quot;</span> <span class="ow">in</span> <span class="n">combined_output_dict</span>
-                    <span class="ow">and</span> <span class="s2">&quot;ensemble&quot;</span> <span class="ow">in</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">&quot;ensemble_results&quot;</span><span class="p">]</span>
-                    <span class="ow">and</span> <span class="s2">&quot;Xinit&quot;</span> <span class="ow">in</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">&quot;ensemble_results&quot;</span><span class="p">][</span><span class="s2">&quot;ensemble&quot;</span><span class="p">]</span>
-                <span class="p">):</span>
+                <span class="k">try</span><span class="p">:</span>
                     <span class="k">del</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">&quot;ensemble_results&quot;</span><span class="p">][</span><span class="s2">&quot;ensemble&quot;</span><span class="p">][</span><span class="s2">&quot;Xinit&quot;</span><span class="p">]</span>
+                <span class="k">except</span><span class="p">:</span>
+                    <span class="k">pass</span>
 
                 <span class="c1"># merge dicts</span>
                 <span class="n">combined_output_dict</span> <span class="o">=</span> <span class="n">merge_dicts</span><span class="p">(</span>
@@ -1380,7 +1498,10 @@
         <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;save_snapshots&quot;</span><span class="p">]</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;_killed&quot;</span><span class="p">]:</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="s2">&quot;save_snapshot&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
 
-    <span class="k">def</span> <span class="nf">_evolve_system_mp</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">full_system_dict</span><span class="p">):</span>
+        <span class="c1"># return True because all seems well</span>
+        <span class="k">return</span> <span class="kc">True</span>
+
+    <span class="k">def</span> <span class="nf">_evolve_system_mp</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">system_number</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 that the multiprocessing evolution method calls to evolve a system</span>
 
@@ -1411,7 +1532,7 @@
         <span class="p">)</span>
 
         <span class="c1"># Check for errors</span>
-        <span class="n">_</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_check_binary_c_error</span><span class="p">(</span><span class="n">out</span><span class="p">,</span> <span class="n">full_system_dict</span><span class="p">)</span>
+        <span class="n">_</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_check_binary_c_error</span><span class="p">(</span><span class="n">system_number</span><span class="p">,</span> <span class="n">out</span><span class="p">,</span> <span class="n">full_system_dict</span><span class="p">)</span>
 
         <span class="c1"># Have some user-defined function do stuff with the data.</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;parse_function&quot;</span><span class="p">]:</span>
@@ -1736,7 +1857,8 @@
 
                 <span class="k">if</span> <span class="n">run_system</span><span class="p">:</span>
                     <span class="c1"># Evolve the system</span>
-                    <span class="bp">self</span><span class="o">.</span><span class="n">_evolve_system_mp</span><span class="p">(</span><span class="n">full_system_dict</span><span class="p">)</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">_evolve_system_mp</span><span class="p">(</span><span class="n">system_number</span><span class="p">,</span>
+                                           <span class="n">full_system_dict</span><span class="p">)</span>
 
             <span class="n">end_runtime_binary_c</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
 
@@ -2404,7 +2526,7 @@
 
         <span class="k">return</span> <span class="n">killed</span></div>
 
-    <span class="k">def</span> <span class="nf">_check_binary_c_error</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">binary_c_output</span><span class="p">,</span> <span class="n">system_dict</span><span class="p">):</span>
+    <span class="k">def</span> <span class="nf">_check_binary_c_error</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">system_number</span><span class="p">,</span> <span class="n">binary_c_output</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 check whether binary_c throws an error and handle accordingly.</span>
 <span class="sd">        &quot;&quot;&quot;</span>
@@ -2424,6 +2546,22 @@
                 <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_failed_count&quot;</span><span class="p">]</span> <span class="o">+=</span> <span class="mi">1</span>
                 <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_errors_found&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
 
+                <span class="k">try</span><span class="p">:</span>
+                    <span class="n">error_code</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span>
+                        <span class="n">binary_c_output</span><span class="o">.</span><span class="n">splitlines</span><span class="p">()[</span><span class="mi">0</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;with error code&quot;</span><span class="p">)[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;:&quot;</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>
+                        <span class="o">.</span><span class="n">strip</span><span class="p">()</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="sa">f</span><span class="s2">&quot;Have error code </span><span class="si">{</span><span class="n">error_code</span><span class="si">}</span><span class="s2">&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">0</span><span class="p">,)</span>
+                <span class="k">except</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;Failed to extract error code&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">0</span><span class="p">,)</span>
+                    <span class="k">pass</span>
+
                 <span class="c1"># Try catching the error code and keep track of the unique ones.</span>
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">error_code</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span>
@@ -2437,21 +2575,32 @@
                         <span class="ow">not</span> <span class="n">error_code</span>
                         <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;_failed_systems_error_codes&quot;</span><span class="p">]</span>
                     <span class="p">):</span>
+                        <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Caught errr code </span><span class="si">{</span><span class="n">error_code</span><span class="si">}</span><span class="s2">&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;_failed_systems_error_codes&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
                             <span class="n">error_code</span>
                         <span class="p">)</span>
                 <span class="k">except</span> <span class="ne">ValueError</span><span class="p">:</span>
+                    <span class="n">error_code</span> <span class="o">=</span> <span class="kc">None</span>
                     <span class="bp">self</span><span class="o">.</span><span class="n">verbose_print</span><span class="p">(</span>
                         <span class="s2">&quot;Failed to extract the error-code&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"># log failing args?</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">_log_failure</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="c1"># Check if we have exceeded the number of errors</span>
+                <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Check failed count </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;_failed_count&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2"> vs max </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;failed_systems_threshold&#39;</span><span class="p">]</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</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;_failed_count&quot;</span><span class="p">]</span>
                     <span class="o">&gt;</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;failed_systems_threshold&quot;</span><span class="p">]</span>
                 <span class="p">):</span>
+
+                    <span class="c1"># stop evolving systems</span>
+                    <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;stop_queue&#39;</span><span class="p">]</span>
+
+                    <span class="c1"># warn the user the first time we exceed failed_systems_threshold</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;_errors_exceeded&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="bp">self</span><span class="o">.</span><span class="n">_boxed</span><span class="p">(</span>
@@ -2465,21 +2614,7 @@
                         <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;_errors_exceeded&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
 
-                <span class="c1"># If not, write the failing systems to files unique to each process</span>
-                <span class="k">else</span><span class="p">:</span>
-                    <span class="c1"># Write arg lines to file</span>
-                    <span class="n">argstring</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">system_dict</span><span class="p">)</span>
-                    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">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;failed_systems&quot;</span><span class="p">,</span>
-                            <span class="s2">&quot;process_</span><span class="si">{}</span><span class="s2">.txt&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">process_ID</span><span class="p">),</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">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">argstring</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="n">f</span><span class="o">.</span><span class="n">close</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;binary_c output nothing - this is strange. If there is ensemble output being generated then this is fine.&quot;</span><span class="p">,</span>
@@ -2495,7 +2630,181 @@
         <span class="k">return</span> <span class="p">{</span>
             <span class="s1">&#39;metadata&#39;</span> <span class="p">:</span> <span class="p">{},</span>
             <span class="s1">&#39;ensemble&#39;</span> <span class="p">:</span> <span class="p">{}</span>
-        <span class="p">}</span></div>
+        <span class="p">}</span>
+
+    <span class="k">def</span> <span class="nf">_all_children_running</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">processes</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to test if all child processes are running.</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+        <span class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span class="n">processes</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">p</span><span class="o">.</span><span class="n">is_alive</span><span class="p">()</span> <span class="ow">is</span> <span class="kc">False</span> <span class="ow">and</span> \
+               <span class="n">p</span><span class="o">.</span><span class="n">exitcode</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">:</span>
+                <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Warning: process&quot;</span><span class="p">,</span><span class="n">p</span><span class="p">,</span><span class="s2">&quot;is no longer alive and hasn&#39;t returned good data.&quot;</span><span class="p">)</span>
+                <span class="bp">self</span><span class="o">.</span><span class="n">_log_failure</span><span class="p">(</span><span class="n">process</span><span class="o">=</span><span class="n">p</span><span class="p">,</span><span class="n">exitcode</span><span class="o">=</span><span class="n">p</span><span class="o">.</span><span class="n">exitcode</span><span class="p">)</span>
+                <span class="k">return</span> <span class="kc">False</span>
+        <span class="k">return</span> <span class="kc">True</span>
+
+    <span class="k">def</span> <span class="nf">_kill_child_processes</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">processes</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Function to kill all child processes.</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+<span class="c1">#        for p in processes:</span>
+<span class="c1">#            if p.is_alive():</span>
+<span class="c1">#                p.terminate()</span>
+        <span class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span class="n">processes</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">p</span><span class="o">.</span><span class="n">is_alive</span><span class="p">():</span>
+                <span class="n">p</span><span class="o">.</span><span class="n">kill</span><span class="p">()</span>
+
+    <span class="k">def</span> <span class="nf">_log_failure</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+                     <span class="n">system_dict</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+                     <span class="n">process</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+                     <span class="n">exitcode</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Log failing or crashed system to file in log_failed_systems_dir</span>
+<span class="sd">        &quot;&quot;&quot;</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="s1">&#39;log_failed_systems&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="kc">True</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="s1">&#39;log_failed_systems_dir&#39;</span><span class="p">]</span> <span class="o">!=</span> <span class="kc">None</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="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s1">&#39;log_failed_systems_dir&#39;</span><span class="p">]</span>
+            <span class="p">)</span>
+            <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span><span class="n">path</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="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">dir_ok</span><span class="p">(</span><span class="n">path</span><span class="p">):</span>
+                <span class="n">failed_systems_file</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="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">&quot;log_failed_systems_dir&quot;</span><span class="p">],</span>
+                    <span class="s2">&quot;process_</span><span class="si">{}</span><span class="s2">.txt&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">jobID</span><span class="p">()),</span>
+                <span class="p">)</span>
+                <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">open</span><span class="p">(</span>
+                        <span class="n">failed_systems_file</span><span class="p">,</span>
+                        <span class="s2">&quot;a&quot;</span><span class="p">,</span> <span class="c1"># append</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">f</span><span class="p">:</span>
+                    <span class="n">now</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="n">now</span> <span class="o">=</span> <span class="n">now</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s2">&quot;</span><span class="si">%d</span><span class="s2">/%m/%Y %H:%M:%S</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">)</span>
+                    <span class="k">if</span> <span class="n">system_dict</span><span class="p">:</span>
+                        <span class="n">binary_c_cmdline_string</span> <span class="o">=</span> \
+                            <span class="sa">f</span><span class="s2">&quot;system </span><span class="si">{</span><span class="n">system_number</span><span class="si">}</span><span class="s2"> at </span><span class="si">{</span><span class="n">now</span><span class="si">}</span><span class="s2"> &quot;</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">system_dict</span><span class="p">)</span> <span class="o">+</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span>
+                        <span class="n">f</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">binary_c_cmdline_string</span><span class="p">)</span>
+                    <span class="k">if</span> <span class="n">process</span><span class="p">:</span>
+                        <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;logged crashed process to </span><span class="si">{</span><span class="n">failed_systems_file</span><span class="si">}</span><span class="s2">&quot;</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="sa">f</span><span class="s2">&quot;Process </span><span class="si">{</span><span class="n">process</span><span class="si">}</span><span class="s2"> crashed at </span><span class="si">{</span><span class="n">now</span><span class="si">}</span><span class="s2"> with exit code </span><span class="si">{</span><span class="n">exitcode</span><span class="si">}</span><span class="s2">.&quot;</span><span class="p">)</span>
+        <span class="k">return</span>
+
+<div class="viewcode-block" id="Population.my_hostnames"><a class="viewcode-back" href="../../../grid.html#binarycpython.utils.grid.Population.my_hostnames">[docs]</a>    <span class="k">def</span> <span class="nf">my_hostnames</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">hostnameslist</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">hostnameslist</span> <span class="o">=</span> <span class="n">binarycpython</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">functions</span><span class="o">.</span><span class="n">hostnames</span><span class="p">()</span>
+        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">hostnameslist</span></div>
+
+<div class="viewcode-block" id="Population.expand_args_by_hostname"><a class="viewcode-back" href="../../../grid.html#binarycpython.utils.grid.Population.expand_args_by_hostname">[docs]</a>    <span class="k">def</span> <span class="nf">expand_args_by_hostname</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">cmdline_args</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Expand a set of arguments by scanning each of them</span>
+<span class="sd">        for host-specific dicts.</span>
+
+<span class="sd">        Given each arg, either as a string &quot;x=y&quot; or dict {x:y},</span>
+<span class="sd">        determine whether y is a dict and if so does one of the keys</span>
+<span class="sd">        match the current hostname or &quot;default&quot;, if so use the</span>
+<span class="sd">        corresponding value for the current machine.</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+        <span class="n">hostnameslist</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">my_hostnames</span><span class="p">()</span>
+        <span class="n">new_cmdline_args</span> <span class="o">=</span> <span class="kc">None</span>
+
+        <span class="c1"># loop over list of cmdline args</span>
+        <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">cmdline_args</span><span class="p">,</span><span class="nb">list</span><span class="p">):</span>
+            <span class="n">new_cmdline_args</span> <span class="o">=</span> <span class="p">[]</span>
+            <span class="k">for</span> <span class="n">cmdline_arg</span> <span class="ow">in</span> <span class="n">cmdline_args</span><span class="p">:</span>
+                <span class="n">new_arg</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_match_arg_to_host</span><span class="p">(</span><span class="n">arg</span><span class="o">=</span><span class="n">cmdline_arg</span><span class="p">)</span>
+                <span class="n">new_cmdline_args</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">new_arg</span><span class="p">)</span>
+
+        <span class="c1"># loop over a dict of cmdline args</span>
+        <span class="k">elif</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">cmdline_args</span><span class="p">,</span><span class="nb">dict</span><span class="p">):</span>
+            <span class="n">new_cmdline_args</span> <span class="o">=</span> <span class="p">{}</span>
+            <span class="k">for</span> <span class="n">parameter</span><span class="p">,</span><span class="n">value</span> <span class="ow">in</span> <span class="n">cmdline_args</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
+                <span class="n">new_arg</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_match_arg_to_host</span><span class="p">(</span><span class="n">arg</span><span class="o">=</span><span class="p">{</span><span class="n">parameter</span><span class="p">:</span><span class="n">value</span><span class="p">})</span>
+                <span class="n">new_cmdline_args</span><span class="p">[</span><span class="n">parameter</span><span class="p">]</span> <span class="o">=</span> <span class="n">new_arg</span>
+
+        <span class="k">return</span> <span class="n">new_cmdline_args</span></div>
+
+    <span class="k">def</span> <span class="nf">_match_arg_to_host</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+                           <span class="n">arg</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+                           <span class="n">hostnameslist</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+                           <span class="n">vb</span><span class="o">=</span><span class="kc">False</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">        Given an arg, either as a string &quot;x=y&quot; or dict {x:y},</span>
+<span class="sd">        determine whether y is a dict and if so does one of the keys</span>
+<span class="sd">        match the current hostname or &quot;default&quot;, if so use the</span>
+<span class="sd">        corresponding value. If not, return the original arg&#39;s value.</span>
+<span class="sd">        &quot;&quot;&quot;</span>
+        <span class="k">if</span> <span class="n">arg</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+            <span class="k">return</span> <span class="kc">None</span>
+
+        <span class="k">if</span> <span class="n">hostnameslist</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+            <span class="n">hostnameslist</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">my_hostnames</span><span class="p">()</span>
+
+        <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">arg</span><span class="p">,</span><span class="nb">dict</span><span class="p">):</span>
+            <span class="c1"># {parameter: value} dict arg</span>
+            <span class="n">parameter</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">arg</span><span class="o">.</span><span class="n">keys</span><span class="p">())[</span><span class="mi">0</span><span class="p">]</span>
+            <span class="n">value</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">arg</span><span class="o">.</span><span class="n">values</span><span class="p">())[</span><span class="mi">0</span><span class="p">]</span>
+            <span class="n">argtype</span> <span class="o">=</span> <span class="s1">&#39;dict&#39;</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="c1"># scalar x=y arg</span>
+            <span class="n">split</span> <span class="o">=</span> <span class="n">arg</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;=&quot;</span><span class="p">)</span>
+            <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">split</span><span class="p">)</span><span class="o">==</span><span class="mi">2</span><span class="p">:</span>
+                <span class="n">parameter</span> <span class="o">=</span> <span class="n">split</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
+                <span class="n">value</span> <span class="o">=</span> <span class="n">split</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
+                <span class="n">argtype</span> <span class="o">=</span> <span class="s1">&#39;list&#39;</span>
+            <span class="k">else</span><span class="p">:</span>
+                <span class="n">parameter</span> <span class="o">=</span> <span class="kc">None</span>
+                <span class="n">value</span> <span class="o">=</span> <span class="kc">None</span>
+                <span class="n">argtype</span> <span class="o">=</span> <span class="kc">None</span>
+
+        <span class="k">if</span> <span class="n">parameter</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">vb</span><span class="p">:</span>
+                <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;_match_arg_to_host: </span><span class="si">{</span><span class="n">parameter</span><span class="si">}</span><span class="s2"> = </span><span class="si">{</span><span class="n">value</span><span class="si">}</span><span class="s2"> (argtype = </span><span class="si">{</span><span class="n">argtype</span><span class="si">}</span><span class="s2">)&quot;</span><span class="p">)</span>
+            <span class="k">try</span><span class="p">:</span>
+                <span class="k">if</span> <span class="n">vb</span><span class="p">:</span>
+                    <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Try to eval&quot;</span><span class="p">,</span><span class="n">value</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="nb">str</span><span class="p">):</span>
+                    <span class="c1"># string : eval it</span>
+                    <span class="n">_x</span> <span class="o">=</span> <span class="nb">eval</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
+                <span class="k">else</span><span class="p">:</span>
+                    <span class="n">_x</span> <span class="o">=</span> <span class="n">value</span>
+
+                <span class="c1"># if dict, match to hostnames or &#39;default&#39;</span>
+                <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">_x</span><span class="p">,</span><span class="nb">dict</span><span class="p">):</span>
+                    <span class="n">_match</span> <span class="o">=</span> <span class="kc">None</span>
+                    <span class="k">for</span> <span class="n">host</span> <span class="ow">in</span> <span class="n">hostnameslist</span><span class="p">:</span>
+                        <span class="k">if</span> <span class="n">vb</span><span class="p">:</span>
+                            <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;check host=</span><span class="si">{</span><span class="n">host</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+                        <span class="n">_match</span> <span class="o">=</span> <span class="n">_x</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">host</span><span class="p">,</span><span class="kc">None</span><span class="p">)</span>
+                        <span class="k">if</span> <span class="n">_match</span><span class="p">:</span>
+                            <span class="k">if</span> <span class="n">vb</span><span class="p">:</span>
+                                <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Parameter </span><span class="si">{</span><span class="n">parameter</span><span class="si">}</span><span class="s2"> matches a value set by host=</span><span class="si">{</span><span class="n">host</span><span class="si">}</span><span class="s2"> -&gt; </span><span class="si">{</span><span class="n">_match</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+                            <span class="k">break</span>
+
+                    <span class="c1"># no match? try &#39;default&#39;</span>
+                    <span class="k">if</span> <span class="ow">not</span> <span class="n">_match</span><span class="p">:</span>
+                        <span class="n">_match</span> <span class="o">=</span> <span class="n">_x</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;default&#39;</span><span class="p">,</span><span class="kc">None</span><span class="p">)</span>
+
+                    <span class="c1"># no match? error</span>
+                    <span class="k">if</span> <span class="ow">not</span> <span class="n">_match</span><span class="p">:</span>
+                        <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Parameter </span><span class="si">{</span><span class="n">parameter</span><span class="si">}</span><span class="s2"> is a dict </span><span class="si">{</span><span class="n">value</span><span class="si">}</span><span class="s2"> none of the keys or which matches our hostname (</span><span class="si">{</span><span class="n">hostnameslist</span><span class="si">}</span><span class="s2">) or &#39;default&#39;. Please update this parameter.&quot;</span><span class="p">)</span>
+                        <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
+                    <span class="k">else</span><span class="p">:</span>
+                        <span class="k">if</span> <span class="n">vb</span><span class="p">:</span>
+                            <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Parameter </span><span class="si">{</span><span class="n">parameter</span><span class="si">}</span><span class="s2"> set to value </span><span class="si">{</span><span class="n">_match</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+                        <span class="n">value</span> <span class="o">=</span> <span class="n">_match</span>
+            <span class="k">except</span><span class="p">:</span>
+                <span class="k">pass</span>
+
+            <span class="k">if</span> <span class="n">argtype</span> <span class="o">==</span> <span class="s1">&#39;list&#39;</span><span class="p">:</span>
+                <span class="c1"># return x=y type argument</span>
+                <span class="n">new_arg</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">parameter</span><span class="si">}</span><span class="s2">=</span><span class="si">{</span><span class="n">value</span><span class="si">}</span><span class="s2">&quot;</span>
+            <span class="k">else</span><span class="p">:</span>
+                <span class="n">new_arg</span> <span class="o">=</span> <span class="n">value</span>
+
+        <span class="k">if</span> <span class="n">vb</span><span class="p">:</span>
+            <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;return arg&quot;</span><span class="p">,</span><span class="n">new_arg</span><span class="p">,</span><span class="s2">&quot;of type&quot;</span><span class="p">,</span><span class="nb">type</span><span class="p">(</span><span class="n">value</span><span class="p">))</span>
+        <span class="k">return</span> <span class="n">new_arg</span></div>
 </pre></div>
 
            </div>
@@ -2513,9 +2822,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 397f6601c..8bd39e1ec 100644
--- a/docs/build/html/_modules/binarycpython/utils/plot_functions.html
+++ b/docs/build/html/_modules/binarycpython/utils/plot_functions.html
@@ -715,9 +715,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 5aadeab91..dced20e15 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/HPC.html
@@ -825,9 +825,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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
index 092b28ec1..6672dc37e 100644
--- 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
@@ -1318,9 +1318,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
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 72654f29a..6dcd18ab1 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/analytics.html
@@ -208,9 +208,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 b6be39630..48f30ec7e 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/cache.html
@@ -454,9 +454,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 9d93a620f..3a0a6c928 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/condor.html
@@ -655,9 +655,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 65a6b6504..7f909855c 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/dataIO.html
@@ -902,9 +902,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 a4427a202..4ee7e4f93 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
@@ -2403,9 +2403,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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
index 77ec01cf1..90a916002 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/grid_logging.html
@@ -555,9 +555,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
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 cc76d9d6c..6a113f831 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
@@ -130,7 +130,7 @@
             <span class="c1">##########################</span>
             <span class="c1"># general (or unordered..)</span>
             <span class="c1">##########################</span>
-            <span class="s2">&quot;num_cores&quot;</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>  <span class="c1"># total number of cores used to evolve the population</span>
+            <span class="s2">&quot;num_cores&quot;</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>  <span class="c1"># total number of cores used to evolve the population (None -&gt; use all logical cores)</span>
             <span class="s2">&quot;num_cores_available&quot;</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>  <span class="c1"># set automatically, not by the user</span>
             <span class="s2">&quot;parse_function&quot;</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span>  <span class="c1"># Function to parse the output with.</span>
             <span class="s2">&quot;multiplicity_fraction_function&quot;</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># Which multiplicity fraction function to use. 0: None, 1: Arenou 2010, 2: Rhagavan 2010, 3: Moe and di Stefano 2017</span>
@@ -237,6 +237,8 @@
             <span class="s2">&quot;_failed_prob&quot;</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># Summed probability of failed systems</span>
             <span class="s2">&quot;failed_systems_threshold&quot;</span><span class="p">:</span> <span class="mi">20</span><span class="p">,</span>  <span class="c1"># Maximum failed systems per process allowed to fail before the process stops logging the failing systems.</span>
             <span class="s2">&quot;_failed_systems_error_codes&quot;</span><span class="p">:</span> <span class="p">[],</span>  <span class="c1"># List to store the unique error codes</span>
+            <span class="s2">&quot;log_failed_systems&quot;</span> <span class="p">:</span> <span class="kc">False</span><span class="p">,</span> <span class="c1"># Flag to enable logging of failed systems...</span>
+            <span class="s2">&quot;log_failed_systems_dir&quot;</span> <span class="p">:</span> <span class="kc">None</span><span class="p">,</span> <span class="c1"># log them to this dir</span>
             <span class="s2">&quot;_population_id&quot;</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># Random id of this grid/population run, Unique code for the population. Should be set only once by the controller process.</span>
             <span class="s2">&quot;_total_mass_run&quot;</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># To count the total mass that thread/process has ran</span>
             <span class="s2">&quot;_total_probability_weighted_mass_run&quot;</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>  <span class="c1"># To count the total mass * probability for each system that thread/process has ran</span>
@@ -717,9 +719,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 747bc9478..281d744d5 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/gridcode.html
@@ -1236,9 +1236,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 8cf18bfd5..6c50ac08c 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/metadata.html
@@ -229,9 +229,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 c99f085bd..c5a197732 100644
--- a/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html
+++ b/docs/build/html/_modules/binarycpython/utils/population_extensions/slurm.html
@@ -553,9 +553,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 941ae1d17..0b3a5ffa1 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
@@ -776,9 +776,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 4ca4cd979..b64bad940 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
@@ -522,9 +522,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 5987941d5..c107576dd 100644
--- a/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html
+++ b/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html
@@ -206,9 +206,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 3d8da4100..5725844c3 100644
--- a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html
+++ b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html
@@ -472,9 +472,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/_modules/index.html b/docs/build/html/_modules/index.html
index b43b3f1a8..4a44ae047 100644
--- a/docs/build/html/_modules/index.html
+++ b/docs/build/html/_modules/index.html
@@ -110,9 +110,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 9d00a7aca..463c9af01 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**: 6118:20220617:8463fa650	**Built on**: Jun 17 2022 23:20:34
+	**binary_c git branch**: clean_master	**binary_c git revision**: 6302:20220825:04c096f7a	**Built on**: Aug 25 2022 11:34:43
 
 
 Section: stars
@@ -250,11 +250,6 @@ Section: stars
 | **Parameter input type**: True|False
 | **Default value**: False
 
-| **Parameter**: custom_timeout_time
-| **Description**: Custom timeout time. Requires compilation with DAVID_CUSTOM_TIMEOUT
-| **Parameter input type**: Float
-| **Default value**: 100
-
 | **Parameter**: evolution_splitting
 | **Description**: If True, turn on splitting of an evolutionary run if splitpoint (e.g. supernova) occurs.
 | **Parameter input type**: True|False
@@ -293,10 +288,10 @@ Section: stars
 | **Macros**: ['OPACITY_ALGORITHM_PACZYNSKI = 0', 'OPACITY_ALGORITHM_FERGUSON_OPAL = 1', 'OPACITY_ALGORITHM_STARS = 2']
 
 | **Parameter**: wind_mass_loss
-| **Description**: Defines the algorithm used for stellar winds. 0 = none, 1 = Hurley et al. (2002), 2 = Schneider (2018), 3 = Schneider + Sander and Wink (2020) for helium stars, 4 = Schneider + Hurley for LBV mass loss
+| **Description**: Defines the algorithm used for stellar winds. 0 = none, 1 = Hurley et al. (2002), 2 = Schneider (2018).
 | **Parameter input type**: Unsigned integer
 | **Default value**: 3
-| **Macros**: ['WIND_ALGORITHM_NONE = 0', 'WIND_ALGORITHM_HURLEY2002 = 1', 'WIND_ALGORITHM_SCHNEIDER2018 = 2', 'WIND_ALGORITHM_BINARY_C_2020 = 3', 'WIND_ALGORITHM_HENDRIKS_2022 = 4']
+| **Macros**: ['WIND_ALGORITHM_NONE = 0', 'WIND_ALGORITHM_HURLEY2002 = 1', 'WIND_ALGORITHM_SCHNEIDER2018 = 2', 'WIND_ALGORITHM_BINARY_C_2020 = 3', 'WIND_ALGORITHM_BINARY_C_2022 = 4']
 | **Extra**: 0
 
 | **Parameter**: gbwind
@@ -478,37 +473,6 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['BH_HURLEY2002 = 0', 'BH_BELCZYNSKI = 1', 'BH_SPERA2015 = 2', 'BH_FRYER12_DELAYED = 3', 'BH_FRYER12_RAPID = 4', 'BH_FRYER12_STARTRACK = 5']
 
-| **Parameter**: PPISN_prescription
-| **Description**: (Pulsational) Pair-Instability Supernova prescription: Relates initial helium core mass of star to whether the star undergoes PPISN or PISN. Requires PPISN flag to be True (see binary_c_parameters.h). 0=no ppisn, 1=Farmer et al 2019. 2=Hendriks et al 21 (in prep), which is different fit based on the same data as Farmer et al 2019
-| **Parameter input type**: Integer
-| **Default value**: 1
-| **Macros**: ['PPISN_NONE = 0', 'PPISN_FARMER19 = 1', 'PPISN_NEW_FIT_21 = 2']
-| **Extra**: Ignore
-
-| **Parameter**: PPISN_additional_massloss
-| **Description**: (Pulsational) Pair-Instability Supernova additional massloss (on top of the result of the prescription). Value currently is not required to be positive
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: PPISN_core_mass_range_shift
-| **Description**: (Pulsational) Pair-Instability Supernova CO core mass range shift: Value by which we shift the range of CO core mass values that undergo PPISN. This is taken into account in the fit that calculates the mass removal. Negative number is shifting the range to lower masses, positive to higher masses.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: PPISN_massloss_multiplier
-| **Description**: (Pulsational) Pair-Instability Supernova CO massloss multiplier: Value by which the (P)PISN massloss is multiplied. Currently only works with the new prescription. THe additional mass loss is not affected multiplied by this.
-| **Parameter input type**: Float
-| **Default value**: 1
-| **Extra**: Ignore
-
-| **Parameter**: use_LWN_fallback
-| **Description**: Flag whether to use the Nazehdin-Lovegrove-Woosley hydrogen envelope ejection at failed supernova.
-| **Parameter input type**: Integer
-| **Default value**: 1
-| **Extra**: Ignore
-
 | **Parameter**: sn_kick_distribution_II
 | **Description**: Set the distribution of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Integer
@@ -536,7 +500,7 @@ Section: stars
 | **Parameter**: sn_kick_distribution_GRB_COLLAPSAR
 | **Description**: Set the distribution of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Integer
-| **Default value**: 0
+| **Default value**: 1
 | **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
 
 | **Parameter**: sn_kick_distribution_TZ
@@ -575,24 +539,6 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
 
-| **Parameter**: sn_kick_distribution_PPISN
-| **Description**: Set the distribution of speeds applied to PPISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
-
-| **Parameter**: sn_kick_distribution_PISN
-| **Description**: Set the distribution of speeds applied to PISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
-
-| **Parameter**: sn_kick_distribution_PHDIS
-| **Description**: Set the distribution of speeds applied to PHDIS supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
-
 | **Parameter**: sn_kick_dispersion_II
 | **Description**: Set the dispersion of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Float
@@ -616,7 +562,7 @@ Section: stars
 | **Parameter**: sn_kick_dispersion_GRB_COLLAPSAR
 | **Description**: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Float
-| **Default value**: 0
+| **Default value**: 190
 
 | **Parameter**: sn_kick_dispersion_TZ
 | **Description**: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes at the death of a Thorne-Zytkow object. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
@@ -648,21 +594,6 @@ Section: stars
 | **Parameter input type**: Float
 | **Default value**: 0
 
-| **Parameter**: sn_kick_dispersion_PPISN
-| **Description**: Set the dispersion of speeds applied to the survivor of a PPISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Float
-| **Default value**: 0
-
-| **Parameter**: sn_kick_dispersion_PISN
-| **Description**: Set the dispersion of speeds applied to the survivor of a PISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Float
-| **Default value**: 0
-
-| **Parameter**: sn_kick_dispersion_PHDIS
-| **Description**: Set the dispersion of speeds applied to the survivor of a PHDIS supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Float
-| **Default value**: 0
-
 | **Parameter**: sn_kick_companion_IA_He
 | **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the, kick on the companion when a Ia He supernova occurs. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
 | **Parameter input type**: Float
@@ -783,24 +714,6 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
 
-| **Parameter**: sn_kick_companion_PPISN
-| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PPISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
-
-| **Parameter**: sn_kick_companion_PISN
-| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
-
-| **Parameter**: sn_kick_companion_PHDIS
-| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PHDIS supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
-
 | **Parameter**: wd_sigma
 | **Description**: Set the speed at which white dwarfs are kicked when they form, in km/s. Default is zero (i.e. no kick). Requires WD_KICKS.
 | **Parameter input type**: Float
@@ -861,22 +774,22 @@ Section: stars
 | **Parameter**: delta_mcmin
 | **Description**: A parameter to reduce the minimum core mass for third dredge up to occur on the TPAGB. As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lambda_min
 | **Description**: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min>0 implies that, once Mc>Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars. See also lambda_multiplier.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lambda_multiplier
 | **Description**: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min>0 implies that, once Mc>Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: minimum_envelope_mass_for_third_dredgeup
 | **Description**: The minimum envelope mass for third dredge up on the TPAGB. Early, solar metallicity models by Straniero et al suggested 0.5Msun is typical. However, circumstantial evidence (Izzard et al 2009) as well as newer models by Stancliffe and Karakas suggest that at low metallicity a value nearer zero is more appropriate.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0.5
 
 | **Parameter**: mass_of_pmz
 | **Description**: The mass in the partial mixing zone of a TPAGB star, using the Karakas 2012 tables. Ask Carlo Abate for more details, or see the series of papers Abate et al 2012, 2013, 2014. Requires NUCSYN and USE_TABULAR_INTERSHELL_ABUNDANCES_KARAKAS_2012.
@@ -886,12 +799,12 @@ Section: stars
 | **Parameter**: c13_eff
 | **Description**: The "efficiency" of partial mixing in a TPAGB star intershell region, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: mc13_pocket_multiplier
 | **Description**: Multiplies the mass in the partial mixing zone of a TPAGB star, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: tides_convective_damping
 | **Description**: Tidal convective damping algorithm. 0=TIDES_HURLEY2002 Zahn 197x timescales + Hut, as in Hurley et al (2002), 1 = TIDES_ZAHN1989: Zahn 1989 lambdas + Hut.
@@ -913,7 +826,7 @@ Section: stars
 | **Parameter**: hbbtfac
 | **Description**: A parameter to modulate the temperature at the base of the hot-bottom burning zone in TPAGB stars. (Works only if NUCSYN is defined)
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: wind_multiplier_%d
 | **Description**: Wind multiplier for the stellar type specified by the intger %d. By default these are all 1.0.
@@ -980,12 +893,24 @@ Section: stars
 | **Description**: Algorithm used to calculate the amount of mass retained during a nova explosion. 0=use nova_retention_fraction. (other methods pending)
 | **Parameter input type**: Integer
 | **Default value**: 0
-| **Macros**: ['NOVA_RETENTION_ALGORITHM_CONSTANT = 0', 'NOVA_RETENTION_ALGORITHM_CLAEYS2014 = 1', 'NOVA_RETENTION_ALGORITHM_HILLMAN2015 = 2']
+| **Macros**: ['NOVA_RETENTION_ALGORITHM_CONSTANT = 0', 'NOVA_RETENTION_ALGORITHM_CLAEYS2014 = 1', 'NOVA_RETENTION_ALGORITHM_HILLMAN2015 = 2', 'NOVA_RETENTION_ALGORITHM_WANGWU = 3']
+
+| **Parameter**: nova_yield_CO_algorithm
+| **Description**: Algorithm used to calculate the yields of COWD novae. Current options: NOVA_YIELD_CO_ALGOTHIM_JOSE_HERNANZ_1998 (0).
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['NOVA_YIELD_CO_ALGORITHM_JOSE_HERNANZ_1998 = 0']
+
+| **Parameter**: nova_yield_ONe_algorithm
+| **Description**: Algorithm used to calculate the yields of ONeWD novae. Current options: NOVA_YIELD_ONe_ALGOTHIM_JOSE_HERNANZ_1998 (0), NOVA_YIELD_ONe_ALGORITHM_JOSE2022 (1).
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['NOVA_YIELD_ONe_ALGORITHM_JOSE_HERNANZ_1998 = 0', 'NOVA_YIELD_ONe_ALGORITHM_JOSE_2022 = 1']
 
 | **Parameter**: MINT_metallicity
 | **Description**: This sets the metallicity for MINT. It is ignored if set to -1.0, the default, in which case the normal metallicity parameter is used.
 | **Parameter input type**: Float
-| **Default value**: -1
+| **Default value**: NULL
 
 | **Parameter**: gaia_Teff_binwidth
 | **Description**: log10(Effective temperature) bin width used to make Gaia-like HRDs
@@ -1012,25 +937,25 @@ Section: stars
 | **Parameter**: AGB_core_algorithm
 | **Description**: Algorithm to use for calculating AGB core masses. 0=Hurley et al. 2002 if no NUCSYN, Karakas 2002 if NUCSYN is defined; 1=Hurley et al. 2002 (overshooting models); 1=Karakas 2002 (non-overshooting models).
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_CORE_ALGORITHM_DEFAULT = 0', 'AGB_CORE_ALGORITHM_HURLEY = 1', 'AGB_CORE_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_radius_algorithm
 | **Description**: Algorithm to use for calculating radii on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_RADIUS_ALGORITHM_DEFAULT = 0', 'AGB_RADIUS_ALGORITHM_HURLEY = 1', 'AGB_RADIUS_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_luminosity_algorithm
 | **Description**: Algorithm to use for calculating luminosities on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_LUMINOSITY_ALGORITHM_DEFAULT = 0', 'AGB_LUMINOSITY_ALGORITHM_HURLEY = 1', 'AGB_LUMINOSITY_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_3dup_algorithm
 | **Description**: Algorithm to use for calculating third dredge up efficiency on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_THIRD_DREDGE_UP_ALGORITHM_DEFAULT = 0', 'AGB_THIRD_DREDGE_UP_ALGORITHM_HURLEY = 1', 'AGB_THIRD_DREDGE_UP_ALGORITHM_KARAKAS = 2', 'AGB_THIRD_DREDGE_UP_ALGORITHM_STANCLIFFE = 3']
 
 | **Parameter**: overspin_algorithm
@@ -1170,6 +1095,16 @@ Section: stars
 | **Parameter input type**: True|False
 | **Default value**: False
 
+| **Parameter**: adjust_structure_from_mass_changes
+| **Description**: If True, adjust L and R based on changes in M on the previous thermal timescale. (Currently experimental hence defaults to FALSE)
+| **Parameter input type**: True|False
+| **Default value**: NULL
+
+| **Parameter**: save_mass_history_n_thermal
+| **Description**: Number of thermal timesteps of mass change history to be saved (4).
+| **Parameter input type**: Float
+| **Default value**: NULL
+
 | **Parameter**: degenerate_core_merger_nucsyn
 | **Description**: If TRUE, assume that in a degnerate core merger, energy is generated from nucleosynthesis of the whole core, and that this can disrupt the core. The BSE algorithm (Hurley et al. 2002) assumes this to be TRUE, but binary_c assumes FALSE by default. (FALSE)
 | **Parameter input type**: True|False
@@ -1183,7 +1118,7 @@ Section: stars
 | **Parameter**: degenerate_core_merger_dredgeup_fraction
 | **Description**: If non-zero, mix this fraction of the degenerate core during a merger.(0.0).
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 Section: binary
 ---------------
@@ -1522,23 +1457,45 @@ Section: binary
 | **Description**: Algorithm to be used when merging two white dwarfs. 0 = Hurley et al. (2002), 1 = Perets+ (2019), 2 = Chen+ (2016, todo) 
 | **Parameter input type**: Integer
 | **Default value**: 0
-| **Macros**: ['WDWD_MERGER_ALGORITHM_BSE = 0', 'WDWD_MERGER_ALGORITHM_PERETS2019 = 1', 'WDWD_MERGER_ALGORITHM_CHEN2016 = 2']
+| **Macros**: ['WDWD_MERGER_ALGORITHM_BSE = 0', 'WDWD_MERGER_ALGORITHM_PERETS2019 = 1', 'WDWD_MERGER_ALGORITHM_CHEN2016 = 2', 'WDWD_MERGER_ALGORITHM_SATO2016 = 3', 'WDWD_MERGER_ALGORITHM_HYBRID_PERETS2019_SATO2016 = 4', 'WDWD_MERGER_ALGORITHM_RUITER2013 = 5']
+
+| **Parameter**: eta_violent_WDWD_merger
+| **Description**: energy factor used to calculate q_crit for WDWD mergers that are "violent". Default = 0.75 (Ruiter 2013).
+| **Parameter input type**: Float
+| **Default value**: 0.75
+
+| **Parameter**: COWD_COWD_explode_above_mass
+| **Description**: COWD-COWD mergers above this mass trigger a SNIa.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: HeWD_COWD_explode_above_mass
+| **Description**: HeWD-COWD mergers above this mass trigger a SNIa.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: COWD_to_ONeWD_accretion_rate
+| **Description**: Accretion rate above which COWDs are converted to ONeWDs, in Msun/yr. A typical value is 2.05e-6 (Wang et al. 2017).  Ignored if 0 (default 0).
+| **Parameter input type**: Float
+| **Default value**: 2.05e-06
 
 | **Parameter**: type_Ia_MCh_supernova_algorithm
 | **Description**: Algorithm to be used when calculating type Ia yields from Chandrasekhar-mass exploders. 0 = DD7 (Iwamoto 1999), 1 = Seitenzahl 2013 3D hydro yields (you must also set Seitenzahl2013_model) 
 | **Parameter input type**: Integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2', 'TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3']
 
 | **Parameter**: Seitenzahl2013_model
 | **Description**: Which of Seitenzahl et al. 2013's models to use? One of N1,N3,N5,N10,N20,N40,N100L,N100,N100H,N150,N200,N300C,N1600,N1600C,N100_Z0.5,N100_Z0.1,N100_Z0.01 (defaults to N100).
 | **Parameter input type**: String
-| **Default value**: NULL
+| **Default value**: N100
 | **Extra**: N1
 
 | **Parameter**: type_Ia_sub_MCh_supernova_algorithm
 | **Description**: Algorithm to be used when calculating type Ia yields from sub-Chandrasekhar-mass exploders. (Currently unused.)
 | **Parameter input type**: Integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2', 'TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3']
 
 | **Parameter**: max_HeWD_mass
 | **Description**: The maximum mass a HeWD can have before it ignites helium (0.7).
@@ -1546,9 +1503,31 @@ Section: binary
 | **Default value**: 0.7
 
 | **Parameter**: merger_mass_loss_fraction
-| **Description**: Fraction of the total mass which is lost when stars merge.
+| **Description**: Fraction of the total mass which is lost when stars merge. Note: if merger_mass_loss_fraction_by_stellar_type_<n> is set, where <n> is the stellar type, it is used in place of the value of merger_mass_loss_fraction. Can be a positive number, zero, or an algorithm from: MERGER_MASS_LOSS_FRACTION_GLEBBEEK_2013.
 | **Parameter input type**: Float
+| **Default value**: 0.1
+| **Macros**: ['MERGER_MASS_LOSS_FRACTION_NONE = 0', 'MERGER_MASS_LOSS_FRACTION_GLEBBEEK2013 = -1', 'MERGER_MASS_LOSS_FRACTION_UNUSED = 666666']
+
+| **Parameter**: merger_mass_loss_fraction_nondegenerate
+| **Description**: Equivalent to setting the merger_mass_loss_fraction_by_stellar_type for all nuclear-burning, non-degenerate stellar types (including low-mass main-sequence stars). Note: you should not combine this with attempts to set the mass loss fractions individually.
+| **Parameter input type**: *
+| **Default value**: NULL
+
+| **Parameter**: merger_mass_loss_fraction_degenerate
+| **Description**: Equivalent to setting the merger_mass_loss_fraction_by_stellar_type for all (compact) degenerate (i.e. WD, NS) stellar types. Note: you should not combine this with attempts to set the mass loss fractions individually.
+| **Parameter input type**: *
+| **Default value**: NULL
+
+| **Parameter**: merger_mass_loss_fraction_by_stellar_type_%d
+| **Description**: Fraction of the total mass which is lost when stars merge to stellar type <n>.
+| **Parameter input type**: Float(scanf)
+| **Default value**: NULL
+
+| **Parameter**: transient_method
+| **Description**: Choose the method used to model transients. Options: TRANSIENT_METHOD_NONE, TRANSIENT_METHOD_IVANOVA2013
+| **Parameter input type**: Integer
 | **Default value**: 0
+| **Macros**: ['TRANSIENT_METHOD_NONE = 0', 'TRANSIENT_METHOD_IVANOVA2013 = 1', 'TRANSIENT_METHOD_VILLAR2017 = 2']
 
 | **Parameter**: merger_angular_momentum_factor
 | **Description**: When two stars merge the resulting single star retains a fraction of the total system angular momentum (or the critical spin angular momentum, if it is smaller) multiplied by this factor.
@@ -1586,170 +1565,195 @@ Section: binary
 | **Parameter input type**: True|False
 | **Default value**: False
 
+| **Parameter**: qcrit_nuclear_burning
+| **Description**: Set qcrit, the critical mass ratio for stable mass transfer, for all donors irrespective of donor or accretor stellar type.
+| **Parameter input type**: *
+| **Default value**: NULL
+
+| **Parameter**: qcrit_QWD
+| **Description**: Set qcrit, the critical mass ratio for stable mass transfer, for all WD donors irrespective of the accretor stellar type.
+| **Parameter input type**: *
+| **Default value**: NULL
+
 | **Parameter**: qcrit_LMMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for low-mass main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.6944
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_MS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.6
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HG
 | **Description**: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_GB
 | **Description**: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_CHeB
 | **Description**: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_EAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_TPAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeHG
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.78125
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_COWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_ONeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_NS
 | **Description**: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_BH
 | **Description**: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_LMMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_MS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HG
 | **Description**: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4.7619
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_GB
 | **Description**: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_CHeB
 | **Description**: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_EAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_TPAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeHG
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4.7619
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_COWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_ONeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_NS
 | **Description**: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_BH
 | **Description**: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: mass_for_Hestar_Ia_upper
 | **Description**: Only helium stars below this mass can explode as SNIa. Default is zero, i.e. it never happens. See also mass_for_Hestar_Ia_lower.
@@ -1775,13 +1779,13 @@ Section: binary
 | **Description**: Use this to choose which common envelope prescription you should use. 0=Hurley et al 2002 (based on the Paczyński energy model) or 1=Nelemans and Tout (angular momentum model). See also alpha_ce, comenv_ms_accretion_mass, comenv_ms_accretion_fraction, comenv_ns_accretion_fraction, comenv_ns_accretion_mass, nelemans_gamma, nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs, lambda_ce, lambda_ionisation.
 | **Parameter input type**: Integer
 | **Default value**: 0
-| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2']
+| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2', 'COMENV_GE2022 = 3']
 
 | **Parameter**: comenv_prescription%d
 | **Description**: Use this to choose which common envelope prescription you should use. 0=Hurley et al 2002 (based on the Paczyński energy model) or 1=Nelemans and Tout (angular momentum model). See also alpha_ce, comenv_ms_accretion_mass, comenv_ms_accretion_fraction, comenv_ns_accretion_fraction, comenv_ns_accretion_mass, nelemans_gamma, nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs, lambda_ce, lambda_ionisation.
 | **Parameter input type**: Int(scanf)
 | **Default value**: NULL
-| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2']
+| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2', 'COMENV_GE2022 = 3']
 
 | **Parameter**: comenv_ejection_spin_method
 | **Description**: When a common envelope is ejected, we need to decide how fast the stars are left spinning. COMENV_EJECTION_SPIN_METHOD_DO_NOTHING (0) is the default, this just leaves the stars/stellar cores spinning with the same spin rate (omega = angular velocity) with which they entered the common envelope phase. COMENV_EJECTION_SPIN_METHOD_SYCHRONIZE instead tidally synchronizes the stars with their new orbital angular velocity.
@@ -1851,6 +1855,11 @@ Section: binary
 | **Parameter input type**: Float
 | **Default value**: 1e-05
 
+| **Parameter**: dedmRLOF
+| **Description**: de/dM during RLOF (defualt 0.0)
+| **Parameter input type**: Float
+| **Default value**: 0
+
 | **Parameter**: nelemans_gamma
 | **Description**: Set the fraction of the orbital specific angular momentum that is used to eject the common envelope according to the Nelemans and Tout prescription. See also nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs.
 | **Parameter input type**: Float
@@ -2052,6 +2061,17 @@ Section: binary
 | **Parameter input type**: Float
 | **Default value**: NULL
 
+| **Parameter**: unstable_RLOF_can_trigger_SNIa
+| **Description**: If true, allow unstable (dynamical) RLOF to trigger a sub-MCh SNIa. (False)
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: triggered_SNIa_algorithm
+| **Description**: Algorithm to use for triggered SNeIa
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2', 'TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3']
+
 | **Parameter**: minimum_separation_for_instant_RLOF
 | **Description**: If True, instead of evolving the system just report the minimum separation (on the zero-age main sequence) that would lead to instant RLOF. Used by binary_grid. See also minimum_orbital_period_for_instant_RLOF and maximum_mass_ratio_for_instant_RLOF.
 | **Parameter input type**: True|False
@@ -2079,8 +2099,18 @@ Section: binary
 | **Default value**: 0
 | **Macros**: ['RLOF_INTERPOLATION_BINARY_C = 0', 'RLOF_INTERPOLATION_BSE = 1']
 
-| **Parameter**: nova_retention_fraction
-| **Description**: The mass accreted during a nova as fraction of mass transferred
+| **Parameter**: He_nova_ELDs
+| **Description**: Enable edge-lit detonations from WDs that have He novae. (Default: False, i.e. off.)
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: nova_retention_fraction_H
+| **Description**: The mass accreted during a hydrogen nova as fraction of mass transferred.
+| **Parameter input type**: Float
+| **Default value**: 0.001
+
+| **Parameter**: nova_retention_fraction_He
+| **Description**: The mass accreted during a helium nova as fraction of mass transferred.
 | **Parameter input type**: Float
 | **Default value**: 0.001
 
@@ -2090,41 +2120,46 @@ Section: binary
 | **Default value**: 0
 | **Macros**: ['BETA_REVERSE_NOVAE_GEOMETRY = -1']
 
+| **Parameter**: WD_accretion_rate_algorithms
+| **Description**: Wrapper to set all WD accretion rates in one go (see WD_accretion_rate_*).
+| **Parameter input type**: *
+| **Default value**: NULL
+
 | **Parameter**: WD_accretion_rate_novae_upper_limit_hydrogen_donor
 | **Description**: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is hydrogen rich: above this rate the mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_novae_upper_limit_helium_donor
 | **Description**: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is helium rich: above this rate the mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_novae_upper_limit_other_donor
 | **Description**: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is neither hydrogen nor helium rich: above this rate the mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor
 | **Description**: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope with a hydrogen-rich donor. Below this mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_new_giant_envelope_lower_limit_helium_donor
 | **Description**: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope with a helium-rich donor. Below this mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_new_giant_envelope_lower_limit_other_donor
 | **Description**: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope when the donor is neither hydrogen nor helium rich. Below this mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: CRAP_parameter
 | **Description**: Tidally enhanced mass loss parameter. See Tout and Eggleton's paper on the subject. (Was the parameter bb).
@@ -2151,6 +2186,21 @@ Section: binary
 | **Parameter input type**: Float
 | **Default value**: -1
 
+| **Parameter**: eccentric_RLOF_model
+| **Description**: Chooses which model is used to handle eccentric RLOF. Default is RLOF_ECCENTRIC_AS_CIRCULAR, i.e. ignore the eccentricity. Note: requires force_corotation_of_primary_and_orbit to be FALSE.
+| **Parameter input type**: Integer
+| **Default value**: 0
+
+| **Parameter**: force_circularization_on_RLOF
+| **Description**: If True forces circularization of stars and orbit when RLOF starts, this is as in the BSE algorithm. (True)
+| **Parameter input type**: True|False
+| **Default value**: True
+
+| **Parameter**: resolve_stellar_type_changes
+| **Description**: If True forces binary_c to resolve stellar type changes to within the minimum timestep. Warning: can be slow. (True)
+| **Parameter input type**: True|False
+| **Default value**: False
+
 | **Parameter**: nonconservative_angmom_gamma
 | **Description**: Mass lost from the system (but NOT from a stellar wind) takes a fraction gamma of the orbital angular momentum with it. Set to -1 to take the specific angular momentum of the donor star. Set to -2 to take super-Eddington, nova and disk-wind angular momenta as if a wind from the accretor.
 | **Parameter input type**: Float
@@ -2179,7 +2229,7 @@ Section: nucsyn
 | **Parameter**: NeNaMgAl
 | **Description**: Enables NeNaMgAl reaction network. Requires NUCSYN and NUCSYN_HBB.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: True
 | **Extra**: Ignore
 
 | **Parameter**: nucsyn_network%d
@@ -2200,19 +2250,21 @@ Section: nucsyn
 | **Parameter**: nucsyn_metallicity
 | **Description**: This sets the metallicity of the nucleosynthesis algorithms, i.e. the amount (by mass) of matter which is not hydrogen or helium. Usually you'd just set this with the metallicity parameter, but if you want the nucleosynthesis to be outside the range of the stellar evolution algorithm (e.g. Z=0 or Z=0.04) then you need to use nucsyn_metallicity. That said, it's also outside the range of some of the nucleosynthesis algorithms as well, so you have been warned!
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: -1
 | **Macros**: ['DEFAULT_TO_METALLICITY = -1']
 
 | **Parameter**: nucsyn_solver
 | **Description**: Choose the solver used in nuclear burning. 0 = KAPS_RENTROP is a Kaps-Rentrop scheme (fast, not great for stiff problems), 1 = LSODA (Adams/BSF switcher), 2 = CVODE library (https://computing.llnl.gov/projects/sundials. Default 0. 
 | **Parameter input type**: Unsigned integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['NUCSYN_SOLVER_KAPS_RENTROP = 0', 'NUCSYN_SOLVER_LSODA = 1', 'NUCSYN_SOLVER_CVODE = 2', 'NUCSYN_SOLVER_NUMBER = 3', 'NUCSYN_SOLVER_KAPS_RENTROP = 0', 'NUCSYN_SOLVER_LSODA = 1', 'NUCSYN_SOLVER_CVODE = 2', 'NUCSYN_SOLVER_NUMBER = 3']
 | **Extra**: 0
 
 | **Parameter**: initial_abundance_mix
 | **Description**: initial abundance mixture: 0=AG89, 1=Karakas 2002, 2=Lodders 2003, 3=Asplund 2005 (not available?), 4=Garcia Berro, 5=Grevesse Noels 1993
 | **Parameter input type**: Unsigned integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['NUCSYN_INIT_ABUND_MIX_AG89 = 0', 'NUCSYN_INIT_ABUND_MIX_KARAKAS2002 = 1', 'NUCSYN_INIT_ABUND_MIX_LODDERS2003 = 2', 'NUCSYN_INIT_ABUND_MIX_ASPLUND2005 = 3', 'NUCSYN_INIT_ABUND_MIX_GARCIABERRO = 4', 'NUCSYN_INIT_ABUND_MIX_GREVESSE_NOELS_1993 = 5', 'NUCSYN_INIT_ABUND_MIX_ASPLUND2009 = 6', 'NUCSYN_INIT_ABUND_MIX_KOBAYASHI2011_ASPLUND2009 = 7', 'NUCSYN_INIT_ABUND_MIX_LODDERS2010 = 8']
 | **Extra**: 0
 
 | **Parameter**: init_abund
@@ -2236,37 +2288,38 @@ Section: nucsyn
 | **Parameter**: init_abunds_only
 | **Description**: If True, outputs only the initial abundances, then exits.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: initial_abunds_only
 | **Description**: If True, outputs only the initial abundances, then exits.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: no_thermohaline_mixing
 | **Description**: If True, disables thermohaline mixing.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: lithium_GB_post_Heflash
 | **Description**: Sets the lithium abundances after the helium flash. Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lithium_GB_post_1DUP
 | **Description**: Sets the lithium abundance after first dredge up. Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lithium_hbb_multiplier
 | **Description**: Multiplies the lithium abundances on the AGB during HBB (based on Karakas/Fishlock et al models).Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: angelou_lithium_decay_function
 | **Description**: Functional form which describes Li7 decay. Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Choices are: 0 expoential (see angelou_lithium_decay_time).
 | **Parameter input type**: Integer
 | **Default value**: NULL
+| **Macros**: ['ANGELOU_LITHIUM_DECAY_FUNCTION_EXPONENTIAL = 0']
 
 | **Parameter**: angelou_lithium_LMMS_time
 | **Description**: Time at which lithium manufacture is triggered in a low-mass (convective) main sequence (Myr). Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Ignored if 0 (for the start, use 1e-6).
@@ -2386,46 +2439,10 @@ Section: nucsyn
 Section: output
 ---------------
 
-| **Parameter**: david_logging_function
-| **Description**: Function to choose which kind of information gets logged Requires DAVID. Choices are: 0= None, >0 for custom logging functions
-| **Parameter input type**: Integer
-| **Default value**: -1
-| **Extra**: Ignore
-
-| **Parameter**: david_tzo_logging
-| **Description**: Flag to enable logging for TZO project
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_ppisn_logging
-| **Description**: Flag to enable logging for PPISN project
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_ppisn_single_logging
-| **Description**: Flag to enable logging for PPISN project capturing single star systems that underwent SN
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_rlof_episode_logging
-| **Description**: Flag to enable the RLOF episode logging
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_rlof_ensemble_logging
-| **Description**: Flag to enable the RLOF ensemble logging
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
 | **Parameter**: cf_amanda_log
 | **Description**: Enable logging to compare to Amanda's models.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: float_overflow_checks
 | **Description**: Turn on to enable floating-point overflow checks at the end of each timestep, if they are available. 0=off, 1=warn (stderr) on failure, 2=exit on failure (0)
@@ -2465,7 +2482,7 @@ Section: output
 | **Parameter**: legacy_yields
 | **Description**: Turn on ensemble legacy yield output.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: ensemble_defer
 | **Description**: Defer ensemble output.
@@ -2505,27 +2522,27 @@ Section: output
 | **Parameter**: EMP_logg_maximum
 | **Description**: Maximum logg that EMP stars are allowed to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_minimum_age.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 4
 
 | **Parameter**: EMP_minimum_age
 | **Description**: Minimum age that EMP stars are required to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 10
 
 | **Parameter**: EMP_feh_maximum
 | **Description**: Maximum [Fe/H] that an EMP stars may have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default -2.0.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: -2
 
 | **Parameter**: CEMP_cfe_minimum
 | **Description**: Minimum [C/Fe] that CEMP stars are required to have. See Izzard et al 2009. See also NEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 0.7.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0.7
 
 | **Parameter**: NEMP_cfe_minimum
 | **Description**: Minimum [N/Fe] that NEMP stars are required to have. See Izzard et al 2009, Pols et al. 2012. See also CEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 1.0.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: thick_disc_start_age
 | **Description**: Lookback time for the start of the thick disc star formation, e.g. 13e3 Myr. Units = Myr.
@@ -2563,12 +2580,24 @@ Section: output
 | **Default value**: False
 | **Extra**: 
 
+| **Parameter**: log_legacy_stellar_types
+| **Description**: If set to True, we output the stellar types in the log as numbers rather than (more human-readable) letters.
+| **Parameter input type**: True|False
+| **Default value**: False
+| **Extra**: 
+
 | **Parameter**: log_filename
 | **Description**: Location of the output logging filename. If set to "/dev/null" then there is no logging.
 | **Parameter input type**: String
 | **Default value**: /tmp/c_log.dat
 | **Extra**: 
 
+| **Parameter**: log_separator
+| **Description**: Separator used in the standard log. By default this is an empty string.
+| **Parameter input type**: String
+| **Default value**: 
+| **Extra**: 
+
 | **Parameter**: log_arrows
 | **Description**: Add arrows to the output log to show whether values are increasing or decreasing.
 | **Parameter input type**: True|False
@@ -2610,16 +2639,6 @@ Section: output
 | **Default value**: 2
 | **Macros**: ['INTERNAL_BUFFERING_OFF = 0', 'INTERNAL_BUFFERING_PRINT = 1', 'INTERNAL_BUFFERING_STORE = 2']
 
-| **Parameter**: eccentric_RLOF_model
-| **Description**: Chooses which model is used to handle eccentric RLOF. Default is RLOF_ECCENTRIC_AS_CIRCULAR, i.e. ignore the eccentricity. Note: requires force_corotation_of_primary_and_orbit to be FALSE.
-| **Parameter input type**: Integer
-| **Default value**: 0
-
-| **Parameter**: force_circularization_on_RLOF
-| **Description**: If True forces circularization of stars and orbit when RLOF starts, this is as in the BSE algorithm. (True)
-| **Parameter input type**: True|False
-| **Default value**: True
-
 | **Parameter**: wtts_log
 | **Description**: If True, enables log file output for WTTS2.
 | **Parameter input type**: True|False
@@ -2667,99 +2686,99 @@ Section: input
 | **Parameter**: MINT_dir
 | **Description**: Location of MINT algorithm data.
 | **Parameter input type**: String
-| **Default value**: 
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_data_cleanup
 | **Description**: Activate checks on incoming data to try to account for problems. Will make data-loading slower, but may fix a few things.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_MS_rejuvenation
 | **Description**: Turn on or off (hydrogen) main-sequence rejuvenation.
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_remesh
 | **Description**: Turn on or off MINT's remeshing.
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_use_ZAMS_profiles
 | **Description**: Use chemical profiles at the ZAMS if MINT_use_ZAMS_profiles is TRUE, otherwise set homogeneous abundances. (Default is TRUE, so we use the profiles if they are available.)
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_fallback_to_test_data
 | **Description**: If TRUE, use the MINT test_data directory as a fallback when data is unavailable. (FALSE)
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_disable_grid_load_warnings
 | **Description**: Use this to explicitly disable MINT's warnings when loading a grid with, e.g., missing or too much data.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_Kippenhahn
 | **Description**: Turn on or off MINT's Kippenhahn diagrams. If 0, off, if 1, output star 1 (index 0), if 2 output star 2 (index 1). Default 0.
 | **Parameter input type**: Integer
-| **Default value**: 0
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_nshells
 | **Description**: Set the initial number of shells MINT uses in each star when doing nuclear burning. Note: remeshing can change this. If MINT_nshells is 0, shellular burning and other routines that require shells will not be available. (200)
 | **Parameter input type**: Integer
-| **Default value**: 200
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_maximum_nshells
 | **Description**: Set the maximum number of shells MINT uses in each star when doing nuclear burning. Note that this will be limited to MINT_HARD_MAX_NSHELLS. (1000)
 | **Parameter input type**: Integer
-| **Default value**: 1000
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_minimum_nshells
 | **Description**: Set the minimum number of shells MINT uses in each star when doing nuclear burning. Note that this will be greater than or equal to MINT_HARD_MIN_NSHELLS, which is 0 by default. (0)
 | **Parameter input type**: Integer
-| **Default value**: 10
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_Kippenhahn_stellar_type
 | **Description**: Stellar type selector for Kippenhahn plots. Set to -1 to ignore, otherwise the stellar type number for which Kippenhahn plot data should be output.
 | **Parameter input type**: Integer
-| **Default value**: -1
+| **Default value**: NULL
 | **Macros**: ['LOW_MASS_MS = 0', 'MS = 1', 'HG = 2', 'GIANT_BRANCH = 3', 'CHeB = 4', 'EAGB = 5', 'TPAGB = 6', 'HeMS = 7', 'HeHG = 8', 'HeGB = 9', 'HeWD = 10', 'COWD = 11', 'ONeWD = 12', 'NS = 13', 'BH = 14', 'MASSLESS_REMNANT = 15']
 | **Extra**: 
 
 | **Parameter**: MINT_Kippenhahn_companion_stellar_type
 | **Description**: Companion stellar type selector for Kippenhahn plots. Set to -1 to ignore, otherwise the stellar type number for the companion for which Kippenhahn plot data should be output.
 | **Parameter input type**: Integer
-| **Default value**: -1
+| **Default value**: NULL
 | **Macros**: ['LOW_MASS_MS = 0', 'MS = 1', 'HG = 2', 'GIANT_BRANCH = 3', 'CHeB = 4', 'EAGB = 5', 'TPAGB = 6', 'HeMS = 7', 'HeHG = 8', 'HeGB = 9', 'HeWD = 10', 'COWD = 11', 'ONeWD = 12', 'NS = 13', 'BH = 14', 'MASSLESS_REMNANT = 15']
 | **Extra**: 
 
 | **Parameter**: MINT_nuclear_burning
 | **Description**: Turn on or off MINT's nuclear burning algorithm.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_minimum_shell_mass
 | **Description**: Minimum shell mass in MINT's nuclear burning routines.
 | **Parameter input type**: Float
-| **Default value**: 1e-06
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_maximum_shell_mass
 | **Description**: Maximum shell mass in MINT's nuclear burning routines. :
 | **Parameter input type**: Float
-| **Default value**: 0.1
+| **Default value**: NULL
 | **Extra**: 
 
 Section: i/o
@@ -2889,3 +2908,15 @@ Section: misc
 | **Default value**: NULL
 | **Extra**: Ignore
 
+| **Parameter**: bjorn
+| **Description**: Usage: --bjorn    ... shows an ASCII-art picture of Björn (requires jp2a to be installed).
+| **Parameter input type**: *
+| **Default value**: NULL
+| **Extra**: 0
+
+| **Parameter**: logo
+| **Description**: Usage: --logo    ... shows an ASCII-art picture of the binary_c logo (requires jp2a to be installed).
+| **Parameter input type**: *
+| **Default value**: NULL
+| **Extra**: 0
+
diff --git a/docs/build/html/_sources/examples/notebook_BHBH.ipynb.txt b/docs/build/html/_sources/examples/notebook_BHBH.ipynb.txt
index c3fa9b934..d639f4bd6 100644
--- a/docs/build/html/_sources/examples/notebook_BHBH.ipynb.txt
+++ b/docs/build/html/_sources/examples/notebook_BHBH.ipynb.txt
@@ -649,11 +649,20 @@
     "Playing around with the input for an individual system gives us some understanding of which parameters affect the formation of black hole systems, but, as mentioned in the introduction, this is nto the most appropriate way to find many such systems. We want to make use of the Population utilities, and set up custom logging and a parse function.\n",
     "\n",
     "Things to try next:\n",
+    "\n",
     "* Set up a population object with a grid in M1, q and orbital period (10 x 10 x 10)\n",
     "* Set up a custom logging function to catch BHBH systems, and include the ZAMS properties in the output.\n",
     "* Set up a parse function to process the output, try writing the output to a file.\n",
     "* Run this population at several different metallicities. Do you see a trend?"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "c8b4d134-1b41-49cc-a122-2aee89818248",
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
diff --git a/docs/build/html/_sources/grid_options_descriptions.rst.txt b/docs/build/html/_sources/grid_options_descriptions.rst.txt
index 7d765d8cf..f35b933fe 100644
--- a/docs/build/html/_sources/grid_options_descriptions.rst.txt
+++ b/docs/build/html/_sources/grid_options_descriptions.rst.txt
@@ -1,7 +1,7 @@
 Population grid code options
 ============================
 The following chapter contains all grid code options, along with their descriptions
-There are 29 options that are not described yet.
+There are 31 options that are not described yet.
 
 
 Public options
@@ -121,6 +121,10 @@ The following options are meant to be changed by the user.
 
 | **log_dt**: Time between verbose logging output.
 
+| **log_failed_systems**: No description available yet
+
+| **log_failed_systems_dir**: No description available yet
+
 | **log_file**: Log file for the population object. Unused
 
 | **log_newline**: Newline character used at the end of verbose logging statements. This is \n (newline) by default, but \x0d (carriage return) might also be what you want.
diff --git a/docs/build/html/binary_c_parameters.html b/docs/build/html/binary_c_parameters.html
index e67ed4e6b..22db32363 100644
--- a/docs/build/html/binary_c_parameters.html
+++ b/docs/build/html/binary_c_parameters.html
@@ -112,7 +112,7 @@
 <h1>Binary_c parameters<a class="headerlink" href="#binary-c-parameters" title="Permalink to this heading"></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>: 6118:20220617:8463fa650      <strong>Built on</strong>: Jun 17 2022 23:20:34</p>
+<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: clean_master   <strong>binary_c git revision</strong>: 6302:20220825:04c096f7a      <strong>Built on</strong>: Aug 25 2022 11:34:43</p>
 </dd>
 </dl>
 <section id="section-stars">
@@ -403,12 +403,6 @@
 <div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: custom_timeout_time</div>
-<div class="line"><strong>Description</strong>: Custom timeout time. Requires compilation with DAVID_CUSTOM_TIMEOUT</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 100</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: evolution_splitting</div>
 <div class="line"><strong>Description</strong>: If True, turn on splitting of an evolutionary run if splitpoint (e.g. supernova) occurs.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
@@ -454,10 +448,10 @@
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: wind_mass_loss</div>
-<div class="line"><strong>Description</strong>: Defines the algorithm used for stellar winds. 0 = none, 1 = Hurley et al. (2002), 2 = Schneider (2018), 3 = Schneider + Sander and Wink (2020) for helium stars, 4 = Schneider + Hurley for LBV mass loss</div>
+<div class="line"><strong>Description</strong>: Defines the algorithm used for stellar winds. 0 = none, 1 = Hurley et al. (2002), 2 = Schneider (2018).</div>
 <div class="line"><strong>Parameter input type</strong>: Unsigned integer</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘WIND_ALGORITHM_NONE = 0’, ‘WIND_ALGORITHM_HURLEY2002 = 1’, ‘WIND_ALGORITHM_SCHNEIDER2018 = 2’, ‘WIND_ALGORITHM_BINARY_C_2020 = 3’, ‘WIND_ALGORITHM_HENDRIKS_2022 = 4’]</div>
+<div class="line"><strong>Macros</strong>: [‘WIND_ALGORITHM_NONE = 0’, ‘WIND_ALGORITHM_HURLEY2002 = 1’, ‘WIND_ALGORITHM_SCHNEIDER2018 = 2’, ‘WIND_ALGORITHM_BINARY_C_2020 = 3’, ‘WIND_ALGORITHM_BINARY_C_2022 = 4’]</div>
 <div class="line"><strong>Extra</strong>: 0</div>
 </div>
 <div class="line-block">
@@ -674,42 +668,6 @@
 <div class="line"><strong>Macros</strong>: [‘BH_HURLEY2002 = 0’, ‘BH_BELCZYNSKI = 1’, ‘BH_SPERA2015 = 2’, ‘BH_FRYER12_DELAYED = 3’, ‘BH_FRYER12_RAPID = 4’, ‘BH_FRYER12_STARTRACK = 5’]</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: PPISN_prescription</div>
-<div class="line"><strong>Description</strong>: (Pulsational) Pair-Instability Supernova prescription: Relates initial helium core mass of star to whether the star undergoes PPISN or PISN. Requires PPISN flag to be True (see binary_c_parameters.h). 0=no ppisn, 1=Farmer et al 2019. 2=Hendriks et al 21 (in prep), which is different fit based on the same data as Farmer et al 2019</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1</div>
-<div class="line"><strong>Macros</strong>: [‘PPISN_NONE = 0’, ‘PPISN_FARMER19 = 1’, ‘PPISN_NEW_FIT_21 = 2’]</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: PPISN_additional_massloss</div>
-<div class="line"><strong>Description</strong>: (Pulsational) Pair-Instability Supernova additional massloss (on top of the result of the prescription). Value currently is not required to be positive</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: PPISN_core_mass_range_shift</div>
-<div class="line"><strong>Description</strong>: (Pulsational) Pair-Instability Supernova CO core mass range shift: Value by which we shift the range of CO core mass values that undergo PPISN. This is taken into account in the fit that calculates the mass removal. Negative number is shifting the range to lower masses, positive to higher masses.</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: PPISN_massloss_multiplier</div>
-<div class="line"><strong>Description</strong>: (Pulsational) Pair-Instability Supernova CO massloss multiplier: Value by which the (P)PISN massloss is multiplied. Currently only works with the new prescription. THe additional mass loss is not affected multiplied by this.</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 1</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: use_LWN_fallback</div>
-<div class="line"><strong>Description</strong>: Flag whether to use the Nazehdin-Lovegrove-Woosley hydrogen envelope ejection at failed supernova.</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: sn_kick_distribution_II</div>
 <div class="line"><strong>Description</strong>: Set the distribution of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
@@ -741,7 +699,7 @@
 <div class="line"><strong>Parameter</strong>: sn_kick_distribution_GRB_COLLAPSAR</div>
 <div class="line"><strong>Description</strong>: Set the distribution of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 <div class="line"><strong>Macros</strong>: [‘KICK_VELOCITY_FIXED = 0’, ‘KICK_VELOCITY_MAXWELLIAN = 1’, ‘KICK_VELOCITY_CUSTOM = 2’]</div>
 </div>
 <div class="line-block">
@@ -787,27 +745,6 @@
 <div class="line"><strong>Macros</strong>: [‘KICK_VELOCITY_FIXED = 0’, ‘KICK_VELOCITY_MAXWELLIAN = 1’, ‘KICK_VELOCITY_CUSTOM = 2’]</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_distribution_PPISN</div>
-<div class="line"><strong>Description</strong>: Set the distribution of speeds applied to PPISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘KICK_VELOCITY_FIXED = 0’, ‘KICK_VELOCITY_MAXWELLIAN = 1’, ‘KICK_VELOCITY_CUSTOM = 2’]</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_distribution_PISN</div>
-<div class="line"><strong>Description</strong>: Set the distribution of speeds applied to PISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘KICK_VELOCITY_FIXED = 0’, ‘KICK_VELOCITY_MAXWELLIAN = 1’, ‘KICK_VELOCITY_CUSTOM = 2’]</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_distribution_PHDIS</div>
-<div class="line"><strong>Description</strong>: Set the distribution of speeds applied to PHDIS supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘KICK_VELOCITY_FIXED = 0’, ‘KICK_VELOCITY_MAXWELLIAN = 1’, ‘KICK_VELOCITY_CUSTOM = 2’]</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: sn_kick_dispersion_II</div>
 <div class="line"><strong>Description</strong>: Set the dispersion of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
@@ -835,7 +772,7 @@
 <div class="line"><strong>Parameter</strong>: sn_kick_dispersion_GRB_COLLAPSAR</div>
 <div class="line"><strong>Description</strong>: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Default value</strong>: 190</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: sn_kick_dispersion_TZ</div>
@@ -874,24 +811,6 @@
 <div class="line"><strong>Default value</strong>: 0</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_dispersion_PPISN</div>
-<div class="line"><strong>Description</strong>: Set the dispersion of speeds applied to the survivor of a PPISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_dispersion_PISN</div>
-<div class="line"><strong>Description</strong>: Set the dispersion of speeds applied to the survivor of a PISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_dispersion_PHDIS</div>
-<div class="line"><strong>Description</strong>: Set the dispersion of speeds applied to the survivor of a PHDIS supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: sn_kick_companion_IA_He</div>
 <div class="line"><strong>Description</strong>: Set the speed (if &gt;=0) of, or the algothim (if &lt;0) used to calculate the, kick on the companion when a Ia He supernova occurs. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
@@ -1032,27 +951,6 @@
 <div class="line"><strong>Macros</strong>: [‘SN_IMPULSE_NONE = 0’, ‘SN_IMPULSE_LIU2015 = 1’, ‘SN_IMPULSE_WHEELER1975 = 2’]</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_companion_PPISN</div>
-<div class="line"><strong>Description</strong>: Set the speed (if &gt;=0) of, or the algothim (if &lt;0) used to calculate the kick on the companion, if it survives, in a PPISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘SN_IMPULSE_NONE = 0’, ‘SN_IMPULSE_LIU2015 = 1’, ‘SN_IMPULSE_WHEELER1975 = 2’]</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_companion_PISN</div>
-<div class="line"><strong>Description</strong>: Set the speed (if &gt;=0) of, or the algothim (if &lt;0) used to calculate the kick on the companion, if it survives, in a PISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘SN_IMPULSE_NONE = 0’, ‘SN_IMPULSE_LIU2015 = 1’, ‘SN_IMPULSE_WHEELER1975 = 2’]</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: sn_kick_companion_PHDIS</div>
-<div class="line"><strong>Description</strong>: Set the speed (if &gt;=0) of, or the algothim (if &lt;0) used to calculate the kick on the companion, if it survives, in a PHDIS supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.</div>
-<div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘SN_IMPULSE_NONE = 0’, ‘SN_IMPULSE_LIU2015 = 1’, ‘SN_IMPULSE_WHEELER1975 = 2’]</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: wd_sigma</div>
 <div class="line"><strong>Description</strong>: Set the speed at which white dwarfs are kicked when they form, in km/s. Default is zero (i.e. no kick). Requires WD_KICKS.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
@@ -1124,25 +1022,25 @@
 <div class="line"><strong>Parameter</strong>: delta_mcmin</div>
 <div class="line"><strong>Description</strong>: A parameter to reduce the minimum core mass for third dredge up to occur on the TPAGB. As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: lambda_min</div>
 <div class="line"><strong>Description</strong>: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min&gt;0 implies that, once Mc&gt;Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars. See also lambda_multiplier.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: lambda_multiplier</div>
 <div class="line"><strong>Description</strong>: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min&gt;0 implies that, once Mc&gt;Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: minimum_envelope_mass_for_third_dredgeup</div>
 <div class="line"><strong>Description</strong>: The minimum envelope mass for third dredge up on the TPAGB. Early, solar metallicity models by Straniero et al suggested 0.5Msun is typical. However, circumstantial evidence (Izzard et al 2009) as well as newer models by Stancliffe and Karakas suggest that at low metallicity a value nearer zero is more appropriate.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0.5</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: mass_of_pmz</div>
@@ -1154,13 +1052,13 @@
 <div class="line"><strong>Parameter</strong>: c13_eff</div>
 <div class="line"><strong>Description</strong>: The “efficiency” of partial mixing in a TPAGB star intershell region, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: mc13_pocket_multiplier</div>
 <div class="line"><strong>Description</strong>: Multiplies the mass in the partial mixing zone of a TPAGB star, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: tides_convective_damping</div>
@@ -1186,7 +1084,7 @@
 <div class="line"><strong>Parameter</strong>: hbbtfac</div>
 <div class="line"><strong>Description</strong>: A parameter to modulate the temperature at the base of the hot-bottom burning zone in TPAGB stars. (Works only if NUCSYN is defined)</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: wind_multiplier_%d</div>
@@ -1266,13 +1164,27 @@
 <div class="line"><strong>Description</strong>: Algorithm used to calculate the amount of mass retained during a nova explosion. 0=use nova_retention_fraction. (other methods pending)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
 <div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘NOVA_RETENTION_ALGORITHM_CONSTANT = 0’, ‘NOVA_RETENTION_ALGORITHM_CLAEYS2014 = 1’, ‘NOVA_RETENTION_ALGORITHM_HILLMAN2015 = 2’]</div>
+<div class="line"><strong>Macros</strong>: [‘NOVA_RETENTION_ALGORITHM_CONSTANT = 0’, ‘NOVA_RETENTION_ALGORITHM_CLAEYS2014 = 1’, ‘NOVA_RETENTION_ALGORITHM_HILLMAN2015 = 2’, ‘NOVA_RETENTION_ALGORITHM_WANGWU = 3’]</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: nova_yield_CO_algorithm</div>
+<div class="line"><strong>Description</strong>: Algorithm used to calculate the yields of COWD novae. Current options: NOVA_YIELD_CO_ALGOTHIM_JOSE_HERNANZ_1998 (0).</div>
+<div class="line"><strong>Parameter input type</strong>: Integer</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘NOVA_YIELD_CO_ALGORITHM_JOSE_HERNANZ_1998 = 0’]</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: nova_yield_ONe_algorithm</div>
+<div class="line"><strong>Description</strong>: Algorithm used to calculate the yields of ONeWD novae. Current options: NOVA_YIELD_ONe_ALGOTHIM_JOSE_HERNANZ_1998 (0), NOVA_YIELD_ONe_ALGORITHM_JOSE2022 (1).</div>
+<div class="line"><strong>Parameter input type</strong>: Integer</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘NOVA_YIELD_ONe_ALGORITHM_JOSE_HERNANZ_1998 = 0’, ‘NOVA_YIELD_ONe_ALGORITHM_JOSE_2022 = 1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_metallicity</div>
 <div class="line"><strong>Description</strong>: This sets the metallicity for MINT. It is ignored if set to -1.0, the default, in which case the normal metallicity parameter is used.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: -1</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: gaia_Teff_binwidth</div>
@@ -1304,28 +1216,28 @@
 <div class="line"><strong>Parameter</strong>: AGB_core_algorithm</div>
 <div class="line"><strong>Description</strong>: Algorithm to use for calculating AGB core masses. 0=Hurley et al. 2002 if no NUCSYN, Karakas 2002 if NUCSYN is defined; 1=Hurley et al. 2002 (overshooting models); 1=Karakas 2002 (non-overshooting models).</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1</div>
+<div class="line"><strong>Default value</strong>: 2</div>
 <div class="line"><strong>Macros</strong>: [‘AGB_CORE_ALGORITHM_DEFAULT = 0’, ‘AGB_CORE_ALGORITHM_HURLEY = 1’, ‘AGB_CORE_ALGORITHM_KARAKAS = 2’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: AGB_radius_algorithm</div>
 <div class="line"><strong>Description</strong>: Algorithm to use for calculating radii on the TPAGB.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1</div>
+<div class="line"><strong>Default value</strong>: 2</div>
 <div class="line"><strong>Macros</strong>: [‘AGB_RADIUS_ALGORITHM_DEFAULT = 0’, ‘AGB_RADIUS_ALGORITHM_HURLEY = 1’, ‘AGB_RADIUS_ALGORITHM_KARAKAS = 2’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: AGB_luminosity_algorithm</div>
 <div class="line"><strong>Description</strong>: Algorithm to use for calculating luminosities on the TPAGB.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1</div>
+<div class="line"><strong>Default value</strong>: 2</div>
 <div class="line"><strong>Macros</strong>: [‘AGB_LUMINOSITY_ALGORITHM_DEFAULT = 0’, ‘AGB_LUMINOSITY_ALGORITHM_HURLEY = 1’, ‘AGB_LUMINOSITY_ALGORITHM_KARAKAS = 2’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: AGB_3dup_algorithm</div>
 <div class="line"><strong>Description</strong>: Algorithm to use for calculating third dredge up efficiency on the TPAGB.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1</div>
+<div class="line"><strong>Default value</strong>: 2</div>
 <div class="line"><strong>Macros</strong>: [‘AGB_THIRD_DREDGE_UP_ALGORITHM_DEFAULT = 0’, ‘AGB_THIRD_DREDGE_UP_ALGORITHM_HURLEY = 1’, ‘AGB_THIRD_DREDGE_UP_ALGORITHM_KARAKAS = 2’, ‘AGB_THIRD_DREDGE_UP_ALGORITHM_STANCLIFFE = 3’]</div>
 </div>
 <div class="line-block">
@@ -1493,6 +1405,18 @@
 <div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: adjust_structure_from_mass_changes</div>
+<div class="line"><strong>Description</strong>: If True, adjust L and R based on changes in M on the previous thermal timescale. (Currently experimental hence defaults to FALSE)</div>
+<div class="line"><strong>Parameter input type</strong>: True|False</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: save_mass_history_n_thermal</div>
+<div class="line"><strong>Description</strong>: Number of thermal timesteps of mass change history to be saved (4).</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: degenerate_core_merger_nucsyn</div>
 <div class="line"><strong>Description</strong>: If TRUE, assume that in a degnerate core merger, energy is generated from nucleosynthesis of the whole core, and that this can disrupt the core. The BSE algorithm (Hurley et al. 2002) assumes this to be TRUE, but binary_c assumes FALSE by default. (FALSE)</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
@@ -1508,7 +1432,7 @@
 <div class="line"><strong>Parameter</strong>: degenerate_core_merger_dredgeup_fraction</div>
 <div class="line"><strong>Description</strong>: If non-zero, mix this fraction of the degenerate core during a merger.(0.0).</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
 </div>
 </section>
 <section id="section-binary">
@@ -1911,26 +1835,52 @@
 <div class="line"><strong>Description</strong>: Algorithm to be used when merging two white dwarfs. 0 = Hurley et al. (2002), 1 = Perets+ (2019), 2 = Chen+ (2016, todo)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
 <div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘WDWD_MERGER_ALGORITHM_BSE = 0’, ‘WDWD_MERGER_ALGORITHM_PERETS2019 = 1’, ‘WDWD_MERGER_ALGORITHM_CHEN2016 = 2’]</div>
+<div class="line"><strong>Macros</strong>: [‘WDWD_MERGER_ALGORITHM_BSE = 0’, ‘WDWD_MERGER_ALGORITHM_PERETS2019 = 1’, ‘WDWD_MERGER_ALGORITHM_CHEN2016 = 2’, ‘WDWD_MERGER_ALGORITHM_SATO2016 = 3’, ‘WDWD_MERGER_ALGORITHM_HYBRID_PERETS2019_SATO2016 = 4’, ‘WDWD_MERGER_ALGORITHM_RUITER2013 = 5’]</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: eta_violent_WDWD_merger</div>
+<div class="line"><strong>Description</strong>: energy factor used to calculate q_crit for WDWD mergers that are “violent”. Default = 0.75 (Ruiter 2013).</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 0.75</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: COWD_COWD_explode_above_mass</div>
+<div class="line"><strong>Description</strong>: COWD-COWD mergers above this mass trigger a SNIa.</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: HeWD_COWD_explode_above_mass</div>
+<div class="line"><strong>Description</strong>: HeWD-COWD mergers above this mass trigger a SNIa.</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: COWD_to_ONeWD_accretion_rate</div>
+<div class="line"><strong>Description</strong>: Accretion rate above which COWDs are converted to ONeWDs, in Msun/yr. A typical value is 2.05e-6 (Wang et al. 2017).  Ignored if 0 (default 0).</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 2.05e-06</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: type_Ia_MCh_supernova_algorithm</div>
 <div class="line"><strong>Description</strong>: Algorithm to be used when calculating type Ia yields from Chandrasekhar-mass exploders. 0 = DD7 (Iwamoto 1999), 1 = Seitenzahl 2013 3D hydro yields (you must also set Seitenzahl2013_model)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: Seitenzahl2013_model</div>
 <div class="line"><strong>Description</strong>: Which of Seitenzahl et al. 2013’s models to use? One of N1,N3,N5,N10,N20,N40,N100L,N100,N100H,N150,N200,N300C,N1600,N1600C,N100_Z0.5,N100_Z0.1,N100_Z0.01 (defaults to N100).</div>
 <div class="line"><strong>Parameter input type</strong>: String</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: N100</div>
 <div class="line"><strong>Extra</strong>: N1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: type_Ia_sub_MCh_supernova_algorithm</div>
 <div class="line"><strong>Description</strong>: Algorithm to be used when calculating type Ia yields from sub-Chandrasekhar-mass exploders. (Currently unused.)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: max_HeWD_mass</div>
@@ -1940,9 +1890,35 @@
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: merger_mass_loss_fraction</div>
-<div class="line"><strong>Description</strong>: Fraction of the total mass which is lost when stars merge.</div>
+<div class="line"><strong>Description</strong>: Fraction of the total mass which is lost when stars merge. Note: if merger_mass_loss_fraction_by_stellar_type_&lt;n&gt; is set, where &lt;n&gt; is the stellar type, it is used in place of the value of merger_mass_loss_fraction. Can be a positive number, zero, or an algorithm from: MERGER_MASS_LOSS_FRACTION_GLEBBEEK_2013.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 0.1</div>
+<div class="line"><strong>Macros</strong>: [‘MERGER_MASS_LOSS_FRACTION_NONE = 0’, ‘MERGER_MASS_LOSS_FRACTION_GLEBBEEK2013 = -1’, ‘MERGER_MASS_LOSS_FRACTION_UNUSED = 666666’]</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: merger_mass_loss_fraction_nondegenerate</div>
+<div class="line"><strong>Description</strong>: Equivalent to setting the merger_mass_loss_fraction_by_stellar_type for all nuclear-burning, non-degenerate stellar types (including low-mass main-sequence stars). Note: you should not combine this with attempts to set the mass loss fractions individually.</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: merger_mass_loss_fraction_degenerate</div>
+<div class="line"><strong>Description</strong>: Equivalent to setting the merger_mass_loss_fraction_by_stellar_type for all (compact) degenerate (i.e. WD, NS) stellar types. Note: you should not combine this with attempts to set the mass loss fractions individually.</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: merger_mass_loss_fraction_by_stellar_type_%d</div>
+<div class="line"><strong>Description</strong>: Fraction of the total mass which is lost when stars merge to stellar type &lt;n&gt;.</div>
+<div class="line"><strong>Parameter input type</strong>: Float(scanf)</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: transient_method</div>
+<div class="line"><strong>Description</strong>: Choose the method used to model transients. Options: TRANSIENT_METHOD_NONE, TRANSIENT_METHOD_IVANOVA2013</div>
+<div class="line"><strong>Parameter input type</strong>: Integer</div>
 <div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘TRANSIENT_METHOD_NONE = 0’, ‘TRANSIENT_METHOD_IVANOVA2013 = 1’, ‘TRANSIENT_METHOD_VILLAR2017 = 2’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: merger_angular_momentum_factor</div>
@@ -1988,199 +1964,226 @@
 <div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: qcrit_nuclear_burning</div>
+<div class="line"><strong>Description</strong>: Set qcrit, the critical mass ratio for stable mass transfer, for all donors irrespective of donor or accretor stellar type.</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: qcrit_QWD</div>
+<div class="line"><strong>Description</strong>: Set qcrit, the critical mass ratio for stable mass transfer, for all WD donors irrespective of the accretor stellar type.</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_LMMS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for low-mass main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.6944</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_MS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1.6</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_HG</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 4</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_GB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_CHeB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_EAGB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_TPAGB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_HeMS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_HeHG</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 4</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_HeGB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.78125</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_HeWD</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_COWD</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_ONeWD</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_NS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_BH</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
-<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2021 = -8’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2021 = -8’]</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_LMMS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for (low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_MS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_HG</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 4.7619</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_GB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1.15</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_CHeB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_EAGB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1.15</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_TPAGB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1.15</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_HeMS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 3</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_HeHG</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 4.7619</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_HeGB</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 1.15</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_HeWD</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.625</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_COWD</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.625</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_ONeWD</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.625</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_NS</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.625</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: qcrit_degenerate_BH</div>
 <div class="line"><strong>Description</strong>: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.625</div>
+<div class="line"><strong>Macros</strong>: [‘QCRIT_BSE = -1’, ‘QCRIT_HJELLMING_WEBBINK = -2’, ‘QCRIT_Q_NO_COMENV = -3’, ‘QCRIT_CHEN_HAN_TABLE = -4’, ‘QCRIT_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GE2015 = -6’, ‘QCRIT_VOS2018 = -7’, ‘QCRIT_TEMMINK2022 = -8’, ‘QCRIT_DEFAULT = -9’, ‘QCRIT_GB_BSE = -1’, ‘QCRIT_GB_HJELLMING_WEBBINK = -2’, ‘QCRIT_GB_Q_NO_COMENV = -3’, ‘QCRIT_GB_CHEN_HAN_TABLE = -4’, ‘QCRIT_GB_CHEN_HAN_FORMULA = -5’, ‘QCRIT_GB_GE2015 = -6’, ‘QCRIT_GB_VOS2018 = -7’, ‘QCRIT_GB_TEMMINK2022 = -8’, ‘QCRIT_GB_DEFAULT = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: mass_for_Hestar_Ia_upper</div>
@@ -2211,14 +2214,14 @@
 <div class="line"><strong>Description</strong>: Use this to choose which common envelope prescription you should use. 0=Hurley et al 2002 (based on the Paczyński energy model) or 1=Nelemans and Tout (angular momentum model). See also alpha_ce, comenv_ms_accretion_mass, comenv_ms_accretion_fraction, comenv_ns_accretion_fraction, comenv_ns_accretion_mass, nelemans_gamma, nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs, lambda_ce, lambda_ionisation.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
 <div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Macros</strong>: [‘COMENV_UNDEF = -1’, ‘COMENV_BSE = 0’, ‘COMENV_NELEMANS_TOUT = 1’, ‘COMENV_NANDEZ2016 = 2’]</div>
+<div class="line"><strong>Macros</strong>: [‘COMENV_UNDEF = -1’, ‘COMENV_BSE = 0’, ‘COMENV_NELEMANS_TOUT = 1’, ‘COMENV_NANDEZ2016 = 2’, ‘COMENV_GE2022 = 3’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: comenv_prescription%d</div>
 <div class="line"><strong>Description</strong>: Use this to choose which common envelope prescription you should use. 0=Hurley et al 2002 (based on the Paczyński energy model) or 1=Nelemans and Tout (angular momentum model). See also alpha_ce, comenv_ms_accretion_mass, comenv_ms_accretion_fraction, comenv_ns_accretion_fraction, comenv_ns_accretion_mass, nelemans_gamma, nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs, lambda_ce, lambda_ionisation.</div>
 <div class="line"><strong>Parameter input type</strong>: Int(scanf)</div>
 <div class="line"><strong>Default value</strong>: NULL</div>
-<div class="line"><strong>Macros</strong>: [‘COMENV_UNDEF = -1’, ‘COMENV_BSE = 0’, ‘COMENV_NELEMANS_TOUT = 1’, ‘COMENV_NANDEZ2016 = 2’]</div>
+<div class="line"><strong>Macros</strong>: [‘COMENV_UNDEF = -1’, ‘COMENV_BSE = 0’, ‘COMENV_NELEMANS_TOUT = 1’, ‘COMENV_NANDEZ2016 = 2’, ‘COMENV_GE2022 = 3’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: comenv_ejection_spin_method</div>
@@ -2302,6 +2305,12 @@
 <div class="line"><strong>Default value</strong>: 1e-05</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: dedmRLOF</div>
+<div class="line"><strong>Description</strong>: de/dM during RLOF (defualt 0.0)</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: nelemans_gamma</div>
 <div class="line"><strong>Description</strong>: Set the fraction of the orbital specific angular momentum that is used to eject the common envelope according to the Nelemans and Tout prescription. See also nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
@@ -2543,6 +2552,19 @@
 <div class="line"><strong>Default value</strong>: NULL</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: unstable_RLOF_can_trigger_SNIa</div>
+<div class="line"><strong>Description</strong>: If true, allow unstable (dynamical) RLOF to trigger a sub-MCh SNIa. (False)</div>
+<div class="line"><strong>Parameter input type</strong>: True|False</div>
+<div class="line"><strong>Default value</strong>: False</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: triggered_SNIa_algorithm</div>
+<div class="line"><strong>Description</strong>: Algorithm to use for triggered SNeIa</div>
+<div class="line"><strong>Parameter input type</strong>: Integer</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2’, ‘TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3’]</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: minimum_separation_for_instant_RLOF</div>
 <div class="line"><strong>Description</strong>: If True, instead of evolving the system just report the minimum separation (on the zero-age main sequence) that would lead to instant RLOF. Used by binary_grid. See also minimum_orbital_period_for_instant_RLOF and maximum_mass_ratio_for_instant_RLOF.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
@@ -2575,8 +2597,20 @@
 <div class="line"><strong>Macros</strong>: [‘RLOF_INTERPOLATION_BINARY_C = 0’, ‘RLOF_INTERPOLATION_BSE = 1’]</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: nova_retention_fraction</div>
-<div class="line"><strong>Description</strong>: The mass accreted during a nova as fraction of mass transferred</div>
+<div class="line"><strong>Parameter</strong>: He_nova_ELDs</div>
+<div class="line"><strong>Description</strong>: Enable edge-lit detonations from WDs that have He novae. (Default: False, i.e. off.)</div>
+<div class="line"><strong>Parameter input type</strong>: True|False</div>
+<div class="line"><strong>Default value</strong>: False</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: nova_retention_fraction_H</div>
+<div class="line"><strong>Description</strong>: The mass accreted during a hydrogen nova as fraction of mass transferred.</div>
+<div class="line"><strong>Parameter input type</strong>: Float</div>
+<div class="line"><strong>Default value</strong>: 0.001</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: nova_retention_fraction_He</div>
+<div class="line"><strong>Description</strong>: The mass accreted during a helium nova as fraction of mass transferred.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: 0.001</div>
 </div>
@@ -2588,46 +2622,52 @@
 <div class="line"><strong>Macros</strong>: [‘BETA_REVERSE_NOVAE_GEOMETRY = -1’]</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: WD_accretion_rate_algorithms</div>
+<div class="line"><strong>Description</strong>: Wrapper to set all WD accretion rates in one go (see WD_accretion_rate_*).</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: WD_accretion_rate_novae_upper_limit_hydrogen_donor</div>
 <div class="line"><strong>Description</strong>: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is hydrogen rich: above this rate the mass transfer leads to stable burning.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’]</div>
+<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’, ‘DONOR_RATE_ALGORITHM_K2014_P2014 = -3’, ‘DONOR_RATE_ALGORITHM_WANGWU = -4’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: WD_accretion_rate_novae_upper_limit_helium_donor</div>
 <div class="line"><strong>Description</strong>: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is helium rich: above this rate the mass transfer leads to stable burning.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’]</div>
+<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’, ‘DONOR_RATE_ALGORITHM_K2014_P2014 = -3’, ‘DONOR_RATE_ALGORITHM_WANGWU = -4’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: WD_accretion_rate_novae_upper_limit_other_donor</div>
 <div class="line"><strong>Description</strong>: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is neither hydrogen nor helium rich: above this rate the mass transfer leads to stable burning.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’]</div>
+<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’, ‘DONOR_RATE_ALGORITHM_K2014_P2014 = -3’, ‘DONOR_RATE_ALGORITHM_WANGWU = -4’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: WD_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor</div>
 <div class="line"><strong>Description</strong>: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope with a hydrogen-rich donor. Below this mass transfer leads to stable burning.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’]</div>
+<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’, ‘DONOR_RATE_ALGORITHM_K2014_P2014 = -3’, ‘DONOR_RATE_ALGORITHM_WANGWU = -4’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: WD_accretion_rate_new_giant_envelope_lower_limit_helium_donor</div>
 <div class="line"><strong>Description</strong>: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope with a helium-rich donor. Below this mass transfer leads to stable burning.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’]</div>
+<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’, ‘DONOR_RATE_ALGORITHM_K2014_P2014 = -3’, ‘DONOR_RATE_ALGORITHM_WANGWU = -4’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: WD_accretion_rate_new_giant_envelope_lower_limit_other_donor</div>
 <div class="line"><strong>Description</strong>: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope when the donor is neither hydrogen nor helium rich. Below this mass transfer leads to stable burning.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
 <div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’]</div>
+<div class="line"><strong>Macros</strong>: [‘DONOR_RATE_ALGORITHM_CLAEYS2014 = -1’, ‘DONOR_RATE_ALGORITHM_BSE = -2’, ‘DONOR_RATE_ALGORITHM_K2014_P2014 = -3’, ‘DONOR_RATE_ALGORITHM_WANGWU = -4’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: CRAP_parameter</div>
@@ -2660,6 +2700,24 @@
 <div class="line"><strong>Default value</strong>: -1</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: eccentric_RLOF_model</div>
+<div class="line"><strong>Description</strong>: Chooses which model is used to handle eccentric RLOF. Default is RLOF_ECCENTRIC_AS_CIRCULAR, i.e. ignore the eccentricity. Note: requires force_corotation_of_primary_and_orbit to be FALSE.</div>
+<div class="line"><strong>Parameter input type</strong>: Integer</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: force_circularization_on_RLOF</div>
+<div class="line"><strong>Description</strong>: If True forces circularization of stars and orbit when RLOF starts, this is as in the BSE algorithm. (True)</div>
+<div class="line"><strong>Parameter input type</strong>: True|False</div>
+<div class="line"><strong>Default value</strong>: True</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: resolve_stellar_type_changes</div>
+<div class="line"><strong>Description</strong>: If True forces binary_c to resolve stellar type changes to within the minimum timestep. Warning: can be slow. (True)</div>
+<div class="line"><strong>Parameter input type</strong>: True|False</div>
+<div class="line"><strong>Default value</strong>: False</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: nonconservative_angmom_gamma</div>
 <div class="line"><strong>Description</strong>: Mass lost from the system (but NOT from a stellar wind) takes a fraction gamma of the orbital angular momentum with it. Set to -1 to take the specific angular momentum of the donor star. Set to -2 to take super-Eddington, nova and disk-wind angular momenta as if a wind from the accretor.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
@@ -2692,7 +2750,7 @@
 <div class="line"><strong>Parameter</strong>: NeNaMgAl</div>
 <div class="line"><strong>Description</strong>: Enables NeNaMgAl reaction network. Requires NUCSYN and NUCSYN_HBB.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: True</div>
 <div class="line"><strong>Extra</strong>: Ignore</div>
 </div>
 <div class="line-block">
@@ -2717,21 +2775,23 @@
 <div class="line"><strong>Parameter</strong>: nucsyn_metallicity</div>
 <div class="line"><strong>Description</strong>: This sets the metallicity of the nucleosynthesis algorithms, i.e. the amount (by mass) of matter which is not hydrogen or helium. Usually you’d just set this with the metallicity parameter, but if you want the nucleosynthesis to be outside the range of the stellar evolution algorithm (e.g. Z=0 or Z=0.04) then you need to use nucsyn_metallicity. That said, it’s also outside the range of some of the nucleosynthesis algorithms as well, so you have been warned!</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: -1</div>
 <div class="line"><strong>Macros</strong>: [‘DEFAULT_TO_METALLICITY = -1’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: nucsyn_solver</div>
 <div class="line"><strong>Description</strong>: Choose the solver used in nuclear burning. 0 = KAPS_RENTROP is a Kaps-Rentrop scheme (fast, not great for stiff problems), 1 = LSODA (Adams/BSF switcher), 2 = CVODE library (<a class="reference external" href="https://computing.llnl.gov/projects/sundials">https://computing.llnl.gov/projects/sundials</a>. Default 0.</div>
 <div class="line"><strong>Parameter input type</strong>: Unsigned integer</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘NUCSYN_SOLVER_KAPS_RENTROP = 0’, ‘NUCSYN_SOLVER_LSODA = 1’, ‘NUCSYN_SOLVER_CVODE = 2’, ‘NUCSYN_SOLVER_NUMBER = 3’, ‘NUCSYN_SOLVER_KAPS_RENTROP = 0’, ‘NUCSYN_SOLVER_LSODA = 1’, ‘NUCSYN_SOLVER_CVODE = 2’, ‘NUCSYN_SOLVER_NUMBER = 3’]</div>
 <div class="line"><strong>Extra</strong>: 0</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: initial_abundance_mix</div>
 <div class="line"><strong>Description</strong>: initial abundance mixture: 0=AG89, 1=Karakas 2002, 2=Lodders 2003, 3=Asplund 2005 (not available?), 4=Garcia Berro, 5=Grevesse Noels 1993</div>
 <div class="line"><strong>Parameter input type</strong>: Unsigned integer</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Macros</strong>: [‘NUCSYN_INIT_ABUND_MIX_AG89 = 0’, ‘NUCSYN_INIT_ABUND_MIX_KARAKAS2002 = 1’, ‘NUCSYN_INIT_ABUND_MIX_LODDERS2003 = 2’, ‘NUCSYN_INIT_ABUND_MIX_ASPLUND2005 = 3’, ‘NUCSYN_INIT_ABUND_MIX_GARCIABERRO = 4’, ‘NUCSYN_INIT_ABUND_MIX_GREVESSE_NOELS_1993 = 5’, ‘NUCSYN_INIT_ABUND_MIX_ASPLUND2009 = 6’, ‘NUCSYN_INIT_ABUND_MIX_KOBAYASHI2011_ASPLUND2009 = 7’, ‘NUCSYN_INIT_ABUND_MIX_LODDERS2010 = 8’]</div>
 <div class="line"><strong>Extra</strong>: 0</div>
 </div>
 <div class="line-block">
@@ -2759,43 +2819,44 @@
 <div class="line"><strong>Parameter</strong>: init_abunds_only</div>
 <div class="line"><strong>Description</strong>: If True, outputs only the initial abundances, then exits.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: initial_abunds_only</div>
 <div class="line"><strong>Description</strong>: If True, outputs only the initial abundances, then exits.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: no_thermohaline_mixing</div>
 <div class="line"><strong>Description</strong>: If True, disables thermohaline mixing.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: lithium_GB_post_Heflash</div>
 <div class="line"><strong>Description</strong>: Sets the lithium abundances after the helium flash. Requires NUCSYN and LITHIUM_TABLES.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: lithium_GB_post_1DUP</div>
 <div class="line"><strong>Description</strong>: Sets the lithium abundance after first dredge up. Requires NUCSYN and LITHIUM_TABLES.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: lithium_hbb_multiplier</div>
 <div class="line"><strong>Description</strong>: Multiplies the lithium abundances on the AGB during HBB (based on Karakas/Fishlock et al models).Requires NUCSYN and LITHIUM_TABLES.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: angelou_lithium_decay_function</div>
 <div class="line"><strong>Description</strong>: Functional form which describes Li7 decay. Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Choices are: 0 expoential (see angelou_lithium_decay_time).</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
 <div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Macros</strong>: [‘ANGELOU_LITHIUM_DECAY_FUNCTION_EXPONENTIAL = 0’]</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: angelou_lithium_LMMS_time</div>
@@ -2939,52 +3000,10 @@
 <section id="section-output">
 <h2>Section: output<a class="headerlink" href="#section-output" title="Permalink to this heading"></a></h2>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: david_logging_function</div>
-<div class="line"><strong>Description</strong>: Function to choose which kind of information gets logged Requires DAVID. Choices are: 0= None, &gt;0 for custom logging functions</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: -1</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: david_tzo_logging</div>
-<div class="line"><strong>Description</strong>: Flag to enable logging for TZO project</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: david_ppisn_logging</div>
-<div class="line"><strong>Description</strong>: Flag to enable logging for PPISN project</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: david_ppisn_single_logging</div>
-<div class="line"><strong>Description</strong>: Flag to enable logging for PPISN project capturing single star systems that underwent SN</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: david_rlof_episode_logging</div>
-<div class="line"><strong>Description</strong>: Flag to enable the RLOF episode logging</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: david_rlof_ensemble_logging</div>
-<div class="line"><strong>Description</strong>: Flag to enable the RLOF ensemble logging</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-<div class="line"><strong>Extra</strong>: Ignore</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: cf_amanda_log</div>
 <div class="line"><strong>Description</strong>: Enable logging to compare to Amanda’s models.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: float_overflow_checks</div>
@@ -3032,7 +3051,7 @@
 <div class="line"><strong>Parameter</strong>: legacy_yields</div>
 <div class="line"><strong>Description</strong>: Turn on ensemble legacy yield output.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: False</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: ensemble_defer</div>
@@ -3080,31 +3099,31 @@
 <div class="line"><strong>Parameter</strong>: EMP_logg_maximum</div>
 <div class="line"><strong>Description</strong>: Maximum logg that EMP stars are allowed to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_minimum_age.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 4</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: EMP_minimum_age</div>
 <div class="line"><strong>Description</strong>: Minimum age that EMP stars are required to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 10</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: EMP_feh_maximum</div>
 <div class="line"><strong>Description</strong>: Maximum [Fe/H] that an EMP stars may have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default -2.0.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: -2</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: CEMP_cfe_minimum</div>
 <div class="line"><strong>Description</strong>: Minimum [C/Fe] that CEMP stars are required to have. See Izzard et al 2009. See also NEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 0.7.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 0.7</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: NEMP_cfe_minimum</div>
 <div class="line"><strong>Description</strong>: Minimum [N/Fe] that NEMP stars are required to have. See Izzard et al 2009, Pols et al. 2012. See also CEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 1.0.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Default value</strong>: 1</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: thick_disc_start_age</div>
@@ -3150,6 +3169,13 @@
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: log_legacy_stellar_types</div>
+<div class="line"><strong>Description</strong>: If set to True, we output the stellar types in the log as numbers rather than (more human-readable) letters.</div>
+<div class="line"><strong>Parameter input type</strong>: True|False</div>
+<div class="line"><strong>Default value</strong>: False</div>
+<div class="line"><strong>Extra</strong>:</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: log_filename</div>
 <div class="line"><strong>Description</strong>: Location of the output logging filename. If set to “/dev/null” then there is no logging.</div>
 <div class="line"><strong>Parameter input type</strong>: String</div>
@@ -3157,6 +3183,13 @@
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>Parameter</strong>: log_separator</div>
+<div class="line"><strong>Description</strong>: Separator used in the standard log. By default this is an empty string.</div>
+<div class="line"><strong>Parameter input type</strong>: String</div>
+<div class="line"><strong>Default value</strong>:</div>
+<div class="line"><strong>Extra</strong>:</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>Parameter</strong>: log_arrows</div>
 <div class="line"><strong>Description</strong>: Add arrows to the output log to show whether values are increasing or decreasing.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
@@ -3205,18 +3238,6 @@
 <div class="line"><strong>Macros</strong>: [‘INTERNAL_BUFFERING_OFF = 0’, ‘INTERNAL_BUFFERING_PRINT = 1’, ‘INTERNAL_BUFFERING_STORE = 2’]</div>
 </div>
 <div class="line-block">
-<div class="line"><strong>Parameter</strong>: eccentric_RLOF_model</div>
-<div class="line"><strong>Description</strong>: Chooses which model is used to handle eccentric RLOF. Default is RLOF_ECCENTRIC_AS_CIRCULAR, i.e. ignore the eccentricity. Note: requires force_corotation_of_primary_and_orbit to be FALSE.</div>
-<div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
-</div>
-<div class="line-block">
-<div class="line"><strong>Parameter</strong>: force_circularization_on_RLOF</div>
-<div class="line"><strong>Description</strong>: If True forces circularization of stars and orbit when RLOF starts, this is as in the BSE algorithm. (True)</div>
-<div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: True</div>
-</div>
-<div class="line-block">
 <div class="line"><strong>Parameter</strong>: wtts_log</div>
 <div class="line"><strong>Description</strong>: If True, enables log file output for WTTS2.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
@@ -3271,84 +3292,84 @@
 <div class="line"><strong>Parameter</strong>: MINT_dir</div>
 <div class="line"><strong>Description</strong>: Location of MINT algorithm data.</div>
 <div class="line"><strong>Parameter input type</strong>: String</div>
-<div class="line"><strong>Default value</strong>:</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_data_cleanup</div>
 <div class="line"><strong>Description</strong>: Activate checks on incoming data to try to account for problems. Will make data-loading slower, but may fix a few things.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: False</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_MS_rejuvenation</div>
 <div class="line"><strong>Description</strong>: Turn on or off (hydrogen) main-sequence rejuvenation.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: True</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_remesh</div>
 <div class="line"><strong>Description</strong>: Turn on or off MINT’s remeshing.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: True</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_use_ZAMS_profiles</div>
 <div class="line"><strong>Description</strong>: Use chemical profiles at the ZAMS if MINT_use_ZAMS_profiles is TRUE, otherwise set homogeneous abundances. (Default is TRUE, so we use the profiles if they are available.)</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: True</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_fallback_to_test_data</div>
 <div class="line"><strong>Description</strong>: If TRUE, use the MINT test_data directory as a fallback when data is unavailable. (FALSE)</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: False</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_disable_grid_load_warnings</div>
 <div class="line"><strong>Description</strong>: Use this to explicitly disable MINT’s warnings when loading a grid with, e.g., missing or too much data.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: False</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_Kippenhahn</div>
 <div class="line"><strong>Description</strong>: Turn on or off MINT’s Kippenhahn diagrams. If 0, off, if 1, output star 1 (index 0), if 2 output star 2 (index 1). Default 0.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 0</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_nshells</div>
 <div class="line"><strong>Description</strong>: Set the initial number of shells MINT uses in each star when doing nuclear burning. Note: remeshing can change this. If MINT_nshells is 0, shellular burning and other routines that require shells will not be available. (200)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 200</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_maximum_nshells</div>
 <div class="line"><strong>Description</strong>: Set the maximum number of shells MINT uses in each star when doing nuclear burning. Note that this will be limited to MINT_HARD_MAX_NSHELLS. (1000)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 1000</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_minimum_nshells</div>
 <div class="line"><strong>Description</strong>: Set the minimum number of shells MINT uses in each star when doing nuclear burning. Note that this will be greater than or equal to MINT_HARD_MIN_NSHELLS, which is 0 by default. (0)</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: 10</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_Kippenhahn_stellar_type</div>
 <div class="line"><strong>Description</strong>: Stellar type selector for Kippenhahn plots. Set to -1 to ignore, otherwise the stellar type number for which Kippenhahn plot data should be output.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: -1</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Macros</strong>: [‘LOW_MASS_MS = 0’, ‘MS = 1’, ‘HG = 2’, ‘GIANT_BRANCH = 3’, ‘CHeB = 4’, ‘EAGB = 5’, ‘TPAGB = 6’, ‘HeMS = 7’, ‘HeHG = 8’, ‘HeGB = 9’, ‘HeWD = 10’, ‘COWD = 11’, ‘ONeWD = 12’, ‘NS = 13’, ‘BH = 14’, ‘MASSLESS_REMNANT = 15’]</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
@@ -3356,7 +3377,7 @@
 <div class="line"><strong>Parameter</strong>: MINT_Kippenhahn_companion_stellar_type</div>
 <div class="line"><strong>Description</strong>: Companion stellar type selector for Kippenhahn plots. Set to -1 to ignore, otherwise the stellar type number for the companion for which Kippenhahn plot data should be output.</div>
 <div class="line"><strong>Parameter input type</strong>: Integer</div>
-<div class="line"><strong>Default value</strong>: -1</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Macros</strong>: [‘LOW_MASS_MS = 0’, ‘MS = 1’, ‘HG = 2’, ‘GIANT_BRANCH = 3’, ‘CHeB = 4’, ‘EAGB = 5’, ‘TPAGB = 6’, ‘HeMS = 7’, ‘HeHG = 8’, ‘HeGB = 9’, ‘HeWD = 10’, ‘COWD = 11’, ‘ONeWD = 12’, ‘NS = 13’, ‘BH = 14’, ‘MASSLESS_REMNANT = 15’]</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
@@ -3364,21 +3385,21 @@
 <div class="line"><strong>Parameter</strong>: MINT_nuclear_burning</div>
 <div class="line"><strong>Description</strong>: Turn on or off MINT’s nuclear burning algorithm.</div>
 <div class="line"><strong>Parameter input type</strong>: True|False</div>
-<div class="line"><strong>Default value</strong>: False</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_minimum_shell_mass</div>
 <div class="line"><strong>Description</strong>: Minimum shell mass in MINT’s nuclear burning routines.</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 1e-06</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 <div class="line-block">
 <div class="line"><strong>Parameter</strong>: MINT_maximum_shell_mass</div>
 <div class="line"><strong>Description</strong>: Maximum shell mass in MINT’s nuclear burning routines. :</div>
 <div class="line"><strong>Parameter input type</strong>: Float</div>
-<div class="line"><strong>Default value</strong>: 0.1</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>:</div>
 </div>
 </section>
@@ -3533,6 +3554,20 @@
 <div class="line"><strong>Default value</strong>: NULL</div>
 <div class="line"><strong>Extra</strong>: Ignore</div>
 </div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: bjorn</div>
+<div class="line"><strong>Description</strong>: Usage: –bjorn    … shows an ASCII-art picture of Björn (requires jp2a to be installed).</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Extra</strong>: 0</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>Parameter</strong>: logo</div>
+<div class="line"><strong>Description</strong>: Usage: –logo    … shows an ASCII-art picture of the binary_c logo (requires jp2a to be installed).</div>
+<div class="line"><strong>Parameter input type</strong>: *</div>
+<div class="line"><strong>Default value</strong>: NULL</div>
+<div class="line"><strong>Extra</strong>: 0</div>
+</div>
 </section>
 </section>
 
@@ -3555,9 +3590,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/custom_logging_functions.html b/docs/build/html/custom_logging_functions.html
index d32f75ac4..cd62f2e43 100644
--- a/docs/build/html/custom_logging_functions.html
+++ b/docs/build/html/custom_logging_functions.html
@@ -330,9 +330,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/dicts.html b/docs/build/html/dicts.html
index cfea40d7d..abc404191 100644
--- a/docs/build/html/dicts.html
+++ b/docs/build/html/dicts.html
@@ -526,9 +526,9 @@ so that they don’t have to be calculated each time.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/ensemble.html b/docs/build/html/ensemble.html
index afb38efb3..233786799 100644
--- a/docs/build/html/ensemble.html
+++ b/docs/build/html/ensemble.html
@@ -236,7 +236,7 @@ creates a working JSON dictionary out of it.</p>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.ensemble.load_ensemble">
-<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.ensemble.</span></span><span class="sig-name descname"><span class="pre">load_ensemble</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">convert_float_keys</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">select_keys</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">timing</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flush</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/ensemble.html#load_ensemble"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.ensemble.load_ensemble" title="Permalink to this definition"></a></dt>
+<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.ensemble.</span></span><span class="sig-name descname"><span class="pre">load_ensemble</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">convert_float_keys</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">select_keys</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">timing</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flush</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">quiet</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/ensemble.html#load_ensemble"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.ensemble.load_ensemble" title="Permalink to this definition"></a></dt>
 <dd><p>Function to load an ensemeble file, even if it is compressed,
 and return its contents to as a Python dictionary.</p>
 <dl class="field-list simple">
@@ -276,9 +276,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/example_notebooks.html b/docs/build/html/example_notebooks.html
index 3ffc73970..2f234783e 100644
--- a/docs/build/html/example_notebooks.html
+++ b/docs/build/html/example_notebooks.html
@@ -210,9 +210,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_BHBH.html b/docs/build/html/examples/notebook_BHBH.html
index 2720eb88d..1098c3f54 100644
--- a/docs/build/html/examples/notebook_BHBH.html
+++ b/docs/build/html/examples/notebook_BHBH.html
@@ -915,7 +915,21 @@ Found bound BHBH system
 </pre></div></div>
 </div>
 <p>Playing around with the input for an individual system gives us some understanding of which parameters affect the formation of black hole systems, but, as mentioned in the introduction, this is nto the most appropriate way to find many such systems. We want to make use of the Population utilities, and set up custom logging and a parse function.</p>
-<p>Things to try next: * Set up a population object with a grid in M1, q and orbital period (10 x 10 x 10) * Set up a custom logging function to catch BHBH systems, and include the ZAMS properties in the output. * Set up a parse function to process the output, try writing the output to a file. * Run this population at several different metallicities. Do you see a trend?</p>
+<p>Things to try next:</p>
+<ul class="simple">
+<li><p>Set up a population object with a grid in M1, q and orbital period (10 x 10 x 10)</p></li>
+<li><p>Set up a custom logging function to catch BHBH systems, and include the ZAMS properties in the output.</p></li>
+<li><p>Set up a parse function to process the output, try writing the output to a file.</p></li>
+<li><p>Run this population at several different metallicities. Do you see a trend?</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span>
+</pre></div>
+</div>
+</div>
 </section>
 
 
@@ -937,9 +951,9 @@ Found bound BHBH system
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_BHBH.ipynb b/docs/build/html/examples/notebook_BHBH.ipynb
index c3fa9b934..d639f4bd6 100644
--- a/docs/build/html/examples/notebook_BHBH.ipynb
+++ b/docs/build/html/examples/notebook_BHBH.ipynb
@@ -649,11 +649,20 @@
     "Playing around with the input for an individual system gives us some understanding of which parameters affect the formation of black hole systems, but, as mentioned in the introduction, this is nto the most appropriate way to find many such systems. We want to make use of the Population utilities, and set up custom logging and a parse function.\n",
     "\n",
     "Things to try next:\n",
+    "\n",
     "* Set up a population object with a grid in M1, q and orbital period (10 x 10 x 10)\n",
     "* Set up a custom logging function to catch BHBH systems, and include the ZAMS properties in the output.\n",
     "* Set up a parse function to process the output, try writing the output to a file.\n",
     "* Run this population at several different metallicities. Do you see a trend?"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "c8b4d134-1b41-49cc-a122-2aee89818248",
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
diff --git a/docs/build/html/examples/notebook_HRD.html b/docs/build/html/examples/notebook_HRD.html
index a8f72aef5..0aff065b3 100644
--- a/docs/build/html/examples/notebook_HRD.html
+++ b/docs/build/html/examples/notebook_HRD.html
@@ -945,9 +945,9 @@ very start.</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_api_functionality.html b/docs/build/html/examples/notebook_api_functionality.html
index fb06a9396..2a0bc9a95 100644
--- a/docs/build/html/examples/notebook_api_functionality.html
+++ b/docs/build/html/examples/notebook_api_functionality.html
@@ -721,9 +721,9 @@ MAXIMUM MASS RATIO 0.0141
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 2f498e8dc..391772da4 100644
--- a/docs/build/html/examples/notebook_common_envelope_evolution.html
+++ b/docs/build/html/examples/notebook_common_envelope_evolution.html
@@ -739,9 +739,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_custom_logging.html b/docs/build/html/examples/notebook_custom_logging.html
index 545746509..fe9a2ce15 100644
--- a/docs/build/html/examples/notebook_custom_logging.html
+++ b/docs/build/html/examples/notebook_custom_logging.html
@@ -793,9 +793,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_ensembles.html b/docs/build/html/examples/notebook_ensembles.html
index 3c55c5713..268e9a6e1 100644
--- a/docs/build/html/examples/notebook_ensembles.html
+++ b/docs/build/html/examples/notebook_ensembles.html
@@ -151,9 +151,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_extra_features.html b/docs/build/html/examples/notebook_extra_features.html
index fe5d781d2..3efd6551c 100644
--- a/docs/build/html/examples/notebook_extra_features.html
+++ b/docs/build/html/examples/notebook_extra_features.html
@@ -526,9 +526,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_individual_systems.html b/docs/build/html/examples/notebook_individual_systems.html
index 58de6967b..5e76fb02e 100644
--- a/docs/build/html/examples/notebook_individual_systems.html
+++ b/docs/build/html/examples/notebook_individual_systems.html
@@ -832,9 +832,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 2de613734..490723d69 100644
--- a/docs/build/html/examples/notebook_luminosity_function_binaries.html
+++ b/docs/build/html/examples/notebook_luminosity_function_binaries.html
@@ -935,9 +935,9 @@ Done population run!
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 ca5c2a571..251b85c05 100644
--- a/docs/build/html/examples/notebook_luminosity_function_single.html
+++ b/docs/build/html/examples/notebook_luminosity_function_single.html
@@ -949,9 +949,9 @@ Added analytics to metadata
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_population.html b/docs/build/html/examples/notebook_population.html
index 96975f411..330cb48dc 100644
--- a/docs/build/html/examples/notebook_population.html
+++ b/docs/build/html/examples/notebook_population.html
@@ -1412,9 +1412,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/notebook_solar_system.html b/docs/build/html/examples/notebook_solar_system.html
index d5186edd8..01ac4fca5 100644
--- a/docs/build/html/examples/notebook_solar_system.html
+++ b/docs/build/html/examples/notebook_solar_system.html
@@ -657,9 +657,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/old/basic_example.html b/docs/build/html/examples/old/basic_example.html
index 9954a2b4a..137029277 100644
--- a/docs/build/html/examples/old/basic_example.html
+++ b/docs/build/html/examples/old/basic_example.html
@@ -458,9 +458,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/examples/old/workshop_example_notebook.html b/docs/build/html/examples/old/workshop_example_notebook.html
index 500aaf10b..ead82bfc3 100644
--- a/docs/build/html/examples/old/workshop_example_notebook.html
+++ b/docs/build/html/examples/old/workshop_example_notebook.html
@@ -889,9 +889,9 @@ Took 14.214274644851685s
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/functions.html b/docs/build/html/functions.html
index ef1abd20b..7e3f1051b 100644
--- a/docs/build/html/functions.html
+++ b/docs/build/html/functions.html
@@ -484,6 +484,12 @@ the help function to get as much information as possible.</p>
 <dd><p>Function to get the username of the user that spawned the current process</p>
 </dd></dl>
 
+<dl class="py function">
+<dt class="sig sig-object py" id="binarycpython.utils.functions.hostnames">
+<span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">hostnames</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#hostnames"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.hostnames" title="Permalink to this definition"></a></dt>
+<dd><p>Return a list of possible hostnames for this machine</p>
+</dd></dl>
+
 <dl class="py function">
 <dt class="sig sig-object py" id="binarycpython.utils.functions.imports">
 <span class="sig-prename descclassname"><span class="pre">binarycpython.utils.functions.</span></span><span class="sig-name descname"><span class="pre">imports</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/functions.html#imports"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.functions.imports" title="Permalink to this definition"></a></dt>
@@ -733,9 +739,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/genindex.html b/docs/build/html/genindex.html
index f96b236d6..64cc1a0a0 100644
--- a/docs/build/html/genindex.html
+++ b/docs/build/html/genindex.html
@@ -471,13 +471,15 @@
 </li>
       <li><a href="grid.html#binarycpython.utils.grid.Population.evolve">evolve() (binarycpython.utils.grid.Population method)</a>
 </li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="grid.html#binarycpython.utils.grid.Population.evolve_single">evolve_single() (binarycpython.utils.grid.Population method)</a>
 </li>
+  </ul></td>
+  <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="functions.html#binarycpython.utils.functions.example_parse_output">example_parse_output() (in module binarycpython.utils.functions)</a>
 </li>
       <li><a href="grid.html#binarycpython.utils.grid.Population.exit">exit() (binarycpython.utils.grid.Population method)</a>
+</li>
+      <li><a href="grid.html#binarycpython.utils.grid.Population.expand_args_by_hostname">expand_args_by_hostname() (binarycpython.utils.grid.Population method)</a>
 </li>
       <li><a href="grid.html#binarycpython.utils.grid.Population.export_all_info">export_all_info() (binarycpython.utils.grid.Population method)</a>
 </li>
@@ -576,6 +578,8 @@
 <table style="width: 100%" class="indextable genindextable"><tr>
   <td style="width: 33%; vertical-align: top;"><ul>
       <li><a href="ensemble.html#binarycpython.utils.ensemble.handle_ensemble_string_to_json">handle_ensemble_string_to_json() (in module binarycpython.utils.ensemble)</a>
+</li>
+      <li><a href="functions.html#binarycpython.utils.functions.hostnames">hostnames() (in module binarycpython.utils.functions)</a>
 </li>
       <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC">HPC (class in binarycpython.utils.population_extensions.HPC)</a>
 </li>
@@ -602,11 +606,11 @@
       <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC.HPC_job_id_range">HPC_job_id_range() (binarycpython.utils.population_extensions.HPC.HPC method)</a>
 </li>
       <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC.HPC_job_task">HPC_job_task() (binarycpython.utils.population_extensions.HPC.HPC method)</a>
-</li>
-      <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC.HPC_job_type">HPC_job_type() (binarycpython.utils.population_extensions.HPC.HPC method)</a>
 </li>
   </ul></td>
   <td style="width: 33%; vertical-align: top;"><ul>
+      <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC.HPC_job_type">HPC_job_type() (binarycpython.utils.population_extensions.HPC.HPC method)</a>
+</li>
       <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC.HPC_jobID">HPC_jobID() (binarycpython.utils.population_extensions.HPC.HPC method)</a>
 </li>
       <li><a href="population_extensions/HPC.html#binarycpython.utils.population_extensions.HPC.HPC.HPC_jobID_tuple">HPC_jobID_tuple() (binarycpython.utils.population_extensions.HPC.HPC method)</a>
@@ -809,6 +813,8 @@
       <li><a href="dicts.html#binarycpython.utils.dicts.multiply_float_values">multiply_float_values() (in module binarycpython.utils.dicts)</a>
 </li>
       <li><a href="dicts.html#binarycpython.utils.dicts.multiply_values_dict">multiply_values_dict() (in module binarycpython.utils.dicts)</a>
+</li>
+      <li><a href="grid.html#binarycpython.utils.grid.Population.my_hostnames">my_hostnames() (binarycpython.utils.grid.Population method)</a>
 </li>
   </ul></td>
 </tr></table>
@@ -1088,9 +1094,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/grid.html b/docs/build/html/grid.html
index 4c0a274a9..f071e0b53 100644
--- a/docs/build/html/grid.html
+++ b/docs/build/html/grid.html
@@ -132,22 +132,15 @@
 <dl class="simple">
 <dt>Tasks:</dt><dd><ul class="simple">
 <li><p>TODO: add functionality to ‘on-init’ set arguments</p></li>
-<li><p>TODO: add functionality to return the initial_abundance_hash</p></li>
-<li><p>TODO: add functionality to return the isotope_hash</p></li>
-<li><p>TODO: add functionality to return the isotope_list</p></li>
-<li><p>TODO: add functionality to return the nuclear_mass_hash</p></li>
-<li><p>TODO: add functionality to return the nuclear_mass_list</p></li>
-<li><p>TODO: add functionality to return the source_list</p></li>
-<li><p>TODO: add functionality to return the ensemble_list</p></li>
 <li><p>TODO: consider spreading the functions over more files.</p></li>
 <li><p>TODO: type the private functions</p></li>
 <li><p>TODO: fix the correct object types for the default values of the bse_options</p></li>
 <li><p>TODO: think of a clean and nice way to unload and remove the custom_logging_info library from memory (and from disk)</p></li>
 <li><p>TODO: think of a nice way to remove the loaded grid_code/ generator from memory.</p></li>
+<li><p>TODO: Some of the methods that we have defined in the (mixin) class are designed to be used as a portal to information (return_binary_c_version_info for example.) The current design is that they are all instance methods, but that is not always necessary. We can decorate them with &#64;staticmethod, or &#64;classmethod to make it easier to use them (<a class="reference external" href="https://realpython.com/instance-class-and-static-methods-demystified/">https://realpython.com/instance-class-and-static-methods-demystified/</a>)</p></li>
 </ul>
 </dd>
 </dl>
-<p>TODO: Some of the methods that we have defined in the (mixin) class are designed to be used as a portal to information (return_binary_c_version_info for example.) THe current design is that they are all instance methods, but that is not always necessary. We can decorate them with &#64;staticmethod, or &#64;classmethod to make it easier to use them (<a class="reference external" href="https://realpython.com/instance-class-and-static-methods-demystified/">https://realpython.com/instance-class-and-static-methods-demystified/</a>)</p>
 <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>
@@ -211,6 +204,17 @@ but also to post a message (if message is True, default is True)
 and perhaps a stacktrace (if stacktrace is True, default is False).</p>
 </dd></dl>
 
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.grid.Population.expand_args_by_hostname">
+<span class="sig-name descname"><span class="pre">expand_args_by_hostname</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cmdline_args</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/grid.html#Population.expand_args_by_hostname"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.grid.Population.expand_args_by_hostname" title="Permalink to this definition"></a></dt>
+<dd><p>Expand a set of arguments by scanning each of them
+for host-specific dicts.</p>
+<p>Given each arg, either as a string “x=y” or dict {x:y},
+determine whether y is a dict and if so does one of the keys
+match the current hostname or “default”, if so use the
+corresponding value for the current machine.</p>
+</dd></dl>
+
 <dl class="py method">
 <dt class="sig sig-object py" id="binarycpython.utils.grid.Population.export_all_info">
 <span class="sig-name descname"><span class="pre">export_all_info</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">use_datadir</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">outfile</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">include_population_settings</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">include_binary_c_defaults</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">include_binary_c_version_info</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">include_binary_c_help_all</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">ensure_ascii</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">indent</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">4</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/grid.html#Population.export_all_info"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.grid.Population.export_all_info" title="Permalink to this definition"></a></dt>
@@ -262,6 +266,11 @@ simulation_&lt;date+time&gt;_settings.json will be created</p></li>
 HPC processes return whatever HPC_jobID() gives.</p>
 </dd></dl>
 
+<dl class="py method">
+<dt class="sig sig-object py" id="binarycpython.utils.grid.Population.my_hostnames">
+<span class="sig-name descname"><span class="pre">my_hostnames</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/grid.html#Population.my_hostnames"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.grid.Population.my_hostnames" title="Permalink to this definition"></a></dt>
+<dd></dd></dl>
+
 <dl class="py method">
 <dt class="sig sig-object py" id="binarycpython.utils.grid.Population.parse_cmdline">
 <span class="sig-name descname"><span class="pre">parse_cmdline</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/grid.html#Population.parse_cmdline"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#binarycpython.utils.grid.Population.parse_cmdline" title="Permalink to this definition"></a></dt>
@@ -378,9 +387,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/grid_options_descriptions.html b/docs/build/html/grid_options_descriptions.html
index 0037fc2d4..cfc81ac0a 100644
--- a/docs/build/html/grid_options_descriptions.html
+++ b/docs/build/html/grid_options_descriptions.html
@@ -105,7 +105,7 @@
 <section id="population-grid-code-options">
 <h1>Population grid code options<a class="headerlink" href="#population-grid-code-options" title="Permalink to this heading"></a></h1>
 <p>The following chapter contains all grid code options, along with their descriptions
-There are 29 options that are not described yet.</p>
+There are 31 options that are not described yet.</p>
 <section id="public-options">
 <h2>Public options<a class="headerlink" href="#public-options" title="Permalink to this heading"></a></h2>
 <p>The following options are meant to be changed by the user.</p>
@@ -278,6 +278,12 @@ There are 29 options that are not described yet.</p>
 <div class="line"><strong>log_dt</strong>: Time between verbose logging output.</div>
 </div>
 <div class="line-block">
+<div class="line"><strong>log_failed_systems</strong>: No description available yet</div>
+</div>
+<div class="line-block">
+<div class="line"><strong>log_failed_systems_dir</strong>: No description available yet</div>
+</div>
+<div class="line-block">
 <div class="line"><strong>log_file</strong>: Log file for the population object. Unused</div>
 </div>
 <div class="line-block">
@@ -647,9 +653,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/index.html b/docs/build/html/index.html
index 27c00fa1f..eea0a614b 100644
--- a/docs/build/html/index.html
+++ b/docs/build/html/index.html
@@ -108,7 +108,7 @@
 <p>We present our package <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/">binary-c-python</a>, a population synthesis code which is aimed to provide a convenient and easy-to-use interface to the <a class="reference external" href="http://personal.ph.surrey.ac.uk/~ri0005/doc/binary_c/binary_c.html">binary_c</a> framework, allowing the user to rapidly evolve single stellar systems and populations of star systems. Based on a early work by Jeff Andrews. Updated and extended for Python3 by David Hendriks, Robert Izzard.</p>
 <p>binary_c-python is developed for students and scientists in the field of stellar astrophysics, who want to study the evolution of individual or populations of single and binary star systems (see the example use-case notebooks in the <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/example_notebooks.html">online documentation</a>.</p>
 <p>The current release is version <a class="reference external" href="VERSION">version</a>, and is designed and tested to work with binary_c version 2.2.1 (for older or newer versions we can’t guarantee correct behaviour).</p>
-<p>The current development branch is <code class="docutils literal notranslate"><span class="pre">development_0.9.5/2.2.1</span></code>.</p>
+<p>The current development branch is <code class="docutils literal notranslate"><span class="pre">development_0.9.5/2.2.2</span></code>.</p>
 <section id="installation">
 <h2>Installation<a class="headerlink" href="#installation" title="Permalink to this heading"></a></h2>
 <p>To install binary_c-python we need to make sure we meet the requirements of installation, and</p>
@@ -178,6 +178,7 @@
 <section id="documentation">
 <h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this heading"></a></h3>
 <p>Look in the docs/ directory. Within the build/html/ there is the html version of the documentation. The documentation is also hosted on <a class="reference external" href="http://personal.ph.surrey.ac.uk/~ri0005/doc/binary_c/binary_c.html">http://personal.ph.surrey.ac.uk/~ri0005/doc/binary_c/binary_c.html</a> but only for the most recent stable release.</p>
+<p>This documentation is hosted on gitlab-pages through a gitlab-runner that executes the contents of <code class="docutils literal notranslate"><span class="pre">.gitlab-ci.yml</span></code>. The runner copies the contents of <code class="docutils literal notranslate"><span class="pre">docs/build/html</span></code> to <code class="docutils literal notranslate"><span class="pre">public/</span></code>.</p>
 </section>
 </section>
 <section id="development">
@@ -336,9 +337,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/modules.html b/docs/build/html/modules.html
index 9961ab613..1e217b832 100644
--- a/docs/build/html/modules.html
+++ b/docs/build/html/modules.html
@@ -174,9 +174,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv
index 3e77a5e386089d1e8be497065e27c43a57ccfc7e..bb23bac4066e4c6de5d7b65d9b2b49c3c06433b7 100644
GIT binary patch
delta 10219
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

delta 10148
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
S&TTNQR{HC`()$0VmG2vLF53<O

diff --git a/docs/build/html/plot_functions.html b/docs/build/html/plot_functions.html
index 31775e892..b0e52d01f 100644
--- a/docs/build/html/plot_functions.html
+++ b/docs/build/html/plot_functions.html
@@ -378,9 +378,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/HPC.html b/docs/build/html/population_extensions/HPC.html
index 4995e61e4..f9ba61bb2 100644
--- a/docs/build/html/population_extensions/HPC.html
+++ b/docs/build/html/population_extensions/HPC.html
@@ -375,9 +375,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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
index bc5a51dd1..5383d0fc2 100644
--- a/docs/build/html/population_extensions/Moe_di_Stefano_2017.html
+++ b/docs/build/html/population_extensions/Moe_di_Stefano_2017.html
@@ -193,9 +193,9 @@ then set the distribution functions</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/analytics.html b/docs/build/html/population_extensions/analytics.html
index d7897bedb..af33b8ef9 100644
--- a/docs/build/html/population_extensions/analytics.html
+++ b/docs/build/html/population_extensions/analytics.html
@@ -182,9 +182,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/cache.html b/docs/build/html/population_extensions/cache.html
index 7d2c7c6d0..275e1b014 100644
--- a/docs/build/html/population_extensions/cache.html
+++ b/docs/build/html/population_extensions/cache.html
@@ -216,9 +216,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/condor.html b/docs/build/html/population_extensions/condor.html
index 35e886946..69835e647 100644
--- a/docs/build/html/population_extensions/condor.html
+++ b/docs/build/html/population_extensions/condor.html
@@ -235,9 +235,9 @@ TODO: Comment this function better</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/dataIO.html b/docs/build/html/population_extensions/dataIO.html
index 232d3c6e9..2b2e5ff69 100644
--- a/docs/build/html/population_extensions/dataIO.html
+++ b/docs/build/html/population_extensions/dataIO.html
@@ -394,9 +394,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/distribution_functions.html b/docs/build/html/population_extensions/distribution_functions.html
index 32fec1717..acdc8f5e9 100644
--- a/docs/build/html/population_extensions/distribution_functions.html
+++ b/docs/build/html/population_extensions/distribution_functions.html
@@ -834,9 +834,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/grid_logging.html b/docs/build/html/population_extensions/grid_logging.html
index 4b38425e1..c98232e85 100644
--- a/docs/build/html/population_extensions/grid_logging.html
+++ b/docs/build/html/population_extensions/grid_logging.html
@@ -180,9 +180,9 @@ system_number: the system number</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/grid_options_defaults.html b/docs/build/html/population_extensions/grid_options_defaults.html
index e4f6a9eaa..27a9b675f 100644
--- a/docs/build/html/population_extensions/grid_options_defaults.html
+++ b/docs/build/html/population_extensions/grid_options_defaults.html
@@ -243,9 +243,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/gridcode.html b/docs/build/html/population_extensions/gridcode.html
index 7e063b248..1030f61dd 100644
--- a/docs/build/html/population_extensions/gridcode.html
+++ b/docs/build/html/population_extensions/gridcode.html
@@ -299,9 +299,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/metadata.html b/docs/build/html/population_extensions/metadata.html
index 6d5ab84dc..ccaa5b29d 100644
--- a/docs/build/html/population_extensions/metadata.html
+++ b/docs/build/html/population_extensions/metadata.html
@@ -168,9 +168,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/slurm.html b/docs/build/html/population_extensions/slurm.html
index d5bc70a5b..1b9b3c70b 100644
--- a/docs/build/html/population_extensions/slurm.html
+++ b/docs/build/html/population_extensions/slurm.html
@@ -236,9 +236,9 @@ TODO: Comment this function better</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/spacing_functions.html b/docs/build/html/population_extensions/spacing_functions.html
index a39d45529..c12c2429f 100644
--- a/docs/build/html/population_extensions/spacing_functions.html
+++ b/docs/build/html/population_extensions/spacing_functions.html
@@ -323,9 +323,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/population_extensions/version_info.html b/docs/build/html/population_extensions/version_info.html
index 5d423b5f1..a7c4260e9 100644
--- a/docs/build/html/population_extensions/version_info.html
+++ b/docs/build/html/population_extensions/version_info.html
@@ -200,9 +200,9 @@ dictionary</p>
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/py-modindex.html b/docs/build/html/py-modindex.html
index 16dab6e8c..f342310c8 100644
--- a/docs/build/html/py-modindex.html
+++ b/docs/build/html/py-modindex.html
@@ -223,9 +223,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/readme_link.html b/docs/build/html/readme_link.html
index e62e89399..2dd6772a8 100644
--- a/docs/build/html/readme_link.html
+++ b/docs/build/html/readme_link.html
@@ -134,7 +134,7 @@
 <p>We present our package <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/">binary-c-python</a>, a population synthesis code which is aimed to provide a convenient and easy-to-use interface to the <a class="reference external" href="http://personal.ph.surrey.ac.uk/~ri0005/doc/binary_c/binary_c.html">binary_c</a> framework, allowing the user to rapidly evolve single stellar systems and populations of star systems. Based on a early work by Jeff Andrews. Updated and extended for Python3 by David Hendriks, Robert Izzard.</p>
 <p>binary_c-python is developed for students and scientists in the field of stellar astrophysics, who want to study the evolution of individual or populations of single and binary star systems (see the example use-case notebooks in the <a class="reference external" href="https://ri0005.pages.surrey.ac.uk/binary_c-python/example_notebooks.html">online documentation</a>.</p>
 <p>The current release is version <a class="reference external" href="VERSION">version</a>, and is designed and tested to work with binary_c version 2.2.1 (for older or newer versions we can’t guarantee correct behaviour).</p>
-<p>The current development branch is <code class="docutils literal notranslate"><span class="pre">development_0.9.5/2.2.1</span></code>.</p>
+<p>The current development branch is <code class="docutils literal notranslate"><span class="pre">development_0.9.5/2.2.2</span></code>.</p>
 <section id="installation">
 <h2>Installation<a class="headerlink" href="#installation" title="Permalink to this heading"></a></h2>
 <p>To install binary_c-python we need to make sure we meet the requirements of installation, and</p>
@@ -204,6 +204,7 @@
 <section id="documentation">
 <h3>Documentation<a class="headerlink" href="#documentation" title="Permalink to this heading"></a></h3>
 <p>Look in the docs/ directory. Within the build/html/ there is the html version of the documentation. The documentation is also hosted on <a class="reference external" href="http://personal.ph.surrey.ac.uk/~ri0005/doc/binary_c/binary_c.html">http://personal.ph.surrey.ac.uk/~ri0005/doc/binary_c/binary_c.html</a> but only for the most recent stable release.</p>
+<p>This documentation is hosted on gitlab-pages through a gitlab-runner that executes the contents of <code class="docutils literal notranslate"><span class="pre">.gitlab-ci.yml</span></code>. The runner copies the contents of <code class="docutils literal notranslate"><span class="pre">docs/build/html</span></code> to <code class="docutils literal notranslate"><span class="pre">public/</span></code>.</p>
 </section>
 </section>
 <section id="development">
@@ -283,9 +284,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/run_system_wrapper.html b/docs/build/html/run_system_wrapper.html
index 0e7202022..112b6503e 100644
--- a/docs/build/html/run_system_wrapper.html
+++ b/docs/build/html/run_system_wrapper.html
@@ -194,9 +194,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/search.html b/docs/build/html/search.html
index 1d0efe756..3e33aa790 100644
--- a/docs/build/html/search.html
+++ b/docs/build/html/search.html
@@ -101,9 +101,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js
index 45468d049..40de49a05 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_ensembles", "examples/notebook_extra_features", "examples/notebook_individual_systems", "examples/notebook_luminosity_function_binaries", "examples/notebook_luminosity_function_single", "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"], "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_ensembles.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_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"], "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: Generating and handling ensemble data", "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", "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"], "terms": {"The": [0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 27, 28, 29, 30, 31, 32, 34, 36, 37, 39, 40], "follow": [0, 7, 9, 15, 18, 19, 21, 24, 31, 37], "chapter": [0, 21, 23], "contain": [0, 1, 2, 3, 7, 11, 12, 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], "all": [0, 1, 2, 3, 6, 7, 8, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 33, 37, 38, 39, 40], "current": [0, 2, 8, 9, 11, 13, 14, 19, 20, 22, 25, 30, 39], "version": [0, 2, 7, 11, 15, 19, 20, 22, 38, 39], "can": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 30, 31, 34, 39, 40, 42], "handl": [0, 2, 3, 4, 7, 12, 19, 20, 21, 22, 25, 26, 34, 35, 38, 40, 42], "along": [0, 21, 22, 33, 39], "descript": [0, 7, 11, 19, 21, 26, 31, 33], "other": [0, 1, 2, 5, 6, 11, 12, 13, 14, 15, 19, 21, 22, 24, 25, 31, 33, 39], "properti": [0, 5, 19, 21, 24, 34], "thi": [0, 1, 2, 3, 5, 6, 7, 8, 9, 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], "inform": [0, 1, 3, 4, 6, 9, 12, 13, 14, 15, 19, 20, 21, 24, 25, 31, 33, 35, 38], "wa": [0, 6, 11, 12, 14, 15, 20, 21, 22, 30, 31, 39], "obtain": [0, 6, 8, 13, 14, 30], "build": [0, 1, 4, 7, 19, 25, 31], "git": [0, 15, 19, 22, 39], "branch": [0, 6, 19, 22, 38, 39], "branch_david": 0, "revis": [0, 38], "6118": 0, "20220617": 0, "8463fa650": 0, "built": [0, 1, 19, 22, 39], "jun": 0, "17": [0, 5, 13, 14, 15, 18], "2022": [0, 13], "23": [0, 5, 15], "20": [0, 5, 8, 9, 13, 14, 15, 16, 18, 37], "34": [0, 5, 7, 9, 12, 13, 15], "metal": [0, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 31, 42], "set": [0, 1, 2, 3, 4, 5, 9, 11, 12, 16, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37, 38, 39], "e": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 19, 20, 21, 22, 25, 28, 29, 30, 31, 34, 36, 37, 39, 42], "amount": [0, 2, 7], "mass": [0, 1, 2, 4, 5, 6, 7, 8, 11, 12, 13, 15, 16, 18, 19, 21, 24, 31, 34, 37, 38, 40, 42], "matter": [0, 7], "which": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 25, 29, 30, 31, 33, 34, 36, 37, 38, 39, 40, 42], "hydrogen": [0, 6, 7], "helium": [0, 6, 7], "If": [0, 2, 6, 7, 8, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26, 27, 29, 30, 31, 34, 36, 39, 40, 42], "you": [0, 1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 30, 31, 33, 34, 37, 39, 42], "ar": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 28, 29, 30, 31, 33, 34, 36, 37, 38, 39, 42], "us": [0, 1, 2, 3, 4, 11, 12, 15, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37, 38, 40, 42], "bse": [0, 7, 9, 15, 31], "must": [0, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 30, 34, 37], "1e": [0, 7, 9, 12, 13, 18], "4": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20, 30, 31, 37], "0": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 25, 26, 28, 31, 34, 37, 39, 42], "03": [0, 1, 5, 7, 13], "see": [0, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22, 24, 28, 30, 31, 34, 38, 39], "also": [0, 4, 5, 6, 7, 8, 9, 13, 14, 15, 18, 19, 20, 21, 22, 25, 27, 30, 33, 38, 39, 42], "nucsyn_metal": [0, 7], "effective_metal": [0, 7, 18], "type": [0, 1, 2, 3, 5, 8, 12, 13, 14, 15, 18, 19, 20, 21, 24, 25, 30, 31, 33, 34, 37, 38, 41, 42], "float": [0, 2, 3, 5, 7, 11, 12, 16, 19, 31, 32, 37, 42], "default": [0, 1, 2, 3, 6, 7, 9, 11, 13, 14, 15, 18, 19, 20, 21, 25, 26, 28, 29, 30, 31, 33, 36, 37, 38, 40], "valu": [0, 1, 2, 3, 6, 7, 11, 12, 13, 14, 15, 18, 19, 20, 21, 24, 27, 28, 31, 33, 34, 37], "02": [0, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 31, 42], "effect": [0, 5, 7, 9, 13, 21, 31], "routin": [0, 2, 4, 7, 22, 24, 40], "like": [0, 1, 6, 7, 8, 13, 14, 15, 16, 18, 19, 21, 22, 24, 30, 37, 39], "schneider": [0, 7], "wind": [0, 5, 6, 7, 13], "loss": [0, 5, 7, 12, 13, 16], "default_to_metal": [0, 7], "1": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 21, 22, 24, 25, 29, 30, 31, 32, 34, 36, 37, 39, 40, 42], "just": [0, 2, 6, 7, 8, 15, 18, 19, 20, 21, 22, 26, 30, 38, 39, 42], "same": [0, 2, 7, 12, 15, 21, 22, 31, 34, 39, 40], "main": [0, 1, 6, 7, 9, 13, 14, 15, 18, 21, 22, 39], "differ": [0, 5, 6, 7, 8, 13, 14, 15, 18, 19, 21, 22, 24, 37, 39], "between": [0, 7, 21, 31, 37], "rang": [0, 6, 7, 8, 12, 13, 14, 15, 21, 31, 34, 37], "valid": [0, 7, 9, 19, 31], "while": [0, 5, 6, 7, 8, 13], "s": [0, 2, 3, 5, 6, 7, 8, 12, 14, 15, 16, 18, 19, 20, 21, 25, 27, 28, 30, 31, 35, 42], "limit": [0, 6, 7, 8, 13, 14, 15, 21, 24], "stellar": [0, 4, 5, 7, 21, 22, 24, 31, 37, 38, 39, 41], "evolut": [0, 1, 4, 5, 6, 7, 12, 13, 14, 15, 16, 18, 21, 22, 24, 37, 39], "so": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 20, 21, 24, 25, 30], "macro": [0, 11, 19, 38], "m_1": [0, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 34, 40], "initi": [0, 4, 5, 6, 7, 11, 12, 18, 20, 31], "one": [0, 2, 7, 11, 14, 15, 16, 17, 18, 21, 24, 28, 30, 33, 37, 40], "solar": [0, 4, 6, 7, 8, 11, 22, 31, 42], "unit": [0, 6, 7, 11, 16, 19, 42], "intern": [0, 7, 11, 21], "index": [0, 7, 11, 12, 15, 16, 21, 22, 25, 31, 34], "m_2": [0, 5, 6, 7, 8, 9, 12, 13, 15, 17, 18], "two": [0, 2, 6, 7, 9, 19, 22, 30, 32, 39, 41, 42], "m_3": [0, 7], "three": [0, 7, 13, 14, 15, 31], "2": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 24, 25, 29, 31, 36, 37, 39], "m_4": [0, 7], "four": [0, 7], "3": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 29, 31, 36, 37, 39], "vrot1": 0, "equatori": 0, "rotat": [0, 31], "veloc": [0, 31], "km": 0, "hurlei": 0, "et": [0, 31, 42], "al": [0, 31, 42], "2000": [0, 5], "2002": 0, "prescript": [0, 5, 15], "sequenc": [0, 6, 9, 13, 14, 18], "truli": 0, "non": [0, 2, 14, 21, 22, 30, 39], "someth": [0, 6, 8, 12, 13, 14, 21, 42], "small": [0, 5, 14], "g": [0, 1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 17, 18, 19, 21, 22, 25, 28, 29, 30, 31, 36, 37, 39], "001": [0, 5], "vrot2": 0, "vrot_bs": 0, "vrot_breakup": 0, "vrot_sync": 0, "vrot_non_rot": 0, "vrot3": 0, "vrot4": 0, "prot1": 0, "prot2": 0, "prot3": 0, "period": [0, 5, 7, 8, 9, 12, 13, 14, 15, 16, 18, 24, 31, 42], "dai": [0, 5, 8, 9, 12, 13, 15, 18, 31, 42], "prot4": 0, "inclination1": 0, "inclin": 0, "degre": 0, "inclination2": 0, "inclination3": 0, "inclination4": 0, "b_1": 0, "magnet": 0, "field": [0, 22, 39], "gauss": 0, "b_2": 0, "b_3": 0, "b_4": 0, "b_inclination1": 0, "b_inclination2": 0, "b_inclination3": 0, "b_inclination4": 0, "stellar_type_1": [0, 15, 24], "usual": [0, 5, 6, 7, 13, 14, 15, 19, 21, 30, 31], "main_sequ": [0, 13, 14, 18], "note": [0, 5, 6, 13, 14, 15, 18, 19, 21, 25, 30, 34, 37, 38], "onli": [0, 2, 6, 9, 13, 14, 15, 16, 18, 19, 21, 22, 25, 26, 30, 37, 39, 42], "work": [0, 2, 3, 9, 12, 13, 14, 15, 18, 19, 21, 22, 25, 30, 39], "both": [0, 2, 7, 13, 14, 15], "ag": [0, 4, 5, 6, 8, 22, 37], "core_mass": [0, 9], "white": [0, 6], "dwarf": [0, 6, 14], "black": [0, 4, 6, 22], "hole": [0, 4, 6, 22], "neutrn": 0, "integ": [0, 6, 21, 37, 42], "low_mass_m": 0, "ms": [0, 5, 9, 13], "hg": 0, "giant_branch": 0, "cheb": 0, "eagb": [0, 5], "5": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 22, 28, 30, 31, 34, 39], "tpagb": [0, 6], "6": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 22, 39], "hem": 0, "7": [0, 1, 5, 6, 7, 8, 9, 12, 14, 15, 16, 17, 18, 22, 31, 39], "hehg": 0, "8": [0, 3, 5, 6, 8, 9, 12, 14, 15, 16, 18, 30, 31], "hegb": [0, 5], "9": [0, 5, 6, 7, 9, 12, 13, 14, 15, 18, 22, 39], "hewd": 0, "10": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 17, 18, 21, 31, 37, 40], "cowd": 0, "11": [0, 5, 6, 9, 12, 14, 15, 18], "onewd": 0, "12": [0, 5, 6, 9, 12, 13, 14, 15, 18, 19, 31], "ns": [0, 1, 8, 9, 15], "13": [0, 5, 6, 8, 9, 12, 14, 15, 18], "bh": [0, 5, 8], "14": [0, 5, 9, 12, 14, 15, 18], "massless_remn": 0, "15": [0, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 21, 31], "low_mass_main_sequ": 0, "hertzsprung_gap": 0, "first_giant_branch": 0, "core_helium_burn": 0, "early_asymptotic_giant_branch": 0, "thermally_pulsing_asymptotic_giant_branch": 0, "naked_main_sequence_helium_star": 0, "naked_helium_star_hertzsprung_gap": 0, "naked_helium_star_giant_branch": 0, "helium_white_dwarf": 0, "carbon_oxygen_white_dwarf": 0, "oxygen_neon_white_dwarf": 0, "neutron_star": 0, "black_hol": 0, "star_with_no_mass": 0, "stellar_type_2": [0, 15, 24], "stellar_type_3": 0, "stellar_type_4": 0, "max_stellar_type_1": 0, "maximum": [0, 6, 7, 8, 9, 13, 14, 15, 21, 31, 37, 42], "stop": [0, 8, 13, 18, 19, 21], "when": [0, 1, 2, 3, 6, 7, 8, 11, 12, 15, 16, 19, 21, 22, 25, 27, 28, 29, 30, 31, 33, 36, 37, 39, 40], "reach": [0, 5, 6, 8], "neg": [0, 2, 37], "massless": 0, "remnant": [0, 6], "allow": [0, 2, 9, 17, 18, 21, 22, 28, 31, 39], "absolut": [0, 19, 37], "16": [0, 5, 14, 18, 31], "max_stellar_type_2": 0, "max_stellar_type_3": 0, "max_stellar_type_4": 0, "probabl": [0, 1, 2, 6, 8, 9, 13, 14, 15, 18, 20, 21, 24, 30, 31, 33, 34], "weight": [0, 14, 21], "appli": 0, "base": [0, 2, 3, 5, 8, 14, 15, 19, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42], "sai": [0, 6], "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], "run": [0, 1, 4, 5, 6, 7, 8, 13, 14, 17, 19, 20, 21, 25, 27, 29, 31, 34, 36, 40, 42], "grid": [0, 4, 5, 12, 19, 20, 22, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 42], "simul": [0, 1, 6, 8, 9, 14, 15, 36], "sum": [0, 2], "should": [0, 1, 2, 5, 6, 8, 12, 13, 14, 15, 18, 19, 21, 22, 24, 25, 29, 30, 31, 33, 36, 37, 39, 40], "phasevol": [0, 15], "system": [0, 4, 6, 7, 8, 9, 13, 14, 15, 17, 18, 19, 20, 21, 22, 24, 31, 32, 35, 39, 40, 42], "phase": [0, 6, 8, 13, 14], "volum": 0, "binary_grid": 0, "null": [0, 7, 19], "stellar_structure_algorithm": 0, "structur": [0, 2, 8, 19, 21, 24], "modifi": [0, 2, 9, 22, 39], "none": [0, 1, 2, 3, 5, 6, 7, 8, 13, 14, 15, 16, 18, 19, 20, 21, 25, 26, 28, 29, 30, 31, 33, 34, 36, 37, 42], "extern": 0, "defin": [0, 1, 15, 20, 24, 31, 34], "call": [0, 1, 2, 11, 12, 14, 15, 19, 20, 21, 24, 25, 29, 30, 32, 34, 36, 37, 38, 40], "code": [0, 1, 5, 9, 12, 13, 14, 15, 17, 18, 20, 24, 29, 30, 31, 33, 34, 36, 37, 40, 42], "yet": [0, 2, 18, 19, 21, 24], "implement": [0, 2, 21], "stellar_structure_algorithm_modified_bs": 0, "stellar_structure_algorithm_non": 0, "stellar_structure_algorithm_external_funct": 0, "stellar_structure_algorithm_mint": 0, "solver": 0, "forward": 0, "euler": 0, "could": [0, 3, 14, 15, 18, 19, 38], "rk2": 0, "rk4": 0, "predictor": 0, "corretor": 0, "solver_forward_eul": 0, "solver_rk2": 0, "solver_rk4": 0, "solver_predictor_corrector": 0, "max_evolution_tim": [0, 1, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 37], "myr": [0, 6, 8, 12, 13, 14, 16, 37], "15000": [0, 5, 7, 9, 12, 15, 16, 18], "max_model_numb": 0, "number": [0, 2, 3, 5, 6, 8, 13, 14, 15, 16, 18, 19, 20, 21, 25, 30, 31, 32, 33, 34, 37], "model": [0, 1, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 21], "ignor": [0, 2, 9, 12, 15, 18, 21, 31, 34], "monte_carlo_kick": 0, "turn": [0, 2, 3, 5, 12, 15, 19], "mont": [0, 21], "carlo": [0, 21], "sn": [0, 5, 6, 8, 13, 14, 16, 18], "kick": [0, 5, 18, 21], "On": [0, 15, 19, 30], "true": [0, 2, 3, 5, 6, 8, 11, 13, 14, 15, 17, 18, 19, 20, 21, 24, 25, 27, 29, 30, 33, 34, 36, 37, 38], "inde": [0, 14], "broken": 0, "fals": [0, 3, 5, 6, 8, 13, 14, 15, 16, 19, 20, 21, 24, 25, 27, 28, 29, 30, 34, 36, 37, 38], "disable_debug": 0, "disabl": [0, 15], "debug": [0, 6, 8, 13, 14, 15, 21, 32], "ha": [0, 1, 2, 5, 6, 8, 9, 11, 13, 14, 15, 18, 19, 21, 27, 30, 34], "an": [0, 2, 3, 5, 6, 7, 8, 11, 12, 14, 15, 18, 19, 21, 22, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40], "requir": [0, 3, 8, 12, 13, 14, 15, 16, 18, 19, 21, 24, 25, 31, 40], "rebuild": [0, 21, 22, 25, 39], "timestep_log": 0, "timestep": [0, 8, 9, 12, 13, 14], "log": [0, 1, 4, 5, 7, 12, 16, 17, 19, 21, 22, 24, 30, 31, 32, 34, 37, 39, 40, 42], "rejects_in_log": 0, "show": [0, 4, 6, 7, 8, 12, 13, 14, 15, 18, 21, 24, 37], "reject": 0, "vandenheuvel_log": 0, "van": 0, "den": 0, "heuvel": 0, "custom_timeout_tim": 0, "custom": [0, 1, 2, 3, 4, 5, 7, 12, 13, 14, 15, 16, 19, 20, 21, 22, 24, 31, 40], "timeout": 0, "time": [0, 1, 2, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 27, 30, 31, 32, 37], "compil": [0, 1, 9, 15, 18, 22, 39], "david_custom_timeout": 0, "100": [0, 5, 6, 8, 13, 14, 31, 37], "evolution_split": 0, "split": [0, 5, 12, 15, 16, 18, 21, 29, 36], "evolutionari": [0, 12], "splitpoint": 0, "supernova": [0, 5, 8, 21], "occur": [0, 42], "disable_ev": 0, "whether": [0, 5, 7, 15, 19, 20, 21, 24, 29, 30, 31, 33, 36, 37, 38, 42], "new": [0, 2, 6, 8, 12, 13, 14, 15, 19, 20, 25, 30, 31, 34], "event": [0, 5, 6], "we": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 25, 26, 27, 28, 29, 30, 31, 33, 36, 37, 39, 42], "evolution_splitting_sn_eccentricity_threshold": 0, "threshold": [0, 19, 21], "eccentr": [0, 7, 9, 12, 14, 15, 16, 18, 24, 31, 42], "abov": [0, 6, 9, 12, 14, 15, 19, 20, 31], "happen": [0, 6, 8], "01": [0, 8, 9, 13, 14, 15, 18], "evolution_splitting_sn_n": 0, "evolution_splitting_maxdepth": 0, "max": [0, 8, 9, 13, 14, 15, 21, 31], "equation_of_state_algorithm": 0, "equat": 0, "state": [0, 30], "paczynski": 0, "equation_of_state_paczynski": 0, "opacity_algorithm": 0, "opac": 0, "ferguson": 0, "opal": 0, "opacity_algorithm_paczynski": 0, "opacity_algorithm_ferguson_op": 0, "opacity_algorithm_star": 0, "wind_mass_loss": [0, 5], "2018": [0, 1], "sander": 0, "wink": 0, "2020": 0, "lbv": 0, "unsign": 0, "wind_algorithm_non": [0, 5], "wind_algorithm_hurley2002": 0, "wind_algorithm_schneider2018": 0, "wind_algorithm_binary_c_2020": [0, 5], "wind_algorithm_hendriks_2022": 0, "extra": [0, 4, 15, 21, 22, 32, 34, 40], "gbwind": 0, "first": [0, 2, 6, 8, 12, 13, 14, 15, 16, 19, 22, 25, 30, 31, 39, 42], "red": [0, 6, 14, 16], "giant": [0, 6, 16], "reimer": 0, "choos": [0, 6, 8, 9, 13, 18, 24, 25, 30], "gb_reimers_eta": 0, "rate": [0, 14, 31], "schroeder": 0, "cuntz": 0, "2005": 0, "gb_wind_reim": 0, "gb_wind_schroeder_cuntz_2005": 0, "gb_wind_goldman_etal_2017": 0, "gb_wind_beasor_etal_2020": 0, "postagbwind": 0, "special": [0, 15], "post": [0, 5, 6, 8, 9, 20], "A": [0, 2, 4, 5, 15, 28, 42], "gb": 0, "postagb_wind_use_gi": 0, "mean": [0, 5, 19, 21, 22, 29, 31, 36, 37, 39], "whatev": [0, 9, 18, 19, 20, 22, 25, 30, 39], "prescrib": 0, "option": [0, 1, 2, 6, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 25, 26, 28, 30, 31, 33, 34, 37, 39, 42], "includ": [0, 1, 2, 5, 6, 9, 12, 14, 15, 16, 19, 20, 22, 24, 30, 31, 39], "postagb_wind_non": 0, "postagb_wind_krticka2020": 0, "krticka": 0, "kub\u00e1t": 0, "krtickov\u00e1": 0, "635": 0, "a173": 0, "postagb_wind_gi": 0, "teff_postagb_min": 0, "minimum": [0, 7, 19, 21, 31, 37, 38, 42], "temperatur": [0, 16, 24, 31], "teff_postagb_max": 0, "6000": 0, "k": [0, 6, 16, 31], "120000": 0, "mattsson_orich_tpagbwind": 0, "experiment": [0, 19], "mattsson": 0, "oxygen": [0, 6], "rich": 0, "mattsson_mass_loss": 0, "magnetic_braking_factor": 0, "multipli": [0, 2, 14, 21, 37], "brake": 0, "angular": [0, 16, 24], "momentum": [0, 16], "magnetic_braking_gamma": 0, "gamma": 0, "factor": [0, 2, 21, 37], "rappaport": 0, "style": [0, 19, 32], "express": [0, 19], "magnetic_braking_algorithm": 0, "andronov": 0, "pinnsonneault": 0, "sill": 0, "2003": [0, 31], "barn": 0, "kim": 0, "2010": [0, 21, 31], "magnetic_braking_algorithm_hurley_2002": 0, "magnetic_braking_algorithm_andronov_2003": 0, "magnetic_braking_algorithm_barnes_2010": 0, "magnetic_braking_algorithm_rappaport_1983": 0, "helium_flash_mass_loss": 0, "lost": [0, 8, 18], "flash": 0, "multipl": [0, 2, 6, 21, 31], "cf": 0, "eta": [0, 13], "formula": [0, 19], "4e": [0, 18], "8e": 0, "gbwindfac": 0, "tpagbwindfac": 0, "eagbwindfac": 0, "nieuwenhuijzen_windfac": 0, "nieuwenhuijzen": 0, "de": [0, 5], "jager": 0, "tpagbwind": 0, "dure": [0, 5, 16, 18], "karaka": 0, "vassiliadi": 0, "wood": 0, "1993": 0, "bloecker": 0, "loon": 0, "rob": [0, 31, 42], "c": [0, 1, 5, 7, 9, 12, 15, 22, 39, 40], "variant": 0, "respect": [0, 29, 31, 36], "goldman": 0, "2017": [0, 15, 21, 31], "beasor": 0, "tpagb_wind_vw93_karaka": 0, "tpagb_wind_vw93_orig": 0, "tpagb_wind_reim": 0, "tpagb_wind_bloeck": 0, "tpagb_wind_van_loon": 0, "tpagb_wind_rob_cwind": 0, "tpagb_wind_vw93_karakas_carbon_star": 0, "tpagb_wind_vw93_orig_carbon_star": 0, "tpagb_wind_mattsson": 0, "tpagb_wind_goldman_etal_2017": 0, "tpagb_wind_beasor_etal_2020": 0, "eagbwind": 0, "vw93": 0, "eagb_wind_bs": 0, "eagb_wind_goldman_etal_2017": 0, "eagb_wind_beasor_etal_2020": 0, "wind_gas_to_dust_ratio": 0, "ga": 0, "dust": 0, "ratio": [0, 6, 7, 8, 13, 14, 15, 31, 42], "calcul": [0, 2, 6, 8, 13, 14, 15, 19, 21, 27, 31, 34, 42], "typic": 0, "200": 0, "milki": 0, "wai": [0, 2, 5, 12, 14, 20, 21, 25], "500": 0, "magellan": 0, "cloud": 0, "approxim": [0, 6, 8], "mw": 0, "vwind_multipli": 0, "vwind_beta": 0, "beta": 0, "speed": [0, 28], "where": [0, 1, 2, 6, 13, 14, 15, 19, 21, 22, 25, 27, 30, 31, 33, 37, 39], "vwind": 0, "sqrt": 0, "escap": 0, "125": [0, 15], "from": [0, 2, 3, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 29, 30, 31, 34, 36, 38, 42], "superwind_mira_switchon": 0, "In": [0, 2, 5, 6, 8, 9, 11, 12, 13, 14, 15, 18, 21, 30, 37], "agb": [0, 6], "superwind": 0, "given": [0, 1, 3, 7, 13, 14, 17, 18, 19, 20, 21, 25, 28, 29, 30, 31, 34, 36, 37, 40, 42], "mira": 0, "vari": [0, 6, 8, 15], "switch": 0, "vw93_mira_shift": 0, "depend": [0, 6, 19, 21, 22, 24, 31, 39], "plu": 0, "offset": 0, "vw93_multipli": 0, "tpagb_reimers_eta": 0, "tout_pringle_1992_multipli": 0, "tout": [0, 42], "pringl": 0, "1992": 0, "artificial_mass_accretion_r": 0, "d": [0, 1, 5, 6, 8, 9, 12, 13, 15, 16, 19, 37], "constant": [0, 2, 14, 24, 31, 37], "accret": [0, 5], "n": [0, 1, 5, 6, 7, 8, 9, 12, 13, 14, 15, 17, 18, 19, 21, 25, 31], "scanf": 0, "artificial_mass_accretion_rate_by_stellar_typ": 0, "artificial_angular_momentum_accretion_r": 0, "artificial_orbital_angular_momentum_accretion_r": 0, "orbit": [0, 5, 7, 8, 13, 16, 24, 31, 42], "artificial_accretion_start_tim": 0, "artifici": 0, "artificial_accretion_ignor": 0, "artificial_accretion_end_tim": 0, "end": [0, 5, 19, 21, 27, 31], "wr_wind": 0, "massiv": [0, 5, 6, 8, 13, 16, 31], "wr": 0, "maeder": 0, "meynet": 0, "nugi": 0, "lamer": 0, "john": 0, "eldridg": 0, "vink": 0, "earli": [0, 22, 39], "lynnett": 0, "drai": 0, "thesi": 0, "wr_wind_bs": 0, "wr_wind_maeder_meynet": 0, "wr_wind_nugis_lam": 0, "wr_wind_eldridg": 0, "wr_wind_fac": 0, "wrwindfac": 0, "synonym": 0, "instead": [0, 5, 14, 19, 21], "bh_prescript": [0, 5], "prescrit": 0, "relat": 0, "newli": 0, "form": [0, 6, 7, 8, 13, 14, 15, 20, 25, 30, 33, 38], "its": [0, 2, 3, 13, 14, 15, 16, 19, 21, 22, 24, 25, 26, 30, 33, 37, 38, 39, 40], "progenitor": [0, 15], "co": [0, 5], "core": [0, 6, 8, 13, 14, 15, 21, 24], "bh_hurley2002": 0, "bh_belczynski": [0, 5], "belczynski": 0, "bh_spera2015": 0, "spera": 0, "2015": 0, "bh_fryer12_delai": 0, "fryer": 0, "2012": [0, 31], "delai": [0, 21], "bh_fryer12_rapid": [0, 5], "rapid": 0, "bh_fryer12_startrack": 0, "startrack": 0, "ppisn_prescript": 0, "pulsat": 0, "pair": [0, 2, 5, 19, 34, 38], "instabl": 0, "undergo": [0, 8], "ppisn": 0, "pisn": 0, "flag": [0, 1, 20, 21, 30, 37, 38], "binary_c_paramet": [0, 6, 13, 14, 15], "h": [0, 5, 9, 19], "farmer": 0, "2019": [0, 18], "hendrik": [0, 18, 22, 39], "21": [0, 1, 5, 15, 18], "prep": 0, "fit": [0, 2, 12, 31, 42], "data": [0, 3, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16, 18, 19, 21, 22, 25, 26, 30, 31, 34, 40, 42], "ppisn_non": 0, "ppisn_farmer19": 0, "ppisn_new_fit_21": 0, "ppisn_additional_massloss": 0, "addit": 0, "massloss": 0, "top": [0, 15, 34], "result": [0, 1, 2, 3, 8, 12, 13, 14, 15, 18, 19, 21, 22, 25, 30, 31, 37, 39], "posit": [0, 2, 8, 31], "ppisn_core_mass_range_shift": 0, "shift": 0, "taken": [0, 2, 9, 31], "account": [0, 21, 31], "remov": [0, 2, 8, 12, 15, 16, 19, 20], "lower": [0, 13, 15, 31, 34, 37], "higher": [0, 6, 8, 13, 14, 15, 19, 21, 22, 31, 39], "ppisn_massloss_multipli": 0, "p": [0, 6, 8, 13, 14, 16, 31, 33], "THe": [0, 20], "affect": [0, 5, 6], "use_lwn_fallback": 0, "nazehdin": 0, "lovegrov": 0, "wooslei": 0, "envelop": [0, 4, 5, 6, 22], "eject": [0, 8, 16], "fail": [0, 6, 8, 13, 14, 15, 19, 21, 22, 30, 39], "sn_kick_distribution_ii": 0, "distribut": [0, 2, 4, 8, 13, 15, 19, 25, 26, 31, 37], "ii": [0, 18], "collaps": 0, "fix": [0, 5, 12, 19, 20, 24, 30, 31, 32], "maxwellian": 0, "kick_velocity_fix": 0, "kick_velocity_maxwellian": 0, "kick_velocity_custom": 0, "sn_kick_distribution_ecap": 0, "electron": 0, "captur": [0, 5, 13, 19], "sn_kick_distribution_ns_n": 0, "neutron": [0, 6, 15], "surviv": [0, 16], "merger": [0, 5], "sn_kick_distribution_ibc": 0, "born": [0, 6, 13, 14], "after": [0, 6, 8, 9, 13, 14, 15, 20, 21, 30, 34, 37], "ib": [0, 5], "sn_kick_distribution_grb_collapsar": 0, "collapsar": 0, "sn_kick_distribution_tz": 0, "death": 0, "thorn": 0, "zytkow": 0, "object": [0, 2, 3, 4, 5, 7, 11, 16, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40], "sn_kick_distribution_aic_bh": 0, "induc": 0, "sn_kick_distribution_bh_bh": 0, "sn_kick_distribution_bh_n": 0, "sn_kick_distribution_ia_hybrid_hecowd": 0, "ani": [0, 3, 12, 15, 19, 20, 22, 25, 31, 34, 38, 39], "survivor": 0, "hybrid": 0, "he": [0, 5], "snia": 0, "explos": [0, 5, 6, 18], "sn_kick_distribution_ia_hybrid_hecowd_sublumin": 0, "sublumin": 0, "sn_kick_distribution_ppisn": 0, "sn_kick_distribution_pisn": 0, "sn_kick_distribution_phdi": 0, "phdi": 0, "sn_kick_dispersion_ii": [0, 5], "dispers": [0, 37], "190": [0, 5, 18], "sn_kick_dispersion_ecap": 0, "sn_kick_dispersion_ns_n": 0, "sn_kick_dispersion_ibc": [0, 5], "sn_kick_dispersion_grb_collapsar": [0, 5], "sn_kick_dispersion_tz": 0, "sn_kick_dispersion_aic_bh": 0, "sn_kick_dispersion_bh_bh": 0, "sn_kick_dispersion_bh_n": 0, "sn_kick_dispersion_ia_hybrid_hecowd": 0, "sn_kick_dispersion_ia_hybrid_hecowd_sublumin": 0, "sn_kick_dispersion_ppisn": 0, "sn_kick_dispersion_pisn": 0, "sn_kick_dispersion_phdi": 0, "sn_kick_companion_ia_h": 0, "algothim": 0, "companion": [0, 5, 18, 30], "ia": [0, 8], "liu": 0, "wheeler": 0, "1975": 0, "sn_impulse_non": 0, "sn_impulse_liu2015": 0, "sn_impulse_wheeler1975": 0, "sn_kick_companion_ia_eld": 0, "eld": 0, "sub": [0, 2, 19], "mch": 0, "sn_kick_companion_ia_chand": 0, "sn_kick_companion_a": 0, "sn_kick_companion_ecap": 0, "sn_kick_companion_ia_he_co": 0, "sn_kick_companion_ia_chand_co": 0, "sn_kick_companion_ns_n": 0, "sn_kick_companion_grb_collapsar": 0, "grb": 0, "rapidli": [0, 22, 39], "ibc": 0, "sn_kick_companion_hestaria": 0, "sn_kick_companion_ibc": 0, "sn_kick_companion_ii": 0, "sn_kick_companion_iia": 0, "iia": 0, "sn_kick_companion_wdkick": 0, "wd": 0, "sn_kick_companion_tz": 0, "sn_kick_companion_aic_bh": 0, "sn_kick_companion_bh_bh": 0, "merg": [0, 2, 5, 6, 8, 21, 25, 30, 31, 32], "sn_kick_companion_bh_n": 0, "sn_kick_companion_ia_hybrid_hecowd": 0, "sn_kick_companion_ia_hybrid_hecowd_sublumin": 0, "sn_kick_companion_ppisn": 0, "sn_kick_companion_pisn": 0, "sn_kick_companion_phdi": 0, "wd_sigma": 0, "thei": [0, 2, 5, 6, 8, 13, 15, 16, 20, 21, 24, 25, 29, 36, 37], "zero": [0, 1, 4, 5, 6, 8, 19, 21, 22, 30], "wd_kick": 0, "wd_kick_direct": 0, "direct": [0, 20], "random": [0, 5, 7, 18, 21], "up": [0, 1, 4, 5, 9, 12, 16, 19, 20, 25, 26, 28, 29, 31, 36], "backward": 0, "inward": 0, "outward": 0, "kick_random": 0, "kick_straight_up": 0, "kick_forward": 0, "kick_backward": 0, "kick_inward": 0, "kick_outward": 0, "wd_kick_when": 0, "decid": [0, 2, 9, 17, 18, 19, 20, 21, 25], "birth": 0, "rlof": [0, 5, 7, 42], "puls": [0, 6, 42], "wd_kick_pulse_numb": 0, "everi": [0, 8, 19, 21, 22, 39], "wd_kick_end_agb": 0, "wd_kick_first_rlof": 0, "wd_kick_at_given_puls": 0, "wd_kick_at_every_puls": 0, "desir": 0, "pre": [0, 5, 8, 15, 18, 24], "minimum_helium_ignition_core_mass": 0, "ignit": [0, 6], "case": [0, 2, 4, 7, 15, 19, 21, 22, 25, 30, 37, 39], "strip": [0, 7, 12, 16], "make": [0, 1, 2, 3, 5, 6, 8, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 29, 30, 31, 39, 40, 42], "sdb": 0, "sdo": 0, "total": [0, 2, 6, 8, 13, 14, 15, 18, 19, 21, 24, 31, 34], "minimum_co_core_mass_for_carbon_ignit": 0, "carbon": [0, 6], "assum": [0, 6, 8, 13, 16, 24, 37], "mc": [0, 5, 15, 18, 30], "bagb": 0, "6msun": 0, "around": [0, 5, 9, 12, 17, 18], "08msun": 0, "pol": 0, "1998": [0, 31], "08": [0, 5, 18], "minimum_co_core_mass_for_neon_ignit": 0, "neon": [0, 6], "42msun": 0, "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 29, 30, 33, 36, 39, 40], "explod": 0, "electon": 0, "42": [0, 5, 8, 15], "minimum_mcbagb_for_nondegenerate_carbon_ignit": 0, "degener": 0, "25msun": 0, "25": [0, 5, 6, 8, 18], "maximum_mcbagb_for_degenerate_carbon_ignit": 0, "max_neutron_star_mass": 0, "befor": [0, 2, 5, 6, 8, 13, 14, 15, 20, 21, 22, 30, 31, 39], "2msun": 0, "chandrasekhar_mass": 0, "chandrasekhar": 0, "44msun": 0, "38": [0, 5, 15], "delta_mcmin": 0, "reduc": [0, 5], "third": [0, 16, 31, 37], "dredg": 0, "As": [0, 6, 8, 12, 13, 14, 15], "izzard": [0, 22, 39], "2004": 0, "increas": [0, 5, 8, 13, 14], "henc": [0, 8, 14, 16], "lambda_min": 0, "effici": [0, 6, 8], "lambda": [0, 5, 8], "lambda_mult": 0, "impli": 0, "onc": [0, 37], "mcmin": 0, "lambda_multipli": 0, "minimum_envelope_mass_for_third_dredgeup": 0, "straniero": 0, "suggest": [0, 22, 39], "5msun": 0, "howev": [0, 9, 14, 15], "circumstanti": 0, "evid": 0, "2009": 0, "well": [0, 3, 9, 12, 13, 14, 21, 22, 39], "newer": [0, 2, 22, 39], "stancliff": 0, "low": [0, 6, 8, 14, 31], "nearer": 0, "more": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 37, 39], "appropri": [0, 5, 15, 21, 25, 28, 29, 30, 34, 36], "mass_of_pmz": 0, "partial": 0, "mix": [0, 2, 21], "zone": 0, "tabl": [0, 31, 37], "ask": [0, 7, 42], "abat": 0, "detail": [0, 6, 12, 19, 21], "seri": [0, 37], "paper": 0, "2013": 0, "2014": [0, 31], "use_tabular_intershell_abundances_karakas_2012": 0, "c13_eff": 0, "intershel": 0, "region": [0, 37], "process": [0, 5, 6, 8, 13, 14, 15, 17, 18, 19, 20, 21, 25, 29], "gallino": 0, "busso": 0, "lugaro": 0, "provid": [0, 15, 16, 20, 21, 22, 25, 31, 39, 40], "maria": 0, "nucsyn_s_process": 0, "mc13_pocket_multipli": 0, "tides_convective_damp": 0, "tidal": [0, 5], "convect": 0, "damp": 0, "tides_hurley2002": 0, "zahn": 0, "197x": 0, "timescal": 0, "hut": 0, "tides_zahn1989": 0, "1989": 0, "e2_prescript": 0, "how": [0, 2, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 21, 27, 31, 34], "e2": 0, "siess": 0, "e2_hurley_2002": 0, "e2_izzard": 0, "e2_mint": 0, "dtfac": 0, "decreas": 0, "hbbtfac": 0, "modul": [0, 7, 8, 11, 13, 14, 15, 21, 23], "hot": 0, "bottom": [0, 15, 34], "burn": 0, "wind_multiplier_": 0, "specifi": [0, 21, 25, 37], "intger": 0, "By": [0, 6, 13, 14, 15, 18, 21], "wind_type_multiplier_": 0, "pre_main_sequ": 0, "rather": [0, 2, 9, 12, 15, 19, 21, 25, 38], "fraction": [0, 13, 18, 21, 31], "radii": [0, 42], "match": [0, 2, 6, 12, 13, 15, 16, 21, 24, 28], "railton": 0, "pre_main_sequence_fit_lob": 0, "forc": [0, 5, 21, 27], "roch": [0, 5, 8, 42], "lobe": [0, 5, 8, 42], "done": [0, 2, 5, 6, 13, 14, 15, 18, 21, 22, 30, 39], "small_envelope_method": 0, "method": [0, 9, 11, 12, 14, 15, 18, 20, 21, 26, 30, 32, 33, 34, 38], "determin": [0, 7, 9, 13, 14, 15, 20, 31, 34, 42], "radiu": [0, 1, 6, 9, 15, 17, 24, 42], "veri": [0, 5, 6, 7, 8, 9, 12, 14, 15, 30, 34, 37], "thin": 0, "miller": 0, "bertolami": 0, "2016": 0, "small_envelope_method_bs": 0, "small_envelope_method_miller_bertolami": 0, "timestep_modul": 0, "global": [0, 2, 14, 19, 31, 37], "timestep_multipli": 0, "maximum_timestep": 0, "zoomfac_multiplier_decreas": 0, "zoomfac_multiplier_increas": 0, "zoom": [0, 37], "succe": 0, "maximum_timestep_factor": 0, "subsequ": 0, "maximum_nuclear_burning_timestep": 0, "nuclear": 0, "nova_retention_method": 0, "retain": 0, "nova": [0, 6, 8], "nova_retention_fract": 0, "pend": [0, 5], "nova_retention_algorithm_const": 0, "nova_retention_algorithm_claeys2014": 0, "nova_retention_algorithm_hillman2015": 0, "mint_metal": 0, "mint": 0, "It": [0, 6, 7, 8, 11, 12, 13, 14, 15, 16, 18, 21, 22, 30, 33, 39], "normal": [0, 2, 20, 25, 37, 38], "gaia_teff_binwidth": 0, "log10": [0, 6, 8, 13, 14, 15, 31, 37], "bin": [0, 8, 13, 14, 19, 21, 22, 37, 39], "width": [0, 8, 19], "gaia": [0, 31], "hrd": [0, 6, 8], "gaia_l_binwidth": 0, "luminos": [0, 4, 6, 22, 24], "gaia_colour_transform_method": 0, "select": [0, 3, 12, 13, 16, 18, 19], "transform": [0, 3], "colour": 0, "scheme": 0, "gaia_conversion_ubvri_univariate_jordi2010": 0, "jordi": 0, "univari": 0, "ubvri": 0, "gaia_conversion_ubvri_bivariate_jordi2010": 0, "bivari": 0, "gaia_conversion_ugriz_univariate_jordi2010": 0, "gaia_conversion_ugriz_bivariate_jordi2010": 0, "ugriv": 0, "gaia_conversion_ubvri_univariate_evans2018": 0, "evan": 0, "dr2": 0, "gaia_conversion_ugriz_univariate_evans2018": 0, "gaia_conversion_ubvri_riello2020": 0, "riello": 0, "dr3": 0, "gaia_conversion_ugriz_riello2020": 0, "rotationally_enhanced_mass_loss": 0, "enabl": [0, 7], "rotation": 0, "enhanc": 0, "langer": 0, "rotationally_enhanced_massloss_langer_formula": 0, "rotationally_enhanced_expon": 0, "rotationally_enhanced_massloss_non": 0, "rotationally_enhanced_massloss_angmom": 0, "rotationally_enhanced_massloss_langer_formula_and_angmom": 0, "agb_core_algorithm": 0, "overshoot": 0, "agb_core_algorithm_default": 0, "agb_core_algorithm_hurlei": 0, "agb_core_algorithm_karaka": 0, "agb_radius_algorithm": 0, "agb_radius_algorithm_default": 0, "agb_radius_algorithm_hurlei": 0, "agb_radius_algorithm_karaka": 0, "agb_luminosity_algorithm": 0, "agb_luminosity_algorithm_default": 0, "agb_luminosity_algorithm_hurlei": 0, "agb_luminosity_algorithm_karaka": 0, "agb_3dup_algorithm": 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, "overspin_algorithm": 0, "what": [0, 1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 21, 22, 25, 31, 33, 37, 38, 39, 40], "do": [0, 1, 2, 5, 6, 7, 8, 9, 11, 13, 14, 15, 18, 20, 21, 22, 24, 25, 30, 31, 33, 37, 39, 42], "breakup": 0, "overspin_bs": 0, "conserv": 0, "transfer": [0, 6, 21], "back": [0, 2, 5], "overspin_massloss": 0, "rotationally_enhanced_massloss": 0, "lose": [0, 18], "carri": 0, "awai": [0, 13], "expon": [0, 19], "power": [0, 8, 14, 21, 31], "rais": [0, 2, 15, 19, 21], "batchmod": 0, "control": [0, 6, 13, 14, 15, 21], "variabl": [0, 4, 6, 7, 8, 13, 19, 21, 29, 30, 34], "know": [0, 1, 2, 7, 12, 14, 21, 30, 33], "speedtest": 0, "off": [0, 5, 15, 18, 21], "use_fixed_timestep_": 0, "boolean": [0, 2, 7, 19, 20, 21, 24, 38, 42], "task": [0, 18, 19, 20, 24, 25, 28, 31, 37, 40, 42], "perform": [0, 30], "For": [0, 2, 9, 12, 13, 14, 24], "binary_c_macro": 0, "particularli": 0, "binary_c_task_": 0, "orbiting_object": [0, 16], "usag": [0, 4], "spinrat": 0, "central_object": 0, "orbiting_objects_log": [0, 16], "orbiting_objects_wind_accretion_multipli": 0, "orbiting_objects_close_pc_threshold": 0, "close": [0, 8, 14, 16, 30], "percentag": 0, "orbiting_objects_tides_multipli": 0, "torqu": 0, "evaporate_escaped_orbiting_object": 0, "evapor": 0, "rlof_transition_objects_escap": 0, "otherwis": [0, 2, 19, 20, 21, 25, 27, 29, 30, 33, 36], "place": [0, 2, 13, 19, 21], "outsid": [0, 31], "stabl": [0, 22, 39], "pn_resolv": 0, "shorten": [0, 5], "resolv": [0, 13, 30], "better": [0, 2, 4, 7, 15, 25, 29, 30, 36, 42], "pn": 0, "pn_resolve_minimum_luminos": 0, "resolut": [0, 6, 8, 13, 14, 15, 21, 34, 37], "pne": 0, "31": [0, 5, 7, 18], "62": [0, 13], "pn_resolve_maximum_envelope_mass": 0, "below": [0, 4, 6, 7, 8, 9, 13, 14, 15, 21, 31], "pn_resolve_minimum_effective_temperatur": 0, "12500": 0, "pn_fast_wind": 0, "fast": 0, "pn_fast_wind_dm_gb": 0, "pn_fast_wind_mdot_gb": 0, "06": [0, 5, 9, 12, 13], "pn_fast_wind_dm_agb": 0, "pn_fast_wind_mdot_agb": 0, "hewd_hewd_ignition_mass": 0, "reignit": 0, "wind_nieuwenhuijzen_luminosity_lower_limit": 0, "activ": [0, 21, 22, 39], "4e3": 0, "lsun": [0, 24], "4000": 0, "wind_lbv_luminosity_lower_limit": 0, "6e5": 0, "600000": 0, "num_ansi_colour": 0, "extend": [0, 8, 22, 38, 39], "ansi": [0, 19], "255": [0, 5], "src": [0, 7, 9, 22, 39], "ansi_colour": 0, "int": [0, 1, 2, 5, 7, 13, 15, 19, 20, 21, 25, 31, 32, 33, 34, 37, 42], "apply_darwin_radau_correct": 0, "darwin": 0, "radau": 0, "correct": [0, 12, 20, 22, 24, 31, 32, 39, 42], "moment": [0, 6, 9, 15, 18, 37], "inertia": 0, "take": [0, 2, 8, 13, 15, 18, 19, 21, 26, 30, 31, 34, 40], "degenerate_core_merger_nucsyn": 0, "degner": 0, "energi": 0, "gener": [0, 1, 4, 7, 9, 12, 13, 15, 17, 18, 19, 20, 21, 24, 25, 30, 31, 33, 34, 37], "nucleosynthesi": [0, 38], "whole": [0, 8, 9, 20, 21], "disrupt": [0, 5, 18], "degenerate_core_helium_merger_ignit": 0, "r": [0, 1, 5, 6, 12, 15, 18, 22, 30, 39], "degenerate_core_merger_dredgeup_fract": 0, "separ": [0, 3, 5, 6, 7, 9, 12, 15, 16, 17, 18, 24, 30, 31, 42], "actual": [0, 3, 6, 8, 9, 12, 13, 14, 15, 20, 21, 22, 24, 29, 31, 37, 39], "semi": 0, "major": 0, "axi": [0, 24], "indic": [0, 31], "want": [0, 2, 3, 5, 8, 9, 13, 14, 15, 18, 19, 21, 22, 24, 25, 30, 31, 33, 34, 39], "either": [0, 2, 3, 13, 14, 15, 18, 20, 21, 34, 38, 40], "separation_tripl": 0, "tripl": [0, 21, 31], "separation_quadrupl": 0, "quadrupl": [0, 21, 31], "orbital_period": [0, 5, 7, 8, 9, 12, 13, 15, 17, 18, 42], "orbital_period_tripl": 0, "orbital_period_quadrupl": 0, "outer": [0, 6], "quadrulpl": 0, "eccentricity_tripl": 0, "eccentricity_quadrupl": 0, "inclini": 0, "orbital_inclin": 0, "rel": 0, "incliniation_tripl": 0, "incliniation_quadrupl": 0, "orbital_inclinationi": 0, "orbital_phas": 0, "orbital_phase_tripl": 0, "orbital_phase_quadrupl": 0, "argument_of_periastron": 0, "argument": [0, 2, 5, 7, 12, 15, 16, 17, 18, 19, 20, 21, 25, 26, 31, 38, 40], "periastron": 0, "argument_of_periastron_tripl": 0, "argument_of_periastron_quadrupl": 0, "disc_timestep_factor": 0, "natur": [0, 14], "disc": [0, 16], "white_dwarf_cooling_model": 0, "cool": [0, 6], "white_dwarf_cooling_mestel": 0, "mestel": 0, "white_dwarf_cooling_mestel_modifi": 0, "white_dwarf_cooling_carrasco2014": 0, "carrasco": 0, "white_dwarf_radius_model": 0, "perhap": [0, 6, 8, 20], "white_dwarf_radius_nauenberg1972": 0, "nauenberg": 0, "1972": 0, "white_dwarf_radius_mu": 0, "mu": 0, "white_dwarf_radius_carrasco2014": 0, "cbdisc_mass_loss_inner_viscous_accretion_method": 0, "inner": [0, 16], "edg": [0, 6, 15, 34], "circumbinari": 0, "goe": [0, 2, 9, 12, 24], "young": 0, "clark": 0, "gerosa": 0, "50": [0, 5, 14, 15], "cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_equ": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_non": 0, "cbdisc_inner_edge_strip": 0, "cbdisc_end_evolution_after_disc": 0, "cbdisc_no_wind_if_cbdisc": 0, "cbdisc_outer_edge_strip": 0, "disc_n_monte_carlo_guess": 0, "guess": [0, 31], "try": [0, 2, 5, 8, 12, 13, 14, 15, 22, 25, 30, 34, 39], "list": [0, 1, 2, 3, 6, 8, 12, 13, 14, 15, 16, 19, 21, 22, 25, 28, 31, 34, 37, 39, 40], "disc_log": 0, "disc_log_level_non": 0, "disc_log_level_norm": 0, "disc_log_level_subtimestep": 0, "disc_log_level_normal_first_disc_onli": 0, "disc_log_level_subtimestep_first_disc_onli": 0, "disc_log2d": 0, "2d": 0, "disc_log_dt": 0, "disc_log_directori": 0, "directori": [0, 4, 15, 19, 20, 21, 22, 25, 28, 29, 30, 33, 36, 39], "sent": 0, "exist": [0, 2, 6, 15, 18, 21, 25, 30, 33, 34], "string": [0, 1, 2, 3, 4, 7, 12, 13, 14, 15, 16, 19, 20, 21, 24, 25, 29, 30, 33, 34, 36, 38, 40], "tmp": [0, 12, 13, 14, 15, 19, 22, 39], "post_ce_adaptive_menv": 0, "post_ce_objects_have_envelop": 0, "ce": [0, 8], "sit": 0, "insid": 0, "post_ce_envelope_dm_gb": 0, "post_ce_envelope_dm_eagb": 0, "post_ce_envelope_dm_tpagb": 0, "common": [0, 4, 5, 6, 9, 12, 13, 14, 15, 22], "need": [0, 2, 7, 9, 12, 13, 14, 15, 16, 18, 21, 22, 25, 31, 39, 42], "mai": [0, 8, 13, 30], "unstabl": [0, 5], "mani": [0, 5, 6, 7, 8, 11, 13, 14, 15, 16, 21, 29], "cee": [0, 8], "pn_comenv_transition_tim": 0, "transit": 0, "year": [0, 31], "1e2": 0, "move": [0, 6], "teff": [0, 5, 31], "30e4": 0, "hall": 0, "minimum_time_between_pn": 0, "planetari": 0, "nebula": 0, "detect": [0, 5, 8, 16], "prevent": [0, 5, 6, 21], "trigger": 0, "pn_hall_fading_time_algorithm": 0, "45msun": 0, "fade": 0, "pn_hall_fading_time_algorithm_minimum": 0, "pn_hall_fading_time_algorithm_maximum": 0, "shown": [0, 24, 37], "fig": [0, 18, 31], "ppn_envelope_mass": 0, "cbdisc_eccentricity_pumping_method": 0, "variou": 0, "pump": 0, "cbdisc_eccentricity_pumping_non": 0, "cbdisc_eccentricity_pumping_dermin": 0, "cbdisc_viscous_photoevaporative_coupl": 0, "viscou": 0, "photoevapor": 0, "coupl": [0, 4], "cbdisc_viscous_photoevaporative_coupling_non": 0, "cbdisc_viscous_photoevaporative_coupling_inst": 0, "instant": 0, "cbdisc_viscous_photoevaporative_coupling_visc": 0, "slow": [0, 6, 8, 13, 14], "cbdisc_inner_edge_stripping_timescal": 0, "long": [0, 5, 6, 8, 15, 21, 27, 30, 34, 38, 41], "revap_in": 0, "disc_stripping_timescale_inst": 0, "disc_stripping_timescale_infinit": 0, "disc_stripping_timescale_visc": 0, "disc_stripping_timescale_orbit": 0, "cbdisc_outer_edge_stripping_timescal": 0, "revap_out": 0, "cbdisc_viscous_l2_coupl": 0, "l2": 0, "gravitational_radiation_model": 0, "gravit": [0, 6, 8, 15], "radiat": 0, "landau": 0, "lifshitz": 0, "1951": [0, 14], "gravitational_radiation_bs": 0, "gravitational_radiation_bse_when_no_rlof": 0, "gravitational_radiation_non": 0, "gravitational_radiation_landau_lifshitz": 0, "gravitational_radiation_landau_lifshitz_when_no_rlof": 0, "nova_irradiation_multipli": 0, "radi": 0, "shara": 0, "1986": [0, 31], "gravitational_radiation_modulator_j": 0, "wave": [0, 6, 8, 15], "gravitational_radiation_modulator_": 0, "nova_faml_multipli": 0, "friction": 0, "rlof_angular_momentum_transfer_model": 0, "rlof_angular_momentum_transfer_model_bs": 0, "rlof_angular_momentum_transfer_model_conserv": 0, "post_sn_orbit_method": 0, "tauri": 0, "post_sn_orbit_bs": 0, "post_sn_orbit_tt98": 0, "singl": [0, 4, 5, 6, 7, 13, 14, 17, 18, 20, 21, 22, 24, 25, 31, 39], "accretion_limit_eddington_steady_multipli": 0, "steadi": 0, "eddington": 0, "spheric": 0, "symmetr": 0, "known": [0, 6, 12, 13, 14, 15, 20, 31, 40], "trade": 0, "anyth": [0, 13, 14, 15, 19, 21, 37], "greater": 0, "than": [0, 2, 5, 6, 8, 13, 14, 15, 19, 21, 22, 25, 30, 31, 38, 39], "potenti": 0, "give": [0, 5, 8, 19, 20, 31, 42], "super": 0, "accretion_limit_eddington_lmms_multipli": 0, "accretion_limit_eddington_wd_to_remnant_multipli": 0, "onto": [0, 31], "anoth": [0, 25], "accretion_limit_thermal_multipli": 0, "accretor": [0, 5, 42], "thermal": [0, 6, 31, 42], "accretion_limit_dynamical_multipli": 0, "dynam": 0, "donor_limit_envelope_multipli": 0, "donor": [0, 5, 42], "per": [0, 5, 8, 12, 13, 15, 19, 21, 30, 42], "donor_limit_thermal_multipli": 0, "donor_limit_dynamical_multipli": 0, "bondi_hoyle_accretion_factor": 0, "bondi": 0, "hoyl": 0, "littleton": 0, "multiplc": 0, "tidal_strength_factor": 0, "strength": 0, "tide": [0, 16], "stronger": [0, 6], "hachisu_qcrit": 0, "critic": 0, "q": [0, 5, 8, 13, 15, 18, 21, 31, 42], "maccretor": [0, 5], "mdonor": [0, 5], "hachisu": 0, "disk": [0, 20], "hachisu_ignore_qcrit": 0, "hachisu_disk_wind": 0, "materi": [0, 6], "too": [0, 2, 6, 7, 14, 16, 21, 22, 39, 40], "help": [0, 5, 7, 11, 12, 13, 14, 15, 19, 33], "sneia": 0, "mass_accretion_for_eld": 0, "lit": 0, "deton": 0, "wdwd_merger_algorithm": 0, "peret": 0, "chen": 0, "todo": [0, 1, 2, 10, 11, 15, 19, 20, 21, 24, 25, 29, 30, 31, 32, 33, 36, 37, 38, 40, 42], "wdwd_merger_algorithm_bs": 0, "wdwd_merger_algorithm_perets2019": 0, "wdwd_merger_algorithm_chen2016": 0, "type_ia_mch_supernova_algorithm": 0, "yield": [0, 37], "dd7": 0, "iwamoto": 0, "1999": 0, "seitenzahl": 0, "3d": 0, "hydro": 0, "seitenzahl2013_model": 0, "One": [0, 5, 21], "n1": 0, "n3": 0, "n5": 0, "n10": 0, "n20": 0, "n40": 0, "n100l": 0, "n100": 0, "n100h": 0, "n150": 0, "n200": 0, "n300c": 0, "n1600": 0, "n1600c": 0, "n100_z0": 0, "type_ia_sub_mch_supernova_algorithm": 0, "unus": [0, 21], "max_hewd_mass": 0, "merger_mass_loss_fract": 0, "merger_angular_momentum_factor": 0, "spin": [0, 16], "smaller": [0, 37], "wind_angular_momentum_loss": 0, "lw": 0, "specif": [0, 11, 12, 24, 29, 36], "wind_djorb_fac": 0, "wind_angmom_loss_bs": 0, "wind_angmom_loss_lw": 0, "wind_angmom_loss_lw_hybrid": 0, "wind_angmom_loss_spherically_symmetr": 0, "vw93_eagb_wind_spe": 0, "vw93_tpagb_wind_spe": 0, "use_periastron_roche_radiu": 0, "circular": [0, 5], "treat": [0, 37], "properli": 0, "hopefulli": 0, "qcrit_lmm": 0, "stabil": 0, "overflow": [0, 5, 8], "qcrits_": 0, "qcrits_degenerate_": 0, "6944": 0, "qcrit_bs": 0, "qcrit_hjellming_webbink": 0, "qcrit_q_no_comenv": 0, "qcrit_chen_han_t": 0, "qcrit_chen_han_formula": 0, "qcrit_ge2015": 0, "qcrit_vos2018": 0, "qcrit_temmink2021": 0, "qcrit_gb_bs": 0, "qcrit_gb_hjellming_webbink": 0, "qcrit_gb_q_no_comenv": 0, "qcrit_gb_chen_han_t": 0, "qcrit_gb_chen_han_formula": 0, "qcrit_gb_ge2015": 0, "qcrit_gb_vos2018": 0, "qcrit_gb_temmink2021": 0, "qcrit_m": 0, "qcrit_hg": 0, "hertzsprung": [0, 4, 22], "gap": 0, "qcrit_gb": 0, "qcrit_cheb": 0, "qcrit_eagb": 0, "qcrit_tpagb": 0, "tp": 0, "qcrit_hem": 0, "qcrit_hehg": 0, "qcrit_hegb": 0, "78125": 0, "qcrit_hewd": 0, "qcrit_cowd": 0, "qcrit_onewd": 0, "qcrit_n": 0, "qcrit_bh": 0, "qcrit_degenerate_lmm": 0, "qcrit_degenerate_m": 0, "qcrit_degenerate_hg": 0, "7619": 0, "qcrit_degenerate_gb": 0, "qcrit_degenerate_cheb": 0, "qcrit_degenerate_eagb": 0, "qcrit_degenerate_tpagb": 0, "qcrit_degenerate_hem": 0, "qcrit_degenerate_hehg": 0, "qcrit_degenerate_hegb": 0, "qcrit_degenerate_hewd": 0, "625": [0, 5], "qcrit_degenerate_cowd": 0, "qcrit_degenerate_onewd": 0, "qcrit_degenerate_n": 0, "qcrit_degenerate_bh": 0, "mass_for_hestar_ia_upp": 0, "never": [0, 6, 14, 21, 28], "mass_for_hestar_ia_low": 0, "alphacb": 0, "viscos": 0, "alpha": [0, 5], "minimum_donor_menv_for_comenv": 0, "msun": [0, 6, 9, 12, 14, 16, 18, 31, 37, 38], "comenv_prescript": 0, "paczy\u0144ski": 0, "neleman": 0, "alpha_c": [0, 5, 6, 8], "comenv_ms_accretion_mass": 0, "comenv_ms_accretion_fract": 0, "comenv_ns_accretion_fract": 0, "comenv_ns_accretion_mass": 0, "nelemans_gamma": 0, "nelemans_minq": 0, "nelemans_max_frac_j_chang": 0, "nelemans_n_comenv": 0, "lambda_c": [0, 5, 8], "lambda_ionis": 0, "comenv_undef": 0, "comenv_bs": 0, "comenv_nelemans_tout": 0, "comenv_nandez2016": 0, "comenv_ejection_spin_method": 0, "left": 0, "comenv_ejection_spin_method_do_noth": 0, "leav": [0, 21], "omega": [0, 5, 18], "enter": [0, 21], "comenv_ejection_spin_method_sychron": 0, "synchron": 0, "comenv_ejection_spin_method_synchron": 0, "comenv_merger_spin_method": 0, "comenv_merger_spin_method_specif": 0, "preserv": 0, "onset": 0, "comenv_merger_spin_method_conserve_angmom": 0, "supercrit": 0, "comenv_merger_spin_method_conserve_omega": 0, "frequenc": [0, 16], "comenv_merger_spin_method_breakup": 0, "some": [0, 1, 5, 6, 8, 9, 11, 12, 13, 14, 15, 18, 20, 21, 22, 24, 29, 31, 34, 35, 36, 39], "comenv_ms_accret": 0, "comenv_ns_accret": 0, "formal": 0, "bind": [0, 7, 9, 12, 16], "m": [0, 5, 6, 8, 14, 16, 18, 19, 31, 42], "menv": [0, 5], "lambda_ce_dewi_tauri": 0, "dewi": 0, "lambda_ce_wang_2016": 0, "wang": 0, "jia": 0, "li": 0, "lambda_ce_polytrop": 0, "polytrop": 0, "comenv_splitmass": 0, "lambda_ce_klencki_2020": 0, "klencki": 0, "point": [0, 3, 6, 19, 20, 21, 22, 30, 31, 37, 39], "nelemans_recalc_eccentr": 0, "recalcul": 0, "comenv_post_eccentr": 0, "remain": [0, 7, 19, 21], "05": [0, 5, 9, 13, 15], "accord": [0, 6, 30, 31, 37], "75": [0, 5, 6], "chang": [0, 1, 2, 5, 6, 8, 9, 13, 14, 15, 18, 19, 20, 21, 22, 33, 34, 39], "standard": [0, 13, 14, 29, 31, 36, 37], "recombin": 0, "big": [0, 21], "outcom": 0, "lambda_enthalpi": 0, "enthalpi": 0, "far": [0, 5, 6, 14, 16], "cbdisc_albedo": 0, "albedo": 0, "cbdisc_gamma": 0, "cbdisc_alpha": 0, "cbdisc_kappa": 0, "kappa": 0, "cbdisc_minimum_evaporation_timescal": 0, "would": [0, 2, 14, 15, 21, 24], "less": [0, 1, 4, 5, 30, 31], "simpli": [0, 14], "immedi": [0, 6, 21], "1y": 0, "cbdisc_torquef": 0, "cbdisc_max_lifetim": 0, "lifetim": [0, 8, 13, 14, 15, 37], "cbdisc_init_dm": 0, "cbdisc": 0, "start": [0, 1, 5, 6, 8, 12, 13, 14, 15, 18, 19, 21, 27, 33, 34], "dm": [0, 14, 31, 37], "won": [0, 12, 22, 39], "t": [0, 1, 2, 5, 6, 12, 14, 15, 16, 19, 21, 22, 25, 30, 37, 39], "converg": 0, "cbdisc_init_djdm": 0, "dj": 0, "cbdisc_mass_loss_constant_r": 0, "cbdisc_mass_loss_fuv_multipli": 0, "fuv": 0, "cbdisc_mass_loss_xray_multipli": 0, "x": [0, 5, 6, 9, 12, 16, 18, 19, 20, 24, 25, 31, 37], "rai": 0, "cbdisc_mass_loss_ism_ram_pressure_multipli": 0, "interstellar": 0, "medium": 0, "ram": [0, 21], "pressur": 0, "cbdisc_mass_loss_ism_pressur": 0, "boltzmann": 0, "kelvin": 0, "think": [0, 19, 20], "3000": [0, 16], "http": [0, 1, 2, 6, 15, 19, 20, 22, 30, 31, 39], "www": [0, 31], "astronomi": 0, "ohio": 0, "edu": 0, "pogg": 0, "ast871": 0, "intro": 0, "pdf": [0, 18, 22, 31, 39], "page": [0, 6, 15, 22, 39], "arxiv": [0, 31], "org": [0, 2, 31], "0902": 0, "0820": 0, "panel": 0, "cbdisc_mass_loss_inner_viscous_multipli": 0, "cbdisc_mass_loss_inner_viscous_angular_momentum_multipli": 0, "cbdisc_resonance_multipli": 0, "reson": 0, "interact": [0, 3, 5, 6, 8, 16, 18, 33], "cbdisc_resonance_damp": 0, "l": [0, 6, 13, 14], "locat": [0, 21, 22, 31, 37, 39], "cbdisc_fail_ring_inside_separ": 0, "rring": 0, "cbdisc_mass_loss_inner_l2_cross_multipli": 0, "cross": 0, "cbdisc_minimum_luminos": 0, "becom": [0, 1, 2, 5, 9, 14, 16, 19, 21], "dimmer": [0, 13], "instantli": 0, "cbdisc_minimum_mass": 0, "cbdisc_minimum_fr": 0, "fring": 0, "ring": 0, "ab": [0, 19], "rout": 0, "rin": 0, "comenv_disc_angmom_fract": 0, "deprec": [0, 20], "discs_circumbinary_from_comenv": 0, "comenv_disc_mass_fract": 0, "wind_disc_angmom_fract": 0, "discs_circumbinary_from_wind": 0, "wind_disc_mass_fract": 0, "wrlof_method": 0, "quadrat": 0, "wrlof_mass_transf": 0, "wrlof_non": 0, "wrlof_q_depend": 0, "wrlof_quadrat": 0, "minimum_timestep": 0, "timestep_solver_factor": 0, "timestep_limit": 0, "compar": [0, 8, 13, 15, 21], "dx": 0, "dt": [0, 1, 19, 28, 37], "lengthen": 0, "altern": [0, 21], "rlof_mdot_factor": 0, "rlof_mdot_modul": 0, "rlof_f": 0, "enlarg": 0, "nomin": 0, "becaus": [0, 2, 6, 7, 8, 12, 13, 14, 16, 18, 20, 21, 22, 28, 30, 31, 39], "dermin": 0, "rlof_radiation_correct": 0, "minimum_separation_for_instant_rlof": 0, "evolv": [0, 4, 7, 9, 16, 20, 21, 22, 39], "report": [0, 6, 8, 13, 14, 15], "lead": [0, 6, 13, 14, 15, 30, 31, 42], "minimum_orbital_period_for_instant_rlof": 0, "maximum_mass_ratio_for_instant_rlof": 0, "m1": [0, 5, 9, 12, 13, 14, 15, 18, 30, 31, 42], "rlof_method": 0, "adapt": [0, 14], "rl": [0, 5], "ritter": 0, "claei": 0, "etal": 0, "rlof_method_bs": 0, "rlof_method_adapt": 0, "rlof_method_ritt": 0, "rlof_method_claei": 0, "rlof_method_adaptive2": 0, "rlof_interpolation_method": 0, "alwai": [0, 20, 21, 31, 37], "get": [0, 2, 3, 4, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 22, 25, 26, 29, 31, 33, 34, 36, 39, 40, 42], "within": [0, 2, 9, 11, 15, 19, 22, 31, 34, 39], "toler": 0, "rlof_entry_threshold": 0, "revers": [0, 24], "newton": 0, "doe": [0, 2, 6, 7, 9, 11, 12, 13, 14, 15, 20, 21, 28, 30, 31, 34, 42], "repeat": [0, 21], "half": [0, 31], "until": [0, 2, 6, 30, 31], "latter": 0, "now": [0, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 19, 25, 31, 32], "break": 0, "rlof_interpolation_binary_c": 0, "rlof_interpolation_bs": 0, "beta_reverse_nova": 0, "automat": [0, 1, 9, 15, 16, 17, 18, 21, 22, 28, 30, 33, 34, 39], "geometr": 0, "beta_reverse_novae_geometri": 0, "wd_accretion_rate_novae_upper_limit_hydrogen_donor": 0, "upper": [0, 31, 37], "donor_rate_algorithm_claeys2014": 0, "donor_rate_algorithm_bs": 0, "wd_accretion_rate_novae_upper_limit_helium_donor": 0, "wd_accretion_rate_novae_upper_limit_other_donor": 0, "neither": [0, 20], "nor": 0, "wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor": 0, "format": [0, 2, 3, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 21, 29, 30, 31, 34, 37], "wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor": 0, "wd_accretion_rate_new_giant_envelope_lower_limit_other_donor": 0, "crap_paramet": 0, "eggleton": [0, 42], "subject": 0, "bb": 0, "individual_nova": 0, "each": [0, 2, 8, 13, 14, 15, 16, 19, 21, 25, 34, 37], "separta": 0, "nova_timestep_accelerator_num": 0, "acceler": 0, "exce": [0, 13], "nova_timestep_accelerator_index": 0, "nova_timestep_accelerator_max": 0, "larger": [0, 6], "longer": [0, 6, 8], "cap": 0, "nonconservative_angmom_gamma": 0, "NOT": [0, 34, 37, 40], "momenta": [0, 24], "rlof_nonconservative_gamma_donor": 0, "rlof_nonconservative_gamma_isotrop": 0, "max_stellar_angmom_chang": 0, "maxmimum": 0, "third_dup": 0, "nucsyn_third_dredge_up": 0, "third_dup_multipli": 0, "f": [0, 5, 12, 15, 18, 31], "abund": 0, "element": [0, 1, 11, 16, 21, 24, 38], "nenamg": 0, "reaction": 0, "network": [0, 11], "nucsyn_hbb": 0, "nucsyn_network": 0, "nucsyn_network_error": 0, "error": [0, 2, 14, 19, 21, 22, 25, 30, 39], "nucreacmult": 0, "z": [0, 6, 8, 18, 20, 31, 42], "04": [0, 5, 18], "That": [0, 6], "said": 0, "been": [0, 2, 11, 20, 21, 25, 27, 29, 36], "warn": [0, 12, 15, 21, 25], "nucsyn_solv": 0, "kaps_rentrop": 0, "kap": 0, "rentrop": 0, "great": [0, 14, 21], "stiff": 0, "problem": [0, 13], "lsoda": 0, "adam": 0, "bsf": 0, "switcher": 0, "cvode": 0, "librari": [0, 1, 9, 18, 20, 21, 40], "comput": [0, 6, 13, 14], "llnl": 0, "gov": 0, "project": [0, 22, 39], "sundial": 0, "initial_abundance_mix": 0, "mixtur": [0, 13], "ag89": 0, "lodder": 0, "asplund": 0, "avail": [0, 7, 8, 9, 15, 19, 21, 22, 27, 39], "garcia": 0, "berro": 0, "grevess": 0, "noel": 0, "init_abund": 0, "isotop": [0, 11, 38], "init_abund_mult": 0, "init_abund_dex": 0, "dex": [0, 8, 37], "init_abunds_onli": 0, "exit": [0, 19, 20, 21, 25, 29, 30, 36], "initial_abunds_onli": 0, "no_thermohaline_mix": 0, "thermohalin": 0, "lithium_gb_post_heflash": 0, "lithium": 0, "lithium_t": 0, "lithium_gb_post_1dup": 0, "lithium_hbb_multipli": 0, "hbb": 0, "fishlock": 0, "angelou_lithium_decay_funct": 0, "describ": [0, 13, 18, 21, 31], "li7": 0, "decai": 0, "nucsyn_angelou_lithium": 0, "choic": [0, 24, 31], "expoenti": 0, "angelou_lithium_decay_tim": 0, "angelou_lithium_lmms_tim": 0, "manufactur": 0, "angelou_lithium_ms_tim": 0, "angelou_lithium_hg_tim": 0, "angelou_lithium_gb_tim": 0, "angelou_lithium_cheb_tim": 0, "angelou_lithium_eagb_tim": 0, "angelou_lithium_tpagb_tim": 0, "angelou_lithium_lmms_decay_tim": 0, "surfac": 0, "angelou_lithium_ms_decay_tim": 0, "angelou_lithium_hg_decay_tim": 0, "angelou_lithium_gb_decay_tim": 0, "angelou_lithium_cheb_decay_tim": 0, "angelou_lithium_eagb_decay_tim": 0, "angelou_lithium_tpagb_decay_tim": 0, "angelou_lithium_lmms_massfrac": 0, "angelou_lithium_ms_massfrac": 0, "angelou_lithium_hg_massfrac": 0, "angelou_lithium_gb_massfrac": 0, "angelou_lithium_cheb_massfrac": 0, "angelou_lithium_eagb_massfrac": 0, "angelou_lithium_tpagb_massfrac": 0, "angelou_lithium_vrot_trigg": 0, "angelou_lithium_vrotfrac_trigg": 0, "keplerian": 0, "david_logging_funct": 0, "kind": [0, 7], "david": [0, 2, 7, 12, 13, 14, 15, 18, 22, 39], "david_tzo_log": 0, "tzo": 0, "david_ppisn_log": 0, "david_ppisn_single_log": 0, "underw": 0, "david_rlof_episode_log": 0, "episod": 0, "david_rlof_ensemble_log": 0, "ensembl": [0, 4, 7, 11, 21, 22, 23, 30, 34, 35, 38], "cf_amanda_log": 0, "amanda": 0, "float_overflow_check": 0, "check": [0, 5, 6, 8, 13, 14, 15, 18, 19, 20, 21, 25, 29, 30, 31, 33, 36, 40, 42], "stderr": [0, 21], "failur": [0, 19, 25], "save_pre_events_stardata": 0, "save": [0, 1, 8, 9, 13, 14, 15, 21, 25, 30, 31, 37], "copi": [0, 8, 14, 21, 42], "stardata": [0, 1, 6, 8, 9, 12, 13, 14, 15, 17, 18], "pre_events_stardata": 0, "disable_end_log": 0, "ensemble_filters_off": 0, "filter": [0, 2, 19], "ensemble_filter_": 0, "ensemble_macro": 0, "ensemble_legacy_ensembl": 0, "legaci": 0, "popul": [0, 3, 4, 5, 7, 11, 22, 23, 39, 40], "legacy_yield": 0, "ensemble_def": 0, "defer": 0, "ensemble_dt": 0, "store": [0, 2, 4, 5, 6, 8, 12, 13, 14, 15, 19, 20, 21, 22, 30, 37, 39, 42], "ensemble_logdt": 0, "ensemble_startlogtim": 0, "logensembletim": 0, "storag": 0, "ensemble_logtim": 0, "act": [0, 14, 15, 21], "linear": [0, 13, 14, 21, 31, 37], "postagb_legacy_log": 0, "disc_legacy_log": 0, "emp_logg_maximum": 0, "logg": [0, 6], "emp": 0, "cemp_cfe_minimum": 0, "nemp_nfe_minimum": 0, "emp_minimum_ag": 0, "emp_feh_maximum": 0, "fe": 0, "cemp": 0, "nemp_cfe_minimum": 0, "nemp": 0, "thick_disc_start_ag": 0, "lookback": 0, "thick": 0, "13e3": 0, "thick_disc_end_ag": 0, "thick_disc_logg_min": 0, "thick_disc_logg_max": 0, "escape_veloc": 0, "construct": [0, 1, 6, 8, 12, 13, 14, 16, 18, 21], "galact": [0, 37], "chemic": [0, 37], "gce": 0, "nucsyn_gce_outflow_check": 0, "1e9": 0, "escape_fract": 0, "colour_log": 0, "thelog": 0, "file_log": 0, "log_filenam": [0, 5, 12, 18, 40], "filenam": [0, 1, 3, 5, 12, 15, 19, 20, 21, 25, 29, 30, 36, 40], "dev": 0, "c_log": 0, "dat": [0, 15, 19], "log_arrow": 0, "add": [0, 2, 6, 8, 9, 12, 13, 14, 15, 20, 21, 22, 24, 31, 34, 35, 37, 39], "arrow": 0, "stopfil": 0, "file": [0, 1, 3, 5, 7, 12, 15, 19, 20, 21, 22, 24, 25, 28, 29, 30, 33, 34, 36, 38, 39, 40], "stardata_dump_filenam": 0, "dump": [0, 3, 12, 20, 30], "stardata_load_filenam": 0, "load": [0, 1, 3, 6, 9, 12, 13, 14, 15, 18, 19, 20, 21, 24, 25, 26, 30, 34], "api_log_filename_prefix": [0, 5, 12, 16], "prefix": 0, "api": [0, 4, 19, 22, 25], "hrdiag_output": 0, "high": [0, 14, 31], "hertzstrpung": 0, "russel": [0, 4, 22], "diagram": [0, 4, 22, 24], "hrdiag": 0, "internal_buff": 0, "buffer": [0, 30], "prior": [0, 6], "shouldn": [0, 19], "realli": [0, 6, 15, 20, 21, 33, 34], "plai": [0, 5, 14], "internal_buffering_off": 0, "internal_buffering_print": 0, "internal_buffering_stor": 0, "eccentric_rlof_model": 0, "rlof_eccentric_as_circular": 0, "force_corotation_of_primary_and_orbit": 0, "force_circularization_on_rlof": 0, "wtts_log": 0, "wtts2": 0, "fabian_imf_log_tim": 0, "fabian": 0, "imf": [0, 14, 31], "fabian_imf_log": 0, "fabian_imf_log_timestep": 0, "displai": [0, 6, 8], "test": [0, 12, 19, 21, 25, 28, 30], "dumpvers": 0, "short": [0, 6, 8, 13, 14, 41], "version_onli": 0, "tides_diagnosis_log": 0, "mint_dir": 0, "mint_data_cleanup": 0, "incom": 0, "Will": [0, 19, 21, 40], "slower": 0, "few": [0, 8], "thing": [0, 3, 5, 6, 7, 8, 13, 14, 15, 18, 19, 20, 31, 40], "mint_ms_rejuven": 0, "rejuven": [0, 13], "mint_remesh": 0, "remesh": 0, "mint_use_zams_profil": 0, "profil": 0, "zam": [0, 4, 5, 6, 7, 13, 31, 40, 42], "homogen": 0, "mint_fallback_to_test_data": 0, "test_data": 0, "fallback": 0, "unavail": 0, "mint_disable_grid_load_warn": 0, "explicitli": [0, 1], "miss": [0, 13, 14, 19, 33], "much": [0, 6, 8, 13, 15, 18, 19, 27], "mint_kippenhahn": 0, "kippenhahn": 0, "mint_nshel": 0, "shell": [0, 19], "shellular": 0, "mint_maximum_nshel": 0, "mint_hard_max_nshel": 0, "1000": [0, 8, 21, 37], "mint_minimum_nshel": 0, "equal": [0, 2, 14, 15, 19], "mint_hard_min_nshel": 0, "mint_kippenhahn_stellar_typ": 0, "selector": 0, "plot": [0, 6, 8, 12, 13, 14, 16, 17, 18, 24], "mint_kippenhahn_companion_stellar_typ": 0, "mint_nuclear_burn": 0, "mint_minimum_shell_mass": 0, "mint_maximum_shell_mass": 0, "go": [0, 6, 11, 13, 15, 20, 22, 24, 39], "command": [0, 1, 15, 19, 20, 21, 22, 30, 39], "gogo": 0, "reset_star": 0, "reset": 0, "reset_stars_default": 0, "echo": 0, "execut": [0, 15, 21, 34], "noecho": 0, "deactiv": 0, "noechonow": 0, "bye": 0, "quit": [0, 6, 19, 31], "fin": 0, "reset_pref": 0, "prefer": [0, 20], "struct": [0, 9], "statu": [0, 1, 6, 8, 13, 14, 15, 21, 25, 29, 30, 36], "handi": 0, "re": [0, 1, 6, 7, 8, 13, 14, 16, 25, 33], "sampl": [0, 4, 13, 15, 31, 34, 37], "space": [0, 6, 14, 15, 30, 34, 37], "good": [0, 5, 12, 13, 14, 15, 21, 42], "statist": [0, 21, 29], "reason": [0, 14], "tbse": 0, "pgo": 0, "random_system": 0, "etc": [0, 7, 12, 14, 15, 16, 19, 20, 21, 22, 24, 30, 31, 39, 40], "random_se": [0, 5, 12, 18], "seed": 0, "possibl": [0, 1, 2, 6, 12, 16, 19, 21, 22, 28, 31, 33, 39], "exactli": [0, 14], "reproduc": 0, "involv": 0, "pseudorandom": 0, "random_systems_se": 0, "random_skip": 0, "skip": [0, 2, 13, 21], "idum": 0, "nb": 0, "pleas": [0, 6, 7, 13, 14, 15, 19, 21, 22, 28, 39], "reverse_tim": 0, "To": [0, 5, 7, 12, 13, 14, 15, 21, 22, 30, 31, 39], "consid": [0, 1, 2, 13, 14, 20, 21, 24, 32, 33, 37], "start_tim": [0, 21], "warmup_cpu": 0, "cpu": [0, 6, 8, 13, 14, 15, 21, 27], "second": [0, 2, 8, 16, 19, 22, 24, 30, 31, 32, 39], "topic": 0, "argopt": 0, "help_al": 0, "list_arg": 0, "here": [1, 6, 7, 9, 12, 13, 14, 16, 18, 19, 20, 21, 22, 24, 31, 39, 40], "user": [1, 9, 19, 20, 21, 22, 26, 31, 33, 39, 40], "binaryc": [1, 19, 40], "output": [1, 2, 3, 4, 5, 7, 9, 11, 12, 16, 17, 18, 19, 20, 21, 22, 24, 30, 38, 39, 40, 42], "runtim": [1, 21], "binarycpython": [1, 2, 3, 4, 5, 6, 7, 8, 9, 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], "util": [1, 2, 3, 5, 6, 7, 8, 9, 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], "autogen_c_logging_cod": [1, 9, 18], "logging_dict": 1, "verbos": [1, 5, 6, 8, 12, 13, 14, 15, 16, 17, 19, 21, 22, 26, 30, 31, 32, 37, 39], "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], "auto": [1, 23], "printf": [1, 6, 8, 9, 12, 13, 14, 15, 17, 18], "statement": [1, 9, 12, 13, 14, 15, 16, 17, 18, 21], "input": [1, 2, 3, 5, 7, 11, 12, 19, 20, 21, 22, 24, 26, 30, 31, 32, 33, 40, 42], "dictionari": [1, 2, 3, 4, 6, 8, 13, 14, 15, 19, 20, 21, 24, 26, 27, 30, 31, 33, 34, 38, 41], "kei": [1, 2, 3, 11, 12, 15, 16, 18, 19, 20, 21, 24, 28, 30, 31, 33, 34, 38], "header": [1, 6, 8, 9, 12, 13, 14, 15, 18, 19], "line": [1, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 24, 30, 37, 39], "item": [1, 2, 6, 8, 13, 14, 19], "paramet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 19, 20, 21, 22, 24, 25, 28, 29, 30, 31, 33, 34, 36, 37, 38, 40, 42], "put": [1, 6, 13, 14, 15, 18, 19, 21, 24, 25, 33, 34, 35], "append": [1, 2, 6, 12, 13, 14, 16], "exampl": [1, 2, 12, 19, 20, 31, 34, 37, 40], "look": [1, 3, 5, 6, 8, 13, 14, 15, 16, 18, 22, 31, 39], "my_stellar_data": [1, 9, 15, 17, 18], "star": [1, 4, 5, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 21, 22, 24, 29, 31, 36, 37, 39, 42], "dict": [1, 3, 5, 6, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 25, 26, 28, 30, 31, 33, 38, 41], "binary_c": [1, 2, 3, 4, 5, 6, 8, 13, 14, 16, 19, 20, 21, 24, 28, 30, 31, 34, 38, 40], "sentenc": 1, "level": [1, 6, 19, 32], "return": [1, 2, 3, 5, 6, 7, 8, 11, 12, 13, 14, 15, 18, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37, 38, 40, 42], "str": [1, 2, 3, 6, 15, 19, 20, 24, 30, 33, 34, 38], "binary_c_log_cod": [1, 9, 12, 17, 18], "termin": [1, 6, 9, 15, 22, 39], "primari": [1, 6, 8, 13, 14, 15, 31, 34, 42], "stellar_typ": [1, 6, 9, 12, 13, 14, 15, 22, 23, 24], "example_log_co": [1, 9], "30": [1, 5, 6, 9, 12, 13, 14, 15, 16, 18], "12e": [1, 6, 9, 12, 13, 14, 15], "previous_stardata": [1, 8, 9, 12, 15], "kill": [1, 9, 15, 20], "dtm": [1, 9, 15], "exact": [1, 2, 21], "wrap": [1, 9, 19, 28], "logic": [1, 2, 9, 20, 21], "definit": [1, 13, 14, 42], "share": [1, 12, 17, 18, 21, 30, 40], "binary_c_write_log_cod": 1, "write": [1, 5, 7, 9, 12, 13, 15, 17, 18, 19, 20, 21, 30, 33, 40], "target": [1, 33], "compile_shared_lib": 1, "sourcefile_nam": 1, "outfile_nam": 1, "name": [1, 2, 5, 6, 7, 8, 13, 14, 15, 16, 18, 19, 21, 29, 30, 33, 34, 40, 41], "create_and_load_logging_funct": [1, 9, 18], "custom_logging_cod": [1, 9, 12, 15, 17, 18, 40], "custom_tmp_dir": 1, "ctype": 1, "unless": [1, 20, 21], "i": [1, 2, 6, 7, 8, 9, 12, 13, 14, 15, 16, 19, 20, 21, 22, 25, 31, 34, 38, 39, 42], "recommend": [1, 4, 22, 39], "combin": [1, 2, 9, 19, 20, 21], "tupl": [1, 6, 19, 25, 30, 37], "memori": [1, 6, 7, 8, 9, 13, 14, 15, 18, 19, 20, 21, 30, 42], "address": [1, 7, 9, 21, 42], "capsul": [1, 7, 19], "from_binary_c_config": 1, "config_fil": 1, "binaryc_config": 1, "config": [1, 19, 21, 22, 39], "filepath": 1, "return_compilation_dict": 1, "inspir": [1, 24, 42], "binary_c_inline_config": 1, "perl": [1, 2, 14, 15, 29], "still": [1, 9, 16, 21, 22, 39, 42], "clean": [1, 6, 12, 14, 20], "w": [1, 12, 15, 20, 30], "develop": 1, "redhat": 1, "com": [1, 19, 20, 22, 31, 39], "blog": 1, "linker": 1, "gcc": [1, 22, 39], "python": [2, 3, 4, 6, 8, 13, 14, 19, 21, 28, 30, 31, 34], "class": [2, 3, 19, 22, 23], "autovivificationdict": 2, "autovivif": 2, "featur": [2, 4, 15, 22], "overrid": [2, 18, 21, 31, 34, 37], "__iadd__": 2, "oper": [2, 30], "doc": [2, 6, 13, 14, 15, 19, 22, 33, 39], "refer": [2, 21, 30], "datamodel": 2, "html": [2, 6, 15, 22, 30, 39], "highlight": 2, "iadd": 2, "subdict": 2, "might": [2, 3, 13, 15, 16, 19, 21, 22, 30, 39], "newdict": 2, "print": [2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 25, 32, 33], "__getitem__": [2, 28], "getitem": 2, "autoviv": 2, "count_keys_recurs": 2, "input_dict": 2, "recurs": [2, 19, 22, 39], "count": [2, 5, 6, 18, 19, 21], "local_count": 2, "custom_sort_dict": 2, "order": [2, 4, 15, 19, 34], "ordereddict": 2, "find": [2, 5, 8, 15, 19, 21, 28, 33], "uniqu": [2, 18, 21], "sort": [2, 6, 13, 14, 16, 19, 30], "Then": [2, 6, 19, 22, 39], "those": [2, 6, 8, 13, 14, 15, 18, 20, 22, 31, 38, 39], "them": [2, 5, 7, 8, 15, 17, 18, 19, 20, 29, 30, 31, 33, 40], "directli": [2, 12, 21, 25, 30], "without": [2, 9, 12, 14, 19, 21, 31], "filter_dict": 2, "arg_dict": [2, 19], "filter_list": 2, "out": [2, 3, 5, 6, 8, 9, 13, 14, 16, 19, 21, 22, 31, 33, 39], "filter_dict_through_valu": 2, "inspect_dict": 2, "indent": [2, 3, 12, 20, 30], "print_structur": 2, "inspect": [2, 12, 24], "nest": [2, 15, 34, 38], "content": [2, 3, 5, 7, 19, 20, 25], "bool": [2, 15, 19, 20, 24, 30, 33, 34, 38], "except": [2, 5, 6, 7, 13, 14, 15, 21, 24, 33], "keys_to_float": 2, "convert": [2, 3, 6, 8, 16, 19, 20, 30, 31, 37], "faster": [2, 13, 14, 15], "recursive_change_key_to_float": 2, "convers": 2, "noth": [2, 21, 25, 26, 30], "els": [2, 5, 8, 19, 21], "new_dict": 2, "merge_dict": [2, 11], "dict_1": 2, "dict_2": 2, "behaviour": [2, 6, 13, 14, 15, 22, 39, 40], "present": [2, 3, 6, 13, 14, 15, 18, 20, 22, 30, 31, 39], "again": [2, 3, 11, 12, 19, 21], "ad": [2, 4, 6, 8, 12, 13, 22, 30, 34, 39], "opt": [2, 5, 7, 31], "OR": [2, 18], "ident": 2, "concaten": 2, "nonetyp": 2, "instanc": [2, 11, 12, 13, 14, 15, 20, 31], "multiply_float_valu": 2, "multiply_values_dict": [2, 11], "over": [2, 5, 6, 8, 11, 12, 13, 14, 15, 19, 20, 30], "general_info": 2, "origin": [2, 16, 30], "union": [2, 15, 19, 31, 34, 37, 38, 42], "complex": [2, 8, 9, 17, 18, 21], "pass": [2, 7, 9, 12, 15, 16, 18, 19, 20, 21, 22, 24, 25, 26, 29, 30, 36, 37, 39, 40], "multiplied_dict": 2, "normalize_dict": 2, "result_dict": 2, "normalis": [2, 21, 31], "divid": 2, "term": 2, "design": [2, 20, 22, 24, 39], "normalized_dict": 2, "prepare_dict": 2, "global_dict": 2, "list_of_sub_kei": 2, "sure": [2, 12, 13, 14, 15, 22, 25, 30, 31, 39, 40], "prepar": 2, "don": [2, 6, 16, 19, 21, 25], "access": [2, 9, 12, 13, 14, 15, 21, 25, 30], "come": [2, 10, 22, 37, 39], "empti": [2, 12, 29, 33, 36], "recursive_change_key_to_str": 2, "custom_format": [2, 19], "ll": [2, 9, 11, 14, 16, 30], "set_opt": [2, 6, 8], "newopt": [2, 31], "updat": [2, 14, 15, 20, 22, 34, 39], "subtract_dict": 2, "subtract": 2, "numer": 2, "overlap": 2, "update_dict": [2, 11], "dict2": 2, "packag": [3, 7, 15, 19, 22, 34, 35, 36, 37, 39], "binarycdecod": 3, "object_hook": 3, "parse_float": 3, "parse_int": 3, "parse_const": 3, "strict": 3, "object_pairs_hook": 3, "jsondecod": 3, "decod": 3, "entri": [3, 19, 20], "binarycencod": 3, "skipkei": 3, "ensure_ascii": [3, 20, 30], "check_circular": 3, "allow_nan": 3, "sort_kei": [3, 30], "jsonencod": 3, "encod": [3, 15, 30], "attempt": [3, 19, 20], "o": [3, 19, 22, 31], "precis": 3, "json": [3, 7, 12, 15, 20, 21, 26, 30], "binaryc_json_seri": 3, "obj": [3, 19], "serialis": 3, "export": [3, 15, 19, 20, 22, 30, 39], "represent": [3, 15, 34], "themselv": [3, 31], "itself": [3, 6, 9, 12, 21, 22, 31, 39], "ensemble_compress": 3, "compress": [3, 30], "extens": [3, 7, 22, 23], "ensemble_file_typ": 3, "ensemble_set": 3, "parameter_nam": [3, 6, 7, 8, 11, 13, 14, 15, 19, 34], "extract_ensemble_json_from_str": 3, "binary_c_output": 3, "extract": [3, 15], "ensemble_json": 3, "raw": [3, 7, 18, 19, 20, 21, 24, 38, 40], "pars": [3, 4, 5, 6, 8, 12, 13, 14, 15, 18, 19, 20, 24, 38, 40], "format_ensemble_result": 3, "ensemble_dictionari": 3, "step": [3, 6, 8, 9, 12, 13, 14, 15, 24, 34, 37], "handle_ensemble_string_to_json": 3, "raw_output": 3, "deal": [3, 12], "creat": [3, 6, 8, 9, 12, 13, 14, 15, 19, 20, 27, 30, 31, 34, 36], "wrapper": [3, 7, 9, 12, 20, 30, 32, 42], "easi": [3, 12, 22, 39], "cl": 3, "load_ensembl": 3, "convert_float_kei": 3, "select_kei": 3, "flush": [3, 20, 30], "ensemebl": 3, "even": [3, 11, 14], "open_ensembl": 3, "utf": [3, 15, 30], "open": [3, 5, 12, 15, 18, 30], "read": [3, 4, 5, 12, 15, 18, 19, 21, 22, 30, 39], "decompress": 3, "explain": [4, 38], "repositori": [4, 22, 39], "last": [4, 18, 19, 31], "usecas": 4, "tutori": [4, 22, 39], "individu": [4, 5, 13, 22, 39], "run_system_wrapp": [4, 5, 9, 17, 22, 23], "via": [4, 5, 6, 7, 9, 13, 14, 15, 20, 21, 24], "noteworthi": 4, "full": [4, 9, 16, 19, 21, 29, 36], "script": [4, 9, 19, 21, 22, 25, 29, 36, 39], "about": [4, 6, 8, 13, 14, 15, 19, 20, 21, 25, 30, 33, 42], "modif": 4, "binari": [4, 7, 8, 12, 14, 21, 22, 24, 31, 34, 39, 42], "notebook": [5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 22, 39], "log_fil": [5, 21], "bbh": 5, "summari": 5, "run_system": [5, 7, 9, 11, 12, 16, 17, 24, 40], "bhbh": 5, "There": [5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22, 24, 31, 33, 39], "import": [5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 34], "os": [5, 6, 8, 12, 13, 14, 15, 16, 18, 19], "temp_dir": [5, 6, 8, 12, 14, 15, 16, 19], "tmp_dir": [5, 6, 8, 12, 14, 15, 16, 21, 34], "notebook_bhbh": 5, "txt": [5, 12, 15, 18, 22, 30, 39, 40], "60": [5, 30], "readout": 5, "m2": [5, 9, 12, 13, 15, 18, 30, 31, 42], "k1": [5, 12, 18], "k2": [5, 12, 18], "sep": [5, 8, 12, 13, 15, 18, 30, 31, 42], "ecc": [5, 12, 15, 18, 30, 31], "r1": [5, 12, 18], "rol1": [5, 12, 18], "r2": [5, 12, 18], "rol2": [5, 12, 18], "13868": 5, "random_count": [5, 12, 18], "0000": [5, 12, 18], "000": [5, 12, 18], "00": [5, 12, 15, 18], "6492": 5, "26": 5, "756": 5, "off_m": [5, 12, 18], "type_chng": [5, 12, 18], "6588": 5, "687": 5, "2135": 5, "972": 5, "5298": 5, "325": 5, "5700": 5, "903": 5, "randbuf": [5, 18], "14456": 5, "mer": 5, "415747": 5, "403489": 5, "273236": 5, "627902": 5, "92015": 5, "31213": 5, "gt": [5, 7, 9, 12, 13, 15, 17, 18], "vk": [5, 18], "223": 5, "39": [5, 6, 7, 8, 11, 12, 13, 14, 15, 17], "vr": [5, 18], "94523": 5, "phi": [5, 18], "470721": 5, "vn": [5, 18], "final": [5, 8, 14, 18], "runawai": [5, 18], "v": [5, 18, 22, 39], "155": 5, "054": [5, 31], "143": 5, "72": 5, "9341": 5, "max_tim": [5, 12, 18], "entir": [5, 9, 12, 17, 18], "wider": 5, "littl": [5, 6, 8, 13, 15, 16, 28], "40": [5, 14], "71985": 5, "3101": 5, "48": 5, "y": [5, 6, 16, 19, 20, 24, 25], "009": [5, 16], "beg_symb": 5, "3583": 5, "081": 5, "35": [5, 31], "930": 5, "3971": 5, "98": 5, "023": 5, "014": 5, "lock": [5, 30], "3928": [5, 18], "41": [5, 13], "632": 5, "894": 5, "3995": 5, "4219": 5, "27": [5, 14, 15], "615": 5, "603": 5, "5603": 5, "013": 5, "5403": 5, "157": 5, "151": 5, "5696": 5, "18": [5, 13, 18], "012": 5, "6475": 5, "763": [5, 31], "731": 5, "5791": 5, "19": [5, 15, 18], "010": 5, "011": 5, "6548": 5, "730": 5, "729": [5, 8], "5794": 5, "203": 5, "6550": 5, "728": 5, "225": 5, "inv": [5, 18], "6552": 5, "725": 5, "5795": 5, "246": 5, "6556": 5, "721": 5, "5796": 5, "282": 5, "6559": 5, "716": 5, "727": 5, "321": 5, "6571": 5, "691": 5, "724": [5, 9], "5798": 5, "546": 5, "021": 5, "6649": 5, "502": 5, "683": 5, "5812": 5, "548": 5, "543": 5, "2663": 5, "178": 5, "480": 5, "8828": 5, "57": 5, "460": 5, "end_symb": 5, "2670": 5, "171": 5, "458": 5, "8837": 5, "58": 5, "455": 5, "2733": 5, "111": 5, "272": 5, "8921": 5, "59": 5, "265": 5, "2801": 5, "033": 5, "166": 5, "8987": 5, "4925": 5, "910": 5, "995": 5, "11434": 5, "97": 5, "4989": 5, "850": 5, "942": [5, 13], "11516": 5, "5282": 5, "966": 5, "616": 5, "539": 5, "54990": 5, "431329": 5, "844304": 5, "737837": 5, "957392": 5, "745668": 5, "49451": 5, "76448": 5, "366": 5, "674": [5, 15], "5058": 5, "68517": 5, "15497": 5, "077": 5, "5393": 5, "16623": 5, "147": 5, "335": [5, 14], "088": 5, "214": 5, "68852": 5, "172227": 5, "112321": 5, "69127": 5, "5344": 5, "029": 5, "787956": 5, "497544": 5, "721903": 5, "10755": 5, "526": 5, "7893": 5, "410": [5, 18], "158": 5, "675756": 5, "459842": 5, "312": 5, "331": 5, "229": 5, "113": 5, "746": 5, "54865e": 5, "51": 5, "54769e": 5, "104": 5, "39903e": 5, "let": [5, 8, 12, 14, 15, 16, 20], "def": [5, 6, 8, 12, 13, 14, 15, 18], "detect_bhbh": 5, "logfil": [5, 12, 19, 22, 39], "log_file_lin": 5, "readlin": 5, "len": [5, 6, 12, 15, 18], "enough": [5, 31], "loop": [5, 6, 8, 12, 13, 14, 15, 30, 34], "stellar_type1": 5, "stellar_type2": 5, "rememb": [5, 6, 14], "pop": [5, 9, 16, 28], "return_dict": 5, "system_properti": 5, "log_file_cont": 5, "join": [5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 21, 25], "oop": 5, "found": [5, 6, 8, 13, 14, 15, 29, 31, 36], "unbound": 5, "bound": [5, 31, 37], "search": [5, 6, 13, 16, 22], "search_for_bhbh": 5, "maxcount": 5, "No": [5, 6, 7, 8, 13, 14, 15, 21, 22, 39], "arg": [5, 7, 15, 19, 28, 31, 32], "search_result": 5, "16379": 5, "17247": 5, "211": 5, "81114": 5, "159326": 5, "970141": 5, "340351": 5, "132638": 5, "502053": 5, "15449": 5, "825261": 5, "304595": 5, "5300": 5, "592": 5, "17209": 5, "210": [5, 18], "22992": 5, "391": 5, "584197": 5, "452365": 5, "0846357": 5, "848993": 5, "111944": 5, "44077": 5, "703362": 5, "772581": 5, "130746": 5, "5444": 5, "wide": [5, 14], "caus": [5, 13, 42], "former": 5, "unphys": [5, 8, 13], "3486": 5, "006": 5, "8674": 5, "840": 5, "505": 5, "3185": 5, "78": 5, "017": [5, 16], "8704": 5, "600": 5, "509": 5, "3192": 5, "393": 5, "418": 5, "8706": 5, "568": 5, "510": 5, "3193": 5, "81": [5, 6], "496": [5, 6], "8910": 5, "54": [5, 14], "758": [5, 18], "3246": 5, "beg_rch": 5, "9650": 5, "495": 5, "571": 5, "3223": 5, "29": [5, 21], "913": [5, 13], "0585": 5, "24": 5, "961": [5, 13], "453": 5, "3211": 5, "65": [5, 6, 37], "999": 5, "007": [5, 16], "end_rch": 5, "0649": 5, "747": 5, "479": 5, "3216": 5, "67": [5, 15], "002": [5, 17, 18], "2699": 5, "22": [5, 14, 18], "235": [5, 6], "402": 5, "3331": 5, "32131": 5, "175268": 5, "383437": 5, "361343": 5, "457958": 5, "403947": 5, "2347": 5, "8374": 5, "64": [5, 13], "5055": 5, "53807": 5, "084183": 5, "10734e": 5, "2799": 5, "398": 5, "2946": 5, "392": [5, 18], "beg_bss": 5, "9074": 5, "49": [5, 13], "493": 5, "3373": 5, "end_bss": 5, "9113": 5, "243": 5, "3393": 5, "238": 5, "9192": 5, "236": [5, 18], "059": 5, "3447": 5, "9203": 5, "47": 5, "904": 5, "3454": 5, "69": 5, "9786": 5, "242": 5, "145": 5, "3893": 5, "83": 5, "0907": 5, "249": 5, "4523": 5, "296": 5, "1018": 5, "256": [5, 21], "583": 5, "4540": 5, "997": 5, "1137": 5, "232": 5, "4551": 5, "925": 5, "4596": 5, "101099": 5, "660012": 5, "331365": 5, "36634": 5, "576176": 5, "9248": 5, "0519": 5, "8488": 5, "62022": 5, "27061": 5, "58096e": 5, "3473": 5, "oh": 5, "dear": 5, "secondari": [5, 6, 13, 31, 42], "shorter": 5, "shrink": [5, 8], "best": [5, 20, 21], "acquir": 5, "closer": 5, "grvitation": 5, "0001": [5, 7, 42], "39800": 5, "005": 5, "8571": 5, "8600": 5, "096": 5, "0451": 5, "503": 5, "0491": 5, "561": 5, "0678": 5, "3099": 5, "0681": 5, "2094": 5, "56": 5, "978": 5, "43": 5, "022": 5, "2884": 5, "91": [5, 13], "672": [5, 13], "32438": 5, "qc": 5, "733417": 5, "st": 5, "9778": 5, "8207": 5, "1945": 5, "85": [5, 37], "rc": [5, 6, 8, 13, 14, 16, 24], "67126": 5, "0222": 5, "1192": 5, "comenv": [5, 8], "presc": 5, "m01": 5, "mc1": 5, "l1": 5, "14773e": 5, "rzam": [5, 42], "21541": 5, "convfrac": 5, "560301": 5, "lambda_ion": 5, "a_in": 5, "p_in": 5, "1793": 5, "89": [5, 15], "jtot_in": 5, "09752e": 5, "55": [5, 8, 13, 15, 31], "jorb_in": 5, "95297e": 5, "eorbi": 5, "31037e": 5, "ebindi": 5, "92616e": 5, "sepf": 5, "1221": 5, "1116": 5, "1193": 5, "7646": 5, "mf1": 5, "6094": 5, "mf2": 5, "af": 5, "jf": 5, "44174e": 5, "jej": 5, "82682e": 5, "eorbf": 5, "99926e": 5, "eej": 5, "89371e": 5, "alpha_ej": 5, "0273415": 5, "2095": 5, "821": 5, "122": 5, "647": 5, "092": 5, "793": 5, "mstart": 5, "407726": 5, "3102": 5, "62709": 5, "46857": 5, "a_out": 5, "p_out": 5, "00631839": 5, "30747": 5, "jorb_out": 5, "6543": 5, "rl1": 5, "099": 5, "rl2": 5, "792766": 5, "60828": 5, "gyr": [5, 6, 8], "61249": 5, "803": 5, "44": 5, "040": 5, "566": [5, 18], "32": [5, 19, 21], "457": 5, "79375": 5, "301545": 5, "0266946": 5, "404793": 5, "189909": 5, "0438563": 5, "126": 5, "248": 5, "275557": 5, "668975": 5, "421": 5, "918": 5, "5655": 5, "319412": 5, "506": 5, "521": 5, "8539": 5, "46": [5, 15], "629": 5, "9016": 5, "45": 5, "848": 5, "33": 5, "648": 5, "4816": 5, "633": 5, "954": 5, "5343": 5, "533": 5, "5348": 5, "5599": 5, "534": 5, "5604": 5, "5867": 5, "899": 5, "781": 5, "5875": 5, "5878": 5, "106": [5, 15], "5914": 5, "901": 5, "258": 5, "428": 5, "5916": 5, "804": 5, "873": 5, "461": 5, "28": [5, 7, 9, 12], "413": 5, "6245": 5, "808": 5, "245": 5, "7494": 5, "823": 5, "806": 5, "63": [5, 8, 13], "569": 5, "454": 5, "8032": 5, "830": [5, 18], "333": 5, "087": 5, "998": 5, "8033": 5, "990": 5, "8290": 5, "085": 5, "053": 5, "0403": 5, "050": 5, "0427": 5, "37": 5, "893": 5, "99": [5, 13], "552236": 5, "103282": 5, "393936": 5, "539534": 5, "864167": 5, "3329": 5, "0483": 5, "179": 5, "074": 5, "327": 5, "351": 5, "42972": 5, "0791504": 5, "8925": 5, "991187": 5, "66": [5, 8, 13], "5305": 5, "36": 5, "3905": 5, "82105": 5, "9857": 5, "7333": 5, "68": [5, 15], "5019": 5, "08275": 5, "77": 5, "3696": 5, "0742": 5, "1051": 5, "0146": 5, "contact": [5, 22, 39], "00319559": 5, "00262864": 5, "163": 5, "57683": 5, "0798097": 5, "bh_bh": 5, "1626": 5, "501459": 5, "154271": 5, "coalesc": 5, "r_": 5, "odot": [5, 6, 8, 18], "13312": 5, "7617": 5, "018": 5, "7647": 5, "572": 5, "7721": 5, "7785": 5, "3100": 5, "1326": 5, "52": 5, "305": 5, "695": 5, "2791": 5, "159": 5, "09665": 5, "714712": 5, "3048": 5, "0276": 5, "2332": 5, "71818": 5, "6952": 5, "9757": 5, "44223e": 5, "33552": 5, "467851": 5, "1708": 5, "09706e": 5, "96557e": 5, "76416e": 5, "30388e": 5, "7114": 5, "4385": 5, "9758": 5, "8926": 5, "5423": 5, "72832e": 5, "63566e": 5, "39152e": 5, "03996e": 5, "0241634": 5, "1327": 5, "028": 5, "711": 5, "367": 5, "459": 5, "397754": 5, "3084": 5, "9071": 5, "46089": 5, "0152545": 5, "57093": 5, "6771": 5, "459382": 5, "9411": 5, "9452": 5, "215": 5, "508": 5, "76": [5, 13], "284": 5, "67260": 5, "643477": 5, "441321": 5, "365945": 5, "352254": 5, "0493316": 5, "2147": 5, "401": 5, "309959": 5, "299971": 5, "175": 5, "0005": 5, "759863": 5, "986": 5, "186": 5, "8186": 5, "301": 5, "55202": 5, "8609": 5, "46244": 5, "7292": 5, "322": 5, "3844": 5, "4261": 5, "09": 5, "8255": 5, "339": 5, "1375": 5, "026": 5, "1380": [5, 18], "7437": 5, "276": 5, "488": 5, "702": 5, "185": 5, "7464": 5, "110": 5, "815": 5, "7466": 5, "938": 5, "881": 5, "7479": 5, "466": 5, "188": 5, "114": 5, "7598": 5, "278": 5, "754": 5, "7691": 5, "279": 5, "231": 5, "697": 5, "7692": 5, "987": 5, "7854": 5, "696": 5, "061": 5, "9061": 5, "063": 5, "1521": 5, "1942": 5, "060": 5, "1949": 5, "936": 5, "534629": 5, "163092": 5, "907792": 5, "0909357": 5, "00121347": 5, "2315": 5, "7429": 5, "140": 5, "491": 5, "362": 5, "342": 5, "00762447": 5, "958149": 5, "304": 5, "115": [5, 31], "9359": 5, "295576": 5, "61": [5, 15], "understand": [5, 21], "mention": 5, "introduct": [5, 6], "nto": 5, "most": [5, 6, 7, 8, 14, 19, 22, 39], "next": [5, 14, 15, 19], "catch": [5, 6, 8, 12, 13, 14, 15, 18, 19, 21], "sever": [5, 11, 15, 18, 21, 24, 33, 40], "trend": 5, "math": [6, 8, 13, 14, 15, 16, 34, 37], "matplotlib": [6, 8, 14, 16, 18, 24], "pyplot": [6, 8, 14, 16, 18], "plt": [6, 8, 14, 16, 18], "notebook_hrd": 6, "our": [6, 8, 13, 14, 16, 21, 22, 31, 39], "mathrm": [6, 8, 13, 14], "univers": [6, 8, 21], "These": [6, 7, 14, 15, 19, 21, 24, 25], "rough": 6, "real": [6, 13, 15, 34], "finit": [6, 8, 13, 14], "ago": 6, "cannot": [6, 9, 15, 28, 30, 33], "geq": 6, "_": [6, 8, 13, 14, 21, 33], "through": [6, 7, 11, 12, 13, 14, 15, 24, 25, 34, 40], "studi": [6, 22, 39], "leq": 6, "bse_opt": [6, 13, 14, 15, 20, 37], "grid_opt": [6, 12, 13, 14, 15, 20, 25, 28, 29, 30, 34, 35, 36, 37], "custom_opt": [6, 12, 13, 14, 15, 20, 30], "physic": [6, 13, 14, 15, 21], "13700": [6, 8], "nine": 6, "massrang": [6, 8, 13, 14], "add_grid_vari": [6, 8, 13, 14, 15, 34], "longnam": [6, 8, 13, 14, 15, 34], "valuerang": [6, 8, 13, 14, 15, 34], "samplerfunc": [6, 8, 13, 14, 15, 21, 34, 37], "self": [6, 8, 12, 13, 14, 15, 20, 21, 25, 28, 29, 30, 31, 34, 36, 37, 38], "const_linear": [6, 8, 13, 14, 15, 34, 37], "min_mass": 6, "max_mass": 6, "res_mass": 6, "probdist": [6, 8, 13, 14, 15, 34], "dprob": [6, 8, 14], "dm1": [6, 14], "care": [6, 13, 14, 21], "dphasevol": [6, 8, 13, 14, 15, 34], "dm_1": [6, 14], "condit": [6, 8, 9, 13, 14, 15, 17, 18, 34], "impos": [6, 8, 13, 14, 15], "mostli": [6, 8, 13, 14, 15, 18, 19, 21, 24, 33, 40], "yourself": [6, 8, 13, 14, 15, 24], "gridtyp": [6, 15, 34], "asymptot": 6, "made": [6, 25], "bit": [6, 13], "messi": 6, "avoid": [6, 7, 8], "track": [6, 21, 24], "custom_logging_stat": [6, 8, 13, 14], "foreach_star": [6, 13], "outermost_core_mass": 6, "doubl": [6, 9, 15, 19], "logteff": 6, "teff_from_star_struct": 6, "logl": 6, "loggrav": 6, "tini": 6, "gravitational_const": 6, "m_sun": 6, "pow2": 6, "r_sun": 6, "starnum": [6, 13], "zero_ag": [6, 9, 12, 13, 14, 15], "c_logging_cod": [6, 8, 9, 12, 13, 14, 15, 21], "doesn": [6, 21], "associ": [6, 8, 13, 14, 29, 36], "datalinedict": [6, 8, 13, 14, 19], "parse_funct": [6, 8, 12, 13, 14, 15, 20, 21, 40], "zams_mass": [6, 13, 14, 15], "splitlin": [6, 7, 8, 9, 12, 13, 14, 15, 16], "nstar": [6, 13], "group": [6, 13, 16, 38], "linedata": [6, 8, 13, 14], "setup": [6, 15, 22, 39, 40], "grid_result": [6, 8, 13, 14, 21], "results_dictionari": [6, 8, 13, 14], "configur": [6, 11, 12, 13, 14, 15, 18, 21, 26, 31], "part": [6, 7, 12, 13, 14, 15, 18, 20, 29, 31, 34, 36, 42], "straightforward": [6, 13, 14, 15], "num_cor": [6, 8, 13, 14, 15, 21], "lot": [6, 13, 14, 15, 16, 21, 38, 40], "ri0005": [6, 15, 22, 39], "surrei": [6, 15, 22, 39], "ac": [6, 15, 22, 39], "uk": [6, 15, 22, 39], "grid_options_descript": [6, 15, 33], "thread": [6, 8, 13, 14, 19, 21, 32], "suffici": 6, "ensur": 6, "crunch": [6, 8, 13, 14], "analyt": [6, 8, 13, 14, 15, 20, 22, 23], "dry": [6, 8, 13, 14, 15, 21, 34], "starcount": [6, 8, 13, 14, 15], "subprocess": [6, 8, 13, 14, 15], "c98b63ab1b0346d9a1067fc08cb8dd00": 6, "finish": [6, 8, 13, 14, 15, 19, 24, 30], "took": [6, 8, 13, 14, 15, 18], "167": 6, "133": [6, 15], "mb": [6, 8, 13, 14, 15, 19, 21], "were": [6, 8, 13, 14, 15, 19, 38], "metadata": [6, 8, 13, 14, 15, 20, 22, 23, 34], "complet": [6, 8, 13, 14, 15], "technic": [6, 8, 9, 13, 14, 15], "seaborn": [6, 8, 13, 14, 16], "panda": [6, 8, 12, 13, 14, 16, 17, 18, 19, 24], "pd": [6, 8, 12, 13, 14, 16, 17, 18], "pad_output_distribut": [6, 8, 13, 14, 19], "max_row": [6, 8], "max_column": [6, 8], "figur": [6, 8, 13, 14, 16, 24], "figsiz": [6, 8, 13, 14, 16, 18], "set_context": [6, 8, 13, 14, 16], "font_scal": [6, 8, 13, 14, 16], "linewidth": [6, 8, 13, 14, 16], "datafram": [6, 8, 12, 13, 14, 16, 17, 18, 24], "column": [6, 8, 12, 15, 16, 18, 24], "lineplot": [6, 8, 13, 14, 16], "estim": [6, 16, 19, 21], "label": [6, 18, 31], "text": [6, 8, 16, 19, 33], "invert_xaxi": 6, "set_xlabel": [6, 8, 13, 14, 16, 18], "log_": [6, 8, 13, 14], "t_": 6, "eff": 6, "set_ylabel": [6, 8, 13, 14, 16, 18], "distanc": [6, 16], "rerun": [6, 21], "At": [6, 15], "expect": [6, 7, 8, 13, 14, 21, 22, 39], "begin": 6, "shortli": 6, "rsun": [6, 24], "8af9954e2cc847aa8ceabc618e3d147d": 6, "suddenli": 6, "smooth": [6, 14], "a34e3c842d96496c87ab0d70bdacac11": 6, "247": [6, 15], "824": 6, "jerki": 6, "strong": 6, "rgb": 6, "tip": [6, 31], "proper": [6, 9, 33], "program": [6, 22, 39], "languag": 6, "sim": 6, "750": 6, "cours": [6, 24], "simpl": [6, 8, 13, 16], "haven": 6, "talk": 6, "produc": 6, "suffer": 6, "thermonuclear": 6, "lumin": 6, "kilonova": 6, "interfac": [7, 16, 19, 22, 25, 39], "framework": [7, 22, 39], "sourcecod": [7, 9, 22, 39], "binary_c_python": [7, 12, 13, 14, 15, 19], "_binary_c_bind": [7, 9, 12, 16, 38, 42], "cell": [7, 14, 15], "free_persistent_data_memaddr_and_return_json_output": 7, "persistent_data": 7, "adress": [7, 9, 42], "persist": 7, "free_store_memaddr": 7, "memaddr": [7, 9], "return_arglin": 7, "return_help": 7, "info": [7, 11, 15, 19, 20, 22, 24, 38, 39], "return_help_al": [7, 19], "overview": 7, "categor": 7, "section": [7, 15, 19, 22, 31, 39], "return_maximum_mass_ratio_for_rlof": [7, 42], "argstr": [7, 9, 12, 16, 18], "store_capsul": 7, "unction": 7, "return_minimum_orbit_for_rlof": [7, 42], "return_persistent_data_memaddr": 7, "run_popul": 7, "return_store_memaddr": 7, "return_version_info": [7, 38], "abl": 7, "situat": 7, "slightli": 7, "custom_logging_func_memaddr": [7, 9, 21], "store_memaddr": [7, 42], "write_logfil": 7, "test_func": 7, "snippet": [7, 12], "reliabl": 7, "dont": [7, 18], "home": 7, "pyenv": [7, 22, 39], "binarycpython3": 7, "lib": [7, 12, 17, 18, 22, 39], "python3": [7, 22, 39], "site": 7, "cpython": 7, "x86_64": 7, "linux": 7, "gnu": 7, "categori": [7, 15], "creation": 7, "alloc": [7, 37], "written": [7, 12, 15, 21, 22, 30, 33, 34, 39, 40], "4500": 7, "lt": [7, 12, 13, 15, 17], "0x7fc1f0c3ff00": 7, "single_star_lifetim": [7, 9, 12], "4838": [7, 9, 12], "unpars": 7, "abridg": [7, 9, 15], "algorithm": [7, 22], "__arg_begin": 7, "lastli": [7, 12], "00632092": 7, "0141": 7, "alter": [8, 13, 34], "intermedi": 8, "Not": 8, "notebook_comenv": 8, "alpha_": 8, "demonstr": 8, "keep": [8, 15, 30, 32], "log_dt": [8, 21], "progress": [8, 19], "focu": 8, "imposs": 8, "logperrang": [8, 13], "lnm1": [8, 13, 14, 15], "min": [8, 9, 13, 14, 15, 31], "precod": [8, 13, 14, 15, 34], "exp": [8, 13, 14, 15, 34], "three_part_powerlaw": [8, 13, 14, 15, 31], "150": [8, 13, 14, 15], "dlnm1": [8, 13, 15], "flatsect": [8, 13, 15, 31], "height": [8, 13, 15, 31], "dq": [8, 13, 15], "log10per": [8, 13, 15], "calc_sep_from_period": [8, 13, 15, 42], "sep_min": [8, 13, 15], "sep_max": [8, 13, 15], "sana12": [8, 13, 15, 31], "dlog10per": [8, 13, 15], "comenv_count": 8, "had": [8, 13, 14, 20], "proport": 8, "previou": [8, 14, 19, 21, 38], "year_length_in_dai": 8, "wast": [8, 14], "evolution_stop": 8, "parse_data": 8, "bin_data": [8, 13, 14, 19], "binwidth": [8, 13, 14, 19], "pre_comenv_period": 8, "post_comenv_period": 8, "nearest": [8, 13, 14], "5dex": [8, 14], "binned_pre_period": 8, "aritif": 8, "binned_post_period": 8, "histogram": 8, "machin": [8, 21, 22, 39], "0645564": 8, "e7857f8149e949a286f9bfe35157f91f": 8, "minut": [8, 19], "668": 8, "594": 8, "population_id": [8, 13, 14, 15, 21], "evolution_typ": [8, 13, 14, 15, 21], "failed_count": [8, 13, 14, 15], "failed_prob": [8, 13, 14, 15], "failed_systems_error_cod": [8, 13, 14, 15], "errors_exceed": [8, 13, 14, 15], "errors_found": [8, 13, 14, 15], "total_prob": [8, 13, 14, 15], "06455639233064192": 8, "total_count": [8, 13, 14, 15], "start_timestamp": [8, 13, 14, 15], "1655558353": 8, "8189669": 8, "end_timestamp": [8, 13, 14, 15], "1655558379": 8, "477376": 8, "time_elaps": [8, 13, 14, 15, 27], "658409118652344": 8, "total_mass_run": [8, 13, 14, 15], "3410": 8, "9363465845586": 8, "total_probability_weighted_mass_run": [8, 13, 14, 15], "2260906041851175": 8, "zero_prob_stars_skip": [8, 13, 14, 15], "unmerg": 8, "deepcopi": 8, "logper": [8, 31], "90": 8, "del": 8, "pad": [8, 13, 14], "plot_data": [8, 13, 14], "from_dict": [8, 13, 14, 17, 18], "orient": 8, "p_": 8, "orb": [8, 15, 30], "peak": [8, 14, 37], "sim10": 8, "Such": 8, "prime": 8, "candid": 8, "excit": 8, "astrophys": [8, 14, 22, 39], "life": 8, "compact": [8, 15], "lambda_": 8, "smoother": [8, 14], "curv": [8, 14], "why": 8, "learn": [9, 21], "custom_logging_funct": [9, 12, 15, 17, 18, 21, 22, 23], "edit": 9, "log_every_timestep": [9, 12], "evolve_singl": [9, 12, 20], "publicli": 9, "elabor": 9, "advis": 9, "hardcod": [9, 13, 14, 15], "your": [9, 12, 17, 18, 21, 22, 39], "obvious": 9, "logging_lin": [9, 17, 18], "own": [9, 12, 15, 17, 18, 21, 22, 34, 39], "pragma": 9, "push_macro": 9, "undef": 9, "visibl": 9, "__attribute__": 9, "void": 9, "binary_c_api_funct": 9, "custom_output_funct": 9, "stardata_t": 9, "pop_macro": 9, "notebook_individual_system": [9, 12, 13, 14, 15], "2e": [9, 18], "example_logging_string_post_m": 9, "example_post_m": 9, "044142002936e": 9, "99194": 9, "13567": 9, "044572277695e": 9, "99192": 9, "51803": 9, "044654032097e": 9, "81395": 9, "045084306856e": 9, "99191": 9, "57443": 9, "manual": [9, 21, 22, 39], "custom_logging_memaddr": 9, "shared_lib_filenam": 9, "4530": [9, 12, 18], "example_logging_string_co": 9, "848380621869e": 9, "33469": 9, "1865": 9, "72498e": [9, 15], "338": 9, "example_massloss": [9, 12], "sn_type": 9, "sn_none": 9, "example_sn": 9, "id_cor": 9, "core_co": 9, "core_h": 9, "050651207308e": 9, "59452": 9, "34213": 9, "55458": 9, "71662": 9, "soon": [10, 37], "cover": [11, 14], "get_help": [11, 19], "get_help_al": [11, 19, 20], "get_help_sup": [11, 19], "get_default": [11, 19], "print_help": [11, 19], "parameter_value_input_typ": [11, 19], "fetch": [11, 12], "return_binary_c_version_info": [11, 20, 38], "version_info": [11, 20, 22, 23], "dict_kei": [11, 12], "argpair": [11, 38], "ensemble_filt": 11, "dt_limit": 11, "nucleosynthesis_sourc": [11, 38], "miscellan": [11, 38], "conjunct": 11, "analyz": 12, "quickli": 12, "simplest": 12, "notebook_custom_log": [12, 13, 14, 15], "path": [12, 15, 18, 19, 21, 22, 25, 28, 29, 30, 33, 36, 39], "uncom": [12, 13, 14, 15, 16], "docstr": [12, 24], "12461": 12, "test_logfil": 12, "22065": 12, "11003": 12, "1302": 12, "11582": 12, "2424": 12, "12325": 12, "1085": 12, "817": 12, "12457": 12, "1301": 12, "783": 12, "12460": 12, "8955": 12, "774": 12, "shrinkagb": 12, "1490": 12, "678": 12, "custom_log": [12, 18, 20, 21], "custom_logging_print_stat": 12, "000000000000e": 12, "column_nam": 12, "initial_mass": [12, 18], "value_lin": 12, "chose": 12, "startswith": 12, "split_lin": 12, "el": [12, 15], "numpi": [12, 15, 17, 18, 19, 34, 37], "arrai": [12, 15, 18, 19, 21, 31, 34, 37], "my": 12, "favorit": 12, "queri": [12, 25], "example_df": 12, "iloc": [12, 18], "drop": 12, "000001": 12, "000002": 12, "000003": 12, "1250": 12, "061259": 12, "718593": 12, "1251": 12, "149038": 12, "678026": 12, "1252": 12, "13461": 12, "1253": 12, "14461": 12, "1254": 12, "row": [12, 18, 24], "notebook_popul": [12, 13, 15], "everyth": [12, 15, 20, 21], "accordingli": [12, 14, 15], "example_pop": [12, 15], "stuff": [12, 15, 21], "libcustom_logging_34a350b8f15c4d149deab88632948c99": 12, "np": [12, 17, 18, 37], "object_parse_funct": 12, "output_fil": [12, 19, 30, 33], "output_dir": [12, 15, 30], "example_output": 12, "values_arrai": 12, "fill": [12, 19], "output_dict": [12, 13], "anywai": [12, 15, 31, 34], "written_data": 12, "0x7f35b603e9d0": 12, "previous": [12, 15, 25], "libcustom_logging_446fe4cddfa94946bcafd55591ef3730": 12, "under": [12, 37], "hood": 12, "fewer": 12, "failsaf": 12, "notebook_api_funct": 12, "9927": 12, "But": 12, "caught": [12, 19, 38], "correctli": [12, 18, 22, 39], "notebook_luminosity_funct": 13, "ipynb": [13, 14, 15], "conceptu": 13, "public": [13, 14, 15, 22], "side": [13, 14, 15], "cube": 13, "nre": [13, 37], "07": [13, 14, 18, 31, 37], "document": [13, 14, 15, 21, 23, 30, 33], "recompil": [13, 14, 15, 22, 39], "somewhat": [13, 14, 15, 16], "purpos": [13, 14, 15, 21, 24], "perfectli": [13, 14], "strictli": [13, 14], "zero_age_main_sequence_starn": 13, "unresolv": 13, "model_numb": [13, 14], "equival": [13, 21, 25], "capit": [13, 14], "zero_age_main_sequence_star": [13, 14], "amp": 13, "1dex": [13, 14], "binned_log_luminos": [13, 14], "0x7f777242c4c0": 13, "binary_c_grid_58bfc73fabfb43b18ae455666fe4d8f8": 13, "py": [13, 15, 21, 22, 28, 39], "dry_run": [13, 15], "symlink": [13, 15], "binary_c_grid": [13, 15], "latest0": 13, "3159": 13, "645748": 13, "996": 13, "processor": 13, "008": 13, "019": 13, "025": 13, "mainprocess": 13, "system_queue_fil": 13, "027": 13, "latest1": 13, "3145": 13, "0s": 13, "tpr": 13, "36e": 13, "etf": 13, "mem": 13, "584": 13, "7mb": 13, "7e": 13, "23146": 13, "6e": 13, "3147": 13, "37e": 13, "signal": [13, 21], "941": 13, "free": 13, "18t12": 13, "996087": 13, "948339": 13, "95": 13, "ran": [13, 21], "792": 13, "161354": 13, "018956": 13, "948532": 13, "93": 13, "791": 13, "158204": 13, "027113": 13, "949028": 13, "92": 13, "784": 13, "166051": 13, "queue": [13, 21, 25, 29], "007947": 13, "955484": 13, "160139": 13, "959": 13, "960": 13, "968": 13, "58bfc73fabfb43b18ae455666fe4d8f8": 13, "6457484448453049": 13, "1655552941": 13, "9314468": 13, "1655552946": 13, "3461084": 13, "414661645889282": 13, "65199": 13, "55913120549": 13, "6433998017038131": 13, "titl": [13, 33], "l_": [13, 14], "yscale": [13, 14, 16], "weirdli": 13, "cost": [13, 14], "observ": [13, 14], "later": [13, 14, 21], "notebook_luminos": 14, "synthesi": [14, 15, 21, 22, 39], "binarygrid": [14, 15], "predefin": [14, 15, 31], "assign": [14, 15, 34], "chosen": [14, 15, 34], "trio": [14, 15], "throughout": [14, 15, 34], "theoret": 14, "integr": [14, 31, 37], "densiti": [14, 31], "accur": 14, "_1": 14, "probtot": 14, "mmax": [14, 31, 37], "mmin": [14, 21, 31, 37], "6afcef10590f48f3b089a6e5bffc70c4": 14, "164": 14, "1655551739": 14, "2635226": 14, "1655551740": 14, "371832": 14, "108309268951416": 14, "3650000000002": 14, "035": 14, "ldist": 14, "implic": 14, "105": 14, "clearli": 14, "realist": 14, "went": 14, "wrong": [14, 22, 39], "unlik": 14, "realiti": 14, "law": [14, 31], "kroupa": [14, 31], "2001": [14, 31], "update_grid_vari": [14, 34], "211729": 14, "452bcf6eb93e4e2493019ec93ee250df": 14, "468": 14, "883": 14, "spiki": 14, "notic": 14, "poor": 14, "compens": 14, "intens": 14, "resourc": [14, 25], "smarter": 14, "linearli": [14, 37], "renam": [14, 34], "clear": [14, 38], "logarithm": [14, 31, 37], "old": [14, 21, 34], "lnm_1": [14, 15, 34], "rename_grid_vari": [14, 34], "dlnm": 14, "dlnm_1": [14, 15, 34], "_grid_vari": [14, 21, 34], "991317": 14, "ec5d853278c743a3acdb8ab290f641df": 14, "475": 14, "789": 14, "perfect": 14, "got": 14, "wiggl": 14, "artefact": 14, "monoton": 14, "brighten": 14, "narrow": 14, "co2": 14, "bar": 14, "isn": [14, 19], "challeng": 14, "sequnec": 14, "notebook_luminosity_function_binari": 14, "recogn": [15, 16], "__": 15, "45000000080": 15, "data_dir": [15, 19, 20, 21, 30], "example_python_population_result": 15, "base_filenam": [15, 20], "idea": [15, 24], "export_all_info": [15, 20], "include_popul": 15, "binary_c_default": 15, "commandlin": 15, "accept": [15, 19, 26], "include_binary_c_default": [15, 20], "include_binary_c_version_info": [15, 20], "include_binary_c_help_al": [15, 20], "fase": 15, "overriden": 15, "use_datadir": [15, 20], "outfil": [15, 20], "ok": [15, 25, 30], "example_pop_set": 15, "gz": [15, 30], "alreadi": [15, 16, 25, 30, 34], "ret": 15, "easier": [15, 18, 19, 20], "discret": 15, "unweight": 15, "notabl": 15, "moe": [15, 22, 25, 26, 31], "di": [15, 22, 26, 31], "stefano": [15, 22, 26, 31], "dataset": [15, 21, 25, 26], "further": 15, "down": 15, "population_extens": [15, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "gridcod": [15, 20, 22, 23], "centr": [15, 34], "branchpoint": [15, 34], "branchcod": [15, 34], "postcod": [15, 34], "topcod": [15, 34], "bottomcod": [15, 34], "dry_parallel": [15, 34], "deeper": [15, 34], "evalu": [15, 31, 34, 37, 42], "bewar": [15, 30, 34], "insert": [15, 34], "destruct": [15, 34], "piec": [15, 18, 34], "risk": [15, 34], "rest": [15, 31, 34], "correspond": [15, 24, 29, 34, 36], "m_min": [15, 34], "m_max": [15, 31, 34], "room": [15, 34], "kroupa2001": [15, 31, 34], "met": [15, 20, 25, 34], "continu": [15, 29, 34, 36], "stepsiz": [15, 34], "parallel": [15, 34], "block": [15, 34], "distribution_funct": [15, 20, 22, 23], "comment": [15, 25, 29, 36], "test_pop": 15, "Or": [15, 18], "example_compact_object": 15, "necessari": [15, 16, 18, 19, 20, 36], "makedir": [15, 19], "exist_ok": [15, 19], "seper": 15, "outfilenam": 15, "headerlin": 15, "isnt": 15, "valueerror": 15, "0x7f2b6ca163a0": 15, "grid_vari": [15, 21], "0443872": 15, "598268106227e": 15, "30592": 15, "75988": 15, "00193614": 15, "436983545111e": 15, "35842": 15, "9948": 15, "00144093": 15, "690157944401e": 15, "43124": 15, "7998": 15, "00107238": 15, "242397939068e": 15, "52416": 15, "3205": 15, "000798096": 15, "756794139032e": 15, "66914": 15, "7394": 15, "000593966": 15, "401414766976e": 15, "73729": 15, "2857": 15, "000442046": 15, "536373523810e": 15, "80677": 15, "000328983": 15, "393982410080e": 15, "82164": 15, "9844": 15, "000244839": 15, "396470605248e": 15, "82129": 15, "53": 15, "9508": 15, "000182216": 15, "399005684057e": 15, "82041": 15, "7151": 15, "00013561": 15, "443375325717e": 15, "81645": 15, "84": 15, "9909": 15, "000100925": 15, "451195752942e": 15, "81559": 15, "51114e": 15, "452661646076e": 15, "81543": 15, "59e": 15, "ce756bb317f64099a459bf8b55a746ac": 15, "73": 15, "293": 15, "406": 15, "044387171445641534": 15, "1646563001": 15, "7193637": 15, "1646563002": 15, "4480088": 15, "7286450862884521": 15, "649": 15, "905447944397": 15, "28133908148630704": 15, "write_binary_c_calls_to_fil": [15, 30], "dataio": [15, 20, 22, 23], "output_filenam": [15, 30], "include_default": [15, 30], "system_gener": [15, 30], "wouldn": [15, 30], "basic": [15, 30], "datadir": [15, 30], "binary_c_cal": [15, 30], "calls_filenam": 15, "binary_c_grid_ce756bb317f64099a459bf8b55a746ac": 15, "latest2": 15, "2406484012210224": 15, "22723621650191106": 15, "011394572976608001": 15, "812296769855663": 15, "22723621650191117": 15, "008480166685456411": 15, "5297876799548944": 15, "006311182276049824": 15, "430329401616038": 15, "004696962123378559": 15, "thats": 15, "evolve_popul": 15, "isfil": 15, "0fa4c2b8707741a5ab41d209ef95a3a4": 15, "299": 15, "531": 15, "regist": 15, "expand": 15, "intend": 15, "mass_1": [15, 18, 24], "zams_mass_1": 15, "mass_2": [15, 18, 24], "zams_mass_2": 15, "prev_stellar_type_1": 15, "prev_stellar_type_2": 15, "example_dco": 15, "logger": 15, "safe": [15, 30], "0211592": 15, "0eb5c0c9abd34607a6ee060b26a7e32f": 15, "300": [15, 37], "378266748188e": 15, "66293": 15, "9713": 15, "78767": 15, "8178": 15, "000339963": 15, "817608462595e": 15, "82104": 15, "41436": 15, "000193036": 15, "422997711686e": 15, "82479": 15, "82171": 15, "2535": 15, "205711924468e": 15, "73765": 15, "solarsystem": 16, "central": 16, "notebook_solar_system": 16, "mmercuri": 16, "moreov": 16, "mercuri": 16, "1mmercuri": 16, "orbital_separ": 16, "1amercuri": 16, "star1": 16, "orbital_eccentr": 16, "206": 16, "venu": 16, "1mvenu": 16, "1avenu": 16, "earth": 16, "1mearth": 16, "1aearth": 16, "mar": 16, "1mmar": 16, "1amar": 16, "093": 16, "jupit": 16, "1mjupit": 16, "1ajupit": 16, "048": [16, 18], "saturn": 16, "1msaturn": 16, "1asaturn": 16, "056": 16, "uranu": 16, "1muranu": 16, "1auranu": 16, "047": 16, "neptun": 16, "1mneptun": 16, "1aneptun": 16, "pluto": 16, "1mpluto": 16, "1apluto": 16, "2444": 16, "244": 16, "planet": 16, "cs1": 16, "superflu": 16, "fourth": 16, "dtype": [16, 17, 18], "argh": 16, "sun": 16, "df": [16, 17, 18, 24], "ci": 16, "legend": [16, 18], "xx": 16, "head": 16, "loc": 16, "yy": 16, "au": 16, "swallow": 16, "although": 16, "mess": 16, "push": 16, "beyond": 16, "explor": 16, "vs": [16, 24], "ylim": 16, "toasti": 16, "distant": 16, "futur": 16, "example_parse_output": [17, 19], "100000000000": [17, 18], "float64": [17, 18], "logi": 17, "axessubplot": 17, "xlabel": 17, "server": 18, "nov": 18, "binary_c_python_api": 18, "nbinary_c": 18, "example_header_1": 18, "st1": 18, "st2": 18, "3540": 18, "example_header_2": 18, "initial_grid": 18, "tempfil": 18, "gettempdir": 18, "test_log": 18, "7106": 18, "786e": 18, "7509": 18, "645": 18, "776": 18, "8427e": 18, "7773": 18, "639": 18, "775": 18, "8435e": 18, "748": 18, "9373e": 18, "0900": 18, "705": 18, "2934e": 18, "1204": 18, "726": 18, "700": 18, "3081e": 18, "2118": 18, "3702e": 18, "2646": 18, "472": 18, "462": 18, "34421": 18, "d48r": 18, "0570946": 18, "458272": 18, "13108": 18, "562029": 18, "924056": 18, "89211": 18, "78817": 18, "302": 18, "148": 18, "113492": 18, "80602": 18, "124379": 18, "2365": 18, "7087": 18, "7695": 18, "444": 18, "608402": 18, "696003": 18, "796455": 18, "0834973": 18, "85661": 18, "3914": 18, "156": 18, "524629": 18, "634667": 18, "func_memaddr": 18, "run_binary_custom_log": 18, "3e": 18, "serv": [18, 19], "parse_output": 18, "behind": 18, "scene": 18, "background": 18, "inlin": 18, "mind": 18, "result_example_header_1": 18, "selected_head": [18, 19], "result_example_header_2": 18, "cast": [18, 19], "df2": 18, "81762e": 18, "000000e": 18, "00000": 18, "817620e": 18, "3927": 18, "102750e": 18, "33817": 18, "62124": 18, "896110e": 18, "202750e": 18, "3929": 18, "302750e": 18, "3930": 18, "402750e": 18, "3931": 18, "500000e": 18, "3932": 18, "doesnt": [18, 33], "autogener": 18, "result_example_head": 18, "000000": 18, "3630": 18, "131680e": 18, "627748": 18, "3631": 18, "231680e": 18, "3632": 18, "331680e": 18, "3633": 18, "431680e": 18, "3634": 18, "3635": 18, "run_and_calc_mass": 18, "kwarg": [18, 20, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40], "2f": 18, "last_st": 18, "last_stellar_type_change_time_1": 18, "slice": 18, "sliced_df": 18, "cut": 18, "late": 18, "final_mass": 18, "initial_tim": 18, "final_tim": 18, "mass_lost": 18, "wrt": 18, "metallicity_002": 18, "metallicity_001": 18, "metallicity_0002": 18, "mass_rang": 18, "arang": 18, "fractions_z002": 18, "fractions_z001": 18, "fractions_z0002": 18, "214274644851685": 18, "ax": 18, "subplot": 18, "nrow": 18, "ncol": 18, "m_": 18, "fontsiz": 18, "set_titl": 18, "set_yscal": 18, "save_loop": 18, "mass_loss_m": 18, "png": 18, "ep": 18, "bbox_inch": 18, "tight": 18, "verbose_print": [19, 32], "iter": 19, "context": 19, "manag": [19, 22, 39], "__enter__": 19, "stdout": [19, 21, 37], "__exit__": 19, "releas": [19, 22, 39], "call_binary_c_config": 19, "catchtim": 19, "spent": 19, "clock": 19, "exc_typ": 19, "exc_val": 19, "exc_tb": 19, "measur": 19, "check_if_in_shel": 19, "command_string_from_list": 19, "quot": 19, "conv_time_unit": 19, "hour": 19, "magnitud": 19, "convert_byt": 19, "size": [19, 21, 28], "convfloat": 19, "scalar": 19, "create_arg_str": 19, "filter_valu": 19, "create_hdf5": 19, "hdf5": 19, "hdf5file": 19, "conveni": [19, 22, 39], "example_head": 19, "94": 19, "defaultdict": 19, "rethink": 19, "filter_arg_dict": 19, "format_numb": 19, "scientif": 19, "notat": 19, "trail": [19, 37], "get_ansi_colour": 19, "color": [19, 24], "get_arg_kei": 19, "sinc": [19, 24, 31], "param_nam": 19, "fail_sil": 19, "did": [19, 22, 39], "compon": [19, 24], "categoris": 19, "silent": 19, "get_siz": 19, "seen": 19, "github": [19, 30], "bosswissam": 19, "pysiz": 19, "get_usernam": 19, "usernam": 19, "spawn": 19, "is_capsul": 19, "tell": [19, 25], "isfloat": 19, "isint": 19, "load_logfil": 19, "make_build_text": 19, "mem_us": 19, "now_object": 19, "nospac": 19, "date": [19, 20, 21], "d_": 19, "output_lin": 19, "receiv": 19, "dist": 19, "quotewrap": 19, "remove_fil": 19, "child_dir": 19, "child": 19, "full_path": 19, "timedelta": 19, "delta": [19, 37], "length": 19, "human": 19, "readabl": 19, "trem": 19, "dn": [19, 31], "differenti": 19, "messag": [19, 20], "minimal_verbos": 19, "newlin": [19, 21, 30, 32], "charact": [19, 21, 30], "x0d": [19, 21], "carriag": [19, 21], "write_binary_c_parameter_descriptions_to_rst_fil": 19, "rst": [19, 33], "restructuredtext": 19, "save_snapshot": [20, 21, 30], "distinct": 20, "init": [20, 22, 39], "initial_abundance_hash": 20, "isotope_hash": 20, "isotope_list": 20, "nuclear_mass_hash": 20, "nuclear_mass_list": 20, "source_list": 20, "ensemble_list": 20, "spread": 20, "privat": [20, 22], "nice": [20, 24], "unload": 20, "custom_logging_info": 20, "grid_cod": 20, "mixin": 20, "portal": 20, "decor": 20, "staticmethod": 20, "classmethod": 20, "realpython": 20, "static": 20, "demystifi": 20, "cach": [20, 21, 22, 23, 27, 33, 37], "grid_log": [20, 22, 23], "grid_options_default": [20, 22, 23, 28], "hpc": [20, 21, 22, 23, 29, 36], "moe_di_stefano_2017": [20, 22, 23], "spacing_funct": [20, 22, 23], "reus": 20, "_pre_run_setup": 20, "relev": 20, "clean_up_custom_logging_fil": 20, "stacktrac": 20, "sy": 20, "include_population_set": 20, "all_info": 20, "flaw": 20, "rewrit": 20, "pl": 20, "population_set": 20, "return_population_set": 20, "_set": 20, "simulation_": 20, "jobid": [20, 21, 36], "job": [20, 21, 25, 29, 36], "id": [20, 21, 25, 29, 30, 31, 32, 36], "pid": 20, "hpc_jobid": [20, 25], "parse_cmdlin": 20, "return_all_info": 20, "return_binary_c_default": 20, "was_kil": 20, "meant": 21, "c_auto_log": 21, "headlin": 21, "hpc_force_join": 21, "slurm": [21, 22, 23, 25], "condor": [21, 22, 23, 25], "hpc_rebuild_joinlist": [21, 25], "joinlist": [21, 25], "moe2017_opt": 21, "cache_dir": [21, 37], "combine_ensemble_with_thread_join": 21, "ensemble_output_": 21, "thread_id": 21, "command_lin": 21, "htcondor": 21, "launch": [21, 29, 36], "condor_clusterid": [21, 29], "clusterid": [21, 29], "condor_process": [21, 29], "jobarrayindex": [21, 36], "condor_bash": 21, "bash": 21, "submit": [21, 22], "node": 21, "condor_batchnam": 21, "batchnam": 21, "appear": 21, "condor_q": 21, "condor_d": 21, "usr": 21, "condor_dir": [21, 25, 29, 36], "nf": [21, 30], "condor_env": 21, "env": [21, 24], "condor_extra_set": 21, "te": 21, "batch": 21, "overwrit": [21, 25], "condor_getenv": 21, "environ": 21, "submiss": 21, "almost": 21, "certainli": 21, "condor_initial_dir": 21, "condor_kill_sig": 21, "sigint": 21, "condor_memori": 21, "images": 21, "condor_njob": 21, "condor_postpone_join": 21, "condor_postpone_submit": 21, "tool": 21, "condor_pwd": 21, "pwd": 21, "instal": [21, 42], "condor_requir": 21, "condor_should_transfer_fil": 21, "ye": 21, "condor_snapshot_on_kil": 21, "snapshot": [21, 25, 30], "sigkil": 21, "condor_stream_error": 21, "stream": 21, "condor_stream_output": 21, "condor_submit": 21, "condor_univers": 21, "vanilla": 21, "condor_warn_max_memori": 21, "condor_when_to_transfer_output": 21, "on_exit_or_evict": 21, "custom_gener": 21, "do_analyt": 21, "do_dry_run": 21, "dry_run_hook": 21, "hook": 21, "dry_run_num_cor": 21, "ensemble_factor_in_probability_weighted_mass": 21, "probability_weighted_mass": 21, "multiprocess": 21, "exit_after_dry_run": 21, "exit_cod": 21, "failed_systems_threshold": 21, "failed_system": 21, "function_cach": 21, "certain": [21, 22, 39], "function_cache_ttl": 21, "function_cache_default_maxs": 21, "maxsiz": 21, "function_cache_default_typ": 21, "lrucach": 21, "lfucach": 21, "fifocach": 21, "mrucach": 21, "rrcach": 21, "ttlcach": 21, "nullcach": [21, 28], "nocach": 21, "cachetool": [21, 28], "fo": 21, "dummi": [21, 24, 31], "overhead": 21, "function_cache_funct": [21, 28], "gridcode_filenam": 21, "log_arg": 21, "log_args_dir": 21, "log_newlin": 21, "log_runtime_system": 21, "plan": 21, "max_queue_s": 21, "feed": 21, "modulo": 21, "multiplicity_fraction_funct": 21, "aren": [21, 31], "rhagavan": 21, "n_logging_stat": 21, "num_cores_avail": 21, "original_command_lin": 21, "original_submission_tim": 21, "original_working_diretori": 21, "Its": 21, "print_stack_on_exit": 21, "stack": 21, "trace": 21, "restore_from_snapshot_dir": 21, "restore_from_snapshot_fil": [21, 25], "return_after_dry_run": 21, "run_zero_probability_system": 21, "rungrid": 21, "save_ensemble_chunk": 21, "save_population_object": [21, 30], "skip_befor": 21, "slurm_arrai": 21, "slurm_array_max_job": 21, "concurr": 21, "slurm_bash": 21, "slurm_dat": 21, "slurm_dir": [21, 25, 29, 36], "slurm_env": 21, "slurm_extra_set": 21, "slurm_jobarrayindex": [21, 36], "slurm_jobid": [21, 36], "slurm_jobnam": 21, "slurm_memori": 21, "megabyt": 21, "512mb": 21, "slurm_njob": 21, "slurm_ntask": 21, "slurm_partit": 21, "partit": 21, "local": [21, 31], "sview": 21, "slurm_postpone_join": 21, "slurm_postpone_sbatch": 21, "sbatch": 21, "slurm_pwd": 21, "slurm_sbatch": 21, "slurm_tim": 21, "slurm_warn_max_memori": 21, "excess": 21, "mistak": 21, "1024mb": 21, "source_file_filenam": 21, "start_at": 21, "status_dir": 21, "stop_queu": 21, "symlink_latest_gridcod": 21, "diagnost": 21, "_repeat": 21, "reduct": 21, "working_diretori": 21, "multiplicity_model": 21, "log10m1": 21, "poisson": [21, 31], "map": 21, "quad": 21, "NO": 21, "multiplicity_modul": 21, "normalize_multipl": 21, "norm": 21, "b": [21, 30], "whichev": 21, "stick": 21, "predict": 21, "repres": 21, "canon": 21, "nonzero": 21, "q_high_extrapolation_method": 21, "q_low_extrapolation_method": 21, "extrapol": [21, 31], "flat": [21, 31], "linear2": 21, "plaw2": 21, "nolowq": 21, "_moe2017_json_data": 21, "distefano2017": 21, "_actually_evolve_system": 21, "_process_run_population_grid": 21, "_binary_c_config_execut": 21, "_binary_c_dir": 21, "director": 21, "_binary_c_execut": 21, "_binary_c_shared_librari": 21, "libbinary_c": 21, "_commandline_input": 21, "_count": 21, "counter": 21, "_custom_logging_shared_library_fil": 21, "_end_time_evolut": 21, "timestamp": [21, 27], "_errors_exceed": 21, "failed_system_log": 21, "_errors_found": 21, "encount": [21, 22, 39], "_evolution_type_opt": 21, "_failed_count": 21, "_failed_prob": 21, "_failed_systems_error_cod": 21, "_generate_grid_cod": 21, "_kill": 21, "_loaded_moe2017_data": 21, "_main_pid": 21, "master": [21, 22, 24, 39], "_population_id": 21, "char": 21, "hex": 21, "_probtot": 21, "_queue_don": 21, "_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, "aim": [22, 39], "jeff": [22, 39], "andrew": [22, 39], "robert": [22, 39], "student": [22, 39], "scientist": [22, 39], "who": [22, 39], "onlin": [22, 39], "older": [22, 39], "guarante": [22, 39], "development_0": [22, 39], "meet": [22, 39], "least": [22, 39], "eol": [22, 39], "root": [22, 39], "ld_library_path": [22, 39], "libgsl": [22, 39], "libmemo": [22, 39], "librinterpol": [22, 39], "library_path": [22, 39], "gsl_dir": [22, 39], "gsl": [22, 39], "dir": [22, 29, 39], "binary_c2": [22, 39], "latest": [22, 39], "virtual": [22, 39], "sh": [22, 39], "suit": [22, 39], "pythonpath": [22, 39], "download": [22, 39], "clone": [22, 39], "gitlab": [22, 39], "whenev": [22, 39], "reinstal": [22, 39], "virtualenviron": [22, 39], "host": [22, 39], "person": [22, 39], "ph": [22, 39], "recent": [22, 39], "contribut": [22, 39], "development_requir": [22, 39], "hesit": [22, 39], "discuss": [22, 39], "generate_doc": [22, 39], "generate_report": [22, 39], "main_with_notebook": [22, 39], "test_notebook": [22, 39], "ve": [22, 27, 39], "dhendrik": [22, 39], "paper_joss_binarycpython": [22, 39], "submodul": [22, 39], "initialis": [22, 39], "exhaust": [22, 39], "solut": [22, 39], "mesa": [22, 39], "mesasdk_root": [22, 39], "mesasdk_init": [22, 39], "interfer": [22, 39], "throw": [22, 39], "unrecogn": [22, 39], "ftz": [22, 39], "flto": [22, 39], "due": [22, 39], "cflag": [22, 39], "avaibl": [22, 39], "1ckzg0p9": [22, 39], "egg": [22, 39], "pkg": [22, 39], "filenotfounderror": [22, 39], "errno": [22, 39], "jupyt": [22, 39], "seem": [22, 24, 33, 39], "everytim": [22, 39], "rebuilt": [22, 39], "plot_funct": [22, 23], "useful_func": [22, 23], "nucsyn": 22, "misc": 22, "sampler": 22, "visit": 22, "plot_system": 24, "loos": 24, "admittedli": 24, "customis": 24, "regardless": 24, "color_by_index": 24, "placehold": [24, 28, 29, 30], "parse_function_hr_diagram": 24, "hr": 24, "parse_function_mass": 24, "parse_function_orbit": 24, "plot_hr_diagram": 24, "show_stellar_typ": 24, "show_plot": 24, "use_astropy_valu": 24, "plot_hr_diagram_singl": 24, "radius_1": 24, "radius_2": 24, "luminosity_1": 24, "luminosity_2": 24, "teff_1": 24, "teff_2": 24, "hd": 24, "astropi": 24, "stefan": 24, "boltzman": 24, "plot_mass": 24, "pms_mass_1": 24, "pms_mass_2": 24, "quantiti": 24, "pm": 24, "mayb": 24, "plot_orbit": 24, "plot_typ": 24, "preset": 24, "mass_evolut": 24, "orbit_evolut": 24, "hr_diagram": 24, "keyword": [24, 40], "against": 24, "pick": 24, "pane": 24, "distefano": [25, 26, 31], "hpc_can_join": 25, "joinfil": 25, "joiningfil": 25, "vb": [25, 28, 30, 37], "hpc_check_requir": 25, "hpc_dir": 25, "hpc_dump_statu": 25, "hpc_get_statu": 25, "job_id": 25, "job_index": 25, "hpc_grid": 25, "makejoiningfil": 25, "hpc_task": 25, "exclud": 25, "hpc_id_filenam": 25, "hpc_id_from_dir": 25, "hpc_job": 25, "hpc_jobid_tupl": 25, "hpc_job_id_rang": 25, "hpc_job_task": 25, "hpc_job_typ": 25, "hpc_join_from_fil": 25, "newobj": 25, "hpc_join_previ": 25, "hpc_joinlist": 25, "hpc_load_joinfiles_list": 25, "hpc_make_joiningfil": 25, "error_on_overwrit": 25, "hpc_njob": 25, "error_on_overwit": 25, "issu": 25, "hpc_path": 25, "hpc_queue_stat": 25, "stat": 25, "hpc_restor": 25, "restor": 25, "_restart_dir": 25, "stage": 25, "hpc_set_statu": 25, "hpc_snapshot_filenam": 25, "hpc_statu": 25, "hpc_touch": 25, "touch": [25, 30], "distrefano": 26, "interpol": [26, 31, 37], "get_moe_di_stefano_2017_default_opt": 26, "get_moe_di_stefano_2017_default_options_descript": 26, "get_moe_di_stefano_dataset": 26, "set_moe_di_stefano_set": 26, "cpu_tim": 27, "make_analytics_dict": 27, "set_tim": 27, "elaps": 27, "lru": 28, "lru_": 28, "__delitem__": 28, "delet": [28, 34], "getter": 28, "__setitem__": 28, "setter": 28, "popitem": 28, "default_cache_dir": [28, 33], "setup_function_cach": 28, "cachetyp": 28, "function_cache_s": 28, "func": 28, "test_cach": 28, "replac": 29, "condorid": 29, "condor_check_requir": 29, "condor_grid": 29, "being": [29, 36], "condor_outfil": 29, "chunk": [29, 36], "condor_queue_stat": 29, "condor_status_fil": 29, "condorpath": 29, "get_condor_statu": 29, "correspon": [29, 36], "make_condor_dir": 29, "set_condor_statu": 29, "held": [29, 36], "io": 30, "nfs_flush_hack": 30, "opendir": 30, "closedir": 30, "complaint": 30, "unclos": 30, "scandir": 30, "nfspath": 30, "mount": 30, "compression_typ": 30, "dir_ok": 30, "load_population_object": 30, "load_snapshot": 30, "preloaded_popul": 30, "locked_clos": 30, "partner": 30, "locked_open_for_writ": 30, "unlock": 30, "lock_suffix": 30, "lock_timeout": 30, "lock_lifetim": 30, "exists_ok": 30, "fatal_open_error": 30, "mode": 30, "lockfil": 30, "flufl": 30, "file_object": 30, "lock_object": 30, "merge_popul": 30, "refpop": 30, "newpop": 30, "merge_populations_from_fil": 30, "closefd": 30, "compresslevel": 30, "population_object": 30, "confirm": 30, "gzip": 30, "pickl": 30, "compress_pickl": 30, "lucianopaz": 30, "shared_memori": 30, "set_statu": 30, "format_stat": 30, "process_": 30, "snapshot_filenam": 30, "wait_for_unlock": 30, "wait": 30, "write_ensembl": 30, "recognis": 30, "bz2": 30, "msgpack": 30, "support": 30, "grid_ensemble_result": [30, 35], "stackoverflow": 31, "28060251": 31, "hi": 31, "gonna": 31, "mathieu": 31, "sfh": 31, "redshift": 31, "arenou2010_binary_fract": 31, "c2": 31, "sp": 31, "opm": 31, "fa": 31, "rssd": 31, "esa": 31, "doc_fetch": 31, "php": 31, "2969346": 31, "izzard2012_period_distribut": 31, "log10pmin": 31, "duquennoi": 31, "mayor": 31, "1991": 31, "spectral": 31, "15msun": 31, "sana": 31, "3msun": 31, "dlogp": 31, "raghavan": 31, "gaussian": [31, 37], "log10p": 31, "logp": 31, "m0": 31, "p1": 31, "p2": 31, "p3": 31, "moe_di_stefano_2017_multiplicity_fract": 31, "6e1": 31, "moe_di_stefano_2017_pdf": 31, "m3": 31, "m4": 31, "ecc2": 31, "ecc3": 31, "80": [31, 37], "build_q_tabl": 31, "independ": 31, "q_min": 31, "renormalis": 31, "lowest": 31, "qmin": 31, "goal": 31, "boundari": 31, "calc_p_integr": 31, "min_logp": 31, "max_logp": 31, "integrals_str": 31, "interpolator_nam": 31, "mass_str": 31, "min_per": 31, "calc_e_integr": 31, "period_str": 31, "calc_total_probden": 31, "prob_dict": 31, "calculate_constants_three_part_powerlaw": 31, "law_const": 31, "slope": 31, "const_distribut": 31, "min_bound": [31, 37], "max_bound": [31, 37], "val": 31, "cosmic_sfh_madau_dickinson2014": 31, "cosmic": 31, "histori": 31, "madau": 31, "dickonson": 31, "1403": 31, "0007": 31, "mega": 31, "parsec": 31, "duquennoy1991": 31, "fill_data": 31, "sample_valu": 31, "data_dict": 31, "logmass": [31, 37], "logperiod": 31, "dstep": 31, "uniform": 31, "sigma": [31, 37], "gmin": 31, "gmax": 31, "deviat": [31, 37], "gaussian_func": 31, "gaussian_normalizing_const": 31, "get_integration_constant_q": 31, "q_interpol": 31, "tmp_tabl": 31, "qdata": 31, "get_max_multipl": 31, "multiplicity_arrai": 31, "imf_chabrier2003": 31, "chabrier": 31, "pasp": 31, "795": 31, "imf_scalo1986": 31, "scalo": 31, "80msol": 31, "70": 31, "imf_scalo1998": 31, "imf_tinsley1980": 31, "tinslei": 31, "1980": 31, "interpolate_in_mass_izzard2012": 31, "ktg93": 31, "linear_extrapolation_q": 31, "qs": 31, "qlimit": 31, "end_index": 31, "merge_multipl": 31, "result_arrai": 31, "max_multipl": 31, "fold": 31, "lambda_v": 31, "nmax": 31, "improv": [31, 37], "powerlaw": 31, "min_val": 31, "max_val": 31, "powerlaw_const": 31, "powerlaw_constant_nocach": 31, "powerlaw_extrapolation_q": 31, "raghavan2010_binary_fract": 31, "zsolar": 31, "long_spectral_typ": 31, "jaschek": 31, "amin": 31, "amax": 31, "x0": 31, "x1": 31, "ln": 31, "dp": 31, "p0": 31, "generalis": 31, "vb1print": 32, "system_numb": 32, "system_dict": 32, "ey": 32, "unix": 32, "epoch": 32, "vb2print": 32, "cmdline_str": 32, "grid_options_defaults_dict": 33, "grid_options_help": 33, "grid_options_description_check": 33, "write_grid_options_to_rst_fil": 33, "With": 33, "hack": 33, "reconsid": 33, "unnecessari": 33, "get_grid_options_defaults_dict": 33, "get_grid_options_descript": 33, "print_info": 33, "undescrib": 33, "And": [33, 42], "print_option_descript": 33, "filehandl": 33, "extra_text": 33, "delete_grid_vari": 34, "oldnam": 34, "newnam": 34, "grid_variable_numb": 34, "add_ensemble_metadata": 35, "combined_output_dict": 35, "add_system_metadata": 35, "get_slurm_statu": 36, "make_slurm_dir": 36, "set_slurm_statu": 36, "slurmid": 36, "slurm_check_requir": 36, "slurm_grid": 36, "slurm_outfil": 36, "slurm_queue_stat": 36, "xxx": 36, "slurm_status_fil": 36, "slurmpath": 36, "const_dt": 37, "cachedir": 37, "usecach": 37, "logspac": 37, "dlogt": 37, "tmin": 37, "tmax": 37, "mindm": 37, "1msun": 37, "0msun": 37, "comma": 37, "thu": 37, "maxdm": 37, "similar": 37, "fsampl": 37, "shannon": 37, "showtabl": 37, "showlist": 37, "log10mass": 37, "const_dt_cach": 37, "add_grid_valu": 37, "1gyr": 37, "suitabl": 37, "const_int": 37, "segment": 37, "linspac": 37, "const_rang": 37, "gaussian_zoom": 37, "zoom_mean": 37, "zoom_dispers": 37, "zoom_magnitud": 37, "depth": 37, "zoom_magntiud": 37, "peak_normalized_gaussian_func": 37, "hardli": 38, "minimum_stellar_mass": 38, "parse_binary_c_version_info": 38, "version_info_str": 38, "atom": 38, "dtlimit": 38, "git_branch": 38, "git_build": 38, "email": 38, "analys": 40, "example_log": 40, "fancy_parsing_funct": 40, "notifi": 40, "unknown": 40, "centralis": 40, "abstract": 40, "stellar_type_dict": 41, "stellar_type_dict_short": 41, "abbrevi": 41, "collect": 42, "binary_star": 42, "calc_period_from_sep": 42, "invers": 42, "zams_collis": 42, "collid": 42, "roche_lob": 42, "ragb": 42, "minimum_period_for_rlof": 42, "minimum_separation_for_rlof": 42, "maximum_mass_ratio_for_rlof": 42, "upon": 42, "r_l": 42, "1983": 42, "mass_accretor": 42, "mass_donor": 42, "rochelob": 42, "vice": 42, "versa": 42, "1996": 42, "mnra": 42, "281": 42, "257": 42, "pericent": 42}, "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, "", "BinarycDecoder"], [3, 2, 1, "", "BinarycEncoder"], [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.BinarycDecoder": [[3, 3, 1, "", "decode"]], "binarycpython.utils.ensemble.BinarycEncoder": [[3, 3, 1, "", "default"]], "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, "", "command_string_from_list"], [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, "", "quotewrap"], [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_id_range"], [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"]]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "method", "Python method"]}, "titleterms": {"binary_c": [0, 7, 9, 11, 12, 15, 18, 22, 39], "paramet": [0, 11], "section": 0, "star": [0, 6, 15], "binari": [0, 5, 6, 13, 15, 18], "nucsyn": 0, "output": [0, 6, 8, 13, 14, 15], "input": 0, "i": 0, "o": 0, "algorithm": 0, "misc": 0, "custom_logging_funct": 1, "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], "dict": 2, "ensembl": [3, 10], "exampl": [4, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 22, 39], "notebook": [4, 18], "content": [4, 22], "us": [5, 6, 7, 8, 9, 13, 14, 16, 18, 22, 39], "case": [5, 6, 8, 13, 14, 16], "black": 5, "hole": 5, "system": [5, 12, 16], "hertzsprung": 6, "russel": 6, "diagram": 6, "set": [6, 7, 8, 13, 14, 15], "up": [6, 7, 8, 13, 14, 15], "popul": [6, 8, 9, 12, 13, 14, 15, 20, 21, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "object": [6, 8, 9, 12, 13, 14, 15], "stellar": [6, 8, 13, 14], "grid": [6, 8, 13, 14, 15, 21], "log": [6, 8, 9, 13, 14, 15, 18], "handl": [6, 8, 10, 13, 14, 15], "evolv": [6, 8, 13, 14, 15], "tutori": [7, 9, 10, 11, 12, 15], "api": [7, 9, 12, 16, 18], "function": [7, 11, 12, 13, 14, 15, 16, 18, 19], "python": [7, 9, 11, 12, 15, 18, 22, 39], "usag": [7, 9, 22, 39], "free": 7, "store": 7, "get": [7, 11], "inform": [7, 11], "from": [7, 9, 22, 39], "common": 8, "envelop": 8, "evolut": [8, 9], "custom": [9, 18], "routin": 9, "when": 9, "run": [9, 12, 15, 18, 22, 39], "directli": 9, "string": 9, "compact": 9, "mass": [9, 14], "supernova": 9, "gener": [10, 22, 39], "data": 10, "how": 10, "extra": 11, "featur": 11, "about": 11, "build": [11, 22, 39], "pars": 11, "dictionari": 11, "modif": 11, "individu": 12, "singl": [12, 15], "run_system_wrapp": [12, 40], "via": [12, 22, 39], "zero": [13, 14], "ag": [13, 14], "luminos": [13, 14], "ad": [14, 15], "variabl": [14, 15, 22, 39], "zam": 14, "distribut": 14, "initi": 14, "A": 14, "better": 14, "sampl": 14, "noteworthi": 15, "full": 15, "script": 15, "solar": 16, "basic": 17, "core": 18, "wrapper": 18, "run_binari": 18, "run_binary_with_log": 18, "line": 18, "util": 18, "run_system": 18, "other": 18, "class": [20, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "code": [21, 22, 23, 39], "option": 21, "public": 21, "moe": 21, "di": 21, "stefano": 21, "sampler": 21, "privat": 21, "welcom": 22, "s": 22, "document": [22, 39], "instal": [22, 39], "requir": [22, 39], "environ": [22, 39], "instruct": [22, 39], "pip": [22, 39], "sourc": [22, 39], "after": [22, 39], "without": [22, 39], "note": [22, 39], "develop": [22, 39], "docstr": [22, 39], "test": [22, 39], "coverag": [22, 39], "report": [22, 39], "unit": [22, 39], "pull": [22, 39], "joss": [22, 39], "paper": [22, 39], "articl": [22, 39], "repo": [22, 39], "faq": [22, 39], "issu": [22, 39], "indic": 22, "tabl": 22, "binarycpython": 23, "plot_funct": 24, "extens": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "hpc": 25, "moe_di_stefano_2017": 26, "analyt": 27, "cach": 28, "condor": 29, "dataio": 30, "distribution_funct": 31, "grid_log": 32, "grid_options_default": 33, "gridcod": 34, "metadata": 35, "slurm": 36, "spacing_funct": 37, "version_info": 38, "stellar_typ": 41, "useful_func": 42}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "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": 4, "sphinx": 56}})
\ 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_ensembles", "examples/notebook_extra_features", "examples/notebook_individual_systems", "examples/notebook_luminosity_function_binaries", "examples/notebook_luminosity_function_single", "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"], "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_ensembles.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_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"], "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: Generating and handling ensemble data", "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", "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"], "terms": {"The": [0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 27, 28, 29, 30, 31, 32, 34, 36, 37, 39, 40], "follow": [0, 7, 9, 15, 18, 19, 21, 24, 31, 37], "chapter": [0, 21, 23], "contain": [0, 1, 2, 3, 7, 11, 12, 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], "all": [0, 1, 2, 3, 6, 7, 8, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 33, 37, 38, 39, 40], "current": [0, 2, 8, 9, 11, 13, 14, 19, 20, 22, 25, 30, 39], "version": [0, 2, 7, 11, 15, 19, 20, 22, 38, 39], "can": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 30, 31, 34, 39, 40, 42], "handl": [0, 2, 3, 4, 7, 12, 19, 20, 21, 22, 25, 26, 34, 35, 38, 40, 42], "along": [0, 21, 22, 33, 39], "descript": [0, 7, 11, 19, 21, 26, 31, 33], "other": [0, 1, 2, 5, 6, 11, 12, 13, 14, 15, 19, 21, 22, 24, 25, 31, 33, 39], "properti": [0, 5, 19, 21, 24, 34], "thi": [0, 1, 2, 3, 5, 6, 7, 8, 9, 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], "inform": [0, 1, 3, 4, 6, 9, 12, 13, 14, 15, 19, 20, 21, 24, 25, 31, 33, 35, 38], "wa": [0, 6, 11, 12, 14, 15, 20, 21, 22, 30, 31, 39], "obtain": [0, 6, 8, 13, 14, 30], "build": [0, 1, 4, 7, 19, 25, 31], "git": [0, 15, 19, 22, 39], "branch": [0, 6, 19, 22, 38, 39], "clean_mast": 0, "revis": [0, 38], "6302": 0, "20220825": 0, "04c096f7a": 0, "built": [0, 1, 19, 22, 39], "aug": 0, "25": [0, 5, 6, 8, 18], "2022": [0, 13], "11": [0, 5, 6, 9, 12, 14, 15, 18], "34": [0, 5, 7, 9, 12, 13, 15], "43": [0, 5], "metal": [0, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 31, 42], "set": [0, 1, 2, 3, 4, 5, 9, 11, 12, 16, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37, 38, 39], "e": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 19, 20, 21, 22, 25, 28, 29, 30, 31, 34, 36, 37, 39, 42], "amount": [0, 2, 7], "mass": [0, 1, 2, 4, 5, 6, 7, 8, 11, 12, 13, 15, 16, 18, 19, 21, 24, 31, 34, 37, 38, 40, 42], "matter": [0, 7], "which": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 25, 29, 30, 31, 33, 34, 36, 37, 38, 39, 40, 42], "hydrogen": [0, 6, 7], "helium": [0, 6, 7], "If": [0, 2, 6, 7, 8, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26, 27, 29, 30, 31, 34, 36, 39, 40, 42], "you": [0, 1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 30, 31, 33, 34, 37, 39, 42], "ar": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 28, 29, 30, 31, 33, 34, 36, 37, 38, 39, 42], "us": [0, 1, 2, 3, 4, 11, 12, 15, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37, 38, 40, 42], "bse": [0, 7, 9, 15, 31], "must": [0, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 30, 34, 37], "1e": [0, 7, 9, 12, 13, 18], "4": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20, 30, 31, 37], "0": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 25, 26, 28, 31, 34, 37, 39, 42], "03": [0, 1, 5, 7, 13], "see": [0, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22, 24, 28, 30, 31, 34, 38, 39], "also": [0, 4, 5, 6, 7, 8, 9, 13, 14, 15, 18, 19, 20, 21, 22, 25, 27, 30, 33, 38, 39, 42], "nucsyn_metal": [0, 7], "effective_metal": [0, 7, 18], "type": [0, 1, 2, 3, 5, 8, 12, 13, 14, 15, 18, 19, 20, 21, 24, 25, 30, 31, 33, 34, 37, 38, 41, 42], "float": [0, 2, 3, 5, 7, 11, 12, 16, 19, 31, 32, 37, 42], "default": [0, 1, 2, 3, 6, 7, 9, 11, 13, 14, 15, 18, 19, 20, 21, 25, 26, 28, 29, 30, 31, 33, 36, 37, 38, 40], "valu": [0, 1, 2, 3, 6, 7, 11, 12, 13, 14, 15, 18, 19, 20, 21, 24, 27, 28, 31, 33, 34, 37], "02": [0, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 31, 42], "effect": [0, 5, 7, 9, 13, 21, 31], "routin": [0, 2, 4, 7, 22, 24, 40], "like": [0, 1, 6, 7, 8, 13, 14, 15, 16, 18, 19, 21, 22, 24, 30, 37, 39], "schneider": [0, 7], "wind": [0, 5, 6, 7, 13], "loss": [0, 5, 7, 12, 13, 16], "default_to_metal": [0, 7], "1": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 21, 22, 24, 25, 29, 30, 31, 32, 34, 36, 37, 39, 40, 42], "just": [0, 2, 6, 7, 8, 15, 18, 19, 20, 21, 22, 26, 30, 38, 39, 42], "same": [0, 2, 7, 12, 15, 21, 22, 31, 34, 39, 40], "main": [0, 1, 6, 7, 9, 13, 14, 15, 18, 21, 22, 39], "differ": [0, 5, 6, 7, 8, 13, 14, 15, 18, 19, 21, 22, 24, 37, 39], "between": [0, 7, 21, 31, 37], "rang": [0, 6, 7, 8, 12, 13, 14, 15, 21, 31, 34, 37], "valid": [0, 7, 9, 19, 31], "while": [0, 5, 6, 7, 8, 13], "s": [0, 2, 3, 5, 6, 7, 8, 12, 14, 15, 16, 18, 19, 20, 21, 25, 27, 28, 30, 31, 35, 42], "limit": [0, 6, 7, 8, 13, 14, 15, 21, 24], "stellar": [0, 4, 5, 7, 21, 22, 24, 31, 37, 38, 39, 41], "evolut": [0, 1, 4, 5, 6, 7, 12, 13, 14, 15, 16, 18, 21, 22, 24, 37, 39], "so": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 20, 21, 24, 25, 30], "macro": [0, 11, 19, 38], "m_1": [0, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 34, 40], "initi": [0, 4, 5, 6, 7, 11, 12, 18, 20, 31], "one": [0, 2, 7, 11, 14, 15, 16, 17, 18, 20, 21, 24, 28, 30, 33, 37, 40], "solar": [0, 4, 6, 7, 8, 11, 22, 31, 42], "unit": [0, 6, 7, 11, 16, 19, 42], "intern": [0, 7, 11, 21], "index": [0, 7, 11, 12, 15, 16, 21, 22, 25, 31, 34], "m_2": [0, 5, 6, 7, 8, 9, 12, 13, 15, 17, 18], "two": [0, 2, 6, 7, 9, 19, 22, 30, 32, 39, 41, 42], "m_3": [0, 7], "three": [0, 7, 13, 14, 15, 31], "2": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 24, 25, 29, 31, 36, 37, 39], "m_4": [0, 7], "four": [0, 7], "3": [0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 29, 31, 36, 37, 39], "vrot1": 0, "equatori": 0, "rotat": [0, 31], "veloc": [0, 31], "km": 0, "hurlei": 0, "et": [0, 31, 42], "al": [0, 31, 42], "2000": [0, 5], "2002": 0, "prescript": [0, 5, 15], "sequenc": [0, 6, 9, 13, 14, 18], "truli": 0, "non": [0, 2, 14, 21, 22, 30, 39], "someth": [0, 6, 8, 12, 13, 14, 21, 42], "small": [0, 5, 14], "g": [0, 1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 17, 18, 19, 21, 22, 25, 28, 29, 30, 31, 36, 37, 39], "001": [0, 5], "vrot2": 0, "vrot_bs": 0, "vrot_breakup": 0, "vrot_sync": 0, "vrot_non_rot": 0, "vrot3": 0, "vrot4": 0, "prot1": 0, "prot2": 0, "prot3": 0, "period": [0, 5, 7, 8, 9, 12, 13, 14, 15, 16, 18, 24, 31, 42], "dai": [0, 5, 8, 9, 12, 13, 15, 18, 31, 42], "prot4": 0, "inclination1": 0, "inclin": 0, "degre": 0, "inclination2": 0, "inclination3": 0, "inclination4": 0, "b_1": 0, "magnet": 0, "field": [0, 22, 39], "gauss": 0, "b_2": 0, "b_3": 0, "b_4": 0, "b_inclination1": 0, "b_inclination2": 0, "b_inclination3": 0, "b_inclination4": 0, "stellar_type_1": [0, 15, 24], "usual": [0, 5, 6, 7, 13, 14, 15, 19, 21, 30, 31], "main_sequ": [0, 13, 14, 18], "note": [0, 5, 6, 13, 14, 15, 18, 19, 21, 25, 30, 34, 37, 38], "onli": [0, 2, 6, 9, 13, 14, 15, 16, 18, 19, 21, 22, 25, 26, 30, 37, 39, 42], "work": [0, 2, 3, 9, 12, 13, 14, 15, 18, 19, 21, 22, 25, 30, 39], "both": [0, 2, 7, 13, 14, 15], "ag": [0, 4, 5, 6, 8, 22, 37], "core_mass": [0, 9], "white": [0, 6], "dwarf": [0, 6, 14], "black": [0, 4, 6, 22], "hole": [0, 4, 6, 22], "neutrn": 0, "integ": [0, 6, 21, 37, 42], "low_mass_m": 0, "ms": [0, 5, 9, 13], "hg": 0, "giant_branch": 0, "cheb": 0, "eagb": [0, 5], "5": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 22, 28, 30, 31, 34, 39], "tpagb": [0, 6], "6": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 22, 39], "hem": 0, "7": [0, 1, 5, 6, 7, 8, 9, 12, 14, 15, 16, 17, 18, 22, 31, 39], "hehg": 0, "8": [0, 3, 5, 6, 8, 9, 12, 14, 15, 16, 18, 30, 31], "hegb": [0, 5], "9": [0, 5, 6, 7, 9, 12, 13, 14, 15, 18, 22, 39], "hewd": 0, "10": [0, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 17, 18, 21, 31, 37, 40], "cowd": 0, "onewd": 0, "12": [0, 5, 6, 9, 12, 13, 14, 15, 18, 19, 31], "ns": [0, 1, 8, 9, 15], "13": [0, 5, 6, 8, 9, 12, 14, 15, 18], "bh": [0, 5, 8], "14": [0, 5, 9, 12, 14, 15, 18], "massless_remn": 0, "15": [0, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 21, 31], "low_mass_main_sequ": 0, "hertzsprung_gap": 0, "first_giant_branch": 0, "core_helium_burn": 0, "early_asymptotic_giant_branch": 0, "thermally_pulsing_asymptotic_giant_branch": 0, "naked_main_sequence_helium_star": 0, "naked_helium_star_hertzsprung_gap": 0, "naked_helium_star_giant_branch": 0, "helium_white_dwarf": 0, "carbon_oxygen_white_dwarf": 0, "oxygen_neon_white_dwarf": 0, "neutron_star": 0, "black_hol": 0, "star_with_no_mass": 0, "stellar_type_2": [0, 15, 24], "stellar_type_3": 0, "stellar_type_4": 0, "max_stellar_type_1": 0, "maximum": [0, 6, 7, 8, 9, 13, 14, 15, 21, 31, 37, 42], "stop": [0, 8, 13, 18, 19, 21], "when": [0, 1, 2, 3, 6, 7, 8, 11, 12, 15, 16, 19, 21, 22, 25, 27, 28, 29, 30, 31, 33, 36, 37, 39, 40], "reach": [0, 5, 6, 8], "neg": [0, 2, 37], "massless": 0, "remnant": [0, 6], "allow": [0, 2, 9, 17, 18, 21, 22, 28, 31, 39], "absolut": [0, 19, 37], "16": [0, 5, 14, 18, 31], "max_stellar_type_2": 0, "max_stellar_type_3": 0, "max_stellar_type_4": 0, "probabl": [0, 1, 2, 6, 8, 9, 13, 14, 15, 18, 20, 21, 24, 30, 31, 33, 34], "weight": [0, 14, 21], "appli": 0, "base": [0, 2, 3, 5, 8, 14, 15, 19, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42], "sai": [0, 6], "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], "run": [0, 1, 4, 5, 6, 7, 8, 13, 14, 17, 19, 20, 21, 25, 27, 29, 31, 34, 36, 40, 42], "grid": [0, 4, 5, 12, 19, 20, 22, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 42], "simul": [0, 1, 6, 8, 9, 14, 15, 36], "sum": [0, 2], "should": [0, 1, 2, 5, 6, 8, 12, 13, 14, 15, 18, 19, 21, 22, 24, 25, 29, 30, 31, 33, 36, 37, 39, 40], "phasevol": [0, 15], "system": [0, 4, 6, 7, 8, 9, 13, 14, 15, 17, 18, 19, 20, 21, 22, 24, 31, 32, 35, 39, 40, 42], "phase": [0, 6, 8, 13, 14], "volum": 0, "binary_grid": 0, "null": [0, 7, 19], "stellar_structure_algorithm": 0, "structur": [0, 2, 8, 19, 21, 24], "modifi": [0, 2, 9, 22, 39], "none": [0, 1, 2, 3, 5, 6, 7, 8, 13, 14, 15, 16, 18, 19, 20, 21, 25, 26, 28, 29, 30, 31, 33, 34, 36, 37, 42], "extern": 0, "defin": [0, 1, 15, 20, 24, 31, 34], "call": [0, 1, 2, 11, 12, 14, 15, 19, 20, 21, 24, 25, 29, 30, 32, 34, 36, 37, 38, 40], "code": [0, 1, 5, 9, 12, 13, 14, 15, 17, 18, 20, 24, 29, 30, 31, 33, 34, 36, 37, 40, 42], "yet": [0, 2, 18, 19, 21, 24], "implement": [0, 2, 21], "stellar_structure_algorithm_modified_bs": 0, "stellar_structure_algorithm_non": 0, "stellar_structure_algorithm_external_funct": 0, "stellar_structure_algorithm_mint": 0, "solver": 0, "forward": 0, "euler": 0, "could": [0, 3, 14, 15, 18, 19, 38], "rk2": 0, "rk4": 0, "predictor": 0, "corretor": 0, "solver_forward_eul": 0, "solver_rk2": 0, "solver_rk4": 0, "solver_predictor_corrector": 0, "max_evolution_tim": [0, 1, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 37], "myr": [0, 6, 8, 12, 13, 14, 16, 37], "15000": [0, 5, 7, 9, 12, 15, 16, 18], "max_model_numb": 0, "number": [0, 2, 3, 5, 6, 8, 13, 14, 15, 16, 18, 19, 20, 21, 25, 30, 31, 32, 33, 34, 37], "model": [0, 1, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 21], "ignor": [0, 2, 9, 12, 15, 18, 21, 31, 34], "monte_carlo_kick": 0, "turn": [0, 2, 3, 5, 12, 15, 19], "mont": [0, 21], "carlo": [0, 21], "sn": [0, 5, 6, 8, 13, 14, 16, 18], "kick": [0, 5, 18, 21], "On": [0, 15, 19, 30], "true": [0, 2, 3, 5, 6, 8, 11, 13, 14, 15, 17, 18, 19, 20, 21, 24, 25, 27, 29, 30, 33, 34, 36, 37, 38], "inde": [0, 14], "broken": 0, "fals": [0, 3, 5, 6, 8, 13, 14, 15, 16, 19, 20, 21, 24, 25, 27, 28, 29, 30, 34, 36, 37, 38], "disable_debug": 0, "disabl": [0, 15], "debug": [0, 6, 8, 13, 14, 15, 21, 32], "ha": [0, 1, 2, 5, 6, 8, 9, 11, 13, 14, 15, 18, 19, 21, 27, 30, 34], "an": [0, 2, 3, 5, 6, 7, 8, 11, 12, 14, 15, 18, 19, 21, 22, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40], "requir": [0, 3, 8, 12, 13, 14, 15, 16, 18, 19, 21, 24, 25, 31, 40], "rebuild": [0, 21, 22, 25, 39], "timestep_log": 0, "timestep": [0, 8, 9, 12, 13, 14], "log": [0, 1, 4, 5, 7, 12, 16, 17, 19, 21, 22, 24, 30, 31, 32, 34, 37, 39, 40, 42], "rejects_in_log": 0, "show": [0, 4, 6, 7, 8, 12, 13, 14, 15, 18, 21, 24, 37], "reject": 0, "vandenheuvel_log": 0, "van": 0, "den": 0, "heuvel": 0, "evolution_split": 0, "split": [0, 5, 12, 15, 16, 18, 21, 29, 36], "evolutionari": [0, 12], "splitpoint": 0, "supernova": [0, 5, 8, 21], "occur": [0, 42], "disable_ev": 0, "whether": [0, 5, 7, 15, 19, 20, 21, 24, 29, 30, 31, 33, 36, 37, 38, 42], "new": [0, 2, 6, 8, 12, 13, 14, 15, 19, 20, 25, 30, 31, 34], "event": [0, 5, 6], "we": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 25, 26, 27, 28, 29, 30, 31, 33, 36, 37, 39, 42], "evolution_splitting_sn_eccentricity_threshold": 0, "threshold": [0, 19, 21], "eccentr": [0, 7, 9, 12, 14, 15, 16, 18, 24, 31, 42], "abov": [0, 6, 9, 12, 14, 15, 19, 20, 31], "happen": [0, 6, 8], "01": [0, 8, 9, 13, 14, 15, 18], "evolution_splitting_sn_n": 0, "evolution_splitting_maxdepth": 0, "max": [0, 8, 9, 13, 14, 15, 21, 31], "equation_of_state_algorithm": 0, "equat": 0, "state": [0, 30], "paczynski": 0, "equation_of_state_paczynski": 0, "opacity_algorithm": 0, "opac": 0, "ferguson": 0, "opal": 0, "opacity_algorithm_paczynski": 0, "opacity_algorithm_ferguson_op": 0, "opacity_algorithm_star": 0, "wind_mass_loss": [0, 5], "2018": [0, 1], "unsign": 0, "wind_algorithm_non": [0, 5], "wind_algorithm_hurley2002": 0, "wind_algorithm_schneider2018": 0, "wind_algorithm_binary_c_2020": [0, 5], "wind_algorithm_binary_c_2022": 0, "extra": [0, 4, 15, 21, 22, 32, 34, 40], "gbwind": 0, "first": [0, 2, 6, 8, 12, 13, 14, 15, 16, 19, 22, 25, 30, 31, 39, 42], "red": [0, 6, 14, 16], "giant": [0, 6, 16], "reimer": 0, "choos": [0, 6, 8, 9, 13, 18, 24, 25, 30], "gb_reimers_eta": 0, "rate": [0, 14, 31], "schroeder": 0, "cuntz": 0, "2005": 0, "gb_wind_reim": 0, "gb_wind_schroeder_cuntz_2005": 0, "gb_wind_goldman_etal_2017": 0, "gb_wind_beasor_etal_2020": 0, "postagbwind": 0, "special": [0, 15], "post": [0, 5, 6, 8, 9, 20], "A": [0, 2, 4, 5, 15, 28, 42], "gb": 0, "postagb_wind_use_gi": 0, "mean": [0, 5, 19, 21, 22, 29, 31, 36, 37, 39], "whatev": [0, 9, 18, 19, 20, 22, 25, 30, 39], "prescrib": 0, "option": [0, 1, 2, 6, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 25, 26, 28, 30, 31, 33, 34, 37, 39, 42], "includ": [0, 1, 2, 5, 6, 9, 12, 14, 15, 16, 19, 20, 22, 24, 30, 31, 39], "postagb_wind_non": 0, "postagb_wind_krticka2020": 0, "krticka": 0, "kub\u00e1t": 0, "krtickov\u00e1": 0, "2020": 0, "635": 0, "a173": 0, "postagb_wind_gi": 0, "teff_postagb_min": 0, "minimum": [0, 7, 19, 21, 31, 37, 38, 42], "temperatur": [0, 16, 24, 31], "teff_postagb_max": 0, "6000": 0, "k": [0, 6, 16, 31], "120000": 0, "mattsson_orich_tpagbwind": 0, "experiment": [0, 19], "mattsson": 0, "oxygen": [0, 6], "rich": 0, "mattsson_mass_loss": 0, "magnetic_braking_factor": 0, "multipli": [0, 2, 14, 21, 37], "brake": 0, "angular": [0, 16, 24], "momentum": [0, 16], "magnetic_braking_gamma": 0, "gamma": 0, "factor": [0, 2, 21, 37], "rappaport": 0, "style": [0, 19, 32], "express": [0, 19], "magnetic_braking_algorithm": 0, "andronov": 0, "pinnsonneault": 0, "sill": 0, "2003": [0, 31], "barn": 0, "kim": 0, "2010": [0, 21, 31], "magnetic_braking_algorithm_hurley_2002": 0, "magnetic_braking_algorithm_andronov_2003": 0, "magnetic_braking_algorithm_barnes_2010": 0, "magnetic_braking_algorithm_rappaport_1983": 0, "helium_flash_mass_loss": 0, "lost": [0, 8, 18], "flash": 0, "multipl": [0, 2, 6, 21, 31], "cf": 0, "eta": [0, 13], "formula": [0, 19], "4e": [0, 18], "8e": 0, "gbwindfac": 0, "tpagbwindfac": 0, "eagbwindfac": 0, "nieuwenhuijzen_windfac": 0, "nieuwenhuijzen": 0, "de": [0, 5], "jager": 0, "tpagbwind": 0, "dure": [0, 5, 16, 18], "karaka": 0, "vassiliadi": 0, "wood": 0, "1993": 0, "bloecker": 0, "loon": 0, "rob": [0, 31, 42], "c": [0, 1, 5, 7, 9, 12, 15, 22, 39, 40], "variant": 0, "respect": [0, 29, 31, 36], "goldman": 0, "2017": [0, 15, 21, 31], "beasor": 0, "tpagb_wind_vw93_karaka": 0, "tpagb_wind_vw93_orig": 0, "tpagb_wind_reim": 0, "tpagb_wind_bloeck": 0, "tpagb_wind_van_loon": 0, "tpagb_wind_rob_cwind": 0, "tpagb_wind_vw93_karakas_carbon_star": 0, "tpagb_wind_vw93_orig_carbon_star": 0, "tpagb_wind_mattsson": 0, "tpagb_wind_goldman_etal_2017": 0, "tpagb_wind_beasor_etal_2020": 0, "eagbwind": 0, "vw93": 0, "eagb_wind_bs": 0, "eagb_wind_goldman_etal_2017": 0, "eagb_wind_beasor_etal_2020": 0, "wind_gas_to_dust_ratio": 0, "ga": 0, "dust": 0, "ratio": [0, 6, 7, 8, 13, 14, 15, 31, 42], "calcul": [0, 2, 6, 8, 13, 14, 15, 19, 21, 27, 31, 34, 42], "typic": 0, "200": 0, "milki": 0, "wai": [0, 2, 5, 12, 14, 20, 21, 25], "500": 0, "magellan": 0, "cloud": 0, "approxim": [0, 6, 8], "mw": 0, "vwind_multipli": 0, "vwind_beta": 0, "beta": 0, "speed": [0, 28], "where": [0, 1, 2, 6, 13, 14, 15, 19, 21, 22, 25, 27, 30, 31, 33, 37, 39], "vwind": 0, "sqrt": 0, "escap": 0, "125": [0, 15], "from": [0, 2, 3, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 29, 30, 31, 34, 36, 38, 42], "superwind_mira_switchon": 0, "In": [0, 2, 5, 6, 8, 9, 11, 12, 13, 14, 15, 18, 21, 30, 37], "agb": [0, 6], "superwind": 0, "given": [0, 1, 3, 7, 13, 14, 17, 18, 19, 20, 21, 25, 28, 29, 30, 31, 34, 36, 37, 40, 42], "mira": 0, "vari": [0, 6, 8, 15], "switch": 0, "vw93_mira_shift": 0, "depend": [0, 6, 19, 21, 22, 24, 31, 39], "plu": 0, "offset": 0, "vw93_multipli": 0, "tpagb_reimers_eta": 0, "tout_pringle_1992_multipli": 0, "tout": [0, 42], "pringl": 0, "1992": 0, "artificial_mass_accretion_r": 0, "d": [0, 1, 5, 6, 8, 9, 12, 13, 15, 16, 19, 37], "constant": [0, 2, 14, 24, 31, 37], "accret": [0, 5], "n": [0, 1, 5, 6, 7, 8, 9, 12, 13, 14, 15, 17, 18, 19, 21, 25, 31], "scanf": 0, "artificial_mass_accretion_rate_by_stellar_typ": 0, "artificial_angular_momentum_accretion_r": 0, "artificial_orbital_angular_momentum_accretion_r": 0, "orbit": [0, 5, 7, 8, 13, 16, 24, 31, 42], "artificial_accretion_start_tim": 0, "time": [0, 1, 2, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 27, 30, 31, 32, 37], "artifici": 0, "artificial_accretion_ignor": 0, "artificial_accretion_end_tim": 0, "end": [0, 5, 19, 21, 27, 31], "wr_wind": 0, "massiv": [0, 5, 6, 8, 13, 16, 31], "wr": 0, "maeder": 0, "meynet": 0, "nugi": 0, "lamer": 0, "john": 0, "eldridg": 0, "vink": 0, "earli": [0, 22, 39], "lynnett": 0, "drai": 0, "thesi": 0, "wr_wind_bs": 0, "wr_wind_maeder_meynet": 0, "wr_wind_nugis_lam": 0, "wr_wind_eldridg": 0, "wr_wind_fac": 0, "wrwindfac": 0, "synonym": 0, "instead": [0, 5, 14, 19, 21], "bh_prescript": [0, 5], "prescrit": 0, "relat": 0, "newli": 0, "form": [0, 6, 7, 8, 13, 14, 15, 20, 25, 30, 33, 38], "its": [0, 2, 3, 13, 14, 15, 16, 19, 21, 22, 24, 25, 26, 30, 33, 37, 38, 39, 40], "progenitor": [0, 15], "co": [0, 5], "core": [0, 6, 8, 13, 14, 15, 21, 24], "bh_hurley2002": 0, "bh_belczynski": [0, 5], "belczynski": 0, "bh_spera2015": 0, "spera": 0, "2015": 0, "bh_fryer12_delai": 0, "fryer": 0, "2012": [0, 31], "delai": [0, 21], "bh_fryer12_rapid": [0, 5], "rapid": 0, "bh_fryer12_startrack": 0, "startrack": 0, "sn_kick_distribution_ii": 0, "distribut": [0, 2, 4, 8, 13, 15, 19, 25, 26, 31, 37], "ii": [0, 18], "collaps": 0, "fix": [0, 5, 12, 19, 20, 24, 30, 31, 32], "maxwellian": 0, "custom": [0, 1, 2, 3, 4, 5, 7, 12, 13, 14, 15, 16, 19, 20, 21, 22, 24, 31, 40], "kick_velocity_fix": 0, "kick_velocity_maxwellian": 0, "kick_velocity_custom": 0, "sn_kick_distribution_ecap": 0, "electron": 0, "captur": [0, 5, 13, 19], "sn_kick_distribution_ns_n": 0, "neutron": [0, 6, 15], "surviv": [0, 16], "merger": [0, 5], "sn_kick_distribution_ibc": 0, "born": [0, 6, 13, 14], "after": [0, 6, 8, 9, 13, 14, 15, 20, 21, 30, 34, 37], "ib": [0, 5], "sn_kick_distribution_grb_collapsar": 0, "collapsar": 0, "sn_kick_distribution_tz": 0, "death": 0, "thorn": 0, "zytkow": 0, "object": [0, 2, 3, 4, 5, 7, 11, 16, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40], "sn_kick_distribution_aic_bh": 0, "induc": 0, "sn_kick_distribution_bh_bh": 0, "sn_kick_distribution_bh_n": 0, "sn_kick_distribution_ia_hybrid_hecowd": 0, "ani": [0, 3, 12, 15, 19, 20, 22, 25, 31, 34, 38, 39], "survivor": 0, "hybrid": 0, "he": [0, 5], "snia": 0, "explos": [0, 5, 6, 18], "sn_kick_distribution_ia_hybrid_hecowd_sublumin": 0, "sublumin": 0, "sn_kick_dispersion_ii": [0, 5], "dispers": [0, 37], "190": [0, 5, 18], "sn_kick_dispersion_ecap": 0, "sn_kick_dispersion_ns_n": 0, "sn_kick_dispersion_ibc": [0, 5], "sn_kick_dispersion_grb_collapsar": [0, 5], "sn_kick_dispersion_tz": 0, "sn_kick_dispersion_aic_bh": 0, "sn_kick_dispersion_bh_bh": 0, "sn_kick_dispersion_bh_n": 0, "sn_kick_dispersion_ia_hybrid_hecowd": 0, "sn_kick_dispersion_ia_hybrid_hecowd_sublumin": 0, "sn_kick_companion_ia_h": 0, "algothim": 0, "companion": [0, 5, 18, 30], "ia": [0, 8], "liu": 0, "wheeler": 0, "1975": 0, "sn_impulse_non": 0, "sn_impulse_liu2015": 0, "sn_impulse_wheeler1975": 0, "sn_kick_companion_ia_eld": 0, "eld": 0, "sub": [0, 2, 19], "mch": 0, "sn_kick_companion_ia_chand": 0, "sn_kick_companion_a": 0, "sn_kick_companion_ecap": 0, "sn_kick_companion_ia_he_co": 0, "sn_kick_companion_ia_chand_co": 0, "sn_kick_companion_ns_n": 0, "sn_kick_companion_grb_collapsar": 0, "grb": 0, "rapidli": [0, 22, 39], "ibc": 0, "sn_kick_companion_hestaria": 0, "sn_kick_companion_ibc": 0, "sn_kick_companion_ii": 0, "sn_kick_companion_iia": 0, "iia": 0, "sn_kick_companion_wdkick": 0, "wd": 0, "sn_kick_companion_tz": 0, "sn_kick_companion_aic_bh": 0, "sn_kick_companion_bh_bh": 0, "merg": [0, 2, 5, 6, 8, 21, 25, 30, 31, 32], "sn_kick_companion_bh_n": 0, "sn_kick_companion_ia_hybrid_hecowd": 0, "sn_kick_companion_ia_hybrid_hecowd_sublumin": 0, "wd_sigma": 0, "thei": [0, 2, 5, 6, 8, 13, 15, 16, 20, 21, 24, 25, 29, 36, 37], "zero": [0, 1, 4, 5, 6, 8, 19, 21, 22, 30], "wd_kick": 0, "wd_kick_direct": 0, "direct": [0, 20], "random": [0, 5, 7, 18, 21], "up": [0, 1, 4, 5, 9, 12, 16, 19, 20, 25, 26, 28, 29, 31, 36], "backward": 0, "inward": 0, "outward": 0, "kick_random": 0, "kick_straight_up": 0, "kick_forward": 0, "kick_backward": 0, "kick_inward": 0, "kick_outward": 0, "wd_kick_when": 0, "decid": [0, 2, 9, 17, 18, 19, 20, 21, 25], "birth": 0, "rlof": [0, 5, 7, 42], "puls": [0, 6, 42], "wd_kick_pulse_numb": 0, "everi": [0, 8, 19, 21, 22, 39], "wd_kick_end_agb": 0, "wd_kick_first_rlof": 0, "wd_kick_at_given_puls": 0, "wd_kick_at_every_puls": 0, "desir": 0, "pre": [0, 5, 8, 15, 18, 24], "minimum_helium_ignition_core_mass": 0, "ignit": [0, 6], "case": [0, 2, 4, 7, 15, 19, 21, 22, 25, 30, 37, 39], "envelop": [0, 4, 5, 6, 22], "strip": [0, 7, 12, 16], "make": [0, 1, 2, 3, 5, 6, 8, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 29, 30, 31, 39, 40, 42], "sdb": 0, "sdo": 0, "total": [0, 2, 6, 8, 13, 14, 15, 18, 19, 21, 24, 31, 34], "minimum_co_core_mass_for_carbon_ignit": 0, "carbon": [0, 6], "assum": [0, 6, 8, 13, 16, 24, 37], "mc": [0, 5, 15, 18, 30], "bagb": 0, "6msun": 0, "around": [0, 5, 9, 12, 17, 18], "08msun": 0, "pol": 0, "1998": [0, 31], "08": [0, 5, 18], "minimum_co_core_mass_for_neon_ignit": 0, "neon": [0, 6], "42msun": 0, "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 29, 30, 33, 36, 39, 40], "explod": 0, "electon": 0, "42": [0, 5, 8, 15], "minimum_mcbagb_for_nondegenerate_carbon_ignit": 0, "degener": 0, "25msun": 0, "maximum_mcbagb_for_degenerate_carbon_ignit": 0, "max_neutron_star_mass": 0, "befor": [0, 2, 5, 6, 8, 13, 14, 15, 20, 21, 22, 30, 31, 39], "2msun": 0, "chandrasekhar_mass": 0, "chandrasekhar": 0, "44msun": 0, "38": [0, 5, 15], "delta_mcmin": 0, "reduc": [0, 5], "third": [0, 16, 31, 37], "dredg": 0, "As": [0, 6, 8, 12, 13, 14, 15], "izzard": [0, 22, 39], "2004": 0, "increas": [0, 5, 8, 13, 14], "henc": [0, 8, 14, 16], "lambda_min": 0, "effici": [0, 6, 8], "lambda": [0, 5, 8], "lambda_mult": 0, "impli": 0, "onc": [0, 37], "mcmin": 0, "fit": [0, 2, 12, 31, 42], "lambda_multipli": 0, "minimum_envelope_mass_for_third_dredgeup": 0, "straniero": 0, "suggest": [0, 22, 39], "5msun": 0, "howev": [0, 9, 14, 15], "circumstanti": 0, "evid": 0, "2009": 0, "well": [0, 3, 9, 12, 13, 14, 21, 22, 39], "newer": [0, 2, 22, 39], "stancliff": 0, "low": [0, 6, 8, 14, 31], "nearer": 0, "more": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 37, 39], "appropri": [0, 5, 15, 21, 25, 28, 29, 30, 34, 36], "mass_of_pmz": 0, "partial": 0, "mix": [0, 2, 21], "zone": 0, "tabl": [0, 31, 37], "ask": [0, 7, 42], "abat": 0, "detail": [0, 6, 12, 19, 21], "seri": [0, 37], "paper": 0, "2013": 0, "2014": [0, 31], "use_tabular_intershell_abundances_karakas_2012": 0, "c13_eff": 0, "intershel": 0, "region": [0, 37], "process": [0, 5, 6, 8, 13, 14, 15, 17, 18, 19, 20, 21, 25, 29], "gallino": 0, "busso": 0, "lugaro": 0, "provid": [0, 15, 16, 20, 21, 22, 25, 31, 39, 40], "maria": 0, "nucsyn_s_process": 0, "mc13_pocket_multipli": 0, "tides_convective_damp": 0, "tidal": [0, 5], "convect": 0, "damp": 0, "tides_hurley2002": 0, "zahn": 0, "197x": 0, "timescal": 0, "hut": 0, "tides_zahn1989": 0, "1989": 0, "e2_prescript": 0, "how": [0, 2, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 21, 27, 31, 34], "e2": 0, "siess": 0, "e2_hurley_2002": 0, "e2_izzard": 0, "e2_mint": 0, "dtfac": 0, "decreas": 0, "hbbtfac": 0, "modul": [0, 7, 8, 11, 13, 14, 15, 21, 23], "hot": 0, "bottom": [0, 15, 34], "burn": 0, "wind_multiplier_": 0, "specifi": [0, 21, 25, 37], "intger": 0, "By": [0, 6, 13, 14, 15, 18, 21], "wind_type_multiplier_": 0, "lbv": 0, "pre_main_sequ": 0, "rather": [0, 2, 9, 12, 15, 19, 21, 25, 38], "fraction": [0, 13, 18, 21, 31], "radii": [0, 42], "match": [0, 2, 6, 12, 13, 15, 16, 20, 21, 24, 28], "railton": 0, "pre_main_sequence_fit_lob": 0, "forc": [0, 5, 21, 27], "roch": [0, 5, 8, 42], "lobe": [0, 5, 8, 42], "done": [0, 2, 5, 6, 13, 14, 15, 18, 21, 22, 30, 39], "small_envelope_method": 0, "method": [0, 9, 11, 12, 14, 15, 18, 20, 21, 26, 30, 32, 33, 34, 38], "determin": [0, 7, 9, 13, 14, 15, 20, 31, 34, 42], "radiu": [0, 1, 6, 9, 15, 17, 24, 42], "veri": [0, 5, 6, 7, 8, 9, 12, 14, 15, 30, 34, 37], "thin": 0, "miller": 0, "bertolami": 0, "2016": 0, "small_envelope_method_bs": 0, "small_envelope_method_miller_bertolami": 0, "timestep_modul": 0, "global": [0, 2, 14, 19, 31, 37], "timestep_multipli": 0, "maximum_timestep": 0, "20": [0, 5, 8, 9, 13, 14, 15, 16, 18, 37], "zoomfac_multiplier_decreas": 0, "zoomfac_multiplier_increas": 0, "zoom": [0, 37], "succe": 0, "maximum_timestep_factor": 0, "subsequ": 0, "maximum_nuclear_burning_timestep": 0, "nuclear": 0, "nova_retention_method": 0, "retain": 0, "nova": [0, 6, 8], "nova_retention_fract": 0, "pend": [0, 5], "nova_retention_algorithm_const": 0, "nova_retention_algorithm_claeys2014": 0, "nova_retention_algorithm_hillman2015": 0, "nova_retention_algorithm_wangwu": 0, "nova_yield_co_algorithm": 0, "yield": [0, 37], "nova_yield_co_algothim_jose_hernanz_1998": 0, "nova_yield_co_algorithm_jose_hernanz_1998": 0, "nova_yield_one_algorithm": 0, "nova_yield_one_algothim_jose_hernanz_1998": 0, "nova_yield_one_algorithm_jose2022": 0, "nova_yield_one_algorithm_jose_hernanz_1998": 0, "nova_yield_one_algorithm_jose_2022": 0, "mint_metal": 0, "mint": 0, "It": [0, 6, 7, 8, 11, 12, 13, 14, 15, 16, 18, 21, 22, 30, 33, 39], "normal": [0, 2, 20, 25, 37, 38], "gaia_teff_binwidth": 0, "log10": [0, 6, 8, 13, 14, 15, 31, 37], "bin": [0, 8, 13, 14, 19, 21, 22, 37, 39], "width": [0, 8, 19], "gaia": [0, 31], "hrd": [0, 6, 8], "gaia_l_binwidth": 0, "luminos": [0, 4, 6, 22, 24], "gaia_colour_transform_method": 0, "select": [0, 3, 12, 13, 16, 18, 19], "transform": [0, 3], "colour": 0, "scheme": 0, "gaia_conversion_ubvri_univariate_jordi2010": 0, "jordi": 0, "univari": 0, "ubvri": 0, "gaia_conversion_ubvri_bivariate_jordi2010": 0, "bivari": 0, "gaia_conversion_ugriz_univariate_jordi2010": 0, "gaia_conversion_ugriz_bivariate_jordi2010": 0, "ugriv": 0, "gaia_conversion_ubvri_univariate_evans2018": 0, "evan": 0, "dr2": 0, "gaia_conversion_ugriz_univariate_evans2018": 0, "gaia_conversion_ubvri_riello2020": 0, "riello": 0, "dr3": 0, "gaia_conversion_ugriz_riello2020": 0, "rotationally_enhanced_mass_loss": 0, "enabl": [0, 7], "rotation": 0, "enhanc": 0, "langer": 0, "rotationally_enhanced_massloss_langer_formula": 0, "rotationally_enhanced_expon": 0, "rotationally_enhanced_massloss_non": 0, "rotationally_enhanced_massloss_angmom": 0, "rotationally_enhanced_massloss_langer_formula_and_angmom": 0, "agb_core_algorithm": 0, "overshoot": 0, "agb_core_algorithm_default": 0, "agb_core_algorithm_hurlei": 0, "agb_core_algorithm_karaka": 0, "agb_radius_algorithm": 0, "agb_radius_algorithm_default": 0, "agb_radius_algorithm_hurlei": 0, "agb_radius_algorithm_karaka": 0, "agb_luminosity_algorithm": 0, "agb_luminosity_algorithm_default": 0, "agb_luminosity_algorithm_hurlei": 0, "agb_luminosity_algorithm_karaka": 0, "agb_3dup_algorithm": 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, "overspin_algorithm": 0, "what": [0, 1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 21, 22, 25, 31, 33, 37, 38, 39, 40], "do": [0, 1, 2, 5, 6, 7, 8, 9, 11, 13, 14, 15, 18, 20, 21, 22, 24, 25, 30, 31, 33, 37, 39, 42], "breakup": 0, "overspin_bs": 0, "conserv": 0, "transfer": [0, 6, 21], "back": [0, 2, 5], "overspin_massloss": 0, "rotationally_enhanced_massloss": 0, "lose": [0, 18], "carri": 0, "awai": [0, 13], "expon": [0, 19], "power": [0, 8, 14, 21, 31], "rais": [0, 2, 15, 19, 21], "batchmod": 0, "control": [0, 6, 13, 14, 15, 21], "variabl": [0, 4, 6, 7, 8, 13, 19, 21, 29, 30, 34], "know": [0, 1, 2, 7, 12, 14, 21, 30, 33], "speedtest": 0, "off": [0, 5, 15, 18, 21], "use_fixed_timestep_": 0, "boolean": [0, 2, 7, 19, 20, 21, 24, 38, 42], "task": [0, 18, 19, 20, 24, 25, 28, 31, 37, 40, 42], "perform": [0, 30], "For": [0, 2, 9, 12, 13, 14, 24], "binary_c_macro": 0, "h": [0, 5, 9, 19], "particularli": 0, "binary_c_task_": 0, "orbiting_object": [0, 16], "usag": [0, 4], "spinrat": 0, "central_object": 0, "orbiting_objects_log": [0, 16], "orbiting_objects_wind_accretion_multipli": 0, "orbiting_objects_close_pc_threshold": 0, "close": [0, 8, 14, 16, 30], "percentag": 0, "orbiting_objects_tides_multipli": 0, "torqu": 0, "evaporate_escaped_orbiting_object": 0, "evapor": 0, "rlof_transition_objects_escap": 0, "eject": [0, 8, 16], "otherwis": [0, 2, 19, 20, 21, 25, 27, 29, 30, 33, 36], "place": [0, 2, 13, 19, 21], "outsid": [0, 31], "stabl": [0, 22, 39], "pn_resolv": 0, "shorten": [0, 5], "resolv": [0, 13, 30], "better": [0, 2, 4, 7, 15, 25, 29, 30, 36, 42], "pn": 0, "pn_resolve_minimum_luminos": 0, "resolut": [0, 6, 8, 13, 14, 15, 21, 34, 37], "pne": 0, "31": [0, 5, 7, 18, 21], "62": [0, 13], "pn_resolve_maximum_envelope_mass": 0, "below": [0, 4, 6, 7, 8, 9, 13, 14, 15, 21, 31], "pn_resolve_minimum_effective_temperatur": 0, "12500": 0, "pn_fast_wind": 0, "fast": 0, "pn_fast_wind_dm_gb": 0, "pn_fast_wind_mdot_gb": 0, "06": [0, 5, 9, 12, 13], "pn_fast_wind_dm_agb": 0, "pn_fast_wind_mdot_agb": 0, "hewd_hewd_ignition_mass": 0, "reignit": 0, "wind_nieuwenhuijzen_luminosity_lower_limit": 0, "activ": [0, 21, 22, 39], "4e3": 0, "lsun": [0, 24], "4000": 0, "wind_lbv_luminosity_lower_limit": 0, "6e5": 0, "600000": 0, "num_ansi_colour": 0, "extend": [0, 8, 22, 38, 39], "ansi": [0, 19], "255": [0, 5], "src": [0, 7, 9, 22, 39], "ansi_colour": 0, "int": [0, 1, 2, 5, 7, 13, 15, 19, 20, 21, 25, 31, 32, 33, 34, 37, 42], "apply_darwin_radau_correct": 0, "darwin": 0, "radau": 0, "correct": [0, 12, 20, 22, 24, 31, 32, 39, 42], "moment": [0, 6, 9, 15, 18, 37], "inertia": 0, "take": [0, 2, 8, 13, 15, 18, 19, 21, 26, 30, 31, 34, 40], "account": [0, 21, 31], "adjust_structure_from_mass_chang": 0, "adjust": 0, "l": [0, 6, 13, 14], "r": [0, 1, 5, 6, 12, 15, 18, 22, 30, 39], "chang": [0, 1, 2, 5, 6, 8, 9, 13, 14, 15, 18, 19, 20, 21, 22, 33, 34, 39], "m": [0, 5, 6, 8, 14, 16, 18, 19, 31, 42], "previou": [0, 8, 14, 19, 21, 38], "thermal": [0, 6, 31, 42], "save_mass_history_n_therm": 0, "histori": [0, 31], "save": [0, 1, 8, 9, 13, 14, 15, 21, 25, 30, 31, 37], "degenerate_core_merger_nucsyn": 0, "degner": 0, "energi": 0, "gener": [0, 1, 4, 7, 9, 12, 13, 15, 17, 18, 19, 20, 21, 24, 25, 30, 31, 33, 34, 37], "nucleosynthesi": [0, 38], "whole": [0, 8, 9, 20, 21], "disrupt": [0, 5, 18], "degenerate_core_helium_merger_ignit": 0, "degenerate_core_merger_dredgeup_fract": 0, "separ": [0, 3, 5, 6, 7, 9, 12, 15, 16, 17, 18, 24, 30, 31, 42], "actual": [0, 3, 6, 8, 9, 12, 13, 14, 15, 20, 21, 22, 24, 29, 31, 37, 39], "semi": 0, "major": 0, "axi": [0, 24], "indic": [0, 31], "want": [0, 2, 3, 5, 8, 9, 13, 14, 15, 18, 19, 21, 22, 24, 25, 30, 31, 33, 34, 39], "either": [0, 2, 3, 13, 14, 15, 18, 20, 21, 34, 38, 40], "separation_tripl": 0, "tripl": [0, 21, 31], "separation_quadrupl": 0, "quadrupl": [0, 21, 31], "orbital_period": [0, 5, 7, 8, 9, 12, 13, 15, 17, 18, 42], "orbital_period_tripl": 0, "orbital_period_quadrupl": 0, "outer": [0, 6], "quadrulpl": 0, "eccentricity_tripl": 0, "eccentricity_quadrupl": 0, "inclini": 0, "orbital_inclin": 0, "rel": 0, "incliniation_tripl": 0, "incliniation_quadrupl": 0, "orbital_inclinationi": 0, "orbital_phas": 0, "orbital_phase_tripl": 0, "orbital_phase_quadrupl": 0, "argument_of_periastron": 0, "argument": [0, 2, 5, 7, 12, 15, 16, 17, 18, 19, 20, 21, 25, 26, 31, 38, 40], "periastron": 0, "argument_of_periastron_tripl": 0, "argument_of_periastron_quadrupl": 0, "disc_timestep_factor": 0, "natur": [0, 14], "disc": [0, 16], "white_dwarf_cooling_model": 0, "cool": [0, 6], "white_dwarf_cooling_mestel": 0, "mestel": 0, "white_dwarf_cooling_mestel_modifi": 0, "white_dwarf_cooling_carrasco2014": 0, "carrasco": 0, "white_dwarf_radius_model": 0, "perhap": [0, 6, 8, 20], "white_dwarf_radius_nauenberg1972": 0, "nauenberg": 0, "1972": 0, "white_dwarf_radius_mu": 0, "mu": 0, "white_dwarf_radius_carrasco2014": 0, "cbdisc_mass_loss_inner_viscous_accretion_method": 0, "inner": [0, 16], "edg": [0, 6, 15, 34], "circumbinari": 0, "goe": [0, 2, 9, 12, 24], "young": 0, "clark": 0, "gerosa": 0, "50": [0, 5, 14, 15], "cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_equ": 0, "cbdisc_mass_loss_inner_viscous_accretion_method_non": 0, "cbdisc_inner_edge_strip": 0, "cbdisc_end_evolution_after_disc": 0, "cbdisc_no_wind_if_cbdisc": 0, "cbdisc_outer_edge_strip": 0, "disc_n_monte_carlo_guess": 0, "guess": [0, 31], "try": [0, 2, 5, 8, 12, 13, 14, 15, 22, 25, 30, 34, 39], "list": [0, 1, 2, 3, 6, 8, 12, 13, 14, 15, 16, 19, 21, 22, 25, 28, 31, 34, 37, 39, 40], "fail": [0, 6, 8, 13, 14, 15, 19, 21, 22, 30, 39], "disc_log": 0, "disc_log_level_non": 0, "disc_log_level_norm": 0, "disc_log_level_subtimestep": 0, "disc_log_level_normal_first_disc_onli": 0, "disc_log_level_subtimestep_first_disc_onli": 0, "disc_log2d": 0, "2d": 0, "disc_log_dt": 0, "disc_log_directori": 0, "directori": [0, 4, 15, 19, 20, 21, 22, 25, 28, 29, 30, 33, 36, 39], "sent": 0, "exist": [0, 2, 6, 15, 18, 21, 25, 30, 33, 34], "string": [0, 1, 2, 3, 4, 7, 12, 13, 14, 15, 16, 19, 20, 21, 24, 25, 29, 30, 33, 34, 36, 38, 40], "tmp": [0, 12, 13, 14, 15, 19, 22, 39], "post_ce_adaptive_menv": 0, "post_ce_objects_have_envelop": 0, "ce": [0, 8], "sit": 0, "insid": 0, "post_ce_envelope_dm_gb": 0, "post_ce_envelope_dm_eagb": 0, "post_ce_envelope_dm_tpagb": 0, "common": [0, 4, 5, 6, 9, 12, 13, 14, 15, 22], "need": [0, 2, 7, 9, 12, 13, 14, 15, 16, 18, 21, 22, 25, 31, 39, 42], "mai": [0, 8, 13, 30], "unstabl": [0, 5], "mani": [0, 5, 6, 7, 8, 11, 13, 14, 15, 16, 21, 29], "cee": [0, 8], "pn_comenv_transition_tim": 0, "transit": 0, "year": [0, 31], "1e2": 0, "taken": [0, 2, 9, 31], "move": [0, 6], "teff": [0, 5, 31], "30e4": 0, "hall": 0, "100": [0, 5, 6, 8, 13, 14, 31, 37], "minimum_time_between_pn": 0, "planetari": 0, "nebula": 0, "detect": [0, 5, 8, 16], "prevent": [0, 5, 6, 21], "trigger": 0, "pn_hall_fading_time_algorithm": 0, "45msun": 0, "fade": 0, "pn_hall_fading_time_algorithm_minimum": 0, "pn_hall_fading_time_algorithm_maximum": 0, "shown": [0, 24, 37], "fig": [0, 18, 31], "ppn_envelope_mass": 0, "cbdisc_eccentricity_pumping_method": 0, "variou": 0, "pump": 0, "cbdisc_eccentricity_pumping_non": 0, "cbdisc_eccentricity_pumping_dermin": 0, "cbdisc_viscous_photoevaporative_coupl": 0, "viscou": 0, "photoevapor": 0, "coupl": [0, 4], "cbdisc_viscous_photoevaporative_coupling_non": 0, "cbdisc_viscous_photoevaporative_coupling_inst": 0, "instant": 0, "cbdisc_viscous_photoevaporative_coupling_visc": 0, "slow": [0, 6, 8, 13, 14], "cbdisc_inner_edge_stripping_timescal": 0, "long": [0, 5, 6, 8, 15, 21, 27, 30, 34, 38, 41], "revap_in": 0, "disc_stripping_timescale_inst": 0, "disc_stripping_timescale_infinit": 0, "disc_stripping_timescale_visc": 0, "disc_stripping_timescale_orbit": 0, "cbdisc_outer_edge_stripping_timescal": 0, "revap_out": 0, "cbdisc_viscous_l2_coupl": 0, "l2": 0, "gravitational_radiation_model": 0, "gravit": [0, 6, 8, 15], "radiat": 0, "landau": 0, "lifshitz": 0, "1951": [0, 14], "gravitational_radiation_bs": 0, "gravitational_radiation_bse_when_no_rlof": 0, "gravitational_radiation_non": 0, "gravitational_radiation_landau_lifshitz": 0, "gravitational_radiation_landau_lifshitz_when_no_rlof": 0, "nova_irradiation_multipli": 0, "radi": 0, "shara": 0, "1986": [0, 31], "gravitational_radiation_modulator_j": 0, "wave": [0, 6, 8, 15], "gravitational_radiation_modulator_": 0, "nova_faml_multipli": 0, "friction": 0, "rlof_angular_momentum_transfer_model": 0, "rlof_angular_momentum_transfer_model_bs": 0, "rlof_angular_momentum_transfer_model_conserv": 0, "post_sn_orbit_method": 0, "tauri": 0, "post_sn_orbit_bs": 0, "post_sn_orbit_tt98": 0, "singl": [0, 4, 5, 6, 7, 13, 14, 17, 18, 20, 21, 22, 24, 25, 31, 39], "accretion_limit_eddington_steady_multipli": 0, "steadi": 0, "eddington": 0, "instabl": 0, "spheric": 0, "symmetr": 0, "known": [0, 6, 12, 13, 14, 15, 20, 31, 40], "trade": 0, "anyth": [0, 13, 14, 15, 19, 21, 37], "greater": 0, "than": [0, 2, 5, 6, 8, 13, 14, 15, 19, 21, 22, 25, 30, 31, 38, 39], "potenti": 0, "give": [0, 5, 8, 19, 20, 31, 42], "super": 0, "accretion_limit_eddington_lmms_multipli": 0, "accretion_limit_eddington_wd_to_remnant_multipli": 0, "onto": [0, 31], "anoth": [0, 25], "accretion_limit_thermal_multipli": 0, "accretor": [0, 5, 42], "accretion_limit_dynamical_multipli": 0, "dynam": 0, "donor_limit_envelope_multipli": 0, "donor": [0, 5, 42], "per": [0, 5, 8, 12, 13, 15, 19, 21, 30, 42], "donor_limit_thermal_multipli": 0, "donor_limit_dynamical_multipli": 0, "bondi_hoyle_accretion_factor": 0, "bondi": 0, "hoyl": 0, "littleton": 0, "multiplc": 0, "tidal_strength_factor": 0, "strength": 0, "tide": [0, 16], "stronger": [0, 6], "hachisu_qcrit": 0, "critic": 0, "q": [0, 5, 8, 13, 15, 18, 21, 31, 42], "maccretor": [0, 5], "mdonor": [0, 5], "hachisu": 0, "disk": [0, 20], "hachisu_ignore_qcrit": 0, "hachisu_disk_wind": 0, "materi": [0, 6], "too": [0, 2, 6, 7, 14, 16, 21, 22, 39, 40], "help": [0, 5, 7, 11, 12, 13, 14, 15, 19, 33], "sneia": 0, "mass_accretion_for_eld": 0, "lit": 0, "deton": 0, "wdwd_merger_algorithm": 0, "peret": 0, "2019": [0, 18], "chen": 0, "todo": [0, 1, 2, 10, 11, 15, 19, 20, 21, 24, 25, 29, 30, 31, 32, 33, 36, 37, 38, 40, 42], "wdwd_merger_algorithm_bs": 0, "wdwd_merger_algorithm_perets2019": 0, "wdwd_merger_algorithm_chen2016": 0, "wdwd_merger_algorithm_sato2016": 0, "wdwd_merger_algorithm_hybrid_perets2019_sato2016": 0, "wdwd_merger_algorithm_ruiter2013": 0, "eta_violent_wdwd_merg": 0, "q_crit": 0, "wdwd": 0, "violent": 0, "75": [0, 5, 6], "ruiter": 0, "cowd_cowd_explode_above_mass": 0, "hewd_cowd_explode_above_mass": 0, "cowd_to_onewd_accretion_r": 0, "convert": [0, 2, 3, 6, 8, 16, 19, 20, 30, 31, 37], "msun": [0, 6, 9, 12, 14, 16, 18, 31, 37, 38], "yr": 0, "05e": 0, "wang": 0, "type_ia_mch_supernova_algorithm": 0, "dd7": 0, "iwamoto": 0, "1999": 0, "seitenzahl": 0, "3d": 0, "hydro": 0, "seitenzahl2013_model": 0, "type_ia_supernova_algorithm_dd2": 0, "type_ia_supernova_algorithm_seitenzahl2013": 0, "type_ia_supernova_algorithm_seitenzahl2013_automat": 0, "type_ia_supernova_algorithm_livne_arnett_1995": 0, "One": [0, 5, 21], "n1": 0, "n3": 0, "n5": 0, "n10": 0, "n20": 0, "n40": 0, "n100l": 0, "n100": 0, "n100h": 0, "n150": 0, "n200": 0, "n300c": 0, "n1600": 0, "n1600c": 0, "n100_z0": 0, "type_ia_sub_mch_supernova_algorithm": 0, "unus": [0, 21], "max_hewd_mass": 0, "merger_mass_loss_fract": 0, "merger_mass_loss_fraction_by_stellar_type_": 0, "posit": [0, 2, 8, 31], "merger_mass_loss_fraction_glebbeek_2013": 0, "merger_mass_loss_fraction_non": 0, "merger_mass_loss_fraction_glebbeek2013": 0, "merger_mass_loss_fraction_unus": 0, "666666": 0, "merger_mass_loss_fraction_nondegener": 0, "equival": [0, 13, 21, 25], "merger_mass_loss_fraction_by_stellar_typ": 0, "combin": [0, 1, 2, 9, 19, 20, 21], "attempt": [0, 3, 19, 20], "individu": [0, 4, 5, 13, 22, 39], "merger_mass_loss_fraction_degener": 0, "compact": [0, 8, 15], "transient_method": 0, "transient": 0, "transient_method_non": 0, "transient_method_ivanova2013": 0, "transient_method_villar2017": 0, "merger_angular_momentum_factor": 0, "result": [0, 1, 2, 3, 8, 12, 13, 14, 15, 18, 19, 21, 22, 25, 30, 31, 37, 39], "spin": [0, 16], "smaller": [0, 37], "wind_angular_momentum_loss": 0, "lw": 0, "specif": [0, 11, 12, 20, 24, 29, 36], "wind_djorb_fac": 0, "wind_angmom_loss_bs": 0, "wind_angmom_loss_lw": 0, "wind_angmom_loss_lw_hybrid": 0, "wind_angmom_loss_spherically_symmetr": 0, "vw93_eagb_wind_spe": 0, "vw93_tpagb_wind_spe": 0, "use_periastron_roche_radiu": 0, "circular": [0, 5], "treat": [0, 37], "properli": 0, "hopefulli": 0, "qcrit_nuclear_burn": 0, "qcrit": 0, "irrespect": 0, "qcrit_qwd": 0, "qcrit_lmm": 0, "stabil": 0, "overflow": [0, 5, 8], "qcrits_": 0, "qcrits_degenerate_": 0, "6944": 0, "qcrit_bs": 0, "qcrit_hjellming_webbink": 0, "qcrit_q_no_comenv": 0, "qcrit_chen_han_t": 0, "qcrit_chen_han_formula": 0, "qcrit_ge2015": 0, "qcrit_vos2018": 0, "qcrit_temmink2022": 0, "qcrit_default": 0, "qcrit_gb_bs": 0, "qcrit_gb_hjellming_webbink": 0, "qcrit_gb_q_no_comenv": 0, "qcrit_gb_chen_han_t": 0, "qcrit_gb_chen_han_formula": 0, "qcrit_gb_ge2015": 0, "qcrit_gb_vos2018": 0, "qcrit_gb_temmink2022": 0, "qcrit_gb_default": 0, "qcrit_m": 0, "qcrit_hg": 0, "hertzsprung": [0, 4, 22], "gap": 0, "qcrit_gb": 0, "qcrit_cheb": 0, "qcrit_eagb": 0, "qcrit_tpagb": 0, "tp": 0, "qcrit_hem": 0, "qcrit_hehg": 0, "qcrit_hegb": 0, "78125": 0, "qcrit_hewd": 0, "qcrit_cowd": 0, "qcrit_onewd": 0, "qcrit_n": 0, "qcrit_bh": 0, "qcrit_degenerate_lmm": 0, "qcrit_degenerate_m": 0, "qcrit_degenerate_hg": 0, "7619": 0, "qcrit_degenerate_gb": 0, "qcrit_degenerate_cheb": 0, "qcrit_degenerate_eagb": 0, "qcrit_degenerate_tpagb": 0, "qcrit_degenerate_hem": 0, "qcrit_degenerate_hehg": 0, "qcrit_degenerate_hegb": 0, "qcrit_degenerate_hewd": 0, "625": [0, 5], "qcrit_degenerate_cowd": 0, "qcrit_degenerate_onewd": 0, "qcrit_degenerate_n": 0, "qcrit_degenerate_bh": 0, "mass_for_hestar_ia_upp": 0, "never": [0, 6, 14, 21, 28], "mass_for_hestar_ia_low": 0, "alphacb": 0, "viscos": 0, "alpha": [0, 5], "minimum_donor_menv_for_comenv": 0, "comenv_prescript": 0, "paczy\u0144ski": 0, "neleman": 0, "alpha_c": [0, 5, 6, 8], "comenv_ms_accretion_mass": 0, "comenv_ms_accretion_fract": 0, "comenv_ns_accretion_fract": 0, "comenv_ns_accretion_mass": 0, "nelemans_gamma": 0, "nelemans_minq": 0, "nelemans_max_frac_j_chang": 0, "nelemans_n_comenv": 0, "lambda_c": [0, 5, 8], "lambda_ionis": 0, "comenv_undef": 0, "comenv_bs": 0, "comenv_nelemans_tout": 0, "comenv_nandez2016": 0, "comenv_ge2022": 0, "comenv_ejection_spin_method": 0, "left": 0, "comenv_ejection_spin_method_do_noth": 0, "leav": [0, 21], "omega": [0, 5, 18], "enter": [0, 21], "comenv_ejection_spin_method_sychron": 0, "synchron": 0, "comenv_ejection_spin_method_synchron": 0, "comenv_merger_spin_method": 0, "comenv_merger_spin_method_specif": 0, "preserv": 0, "onset": 0, "comenv_merger_spin_method_conserve_angmom": 0, "supercrit": 0, "comenv_merger_spin_method_conserve_omega": 0, "frequenc": [0, 16], "comenv_merger_spin_method_breakup": 0, "some": [0, 1, 5, 6, 8, 9, 11, 12, 13, 14, 15, 18, 20, 21, 22, 24, 29, 31, 34, 35, 36, 39], "comenv_ms_accret": 0, "comenv_ns_accret": 0, "formal": 0, "bind": [0, 7, 9, 12, 16], "menv": [0, 5], "lambda_ce_dewi_tauri": 0, "dewi": 0, "lambda_ce_wang_2016": 0, "jia": 0, "li": 0, "lambda_ce_polytrop": 0, "polytrop": 0, "comenv_splitmass": 0, "lambda_ce_klencki_2020": 0, "klencki": 0, "point": [0, 3, 6, 19, 20, 21, 22, 30, 31, 37, 39], "nelemans_recalc_eccentr": 0, "recalcul": 0, "remov": [0, 2, 8, 12, 15, 16, 19, 20], "comenv_post_eccentr": 0, "remain": [0, 7, 19, 21], "05": [0, 5, 9, 13, 15], "dedmrlof": 0, "dm": [0, 14, 31, 37], "defualt": 0, "accord": [0, 6, 30, 31, 37], "standard": [0, 13, 14, 29, 31, 36, 37], "recombin": 0, "big": [0, 21], "outcom": 0, "lambda_enthalpi": 0, "enthalpi": 0, "far": [0, 5, 6, 14, 16], "cbdisc_albedo": 0, "albedo": 0, "cbdisc_gamma": 0, "cbdisc_alpha": 0, "cbdisc_kappa": 0, "kappa": 0, "cbdisc_minimum_evaporation_timescal": 0, "would": [0, 2, 14, 15, 21, 24], "less": [0, 1, 4, 5, 30, 31], "simpli": [0, 14], "immedi": [0, 6, 21], "1y": 0, "cbdisc_torquef": 0, "cbdisc_max_lifetim": 0, "lifetim": [0, 8, 13, 14, 15, 37], "cbdisc_init_dm": 0, "cbdisc": 0, "start": [0, 1, 5, 6, 8, 12, 13, 14, 15, 18, 19, 21, 27, 33, 34], "won": [0, 12, 22, 39], "t": [0, 1, 2, 5, 6, 12, 14, 15, 16, 19, 21, 22, 25, 30, 37, 39], "converg": 0, "cbdisc_init_djdm": 0, "dj": 0, "cbdisc_mass_loss_constant_r": 0, "cbdisc_mass_loss_fuv_multipli": 0, "fuv": 0, "cbdisc_mass_loss_xray_multipli": 0, "x": [0, 5, 6, 9, 12, 16, 18, 19, 20, 24, 25, 31, 37], "rai": 0, "cbdisc_mass_loss_ism_ram_pressure_multipli": 0, "interstellar": 0, "medium": 0, "ram": [0, 21], "pressur": 0, "cbdisc_mass_loss_ism_pressur": 0, "boltzmann": 0, "kelvin": 0, "think": [0, 19, 20], "3000": [0, 16], "http": [0, 1, 2, 6, 15, 19, 20, 22, 30, 31, 39], "www": [0, 31], "astronomi": 0, "ohio": 0, "edu": 0, "pogg": 0, "ast871": 0, "intro": 0, "pdf": [0, 18, 22, 31, 39], "page": [0, 6, 15, 22, 39], "arxiv": [0, 31], "org": [0, 2, 31], "0902": 0, "0820": 0, "panel": 0, "cbdisc_mass_loss_inner_viscous_multipli": 0, "cbdisc_mass_loss_inner_viscous_angular_momentum_multipli": 0, "cbdisc_resonance_multipli": 0, "reson": 0, "interact": [0, 3, 5, 6, 8, 16, 18, 33], "affect": [0, 5, 6], "cbdisc_resonance_damp": 0, "locat": [0, 21, 22, 31, 37, 39], "cbdisc_fail_ring_inside_separ": 0, "rring": 0, "cbdisc_mass_loss_inner_l2_cross_multipli": 0, "cross": 0, "cbdisc_minimum_luminos": 0, "becom": [0, 1, 2, 5, 9, 14, 16, 19, 21], "dimmer": [0, 13], "instantli": 0, "cbdisc_minimum_mass": 0, "cbdisc_minimum_fr": 0, "fring": 0, "ring": 0, "ab": [0, 19], "rout": 0, "rin": 0, "comenv_disc_angmom_fract": 0, "deprec": [0, 20], "discs_circumbinary_from_comenv": 0, "comenv_disc_mass_fract": 0, "wind_disc_angmom_fract": 0, "discs_circumbinary_from_wind": 0, "wind_disc_mass_fract": 0, "wrlof_method": 0, "quadrat": 0, "wrlof_mass_transf": 0, "wrlof_non": 0, "wrlof_q_depend": 0, "wrlof_quadrat": 0, "minimum_timestep": 0, "timestep_solver_factor": 0, "timestep_limit": 0, "compar": [0, 8, 13, 15, 21], "dx": 0, "dt": [0, 1, 19, 28, 37], "higher": [0, 6, 8, 13, 14, 15, 19, 21, 22, 31, 39], "lengthen": 0, "altern": [0, 21], "rlof_mdot_factor": 0, "rlof_mdot_modul": 0, "rlof_f": 0, "enlarg": 0, "nomin": 0, "becaus": [0, 2, 6, 7, 8, 12, 13, 14, 16, 18, 20, 21, 22, 28, 30, 31, 39], "dermin": 0, "rlof_radiation_correct": 0, "unstable_rlof_can_trigger_snia": 0, "triggered_snia_algorithm": 0, "minimum_separation_for_instant_rlof": 0, "evolv": [0, 4, 7, 9, 16, 20, 21, 22, 39], "report": [0, 6, 8, 13, 14, 15], "lead": [0, 6, 13, 14, 15, 30, 31, 42], "minimum_orbital_period_for_instant_rlof": 0, "maximum_mass_ratio_for_instant_rlof": 0, "m1": [0, 5, 9, 12, 13, 14, 15, 18, 30, 31, 42], "rlof_method": 0, "adapt": [0, 14], "rl": [0, 5], "ritter": 0, "claei": 0, "etal": 0, "rlof_method_bs": 0, "rlof_method_adapt": 0, "rlof_method_ritt": 0, "rlof_method_claei": 0, "rlof_method_adaptive2": 0, "rlof_interpolation_method": 0, "alwai": [0, 20, 21, 31, 37], "get": [0, 2, 3, 4, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 22, 25, 26, 29, 31, 33, 34, 36, 39, 40, 42], "within": [0, 2, 9, 11, 15, 19, 22, 31, 34, 39], "toler": 0, "rlof_entry_threshold": 0, "revers": [0, 24], "newton": 0, "doe": [0, 2, 6, 7, 9, 11, 12, 13, 14, 15, 20, 21, 28, 30, 31, 34, 42], "repeat": [0, 21], "half": [0, 31], "until": [0, 2, 6, 30, 31], "latter": 0, "now": [0, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 19, 25, 31, 32], "break": 0, "rlof_interpolation_binary_c": 0, "rlof_interpolation_bs": 0, "he_nova_eld": 0, "nova_retention_fraction_h": 0, "beta_reverse_nova": 0, "automat": [0, 1, 9, 15, 16, 17, 18, 21, 22, 28, 30, 33, 34, 39], "geometr": 0, "beta_reverse_novae_geometri": 0, "wd_accretion_rate_algorithm": 0, "wrapper": [0, 3, 7, 9, 12, 20, 30, 32, 42], "go": [0, 6, 11, 13, 15, 20, 22, 24, 39], "wd_accretion_rate_": 0, "wd_accretion_rate_novae_upper_limit_hydrogen_donor": 0, "upper": [0, 31, 37], "donor_rate_algorithm_claeys2014": 0, "donor_rate_algorithm_bs": 0, "donor_rate_algorithm_k2014_p2014": 0, "donor_rate_algorithm_wangwu": 0, "wd_accretion_rate_novae_upper_limit_helium_donor": 0, "wd_accretion_rate_novae_upper_limit_other_donor": 0, "neither": [0, 20], "nor": 0, "wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor": 0, "lower": [0, 13, 15, 31, 34, 37], "format": [0, 2, 3, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 21, 29, 30, 31, 34, 37], "wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor": 0, "wd_accretion_rate_new_giant_envelope_lower_limit_other_donor": 0, "crap_paramet": 0, "eggleton": [0, 42], "subject": 0, "bb": 0, "individual_nova": 0, "each": [0, 2, 8, 13, 14, 15, 16, 19, 20, 21, 25, 34, 37], "separta": 0, "nova_timestep_accelerator_num": 0, "acceler": 0, "exce": [0, 13], "nova_timestep_accelerator_index": 0, "nova_timestep_accelerator_max": 0, "larger": [0, 6], "longer": [0, 6, 8], "cap": 0, "eccentric_rlof_model": 0, "rlof_eccentric_as_circular": 0, "force_corotation_of_primary_and_orbit": 0, "force_circularization_on_rlof": 0, "resolve_stellar_type_chang": 0, "warn": [0, 12, 15, 21, 25], "nonconservative_angmom_gamma": 0, "NOT": [0, 34, 37, 40], "momenta": [0, 24], "rlof_nonconservative_gamma_donor": 0, "rlof_nonconservative_gamma_isotrop": 0, "max_stellar_angmom_chang": 0, "maxmimum": 0, "third_dup": 0, "nucsyn_third_dredge_up": 0, "third_dup_multipli": 0, "f": [0, 5, 12, 15, 18, 31], "abund": 0, "element": [0, 1, 11, 16, 21, 24, 38], "nenamg": 0, "reaction": 0, "network": [0, 11], "nucsyn_hbb": 0, "nucsyn_network": 0, "nucsyn_network_error": 0, "error": [0, 2, 14, 19, 21, 22, 25, 30, 39], "nucreacmult": 0, "z": [0, 6, 8, 18, 20, 31, 42], "04": [0, 5, 18], "That": [0, 6], "said": 0, "been": [0, 2, 11, 20, 21, 25, 27, 29, 36], "nucsyn_solv": 0, "kaps_rentrop": 0, "kap": 0, "rentrop": 0, "great": [0, 14, 21], "stiff": 0, "problem": [0, 13], "lsoda": 0, "adam": 0, "bsf": 0, "switcher": 0, "cvode": 0, "librari": [0, 1, 9, 18, 20, 21, 40], "comput": [0, 6, 13, 14], "llnl": 0, "gov": 0, "project": [0, 22, 39], "sundial": 0, "nucsyn_solver_kaps_rentrop": 0, "nucsyn_solver_lsoda": 0, "nucsyn_solver_cvod": 0, "nucsyn_solver_numb": 0, "initial_abundance_mix": 0, "mixtur": [0, 13], "ag89": 0, "lodder": 0, "asplund": 0, "avail": [0, 7, 8, 9, 15, 19, 21, 22, 27, 39], "garcia": 0, "berro": 0, "grevess": 0, "noel": 0, "nucsyn_init_abund_mix_ag89": 0, "nucsyn_init_abund_mix_karakas2002": 0, "nucsyn_init_abund_mix_lodders2003": 0, "nucsyn_init_abund_mix_asplund2005": 0, "nucsyn_init_abund_mix_garciaberro": 0, "nucsyn_init_abund_mix_grevesse_noels_1993": 0, "nucsyn_init_abund_mix_asplund2009": 0, "nucsyn_init_abund_mix_kobayashi2011_asplund2009": 0, "nucsyn_init_abund_mix_lodders2010": 0, "init_abund": 0, "isotop": [0, 11, 38], "init_abund_mult": 0, "init_abund_dex": 0, "dex": [0, 8, 37], "init_abunds_onli": 0, "exit": [0, 19, 20, 21, 25, 29, 30, 36], "initial_abunds_onli": 0, "no_thermohaline_mix": 0, "thermohalin": 0, "lithium_gb_post_heflash": 0, "lithium": 0, "lithium_t": 0, "lithium_gb_post_1dup": 0, "lithium_hbb_multipli": 0, "hbb": 0, "fishlock": 0, "angelou_lithium_decay_funct": 0, "describ": [0, 13, 18, 21, 31], "li7": 0, "decai": 0, "nucsyn_angelou_lithium": 0, "choic": [0, 24, 31], "expoenti": 0, "angelou_lithium_decay_tim": 0, "angelou_lithium_decay_function_exponenti": 0, "angelou_lithium_lmms_tim": 0, "manufactur": 0, "angelou_lithium_ms_tim": 0, "angelou_lithium_hg_tim": 0, "angelou_lithium_gb_tim": 0, "angelou_lithium_cheb_tim": 0, "angelou_lithium_eagb_tim": 0, "angelou_lithium_tpagb_tim": 0, "angelou_lithium_lmms_decay_tim": 0, "surfac": 0, "angelou_lithium_ms_decay_tim": 0, "angelou_lithium_hg_decay_tim": 0, "angelou_lithium_gb_decay_tim": 0, "angelou_lithium_cheb_decay_tim": 0, "angelou_lithium_eagb_decay_tim": 0, "angelou_lithium_tpagb_decay_tim": 0, "angelou_lithium_lmms_massfrac": 0, "angelou_lithium_ms_massfrac": 0, "angelou_lithium_hg_massfrac": 0, "angelou_lithium_gb_massfrac": 0, "angelou_lithium_cheb_massfrac": 0, "angelou_lithium_eagb_massfrac": 0, "angelou_lithium_tpagb_massfrac": 0, "angelou_lithium_vrot_trigg": 0, "angelou_lithium_vrotfrac_trigg": 0, "keplerian": 0, "cf_amanda_log": 0, "amanda": 0, "float_overflow_check": 0, "check": [0, 5, 6, 8, 13, 14, 15, 18, 19, 20, 21, 25, 29, 30, 31, 33, 36, 40, 42], "stderr": [0, 21], "failur": [0, 19, 25], "save_pre_events_stardata": 0, "copi": [0, 8, 14, 21, 22, 39, 42], "stardata": [0, 1, 6, 8, 9, 12, 13, 14, 15, 17, 18], "pre_events_stardata": 0, "disable_end_log": 0, "ensembl": [0, 4, 7, 11, 21, 22, 23, 30, 34, 35, 38], "ensemble_filters_off": 0, "filter": [0, 2, 19], "ensemble_filter_": 0, "ensemble_macro": 0, "ensemble_legacy_ensembl": 0, "legaci": 0, "popul": [0, 3, 4, 5, 7, 11, 22, 23, 39, 40], "legacy_yield": 0, "ensemble_def": 0, "defer": 0, "ensemble_dt": 0, "data": [0, 3, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16, 18, 19, 21, 22, 25, 26, 30, 31, 34, 40, 42], "store": [0, 2, 4, 5, 6, 8, 12, 13, 14, 15, 19, 20, 21, 22, 30, 37, 39, 42], "ensemble_logdt": 0, "ensemble_startlogtim": 0, "logensembletim": 0, "storag": 0, "ensemble_logtim": 0, "act": [0, 14, 15, 21], "linear": [0, 13, 14, 21, 31, 37], "postagb_legacy_log": 0, "disc_legacy_log": 0, "emp_logg_maximum": 0, "logg": [0, 6], "emp": 0, "cemp_cfe_minimum": 0, "nemp_nfe_minimum": 0, "emp_minimum_ag": 0, "emp_feh_maximum": 0, "fe": 0, "cemp": 0, "nemp_cfe_minimum": 0, "nemp": 0, "thick_disc_start_ag": 0, "lookback": 0, "thick": 0, "13e3": 0, "thick_disc_end_ag": 0, "thick_disc_logg_min": 0, "thick_disc_logg_max": 0, "escape_veloc": 0, "construct": [0, 1, 6, 8, 12, 13, 14, 16, 18, 21], "galact": [0, 37], "chemic": [0, 37], "gce": 0, "nucsyn_gce_outflow_check": 0, "1e9": 0, "escape_fract": 0, "colour_log": 0, "thelog": 0, "file_log": 0, "log_legacy_stellar_typ": 0, "human": [0, 19], "readabl": [0, 19], "letter": 0, "log_filenam": [0, 5, 12, 18, 40], "filenam": [0, 1, 3, 5, 12, 15, 19, 20, 21, 25, 29, 30, 36, 40], "dev": 0, "c_log": 0, "dat": [0, 15, 19], "log_separ": 0, "empti": [0, 2, 12, 29, 33, 36], "log_arrow": 0, "add": [0, 2, 6, 8, 9, 12, 13, 14, 15, 20, 21, 22, 24, 31, 34, 35, 37, 39], "arrow": 0, "stopfil": 0, "file": [0, 1, 3, 5, 7, 12, 15, 19, 20, 21, 22, 24, 25, 28, 29, 30, 33, 34, 36, 38, 39, 40], "stardata_dump_filenam": 0, "dump": [0, 3, 12, 20, 30], "stardata_load_filenam": 0, "load": [0, 1, 3, 6, 9, 12, 13, 14, 15, 18, 19, 20, 21, 24, 25, 26, 30, 34], "api_log_filename_prefix": [0, 5, 12, 16], "prefix": 0, "api": [0, 4, 19, 22, 25], "hrdiag_output": 0, "high": [0, 14, 31], "hertzstrpung": 0, "russel": [0, 4, 22], "diagram": [0, 4, 22, 24], "hrdiag": 0, "internal_buff": 0, "buffer": [0, 30], "prior": [0, 6], "shouldn": [0, 19], "realli": [0, 6, 15, 20, 21, 33, 34], "plai": [0, 5, 14], "internal_buffering_off": 0, "internal_buffering_print": 0, "internal_buffering_stor": 0, "wtts_log": 0, "wtts2": 0, "fabian_imf_log_tim": 0, "fabian": 0, "imf": [0, 14, 31], "fabian_imf_log": 0, "fabian_imf_log_timestep": 0, "displai": [0, 6, 8], "test": [0, 12, 19, 21, 25, 28, 30], "dumpvers": 0, "short": [0, 6, 8, 13, 14, 41], "version_onli": 0, "tides_diagnosis_log": 0, "mint_dir": 0, "mint_data_cleanup": 0, "incom": 0, "Will": [0, 19, 21, 40], "slower": 0, "few": [0, 8], "thing": [0, 3, 5, 6, 7, 8, 13, 14, 15, 18, 19, 20, 31, 40], "mint_ms_rejuven": 0, "rejuven": [0, 13], "mint_remesh": 0, "remesh": 0, "mint_use_zams_profil": 0, "profil": 0, "zam": [0, 4, 5, 6, 7, 13, 31, 40, 42], "homogen": 0, "mint_fallback_to_test_data": 0, "test_data": 0, "fallback": 0, "unavail": 0, "mint_disable_grid_load_warn": 0, "explicitli": [0, 1], "miss": [0, 13, 14, 19, 33], "much": [0, 6, 8, 13, 15, 18, 19, 27], "mint_kippenhahn": 0, "kippenhahn": 0, "mint_nshel": 0, "shell": [0, 19], "shellular": 0, "mint_maximum_nshel": 0, "mint_hard_max_nshel": 0, "1000": [0, 8, 21, 37], "mint_minimum_nshel": 0, "equal": [0, 2, 14, 15, 19], "mint_hard_min_nshel": 0, "mint_kippenhahn_stellar_typ": 0, "selector": 0, "plot": [0, 6, 8, 12, 13, 14, 16, 17, 18, 24], "mint_kippenhahn_companion_stellar_typ": 0, "mint_nuclear_burn": 0, "mint_minimum_shell_mass": 0, "mint_maximum_shell_mass": 0, "command": [0, 1, 15, 19, 20, 21, 22, 30, 39], "gogo": 0, "reset_star": 0, "reset": 0, "reset_stars_default": 0, "echo": 0, "execut": [0, 15, 21, 22, 34, 39], "noecho": 0, "deactiv": 0, "noechonow": 0, "bye": 0, "quit": [0, 6, 19, 31], "fin": 0, "reset_pref": 0, "prefer": [0, 20], "struct": [0, 9], "statu": [0, 1, 6, 8, 13, 14, 15, 21, 25, 29, 30, 36], "handi": 0, "re": [0, 1, 6, 7, 8, 13, 14, 16, 25, 33], "sampl": [0, 4, 13, 15, 31, 34, 37], "space": [0, 6, 14, 15, 30, 34, 37], "good": [0, 5, 12, 13, 14, 15, 21, 42], "statist": [0, 21, 29], "reason": [0, 14], "tbse": 0, "pgo": 0, "random_system": 0, "etc": [0, 7, 12, 14, 15, 16, 19, 20, 21, 22, 24, 30, 31, 39, 40], "random_se": [0, 5, 12, 18], "seed": 0, "possibl": [0, 1, 2, 6, 12, 16, 19, 21, 22, 28, 31, 33, 39], "exactli": [0, 14], "reproduc": 0, "involv": 0, "pseudorandom": 0, "random_systems_se": 0, "random_skip": 0, "skip": [0, 2, 13, 21], "idum": 0, "nb": 0, "pleas": [0, 6, 7, 13, 14, 15, 19, 21, 22, 28, 39], "reverse_tim": 0, "To": [0, 5, 7, 12, 13, 14, 15, 21, 22, 30, 31, 39], "consid": [0, 1, 2, 13, 14, 20, 21, 24, 32, 33, 37], "start_tim": [0, 21], "warmup_cpu": 0, "cpu": [0, 6, 8, 13, 14, 15, 21, 27], "second": [0, 2, 8, 16, 19, 22, 24, 30, 31, 32, 39], "topic": 0, "argopt": 0, "help_al": 0, "list_arg": 0, "bjorn": 0, "ascii": 0, "art": 0, "pictur": 0, "bj\u00f6rn": 0, "jp2a": 0, "instal": [0, 21, 42], "logo": 0, "here": [1, 6, 7, 9, 12, 13, 14, 16, 18, 19, 20, 21, 22, 24, 31, 39, 40], "user": [1, 9, 19, 20, 21, 22, 26, 31, 33, 39, 40], "binaryc": [1, 19, 40], "output": [1, 2, 3, 4, 5, 7, 9, 11, 12, 16, 17, 18, 19, 20, 21, 22, 24, 30, 38, 39, 40, 42], "runtim": [1, 21], "binarycpython": [1, 2, 3, 4, 5, 6, 7, 8, 9, 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], "util": [1, 2, 3, 5, 6, 7, 8, 9, 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], "autogen_c_logging_cod": [1, 9, 18], "logging_dict": 1, "verbos": [1, 5, 6, 8, 12, 13, 14, 15, 16, 17, 19, 21, 22, 26, 30, 31, 32, 37, 39], "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], "auto": [1, 23], "printf": [1, 6, 8, 9, 12, 13, 14, 15, 17, 18], "statement": [1, 9, 12, 13, 14, 15, 16, 17, 18, 21], "input": [1, 2, 3, 5, 7, 11, 12, 19, 20, 21, 22, 24, 26, 30, 31, 32, 33, 40, 42], "dictionari": [1, 2, 3, 4, 6, 8, 13, 14, 15, 19, 20, 21, 24, 26, 27, 30, 31, 33, 34, 38, 41], "kei": [1, 2, 3, 11, 12, 15, 16, 18, 19, 20, 21, 24, 28, 30, 31, 33, 34, 38], "header": [1, 6, 8, 9, 12, 13, 14, 15, 18, 19], "line": [1, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 24, 30, 37, 39], "item": [1, 2, 6, 8, 13, 14, 19], "paramet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 19, 20, 21, 22, 24, 25, 28, 29, 30, 31, 33, 34, 36, 37, 38, 40, 42], "put": [1, 6, 13, 14, 15, 18, 19, 21, 24, 25, 33, 34, 35], "append": [1, 2, 6, 12, 13, 14, 16], "exampl": [1, 2, 12, 19, 20, 31, 34, 37, 40], "look": [1, 3, 5, 6, 8, 13, 14, 15, 16, 18, 22, 31, 39], "my_stellar_data": [1, 9, 15, 17, 18], "star": [1, 4, 5, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 21, 22, 24, 29, 31, 36, 37, 39, 42], "dict": [1, 3, 5, 6, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 25, 26, 28, 30, 31, 33, 38, 41], "binary_c": [1, 2, 3, 4, 5, 6, 8, 13, 14, 16, 19, 20, 21, 24, 28, 30, 31, 34, 38, 40], "sentenc": 1, "level": [1, 6, 19, 32], "return": [1, 2, 3, 5, 6, 7, 8, 11, 12, 13, 14, 15, 18, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37, 38, 40, 42], "str": [1, 2, 3, 6, 15, 19, 20, 24, 30, 33, 34, 38], "binary_c_log_cod": [1, 9, 12, 17, 18], "termin": [1, 6, 9, 15, 22, 39], "primari": [1, 6, 8, 13, 14, 15, 31, 34, 42], "stellar_typ": [1, 6, 9, 12, 13, 14, 15, 22, 23, 24], "example_log_co": [1, 9], "30": [1, 5, 6, 9, 12, 13, 14, 15, 16, 18], "12e": [1, 6, 9, 12, 13, 14, 15], "previous_stardata": [1, 8, 9, 12, 15], "kill": [1, 9, 15, 20], "dtm": [1, 9, 15], "exact": [1, 2, 21], "wrap": [1, 9, 19, 28], "logic": [1, 2, 9, 20, 21], "definit": [1, 13, 14, 42], "share": [1, 12, 17, 18, 21, 30, 40], "binary_c_write_log_cod": 1, "write": [1, 5, 7, 9, 12, 13, 15, 17, 18, 19, 20, 21, 30, 33, 40], "target": [1, 33], "compile_shared_lib": 1, "sourcefile_nam": 1, "outfile_nam": 1, "compil": [1, 9, 15, 18, 22, 39], "name": [1, 2, 5, 6, 7, 8, 13, 14, 15, 16, 18, 19, 21, 29, 30, 33, 34, 40, 41], "create_and_load_logging_funct": [1, 9, 18], "custom_logging_cod": [1, 9, 12, 15, 17, 18, 40], "custom_tmp_dir": 1, "ctype": 1, "unless": [1, 20, 21], "i": [1, 2, 6, 7, 8, 9, 12, 13, 14, 15, 16, 19, 20, 21, 22, 25, 31, 34, 38, 39, 42], "recommend": [1, 4, 22, 39], "tupl": [1, 6, 19, 25, 30, 37], "memori": [1, 6, 7, 8, 9, 13, 14, 15, 18, 19, 20, 21, 30, 42], "address": [1, 7, 9, 21, 42], "capsul": [1, 7, 19], "from_binary_c_config": 1, "config_fil": 1, "flag": [1, 20, 21, 30, 37, 38], "binaryc_config": 1, "config": [1, 19, 21, 22, 39], "filepath": 1, "return_compilation_dict": 1, "inspir": [1, 24, 42], "binary_c_inline_config": 1, "perl": [1, 2, 14, 15, 29], "still": [1, 9, 16, 21, 22, 39, 42], "clean": [1, 6, 12, 14, 20], "w": [1, 12, 15, 20, 30], "develop": 1, "redhat": 1, "com": [1, 19, 20, 22, 31, 39], "blog": 1, "21": [1, 5, 15, 18], "linker": 1, "gcc": [1, 22, 39], "python": [2, 3, 4, 6, 8, 13, 14, 19, 21, 28, 30, 31, 34], "class": [2, 3, 19, 22, 23], "autovivificationdict": 2, "autovivif": 2, "featur": [2, 4, 15, 22], "overrid": [2, 18, 21, 31, 34, 37], "__iadd__": 2, "oper": [2, 30], "doc": [2, 6, 13, 14, 15, 19, 22, 33, 39], "refer": [2, 21, 30], "datamodel": 2, "html": [2, 6, 15, 22, 30, 39], "highlight": 2, "iadd": 2, "subdict": 2, "might": [2, 3, 13, 15, 16, 19, 21, 22, 30, 39], "newdict": 2, "print": [2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 25, 32, 33], "__getitem__": [2, 28], "getitem": 2, "autoviv": 2, "count_keys_recurs": 2, "input_dict": 2, "recurs": [2, 19, 22, 39], "count": [2, 5, 6, 18, 19, 21], "local_count": 2, "custom_sort_dict": 2, "order": [2, 4, 15, 19, 34], "ordereddict": 2, "find": [2, 5, 8, 15, 19, 21, 28, 33], "uniqu": [2, 18, 21], "sort": [2, 6, 13, 14, 16, 19, 30], "Then": [2, 6, 19, 22, 39], "those": [2, 6, 8, 13, 14, 15, 18, 20, 22, 31, 38, 39], "them": [2, 5, 7, 8, 15, 17, 18, 19, 20, 29, 30, 31, 33, 40], "directli": [2, 12, 21, 25, 30], "without": [2, 9, 12, 14, 19, 21, 31], "filter_dict": 2, "arg_dict": [2, 19], "filter_list": 2, "out": [2, 3, 5, 6, 8, 9, 13, 14, 16, 19, 21, 22, 31, 33, 39], "pair": [2, 5, 19, 34, 38], "filter_dict_through_valu": 2, "inspect_dict": 2, "indent": [2, 3, 12, 20, 30], "print_structur": 2, "inspect": [2, 12, 24], "nest": [2, 15, 34, 38], "content": [2, 3, 5, 7, 19, 20, 25, 39], "bool": [2, 15, 19, 20, 24, 30, 33, 34, 38], "except": [2, 5, 6, 7, 13, 14, 15, 21, 24, 33], "keys_to_float": 2, "faster": [2, 13, 14, 15], "david": [2, 7, 12, 13, 14, 15, 18, 22, 39], "recursive_change_key_to_float": 2, "convers": 2, "noth": [2, 21, 25, 26, 30], "els": [2, 5, 8, 19, 21], "new_dict": 2, "merge_dict": [2, 11], "dict_1": 2, "dict_2": 2, "behaviour": [2, 6, 13, 14, 15, 22, 39, 40], "present": [2, 3, 6, 13, 14, 15, 18, 20, 22, 30, 31, 39], "again": [2, 3, 11, 12, 19, 21], "ad": [2, 4, 6, 8, 12, 13, 22, 30, 34, 39], "opt": [2, 5, 7, 31], "OR": [2, 18], "ident": 2, "concaten": 2, "nonetyp": 2, "instanc": [2, 11, 12, 13, 14, 15, 20, 31], "multiply_float_valu": 2, "multiply_values_dict": [2, 11], "over": [2, 5, 6, 8, 11, 12, 13, 14, 15, 19, 20, 30], "general_info": 2, "origin": [2, 16, 30], "union": [2, 15, 19, 31, 34, 37, 38, 42], "complex": [2, 8, 9, 17, 18, 21], "pass": [2, 7, 9, 12, 15, 16, 18, 19, 20, 21, 22, 24, 25, 26, 29, 30, 36, 37, 39, 40], "multiplied_dict": 2, "normalize_dict": 2, "result_dict": 2, "normalis": [2, 21, 31], "divid": 2, "term": 2, "design": [2, 20, 22, 24, 39], "normalized_dict": 2, "prepare_dict": 2, "global_dict": 2, "list_of_sub_kei": 2, "sure": [2, 12, 13, 14, 15, 22, 25, 30, 31, 39, 40], "prepar": 2, "don": [2, 6, 16, 19, 21, 25], "access": [2, 9, 12, 13, 14, 15, 21, 25, 30], "come": [2, 10, 22, 37, 39], "recursive_change_key_to_str": 2, "custom_format": [2, 19], "ll": [2, 9, 11, 14, 16, 30], "set_opt": [2, 6, 8], "newopt": [2, 31], "updat": [2, 14, 15, 20, 22, 34, 39], "subtract_dict": 2, "subtract": 2, "numer": 2, "overlap": 2, "update_dict": [2, 11], "dict2": 2, "packag": [3, 7, 15, 19, 22, 34, 35, 36, 37, 39], "binarycdecod": 3, "object_hook": 3, "parse_float": 3, "parse_int": 3, "parse_const": 3, "strict": 3, "object_pairs_hook": 3, "jsondecod": 3, "decod": 3, "entri": [3, 19, 20], "binarycencod": 3, "skipkei": 3, "ensure_ascii": [3, 20, 30], "check_circular": 3, "allow_nan": 3, "sort_kei": [3, 30], "jsonencod": 3, "encod": [3, 15, 30], "o": [3, 19, 22, 31], "precis": 3, "json": [3, 7, 12, 15, 20, 21, 26, 30], "binaryc_json_seri": 3, "obj": [3, 19], "serialis": 3, "export": [3, 15, 19, 20, 22, 30, 39], "represent": [3, 15, 34], "themselv": [3, 31], "itself": [3, 6, 9, 12, 21, 22, 31, 39], "ensemble_compress": 3, "compress": [3, 30], "extens": [3, 7, 22, 23], "ensemble_file_typ": 3, "ensemble_set": 3, "parameter_nam": [3, 6, 7, 8, 11, 13, 14, 15, 19, 34], "extract_ensemble_json_from_str": 3, "binary_c_output": 3, "extract": [3, 15], "ensemble_json": 3, "raw": [3, 7, 18, 19, 20, 21, 24, 38, 40], "pars": [3, 4, 5, 6, 8, 12, 13, 14, 15, 18, 19, 20, 24, 38, 40], "format_ensemble_result": 3, "ensemble_dictionari": 3, "step": [3, 6, 8, 9, 12, 13, 14, 15, 24, 34, 37], "handle_ensemble_string_to_json": 3, "raw_output": 3, "deal": [3, 12], "creat": [3, 6, 8, 9, 12, 13, 14, 15, 19, 20, 27, 30, 31, 34, 36], "easi": [3, 12, 22, 39], "cl": 3, "load_ensembl": 3, "convert_float_kei": 3, "select_kei": 3, "flush": [3, 20, 30], "quiet": 3, "ensemebl": 3, "even": [3, 11, 14], "open_ensembl": 3, "utf": [3, 15, 30], "open": [3, 5, 12, 15, 18, 30], "read": [3, 4, 5, 12, 15, 18, 19, 21, 22, 30, 39], "decompress": 3, "explain": [4, 38], "repositori": [4, 22, 39], "last": [4, 18, 19, 31], "usecas": 4, "tutori": [4, 22, 39], "run_system_wrapp": [4, 5, 9, 17, 22, 23], "via": [4, 5, 6, 7, 9, 13, 14, 15, 20, 21, 24], "noteworthi": 4, "full": [4, 9, 16, 19, 21, 29, 36], "script": [4, 9, 19, 21, 22, 25, 29, 36, 39], "about": [4, 6, 8, 13, 14, 15, 19, 20, 21, 25, 30, 33, 42], "modif": 4, "binari": [4, 7, 8, 12, 14, 21, 22, 24, 31, 34, 39, 42], "notebook": [5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 22, 39], "log_fil": [5, 21], "bbh": 5, "summari": 5, "run_system": [5, 7, 9, 11, 12, 16, 17, 24, 40], "bhbh": 5, "There": [5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22, 24, 31, 33, 39], "import": [5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 34], "os": [5, 6, 8, 12, 13, 14, 15, 16, 18, 19], "temp_dir": [5, 6, 8, 12, 14, 15, 16, 19], "tmp_dir": [5, 6, 8, 12, 14, 15, 16, 21, 34], "notebook_bhbh": 5, "txt": [5, 12, 15, 18, 22, 30, 39, 40], "60": [5, 30], "readout": 5, "m2": [5, 9, 12, 13, 15, 18, 30, 31, 42], "k1": [5, 12, 18], "k2": [5, 12, 18], "sep": [5, 8, 12, 13, 15, 18, 30, 31, 42], "ecc": [5, 12, 15, 18, 30, 31], "r1": [5, 12, 18], "rol1": [5, 12, 18], "r2": [5, 12, 18], "rol2": [5, 12, 18], "13868": 5, "random_count": [5, 12, 18], "0000": [5, 12, 18], "000": [5, 12, 18], "00": [5, 12, 15, 18], "6492": 5, "26": 5, "756": 5, "off_m": [5, 12, 18], "type_chng": [5, 12, 18], "6588": 5, "687": 5, "2135": 5, "972": 5, "5298": 5, "325": 5, "5700": 5, "903": 5, "randbuf": [5, 18], "14456": 5, "mer": 5, "415747": 5, "403489": 5, "273236": 5, "627902": 5, "92015": 5, "31213": 5, "gt": [5, 7, 9, 12, 13, 15, 17, 18], "vk": [5, 18], "223": 5, "39": [5, 6, 7, 8, 11, 12, 13, 14, 15, 17], "vr": [5, 18], "94523": 5, "phi": [5, 18], "470721": 5, "vn": [5, 18], "final": [5, 8, 14, 18], "runawai": [5, 18], "v": [5, 18, 22, 39], "155": 5, "054": [5, 31], "143": 5, "72": 5, "9341": 5, "max_tim": [5, 12, 18], "entir": [5, 9, 12, 17, 18], "wider": 5, "littl": [5, 6, 8, 13, 15, 16, 28], "40": [5, 14], "71985": 5, "3101": 5, "48": 5, "y": [5, 6, 16, 19, 20, 24, 25], "009": [5, 16], "beg_symb": 5, "3583": 5, "081": 5, "35": [5, 31], "930": 5, "3971": 5, "98": 5, "023": 5, "014": 5, "lock": [5, 30], "3928": [5, 18], "41": [5, 13], "632": 5, "894": 5, "3995": 5, "4219": 5, "27": [5, 14, 15], "615": 5, "603": 5, "5603": 5, "17": [5, 13, 14, 15, 18], "013": 5, "5403": 5, "157": 5, "151": 5, "5696": 5, "18": [5, 13, 18], "012": 5, "6475": 5, "763": [5, 31], "731": 5, "5791": 5, "19": [5, 15, 18], "010": 5, "011": 5, "6548": 5, "730": 5, "729": [5, 8], "5794": 5, "203": 5, "6550": 5, "728": 5, "225": 5, "inv": [5, 18], "6552": 5, "725": 5, "5795": 5, "246": 5, "6556": 5, "721": 5, "5796": 5, "282": 5, "6559": 5, "716": 5, "727": 5, "321": 5, "6571": 5, "691": 5, "724": [5, 9], "5798": 5, "546": 5, "021": 5, "6649": 5, "502": 5, "683": 5, "5812": 5, "548": 5, "543": 5, "2663": 5, "178": 5, "480": 5, "8828": 5, "57": 5, "460": 5, "end_symb": 5, "2670": 5, "171": 5, "458": 5, "8837": 5, "58": 5, "455": 5, "2733": 5, "111": 5, "272": 5, "8921": 5, "59": 5, "265": 5, "2801": 5, "033": 5, "166": 5, "8987": 5, "4925": 5, "910": 5, "995": 5, "11434": 5, "97": 5, "4989": 5, "850": 5, "942": [5, 13], "11516": 5, "5282": 5, "966": 5, "616": 5, "539": 5, "54990": 5, "431329": 5, "844304": 5, "737837": 5, "957392": 5, "745668": 5, "49451": 5, "76448": 5, "366": 5, "674": [5, 15], "5058": 5, "68517": 5, "15497": 5, "077": 5, "5393": 5, "16623": 5, "147": 5, "335": [5, 14], "088": 5, "214": 5, "68852": 5, "172227": 5, "112321": 5, "69127": 5, "5344": 5, "029": 5, "787956": 5, "497544": 5, "721903": 5, "10755": 5, "526": 5, "7893": 5, "410": [5, 18], "158": 5, "675756": 5, "459842": 5, "312": 5, "331": 5, "229": 5, "113": 5, "746": 5, "54865e": 5, "51": 5, "54769e": 5, "104": 5, "39903e": 5, "let": [5, 8, 12, 14, 15, 16, 20], "def": [5, 6, 8, 12, 13, 14, 15, 18], "detect_bhbh": 5, "logfil": [5, 12, 19, 22, 39], "log_file_lin": 5, "readlin": 5, "len": [5, 6, 12, 15, 18], "enough": [5, 31], "loop": [5, 6, 8, 12, 13, 14, 15, 30, 34], "stellar_type1": 5, "stellar_type2": 5, "rememb": [5, 6, 14], "pop": [5, 9, 16, 28], "return_dict": 5, "system_properti": 5, "log_file_cont": 5, "join": [5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 21, 25], "oop": 5, "found": [5, 6, 8, 13, 14, 15, 29, 31, 36], "unbound": 5, "bound": [5, 31, 37], "search": [5, 6, 13, 16, 22], "search_for_bhbh": 5, "maxcount": 5, "No": [5, 6, 7, 8, 13, 14, 15, 21, 22, 39], "arg": [5, 7, 15, 19, 20, 28, 31, 32], "search_result": 5, "16379": 5, "17247": 5, "211": 5, "81114": 5, "159326": 5, "970141": 5, "340351": 5, "132638": 5, "502053": 5, "15449": 5, "825261": 5, "304595": 5, "5300": 5, "592": 5, "17209": 5, "210": [5, 18], "22992": 5, "391": 5, "584197": 5, "452365": 5, "0846357": 5, "848993": 5, "111944": 5, "44077": 5, "703362": 5, "772581": 5, "130746": 5, "5444": 5, "wide": [5, 14], "caus": [5, 13, 42], "former": 5, "unphys": [5, 8, 13], "3486": 5, "006": 5, "8674": 5, "840": 5, "505": 5, "3185": 5, "78": 5, "017": [5, 16], "8704": 5, "600": 5, "509": 5, "3192": 5, "393": 5, "418": 5, "8706": 5, "568": 5, "510": 5, "3193": 5, "81": [5, 6], "496": [5, 6], "8910": 5, "54": [5, 14], "758": [5, 18], "3246": 5, "beg_rch": 5, "9650": 5, "495": 5, "571": 5, "3223": 5, "29": 5, "913": [5, 13], "0585": 5, "24": 5, "961": [5, 13], "453": 5, "3211": 5, "65": [5, 6, 37], "999": 5, "007": [5, 16], "end_rch": 5, "0649": 5, "747": 5, "479": 5, "3216": 5, "67": [5, 15], "002": [5, 17, 18], "2699": 5, "22": [5, 14, 18], "235": [5, 6], "402": 5, "3331": 5, "32131": 5, "175268": 5, "383437": 5, "361343": 5, "457958": 5, "403947": 5, "2347": 5, "8374": 5, "64": [5, 13], "5055": 5, "53807": 5, "084183": 5, "10734e": 5, "2799": 5, "398": 5, "2946": 5, "392": [5, 18], "beg_bss": 5, "9074": 5, "49": [5, 13], "493": 5, "3373": 5, "end_bss": 5, "9113": 5, "243": 5, "3393": 5, "238": 5, "9192": 5, "236": [5, 18], "059": 5, "3447": 5, "9203": 5, "47": 5, "904": 5, "3454": 5, "69": 5, "9786": 5, "242": 5, "145": 5, "3893": 5, "83": 5, "0907": 5, "249": 5, "4523": 5, "296": 5, "1018": 5, "256": [5, 21], "583": 5, "4540": 5, "997": 5, "1137": 5, "232": 5, "4551": 5, "925": 5, "4596": 5, "101099": 5, "660012": 5, "331365": 5, "36634": 5, "576176": 5, "9248": 5, "0519": 5, "8488": 5, "62022": 5, "27061": 5, "58096e": 5, "3473": 5, "oh": 5, "dear": 5, "secondari": [5, 6, 13, 31, 42], "shorter": 5, "shrink": [5, 8], "best": [5, 20, 21], "acquir": 5, "closer": 5, "grvitation": 5, "0001": [5, 7, 42], "39800": 5, "005": 5, "8571": 5, "8600": 5, "096": 5, "0451": 5, "503": 5, "0491": 5, "561": 5, "0678": 5, "3099": 5, "0681": 5, "2094": 5, "56": 5, "978": 5, "022": 5, "2884": 5, "91": [5, 13], "672": [5, 13], "32438": 5, "qc": 5, "733417": 5, "st": 5, "9778": 5, "8207": 5, "1945": 5, "85": [5, 37], "rc": [5, 6, 8, 13, 14, 16, 24], "67126": 5, "0222": 5, "1192": 5, "comenv": [5, 8], "presc": 5, "m01": 5, "mc1": 5, "l1": 5, "14773e": 5, "rzam": [5, 42], "21541": 5, "convfrac": 5, "560301": 5, "lambda_ion": 5, "a_in": 5, "p_in": 5, "1793": 5, "89": [5, 15], "jtot_in": 5, "09752e": 5, "55": [5, 8, 13, 15, 31], "jorb_in": 5, "95297e": 5, "eorbi": 5, "31037e": 5, "ebindi": 5, "92616e": 5, "sepf": 5, "1221": 5, "1116": 5, "1193": 5, "7646": 5, "mf1": 5, "6094": 5, "mf2": 5, "af": 5, "jf": 5, "44174e": 5, "jej": 5, "82682e": 5, "eorbf": 5, "99926e": 5, "eej": 5, "89371e": 5, "alpha_ej": 5, "0273415": 5, "2095": 5, "821": 5, "122": 5, "647": 5, "092": 5, "793": 5, "mstart": 5, "407726": 5, "3102": 5, "62709": 5, "46857": 5, "a_out": 5, "p_out": 5, "00631839": 5, "30747": 5, "jorb_out": 5, "6543": 5, "rl1": 5, "099": 5, "rl2": 5, "792766": 5, "60828": 5, "gyr": [5, 6, 8], "61249": 5, "803": 5, "44": 5, "040": 5, "566": [5, 18], "32": [5, 19, 21], "457": 5, "79375": 5, "301545": 5, "0266946": 5, "404793": 5, "189909": 5, "0438563": 5, "126": 5, "248": 5, "275557": 5, "668975": 5, "421": 5, "918": 5, "5655": 5, "319412": 5, "506": 5, "521": 5, "8539": 5, "46": [5, 15], "629": 5, "9016": 5, "45": 5, "848": 5, "33": 5, "648": 5, "4816": 5, "633": 5, "954": 5, "5343": 5, "533": 5, "5348": 5, "5599": 5, "534": 5, "5604": 5, "5867": 5, "899": 5, "781": 5, "5875": 5, "5878": 5, "106": [5, 15], "5914": 5, "901": 5, "258": 5, "428": 5, "5916": 5, "804": 5, "873": 5, "461": 5, "28": [5, 7, 9, 12], "413": 5, "6245": 5, "808": 5, "245": 5, "7494": 5, "823": 5, "806": 5, "63": [5, 8, 13], "569": 5, "454": 5, "8032": 5, "830": [5, 18], "333": 5, "087": 5, "998": 5, "8033": 5, "990": 5, "8290": 5, "085": 5, "053": 5, "0403": 5, "050": 5, "0427": 5, "37": 5, "893": 5, "99": [5, 13], "552236": 5, "103282": 5, "393936": 5, "539534": 5, "864167": 5, "3329": 5, "0483": 5, "179": 5, "074": 5, "327": 5, "351": 5, "42972": 5, "0791504": 5, "8925": 5, "991187": 5, "66": [5, 8, 13], "5305": 5, "36": 5, "3905": 5, "82105": 5, "9857": 5, "7333": 5, "68": [5, 15], "5019": 5, "08275": 5, "77": 5, "3696": 5, "0742": 5, "1051": 5, "0146": 5, "contact": [5, 22, 39], "00319559": 5, "00262864": 5, "163": 5, "57683": 5, "0798097": 5, "bh_bh": 5, "1626": 5, "501459": 5, "154271": 5, "coalesc": 5, "r_": 5, "odot": [5, 6, 8, 18], "13312": 5, "7617": 5, "018": 5, "7647": 5, "572": 5, "7721": 5, "7785": 5, "3100": 5, "1326": 5, "52": 5, "305": 5, "695": 5, "2791": 5, "159": 5, "09665": 5, "714712": 5, "3048": 5, "0276": 5, "2332": 5, "71818": 5, "6952": 5, "9757": 5, "44223e": 5, "33552": 5, "467851": 5, "1708": 5, "09706e": 5, "96557e": 5, "76416e": 5, "30388e": 5, "7114": 5, "4385": 5, "9758": 5, "23": [5, 15], "8926": 5, "5423": 5, "72832e": 5, "63566e": 5, "39152e": 5, "03996e": 5, "0241634": 5, "1327": 5, "028": 5, "711": 5, "367": 5, "459": 5, "397754": 5, "3084": 5, "9071": 5, "46089": 5, "0152545": 5, "57093": 5, "6771": 5, "459382": 5, "9411": 5, "9452": 5, "215": 5, "508": 5, "76": [5, 13], "284": 5, "67260": 5, "643477": 5, "441321": 5, "365945": 5, "352254": 5, "0493316": 5, "2147": 5, "401": 5, "309959": 5, "299971": 5, "175": 5, "0005": 5, "759863": 5, "986": 5, "186": 5, "8186": 5, "301": 5, "55202": 5, "8609": 5, "46244": 5, "7292": 5, "322": 5, "3844": 5, "4261": 5, "09": 5, "8255": 5, "339": 5, "1375": 5, "026": 5, "1380": [5, 18], "7437": 5, "276": 5, "488": 5, "702": 5, "185": 5, "7464": 5, "110": 5, "815": 5, "7466": 5, "938": 5, "881": 5, "7479": 5, "466": 5, "188": 5, "114": 5, "7598": 5, "278": 5, "754": 5, "7691": 5, "279": 5, "231": 5, "697": 5, "7692": 5, "987": 5, "7854": 5, "696": 5, "061": 5, "9061": 5, "063": 5, "1521": 5, "1942": 5, "060": 5, "1949": 5, "936": 5, "534629": 5, "163092": 5, "907792": 5, "0909357": 5, "00121347": 5, "2315": 5, "7429": 5, "140": 5, "491": 5, "362": 5, "342": 5, "00762447": 5, "958149": 5, "304": 5, "115": [5, 31], "9359": 5, "295576": 5, "61": [5, 15], "understand": [5, 21], "mention": 5, "introduct": [5, 6], "nto": 5, "most": [5, 6, 7, 8, 14, 19, 22, 39], "next": [5, 14, 15, 19], "catch": [5, 6, 8, 12, 13, 14, 15, 18, 19, 21], "sever": [5, 11, 15, 18, 21, 24, 33, 40], "trend": 5, "math": [6, 8, 13, 14, 15, 16, 34, 37], "matplotlib": [6, 8, 14, 16, 18, 24], "pyplot": [6, 8, 14, 16, 18], "plt": [6, 8, 14, 16, 18], "notebook_hrd": 6, "our": [6, 8, 13, 14, 16, 21, 22, 31, 39], "mathrm": [6, 8, 13, 14], "univers": [6, 8, 21], "These": [6, 7, 14, 15, 19, 21, 24, 25], "rough": 6, "real": [6, 13, 15, 34], "finit": [6, 8, 13, 14], "ago": 6, "cannot": [6, 9, 15, 28, 30, 33], "geq": 6, "_": [6, 8, 13, 14, 21, 33], "through": [6, 7, 11, 12, 13, 14, 15, 22, 24, 25, 34, 39, 40], "studi": [6, 22, 39], "leq": 6, "binary_c_paramet": [6, 13, 14, 15], "bse_opt": [6, 13, 14, 15, 20, 37], "grid_opt": [6, 12, 13, 14, 15, 20, 25, 28, 29, 30, 34, 35, 36, 37], "custom_opt": [6, 12, 13, 14, 15, 20, 30], "physic": [6, 13, 14, 15, 21], "13700": [6, 8], "nine": 6, "massrang": [6, 8, 13, 14], "add_grid_vari": [6, 8, 13, 14, 15, 34], "longnam": [6, 8, 13, 14, 15, 34], "valuerang": [6, 8, 13, 14, 15, 34], "samplerfunc": [6, 8, 13, 14, 15, 21, 34, 37], "self": [6, 8, 12, 13, 14, 15, 20, 21, 25, 28, 29, 30, 31, 34, 36, 37, 38], "const_linear": [6, 8, 13, 14, 15, 34, 37], "min_mass": 6, "max_mass": 6, "res_mass": 6, "probdist": [6, 8, 13, 14, 15, 34], "dprob": [6, 8, 14], "dm1": [6, 14], "care": [6, 13, 14, 21], "dphasevol": [6, 8, 13, 14, 15, 34], "dm_1": [6, 14], "condit": [6, 8, 9, 13, 14, 15, 17, 18, 34], "impos": [6, 8, 13, 14, 15], "mostli": [6, 8, 13, 14, 15, 18, 19, 21, 24, 33, 40], "yourself": [6, 8, 13, 14, 15, 24], "gridtyp": [6, 15, 34], "asymptot": 6, "made": [6, 25], "bit": [6, 13], "messi": 6, "avoid": [6, 7, 8], "track": [6, 21, 24], "custom_logging_stat": [6, 8, 13, 14], "foreach_star": [6, 13], "outermost_core_mass": 6, "doubl": [6, 9, 15, 19], "logteff": 6, "teff_from_star_struct": 6, "logl": 6, "loggrav": 6, "tini": 6, "gravitational_const": 6, "m_sun": 6, "pow2": 6, "r_sun": 6, "starnum": [6, 13], "zero_ag": [6, 9, 12, 13, 14, 15], "c_logging_cod": [6, 8, 9, 12, 13, 14, 15, 21], "doesn": [6, 21], "associ": [6, 8, 13, 14, 29, 36], "datalinedict": [6, 8, 13, 14, 19], "parse_funct": [6, 8, 12, 13, 14, 15, 20, 21, 40], "zams_mass": [6, 13, 14, 15], "splitlin": [6, 7, 8, 9, 12, 13, 14, 15, 16], "nstar": [6, 13], "group": [6, 13, 16, 38], "linedata": [6, 8, 13, 14], "setup": [6, 15, 22, 39, 40], "grid_result": [6, 8, 13, 14, 21], "results_dictionari": [6, 8, 13, 14], "configur": [6, 11, 12, 13, 14, 15, 18, 21, 26, 31], "part": [6, 7, 12, 13, 14, 15, 18, 20, 29, 31, 34, 36, 42], "straightforward": [6, 13, 14, 15], "num_cor": [6, 8, 13, 14, 15, 21], "lot": [6, 13, 14, 15, 16, 21, 38, 40], "ri0005": [6, 15, 22, 39], "surrei": [6, 15, 22, 39], "ac": [6, 15, 22, 39], "uk": [6, 15, 22, 39], "grid_options_descript": [6, 15, 33], "thread": [6, 8, 13, 14, 19, 21, 32], "suffici": 6, "ensur": 6, "crunch": [6, 8, 13, 14], "analyt": [6, 8, 13, 14, 15, 20, 22, 23], "dry": [6, 8, 13, 14, 15, 21, 34], "starcount": [6, 8, 13, 14, 15], "subprocess": [6, 8, 13, 14, 15], "c98b63ab1b0346d9a1067fc08cb8dd00": 6, "finish": [6, 8, 13, 14, 15, 19, 24, 30], "took": [6, 8, 13, 14, 15, 18], "167": 6, "133": [6, 15], "mb": [6, 8, 13, 14, 15, 19, 21], "were": [6, 8, 13, 14, 15, 19, 38], "metadata": [6, 8, 13, 14, 15, 20, 22, 23, 34], "complet": [6, 8, 13, 14, 15], "technic": [6, 8, 9, 13, 14, 15], "seaborn": [6, 8, 13, 14, 16], "panda": [6, 8, 12, 13, 14, 16, 17, 18, 19, 24], "pd": [6, 8, 12, 13, 14, 16, 17, 18], "pad_output_distribut": [6, 8, 13, 14, 19], "max_row": [6, 8], "max_column": [6, 8], "figur": [6, 8, 13, 14, 16, 24], "figsiz": [6, 8, 13, 14, 16, 18], "set_context": [6, 8, 13, 14, 16], "font_scal": [6, 8, 13, 14, 16], "linewidth": [6, 8, 13, 14, 16], "datafram": [6, 8, 12, 13, 14, 16, 17, 18, 24], "column": [6, 8, 12, 15, 16, 18, 24], "p": [6, 8, 13, 14, 16, 31, 33], "lineplot": [6, 8, 13, 14, 16], "estim": [6, 16, 19, 21], "label": [6, 18, 31], "text": [6, 8, 16, 19, 33], "invert_xaxi": 6, "set_xlabel": [6, 8, 13, 14, 16, 18], "log_": [6, 8, 13, 14], "t_": 6, "eff": 6, "set_ylabel": [6, 8, 13, 14, 16, 18], "distanc": [6, 16], "rerun": [6, 21], "At": [6, 15], "expect": [6, 7, 8, 13, 14, 21, 22, 39], "begin": 6, "shortli": 6, "rsun": [6, 24], "8af9954e2cc847aa8ceabc618e3d147d": 6, "suddenli": 6, "smooth": [6, 14], "a34e3c842d96496c87ab0d70bdacac11": 6, "247": [6, 15], "824": 6, "jerki": 6, "strong": 6, "rgb": 6, "tip": [6, 31], "proper": [6, 9, 33], "program": [6, 22, 39], "languag": 6, "sim": 6, "750": 6, "cours": [6, 24], "simpl": [6, 8, 13, 16], "haven": 6, "talk": 6, "produc": 6, "suffer": 6, "thermonuclear": 6, "lumin": 6, "kilonova": 6, "interfac": [7, 16, 19, 22, 25, 39], "framework": [7, 22, 39], "sourcecod": [7, 9, 22, 39], "binary_c_python": [7, 12, 13, 14, 15, 19], "_binary_c_bind": [7, 9, 12, 16, 38, 42], "cell": [7, 14, 15], "free_persistent_data_memaddr_and_return_json_output": 7, "persistent_data": 7, "adress": [7, 9, 42], "persist": 7, "free_store_memaddr": 7, "memaddr": [7, 9], "return_arglin": 7, "return_help": 7, "info": [7, 11, 15, 19, 20, 22, 24, 38, 39], "return_help_al": [7, 19], "overview": 7, "categor": 7, "section": [7, 15, 19, 22, 31, 39], "return_maximum_mass_ratio_for_rlof": [7, 42], "argstr": [7, 9, 12, 16, 18], "store_capsul": 7, "unction": 7, "return_minimum_orbit_for_rlof": [7, 42], "return_persistent_data_memaddr": 7, "run_popul": 7, "return_store_memaddr": 7, "return_version_info": [7, 38], "abl": 7, "kind": 7, "situat": 7, "slightli": 7, "custom_logging_func_memaddr": [7, 9, 21], "store_memaddr": [7, 42], "write_logfil": 7, "test_func": 7, "snippet": [7, 12], "reliabl": 7, "dont": [7, 18], "home": 7, "pyenv": [7, 22, 39], "binarycpython3": 7, "lib": [7, 12, 17, 18, 22, 39], "python3": [7, 22, 39], "site": 7, "cpython": 7, "x86_64": 7, "linux": 7, "gnu": 7, "categori": [7, 15], "creation": 7, "alloc": [7, 37], "written": [7, 12, 15, 21, 22, 30, 33, 34, 39, 40], "4500": 7, "lt": [7, 12, 13, 15, 17], "0x7fc1f0c3ff00": 7, "single_star_lifetim": [7, 9, 12], "4838": [7, 9, 12], "unpars": 7, "abridg": [7, 9, 15], "algorithm": [7, 22], "__arg_begin": 7, "lastli": [7, 12], "00632092": 7, "0141": 7, "alter": [8, 13, 34], "intermedi": 8, "Not": 8, "notebook_comenv": 8, "alpha_": 8, "demonstr": 8, "keep": [8, 15, 30, 32], "log_dt": [8, 21], "progress": [8, 19], "focu": 8, "undergo": 8, "imposs": 8, "logperrang": [8, 13], "lnm1": [8, 13, 14, 15], "min": [8, 9, 13, 14, 15, 31], "precod": [8, 13, 14, 15, 34], "exp": [8, 13, 14, 15, 34], "three_part_powerlaw": [8, 13, 14, 15, 31], "150": [8, 13, 14, 15], "dlnm1": [8, 13, 15], "flatsect": [8, 13, 15, 31], "height": [8, 13, 15, 31], "dq": [8, 13, 15], "log10per": [8, 13, 15], "calc_sep_from_period": [8, 13, 15, 42], "sep_min": [8, 13, 15], "sep_max": [8, 13, 15], "sana12": [8, 13, 15, 31], "dlog10per": [8, 13, 15], "comenv_count": 8, "had": [8, 13, 14, 20], "proport": 8, "year_length_in_dai": 8, "wast": [8, 14], "evolution_stop": 8, "parse_data": 8, "bin_data": [8, 13, 14, 19], "binwidth": [8, 13, 14, 19], "pre_comenv_period": 8, "post_comenv_period": 8, "nearest": [8, 13, 14], "5dex": [8, 14], "binned_pre_period": 8, "aritif": 8, "binned_post_period": 8, "histogram": 8, "machin": [8, 19, 20, 21, 22, 39], "0645564": 8, "e7857f8149e949a286f9bfe35157f91f": 8, "minut": [8, 19], "668": 8, "594": 8, "population_id": [8, 13, 14, 15, 21], "evolution_typ": [8, 13, 14, 15, 21], "failed_count": [8, 13, 14, 15], "failed_prob": [8, 13, 14, 15], "failed_systems_error_cod": [8, 13, 14, 15], "errors_exceed": [8, 13, 14, 15], "errors_found": [8, 13, 14, 15], "total_prob": [8, 13, 14, 15], "06455639233064192": 8, "total_count": [8, 13, 14, 15], "start_timestamp": [8, 13, 14, 15], "1655558353": 8, "8189669": 8, "end_timestamp": [8, 13, 14, 15], "1655558379": 8, "477376": 8, "time_elaps": [8, 13, 14, 15, 27], "658409118652344": 8, "total_mass_run": [8, 13, 14, 15], "3410": 8, "9363465845586": 8, "total_probability_weighted_mass_run": [8, 13, 14, 15], "2260906041851175": 8, "zero_prob_stars_skip": [8, 13, 14, 15], "unmerg": 8, "deepcopi": 8, "logper": [8, 31], "90": 8, "del": 8, "pad": [8, 13, 14], "plot_data": [8, 13, 14], "from_dict": [8, 13, 14, 17, 18], "orient": 8, "p_": 8, "orb": [8, 15, 30], "peak": [8, 14, 37], "sim10": 8, "Such": 8, "prime": 8, "candid": 8, "excit": 8, "astrophys": [8, 14, 22, 39], "life": 8, "lambda_": 8, "smoother": [8, 14], "curv": [8, 14], "why": 8, "learn": [9, 21], "custom_logging_funct": [9, 12, 15, 17, 18, 21, 22, 23], "edit": 9, "log_every_timestep": [9, 12], "evolve_singl": [9, 12, 20], "publicli": 9, "elabor": 9, "advis": 9, "hardcod": [9, 13, 14, 15], "your": [9, 12, 17, 18, 21, 22, 39], "obvious": 9, "logging_lin": [9, 17, 18], "own": [9, 12, 15, 17, 18, 21, 22, 34, 39], "pragma": 9, "push_macro": 9, "undef": 9, "visibl": 9, "__attribute__": 9, "void": 9, "binary_c_api_funct": 9, "custom_output_funct": 9, "stardata_t": 9, "pop_macro": 9, "notebook_individual_system": [9, 12, 13, 14, 15], "2e": [9, 18], "example_logging_string_post_m": 9, "example_post_m": 9, "044142002936e": 9, "99194": 9, "13567": 9, "044572277695e": 9, "99192": 9, "51803": 9, "044654032097e": 9, "81395": 9, "045084306856e": 9, "99191": 9, "57443": 9, "manual": [9, 21, 22, 39], "custom_logging_memaddr": 9, "shared_lib_filenam": 9, "4530": [9, 12, 18], "example_logging_string_co": 9, "848380621869e": 9, "33469": 9, "1865": 9, "72498e": [9, 15], "338": 9, "example_massloss": [9, 12], "sn_type": 9, "sn_none": 9, "example_sn": 9, "id_cor": 9, "core_co": 9, "core_h": 9, "050651207308e": 9, "59452": 9, "34213": 9, "55458": 9, "71662": 9, "soon": [10, 37], "cover": [11, 14], "get_help": [11, 19], "get_help_al": [11, 19, 20], "get_help_sup": [11, 19], "get_default": [11, 19], "print_help": [11, 19], "parameter_value_input_typ": [11, 19], "fetch": [11, 12], "return_binary_c_version_info": [11, 20, 38], "version_info": [11, 20, 22, 23], "dict_kei": [11, 12], "argpair": [11, 38], "ensemble_filt": 11, "dt_limit": 11, "nucleosynthesis_sourc": [11, 38], "miscellan": [11, 38], "conjunct": 11, "analyz": 12, "quickli": 12, "simplest": 12, "notebook_custom_log": [12, 13, 14, 15], "path": [12, 15, 18, 19, 21, 22, 25, 28, 29, 30, 33, 36, 39], "uncom": [12, 13, 14, 15, 16], "docstr": [12, 24], "12461": 12, "test_logfil": 12, "22065": 12, "11003": 12, "1302": 12, "11582": 12, "2424": 12, "12325": 12, "1085": 12, "817": 12, "12457": 12, "1301": 12, "783": 12, "12460": 12, "8955": 12, "774": 12, "shrinkagb": 12, "1490": 12, "678": 12, "custom_log": [12, 18, 20, 21], "custom_logging_print_stat": 12, "000000000000e": 12, "column_nam": 12, "initial_mass": [12, 18], "value_lin": 12, "chose": 12, "startswith": 12, "split_lin": 12, "el": [12, 15], "numpi": [12, 15, 17, 18, 19, 34, 37], "arrai": [12, 15, 18, 19, 21, 31, 34, 37], "my": 12, "favorit": 12, "queri": [12, 25], "example_df": 12, "iloc": [12, 18], "drop": 12, "000001": 12, "000002": 12, "000003": 12, "1250": 12, "061259": 12, "718593": 12, "1251": 12, "149038": 12, "678026": 12, "1252": 12, "13461": 12, "1253": 12, "14461": 12, "1254": 12, "row": [12, 18, 24], "notebook_popul": [12, 13, 15], "everyth": [12, 15, 20, 21], "accordingli": [12, 14, 15], "example_pop": [12, 15], "stuff": [12, 15, 21], "libcustom_logging_34a350b8f15c4d149deab88632948c99": 12, "np": [12, 17, 18, 37], "object_parse_funct": 12, "output_fil": [12, 19, 30, 33], "output_dir": [12, 15, 30], "example_output": 12, "values_arrai": 12, "fill": [12, 19], "output_dict": [12, 13], "anywai": [12, 15, 31, 34], "written_data": 12, "0x7f35b603e9d0": 12, "previous": [12, 15, 25], "libcustom_logging_446fe4cddfa94946bcafd55591ef3730": 12, "under": [12, 37], "hood": 12, "fewer": 12, "failsaf": 12, "notebook_api_funct": 12, "9927": 12, "But": 12, "caught": [12, 19, 38], "correctli": [12, 18, 22, 39], "notebook_luminosity_funct": 13, "ipynb": [13, 14, 15], "conceptu": 13, "public": [13, 14, 15, 22, 39], "side": [13, 14, 15], "cube": 13, "nre": [13, 37], "07": [13, 14, 18, 31, 37], "document": [13, 14, 15, 21, 23, 30, 33], "recompil": [13, 14, 15, 22, 39], "somewhat": [13, 14, 15, 16], "purpos": [13, 14, 15, 21, 24], "perfectli": [13, 14], "strictli": [13, 14], "zero_age_main_sequence_starn": 13, "unresolv": 13, "model_numb": [13, 14], "capit": [13, 14], "zero_age_main_sequence_star": [13, 14], "amp": 13, "1dex": [13, 14], "binned_log_luminos": [13, 14], "0x7f777242c4c0": 13, "binary_c_grid_58bfc73fabfb43b18ae455666fe4d8f8": 13, "py": [13, 15, 21, 22, 28, 39], "dry_run": [13, 15], "symlink": [13, 15], "binary_c_grid": [13, 15], "latest0": 13, "3159": 13, "645748": 13, "996": 13, "processor": 13, "008": 13, "019": 13, "025": 13, "mainprocess": 13, "system_queue_fil": 13, "027": 13, "latest1": 13, "3145": 13, "0s": 13, "tpr": 13, "36e": 13, "etf": 13, "mem": 13, "584": 13, "7mb": 13, "7e": 13, "23146": 13, "6e": 13, "3147": 13, "37e": 13, "signal": [13, 21], "941": 13, "free": 13, "18t12": 13, "996087": 13, "948339": 13, "95": 13, "ran": [13, 21], "792": 13, "161354": 13, "018956": 13, "948532": 13, "93": 13, "791": 13, "158204": 13, "027113": 13, "949028": 13, "92": 13, "784": 13, "166051": 13, "queue": [13, 21, 25, 29], "007947": 13, "955484": 13, "160139": 13, "959": 13, "960": 13, "968": 13, "58bfc73fabfb43b18ae455666fe4d8f8": 13, "6457484448453049": 13, "1655552941": 13, "9314468": 13, "1655552946": 13, "3461084": 13, "414661645889282": 13, "65199": 13, "55913120549": 13, "6433998017038131": 13, "titl": [13, 33], "l_": [13, 14], "yscale": [13, 14, 16], "weirdli": 13, "cost": [13, 14], "observ": [13, 14], "later": [13, 14, 21], "notebook_luminos": 14, "synthesi": [14, 15, 21, 22, 39], "binarygrid": [14, 15], "predefin": [14, 15, 31], "assign": [14, 15, 34], "chosen": [14, 15, 34], "trio": [14, 15], "throughout": [14, 15, 34], "theoret": 14, "integr": [14, 31, 37], "densiti": [14, 31], "accur": 14, "_1": 14, "probtot": 14, "mmax": [14, 31, 37], "mmin": [14, 21, 31, 37], "6afcef10590f48f3b089a6e5bffc70c4": 14, "164": 14, "1655551739": 14, "2635226": 14, "1655551740": 14, "371832": 14, "108309268951416": 14, "3650000000002": 14, "035": 14, "ldist": 14, "implic": 14, "105": 14, "clearli": 14, "realist": 14, "went": 14, "wrong": [14, 22, 39], "unlik": 14, "realiti": 14, "law": [14, 31], "kroupa": [14, 31], "2001": [14, 31], "update_grid_vari": [14, 34], "211729": 14, "452bcf6eb93e4e2493019ec93ee250df": 14, "468": 14, "883": 14, "spiki": 14, "notic": 14, "poor": 14, "compens": 14, "intens": 14, "resourc": [14, 25], "smarter": 14, "linearli": [14, 37], "renam": [14, 34], "clear": [14, 38], "logarithm": [14, 31, 37], "old": [14, 21, 34], "lnm_1": [14, 15, 34], "rename_grid_vari": [14, 34], "dlnm": 14, "dlnm_1": [14, 15, 34], "_grid_vari": [14, 21, 34], "991317": 14, "ec5d853278c743a3acdb8ab290f641df": 14, "475": 14, "789": 14, "perfect": 14, "got": 14, "wiggl": 14, "artefact": 14, "monoton": 14, "brighten": 14, "narrow": 14, "co2": 14, "bar": 14, "isn": [14, 19], "challeng": 14, "sequnec": 14, "notebook_luminosity_function_binari": 14, "recogn": [15, 16], "__": 15, "45000000080": 15, "data_dir": [15, 19, 20, 21, 30], "example_python_population_result": 15, "base_filenam": [15, 20], "idea": [15, 24], "export_all_info": [15, 20], "include_popul": 15, "binary_c_default": 15, "commandlin": 15, "accept": [15, 19, 26], "include_binary_c_default": [15, 20], "include_binary_c_version_info": [15, 20], "include_binary_c_help_al": [15, 20], "fase": 15, "overriden": 15, "use_datadir": [15, 20], "outfil": [15, 20], "ok": [15, 25, 30], "example_pop_set": 15, "gz": [15, 30], "alreadi": [15, 16, 25, 30, 34], "ret": 15, "easier": [15, 18, 19, 20], "discret": 15, "unweight": 15, "notabl": 15, "moe": [15, 22, 25, 26, 31], "di": [15, 22, 26, 31], "stefano": [15, 22, 26, 31], "dataset": [15, 21, 25, 26], "further": 15, "down": 15, "population_extens": [15, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "gridcod": [15, 20, 22, 23], "centr": [15, 34], "branchpoint": [15, 34], "branchcod": [15, 34], "postcod": [15, 34], "topcod": [15, 34], "bottomcod": [15, 34], "dry_parallel": [15, 34], "deeper": [15, 34], "evalu": [15, 31, 34, 37, 42], "bewar": [15, 30, 34], "insert": [15, 34], "destruct": [15, 34], "piec": [15, 18, 34], "risk": [15, 34], "rest": [15, 31, 34], "correspond": [15, 20, 24, 29, 34, 36], "m_min": [15, 34], "m_max": [15, 31, 34], "room": [15, 34], "kroupa2001": [15, 31, 34], "met": [15, 20, 25, 34], "continu": [15, 29, 34, 36], "stepsiz": [15, 34], "parallel": [15, 34], "top": [15, 34], "block": [15, 34], "distribution_funct": [15, 20, 22, 23], "comment": [15, 25, 29, 36], "test_pop": 15, "Or": [15, 18], "example_compact_object": 15, "necessari": [15, 16, 18, 19, 20, 36], "makedir": [15, 19], "exist_ok": [15, 19], "seper": 15, "outfilenam": 15, "headerlin": 15, "isnt": 15, "valueerror": 15, "0x7f2b6ca163a0": 15, "grid_vari": [15, 21], "0443872": 15, "598268106227e": 15, "30592": 15, "75988": 15, "00193614": 15, "436983545111e": 15, "35842": 15, "9948": 15, "00144093": 15, "690157944401e": 15, "43124": 15, "7998": 15, "00107238": 15, "242397939068e": 15, "52416": 15, "3205": 15, "000798096": 15, "756794139032e": 15, "66914": 15, "7394": 15, "000593966": 15, "401414766976e": 15, "73729": 15, "2857": 15, "000442046": 15, "536373523810e": 15, "80677": 15, "000328983": 15, "393982410080e": 15, "82164": 15, "9844": 15, "000244839": 15, "396470605248e": 15, "82129": 15, "53": 15, "9508": 15, "000182216": 15, "399005684057e": 15, "82041": 15, "7151": 15, "00013561": 15, "443375325717e": 15, "81645": 15, "84": 15, "9909": 15, "000100925": 15, "451195752942e": 15, "81559": 15, "51114e": 15, "452661646076e": 15, "81543": 15, "59e": 15, "ce756bb317f64099a459bf8b55a746ac": 15, "73": 15, "293": 15, "406": 15, "044387171445641534": 15, "1646563001": 15, "7193637": 15, "1646563002": 15, "4480088": 15, "7286450862884521": 15, "649": 15, "905447944397": 15, "28133908148630704": 15, "write_binary_c_calls_to_fil": [15, 30], "dataio": [15, 20, 22, 23], "output_filenam": [15, 30], "include_default": [15, 30], "system_gener": [15, 30], "wouldn": [15, 30], "basic": [15, 30], "datadir": [15, 30], "binary_c_cal": [15, 30], "calls_filenam": 15, "binary_c_grid_ce756bb317f64099a459bf8b55a746ac": 15, "latest2": 15, "2406484012210224": 15, "22723621650191106": 15, "011394572976608001": 15, "812296769855663": 15, "22723621650191117": 15, "008480166685456411": 15, "5297876799548944": 15, "006311182276049824": 15, "430329401616038": 15, "004696962123378559": 15, "thats": 15, "evolve_popul": 15, "isfil": 15, "0fa4c2b8707741a5ab41d209ef95a3a4": 15, "299": 15, "531": 15, "regist": 15, "expand": [15, 20], "intend": 15, "mass_1": [15, 18, 24], "zams_mass_1": 15, "mass_2": [15, 18, 24], "zams_mass_2": 15, "prev_stellar_type_1": 15, "prev_stellar_type_2": 15, "example_dco": 15, "logger": 15, "safe": [15, 30], "0211592": 15, "0eb5c0c9abd34607a6ee060b26a7e32f": 15, "300": [15, 37], "378266748188e": 15, "66293": 15, "9713": 15, "78767": 15, "8178": 15, "000339963": 15, "817608462595e": 15, "82104": 15, "41436": 15, "000193036": 15, "422997711686e": 15, "82479": 15, "82171": 15, "2535": 15, "205711924468e": 15, "73765": 15, "solarsystem": 16, "central": 16, "notebook_solar_system": 16, "mmercuri": 16, "moreov": 16, "mercuri": 16, "1mmercuri": 16, "orbital_separ": 16, "1amercuri": 16, "star1": 16, "orbital_eccentr": 16, "206": 16, "venu": 16, "1mvenu": 16, "1avenu": 16, "earth": 16, "1mearth": 16, "1aearth": 16, "mar": 16, "1mmar": 16, "1amar": 16, "093": 16, "jupit": 16, "1mjupit": 16, "1ajupit": 16, "048": [16, 18], "saturn": 16, "1msaturn": 16, "1asaturn": 16, "056": 16, "uranu": 16, "1muranu": 16, "1auranu": 16, "047": 16, "neptun": 16, "1mneptun": 16, "1aneptun": 16, "pluto": 16, "1mpluto": 16, "1apluto": 16, "2444": 16, "244": 16, "planet": 16, "cs1": 16, "superflu": 16, "fourth": 16, "dtype": [16, 17, 18], "argh": 16, "sun": 16, "df": [16, 17, 18, 24], "ci": [16, 22, 39], "legend": [16, 18], "xx": 16, "head": 16, "loc": 16, "yy": 16, "au": 16, "swallow": 16, "although": 16, "mess": 16, "push": 16, "beyond": 16, "explor": 16, "vs": [16, 24], "ylim": 16, "toasti": 16, "distant": 16, "futur": 16, "example_parse_output": [17, 19], "100000000000": [17, 18], "float64": [17, 18], "logi": 17, "axessubplot": 17, "xlabel": 17, "server": 18, "hendrik": [18, 22, 39], "nov": 18, "binary_c_python_api": 18, "nbinary_c": 18, "example_header_1": 18, "st1": 18, "st2": 18, "3540": 18, "example_header_2": 18, "initial_grid": 18, "tempfil": 18, "gettempdir": 18, "test_log": 18, "7106": 18, "786e": 18, "7509": 18, "645": 18, "776": 18, "8427e": 18, "7773": 18, "639": 18, "775": 18, "8435e": 18, "748": 18, "9373e": 18, "0900": 18, "705": 18, "2934e": 18, "1204": 18, "726": 18, "700": 18, "3081e": 18, "2118": 18, "3702e": 18, "2646": 18, "472": 18, "462": 18, "34421": 18, "d48r": 18, "0570946": 18, "458272": 18, "13108": 18, "562029": 18, "924056": 18, "89211": 18, "78817": 18, "302": 18, "148": 18, "113492": 18, "80602": 18, "124379": 18, "2365": 18, "7087": 18, "7695": 18, "444": 18, "608402": 18, "696003": 18, "796455": 18, "0834973": 18, "85661": 18, "3914": 18, "156": 18, "524629": 18, "634667": 18, "func_memaddr": 18, "run_binary_custom_log": 18, "3e": 18, "serv": [18, 19], "parse_output": 18, "behind": 18, "scene": 18, "background": 18, "inlin": 18, "mind": 18, "result_example_header_1": 18, "selected_head": [18, 19], "result_example_header_2": 18, "cast": [18, 19], "df2": 18, "81762e": 18, "000000e": 18, "00000": 18, "817620e": 18, "3927": 18, "102750e": 18, "33817": 18, "62124": 18, "896110e": 18, "202750e": 18, "3929": 18, "302750e": 18, "3930": 18, "402750e": 18, "3931": 18, "500000e": 18, "3932": 18, "doesnt": [18, 33], "autogener": 18, "result_example_head": 18, "000000": 18, "3630": 18, "131680e": 18, "627748": 18, "3631": 18, "231680e": 18, "3632": 18, "331680e": 18, "3633": 18, "431680e": 18, "3634": 18, "3635": 18, "run_and_calc_mass": 18, "kwarg": [18, 20, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40], "2f": 18, "last_st": 18, "last_stellar_type_change_time_1": 18, "slice": 18, "sliced_df": 18, "cut": 18, "late": 18, "final_mass": 18, "initial_tim": 18, "final_tim": 18, "mass_lost": 18, "wrt": 18, "metallicity_002": 18, "metallicity_001": 18, "metallicity_0002": 18, "mass_rang": 18, "arang": 18, "fractions_z002": 18, "fractions_z001": 18, "fractions_z0002": 18, "214274644851685": 18, "ax": 18, "subplot": 18, "nrow": 18, "ncol": 18, "m_": 18, "fontsiz": 18, "set_titl": 18, "set_yscal": 18, "save_loop": 18, "mass_loss_m": 18, "png": 18, "ep": 18, "bbox_inch": 18, "tight": 18, "verbose_print": [19, 32], "iter": 19, "context": 19, "manag": [19, 22, 39], "__enter__": 19, "stdout": [19, 21, 37], "__exit__": 19, "releas": [19, 22, 39], "call_binary_c_config": 19, "catchtim": 19, "spent": 19, "clock": 19, "exc_typ": 19, "exc_val": 19, "exc_tb": 19, "measur": 19, "check_if_in_shel": 19, "command_string_from_list": 19, "quot": 19, "conv_time_unit": 19, "hour": 19, "magnitud": 19, "convert_byt": 19, "size": [19, 21, 28], "convfloat": 19, "scalar": 19, "create_arg_str": 19, "filter_valu": 19, "create_hdf5": 19, "hdf5": 19, "hdf5file": 19, "conveni": [19, 22, 39], "example_head": 19, "94": 19, "defaultdict": 19, "rethink": 19, "filter_arg_dict": 19, "format_numb": 19, "scientif": 19, "notat": 19, "trail": [19, 37], "get_ansi_colour": 19, "color": [19, 24], "get_arg_kei": 19, "sinc": [19, 24, 31], "param_nam": 19, "fail_sil": 19, "did": [19, 22, 39], "compon": [19, 24], "categoris": 19, "silent": 19, "get_siz": 19, "seen": 19, "github": [19, 30], "bosswissam": 19, "pysiz": 19, "get_usernam": 19, "usernam": 19, "spawn": 19, "hostnam": [19, 20], "is_capsul": 19, "tell": [19, 25], "isfloat": 19, "isint": 19, "load_logfil": 19, "make_build_text": 19, "mem_us": 19, "now_object": 19, "nospac": 19, "date": [19, 20, 21], "d_": 19, "output_lin": 19, "receiv": 19, "dist": 19, "quotewrap": 19, "remove_fil": 19, "child_dir": 19, "child": 19, "full_path": 19, "timedelta": 19, "delta": [19, 37], "length": 19, "trem": 19, "dn": [19, 31], "differenti": 19, "messag": [19, 20], "minimal_verbos": 19, "newlin": [19, 21, 30, 32], "charact": [19, 21, 30], "x0d": [19, 21], "carriag": [19, 21], "write_binary_c_parameter_descriptions_to_rst_fil": 19, "rst": [19, 33], "restructuredtext": 19, "save_snapshot": [20, 21, 30], "distinct": 20, "init": [20, 22, 39], "spread": 20, "privat": [20, 22], "nice": [20, 24], "unload": 20, "custom_logging_info": 20, "grid_cod": 20, "mixin": 20, "portal": 20, "decor": 20, "staticmethod": 20, "classmethod": 20, "realpython": 20, "static": 20, "demystifi": 20, "cach": [20, 21, 22, 23, 27, 33, 37], "grid_log": [20, 22, 23], "grid_options_default": [20, 22, 23, 28], "hpc": [20, 21, 22, 23, 29, 36], "moe_di_stefano_2017": [20, 22, 23], "spacing_funct": [20, 22, 23], "reus": 20, "_pre_run_setup": 20, "relev": 20, "clean_up_custom_logging_fil": 20, "stacktrac": 20, "sy": 20, "expand_args_by_hostnam": 20, "cmdline_arg": 20, "scan": 20, "host": [20, 22, 39], "include_population_set": 20, "all_info": 20, "flaw": 20, "rewrit": 20, "pl": 20, "population_set": 20, "return_population_set": 20, "_set": 20, "simulation_": 20, "jobid": [20, 21, 36], "job": [20, 21, 25, 29, 36], "id": [20, 21, 25, 29, 30, 31, 32, 36], "pid": 20, "hpc_jobid": [20, 25], "my_hostnam": 20, "parse_cmdlin": 20, "return_all_info": 20, "return_binary_c_default": 20, "was_kil": 20, "meant": 21, "c_auto_log": 21, "headlin": 21, "hpc_force_join": 21, "slurm": [21, 22, 23, 25], "condor": [21, 22, 23, 25], "hpc_rebuild_joinlist": [21, 25], "joinlist": [21, 25], "moe2017_opt": 21, "cache_dir": [21, 37], "combine_ensemble_with_thread_join": 21, "ensemble_output_": 21, "thread_id": 21, "command_lin": 21, "htcondor": 21, "launch": [21, 29, 36], "condor_clusterid": [21, 29], "clusterid": [21, 29], "condor_process": [21, 29], "jobarrayindex": [21, 36], "condor_bash": 21, "bash": 21, "submit": [21, 22], "node": 21, "condor_batchnam": 21, "batchnam": 21, "appear": 21, "condor_q": 21, "condor_d": 21, "usr": 21, "condor_dir": [21, 25, 29, 36], "nf": [21, 30], "condor_env": 21, "env": [21, 24], "condor_extra_set": 21, "te": 21, "batch": 21, "overwrit": [21, 25], "condor_getenv": 21, "environ": 21, "submiss": 21, "almost": 21, "certainli": 21, "condor_initial_dir": 21, "condor_kill_sig": 21, "sigint": 21, "condor_memori": 21, "images": 21, "condor_njob": 21, "condor_postpone_join": 21, "condor_postpone_submit": 21, "tool": 21, "condor_pwd": 21, "pwd": 21, "condor_requir": 21, "condor_should_transfer_fil": 21, "ye": 21, "condor_snapshot_on_kil": 21, "snapshot": [21, 25, 30], "sigkil": 21, "condor_stream_error": 21, "stream": 21, "condor_stream_output": 21, "condor_submit": 21, "condor_univers": 21, "vanilla": 21, "condor_warn_max_memori": 21, "condor_when_to_transfer_output": 21, "on_exit_or_evict": 21, "custom_gener": 21, "do_analyt": 21, "do_dry_run": 21, "dry_run_hook": 21, "hook": 21, "dry_run_num_cor": 21, "ensemble_factor_in_probability_weighted_mass": 21, "probability_weighted_mass": 21, "multiprocess": 21, "exit_after_dry_run": 21, "exit_cod": 21, "failed_systems_threshold": 21, "failed_system": 21, "function_cach": 21, "certain": [21, 22, 39], "function_cache_ttl": 21, "function_cache_default_maxs": 21, "maxsiz": 21, "function_cache_default_typ": 21, "lrucach": 21, "lfucach": 21, "fifocach": 21, "mrucach": 21, "rrcach": 21, "ttlcach": 21, "nullcach": [21, 28], "nocach": 21, "cachetool": [21, 28], "fo": 21, "dummi": [21, 24, 31], "overhead": 21, "function_cache_funct": [21, 28], "gridcode_filenam": 21, "log_arg": 21, "log_args_dir": 21, "log_failed_system": 21, "log_failed_systems_dir": 21, "log_newlin": 21, "log_runtime_system": 21, "plan": 21, "max_queue_s": 21, "feed": 21, "modulo": 21, "multiplicity_fraction_funct": 21, "aren": [21, 31], "rhagavan": 21, "n_logging_stat": 21, "num_cores_avail": 21, "original_command_lin": 21, "original_submission_tim": 21, "original_working_diretori": 21, "Its": 21, "print_stack_on_exit": 21, "stack": 21, "trace": 21, "restore_from_snapshot_dir": 21, "restore_from_snapshot_fil": [21, 25], "return_after_dry_run": 21, "run_zero_probability_system": 21, "rungrid": 21, "save_ensemble_chunk": 21, "save_population_object": [21, 30], "skip_befor": 21, "slurm_arrai": 21, "slurm_array_max_job": 21, "concurr": 21, "slurm_bash": 21, "slurm_dat": 21, "slurm_dir": [21, 25, 29, 36], "slurm_env": 21, "slurm_extra_set": 21, "slurm_jobarrayindex": [21, 36], "slurm_jobid": [21, 36], "slurm_jobnam": 21, "slurm_memori": 21, "megabyt": 21, "512mb": 21, "slurm_njob": 21, "slurm_ntask": 21, "slurm_partit": 21, "partit": 21, "local": [21, 31], "sview": 21, "slurm_postpone_join": 21, "slurm_postpone_sbatch": 21, "sbatch": 21, "slurm_pwd": 21, "slurm_sbatch": 21, "slurm_tim": 21, "slurm_warn_max_memori": 21, "excess": 21, "mistak": 21, "1024mb": 21, "source_file_filenam": 21, "start_at": 21, "status_dir": 21, "stop_queu": 21, "symlink_latest_gridcod": 21, "diagnost": 21, "_repeat": 21, "reduct": 21, "working_diretori": 21, "multiplicity_model": 21, "log10m1": 21, "poisson": [21, 31], "map": 21, "quad": 21, "NO": 21, "multiplicity_modul": 21, "normalize_multipl": 21, "norm": 21, "b": [21, 30], "whichev": 21, "stick": 21, "predict": 21, "repres": 21, "canon": 21, "nonzero": 21, "q_high_extrapolation_method": 21, "q_low_extrapolation_method": 21, "extrapol": [21, 31], "flat": [21, 31], "linear2": 21, "plaw2": 21, "nolowq": 21, "_moe2017_json_data": 21, "distefano2017": 21, "_actually_evolve_system": 21, "_process_run_population_grid": 21, "_binary_c_config_execut": 21, "_binary_c_dir": 21, "director": 21, "_binary_c_execut": 21, "_binary_c_shared_librari": 21, "libbinary_c": 21, "_commandline_input": 21, "_count": 21, "counter": 21, "_custom_logging_shared_library_fil": 21, "_end_time_evolut": 21, "timestamp": [21, 27], "_errors_exceed": 21, "failed_system_log": 21, "_errors_found": 21, "encount": [21, 22, 39], "_evolution_type_opt": 21, "_failed_count": 21, "_failed_prob": 21, "_failed_systems_error_cod": 21, "_generate_grid_cod": 21, "_kill": 21, "_loaded_moe2017_data": 21, "_main_pid": 21, "master": [21, 22, 24, 39], "_population_id": 21, "char": 21, "hex": 21, "_probtot": 21, "_queue_don": 21, "_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, "aim": [22, 39], "jeff": [22, 39], "andrew": [22, 39], "robert": [22, 39], "student": [22, 39], "scientist": [22, 39], "who": [22, 39], "onlin": [22, 39], "older": [22, 39], "guarante": [22, 39], "development_0": [22, 39], "meet": [22, 39], "least": [22, 39], "eol": [22, 39], "root": [22, 39], "ld_library_path": [22, 39], "libgsl": [22, 39], "libmemo": [22, 39], "librinterpol": [22, 39], "library_path": [22, 39], "gsl_dir": [22, 39], "gsl": [22, 39], "dir": [22, 29, 39], "binary_c2": [22, 39], "latest": [22, 39], "virtual": [22, 39], "sh": [22, 39], "suit": [22, 39], "pythonpath": [22, 39], "download": [22, 39], "clone": [22, 39], "gitlab": [22, 39], "whenev": [22, 39], "reinstal": [22, 39], "virtualenviron": [22, 39], "person": [22, 39], "ph": [22, 39], "recent": [22, 39], "runner": [22, 39], "yml": [22, 39], "contribut": [22, 39], "development_requir": [22, 39], "hesit": [22, 39], "discuss": [22, 39], "generate_doc": [22, 39], "generate_report": [22, 39], "main_with_notebook": [22, 39], "test_notebook": [22, 39], "ve": [22, 27, 39], "dhendrik": [22, 39], "paper_joss_binarycpython": [22, 39], "submodul": [22, 39], "initialis": [22, 39], "exhaust": [22, 39], "solut": [22, 39], "mesa": [22, 39], "mesasdk_root": [22, 39], "mesasdk_init": [22, 39], "interfer": [22, 39], "throw": [22, 39], "unrecogn": [22, 39], "ftz": [22, 39], "flto": [22, 39], "due": [22, 39], "cflag": [22, 39], "avaibl": [22, 39], "1ckzg0p9": [22, 39], "egg": [22, 39], "pkg": [22, 39], "filenotfounderror": [22, 39], "errno": [22, 39], "jupyt": [22, 39], "seem": [22, 24, 33, 39], "everytim": [22, 39], "rebuilt": [22, 39], "plot_funct": [22, 23], "useful_func": [22, 23], "nucsyn": 22, "misc": 22, "sampler": 22, "visit": 22, "plot_system": 24, "loos": 24, "admittedli": 24, "customis": 24, "regardless": 24, "color_by_index": 24, "placehold": [24, 28, 29, 30], "parse_function_hr_diagram": 24, "hr": 24, "parse_function_mass": 24, "parse_function_orbit": 24, "plot_hr_diagram": 24, "show_stellar_typ": 24, "show_plot": 24, "use_astropy_valu": 24, "plot_hr_diagram_singl": 24, "radius_1": 24, "radius_2": 24, "luminosity_1": 24, "luminosity_2": 24, "teff_1": 24, "teff_2": 24, "hd": 24, "astropi": 24, "stefan": 24, "boltzman": 24, "plot_mass": 24, "pms_mass_1": 24, "pms_mass_2": 24, "quantiti": 24, "pm": 24, "mayb": 24, "plot_orbit": 24, "plot_typ": 24, "preset": 24, "mass_evolut": 24, "orbit_evolut": 24, "hr_diagram": 24, "keyword": [24, 40], "against": 24, "pick": 24, "pane": 24, "distefano": [25, 26, 31], "hpc_can_join": 25, "joinfil": 25, "joiningfil": 25, "vb": [25, 28, 30, 37], "hpc_check_requir": 25, "hpc_dir": 25, "hpc_dump_statu": 25, "hpc_get_statu": 25, "job_id": 25, "job_index": 25, "hpc_grid": 25, "makejoiningfil": 25, "hpc_task": 25, "exclud": 25, "hpc_id_filenam": 25, "hpc_id_from_dir": 25, "hpc_job": 25, "hpc_jobid_tupl": 25, "hpc_job_id_rang": 25, "hpc_job_task": 25, "hpc_job_typ": 25, "hpc_join_from_fil": 25, "newobj": 25, "hpc_join_previ": 25, "hpc_joinlist": 25, "hpc_load_joinfiles_list": 25, "hpc_make_joiningfil": 25, "error_on_overwrit": 25, "hpc_njob": 25, "error_on_overwit": 25, "issu": 25, "hpc_path": 25, "hpc_queue_stat": 25, "stat": 25, "hpc_restor": 25, "restor": 25, "_restart_dir": 25, "stage": 25, "hpc_set_statu": 25, "hpc_snapshot_filenam": 25, "hpc_statu": 25, "hpc_touch": 25, "touch": [25, 30], "distrefano": 26, "interpol": [26, 31, 37], "get_moe_di_stefano_2017_default_opt": 26, "get_moe_di_stefano_2017_default_options_descript": 26, "get_moe_di_stefano_dataset": 26, "set_moe_di_stefano_set": 26, "cpu_tim": 27, "make_analytics_dict": 27, "set_tim": 27, "elaps": 27, "lru": 28, "lru_": 28, "__delitem__": 28, "delet": [28, 34], "getter": 28, "__setitem__": 28, "setter": 28, "popitem": 28, "default_cache_dir": [28, 33], "setup_function_cach": 28, "cachetyp": 28, "function_cache_s": 28, "func": 28, "test_cach": 28, "replac": 29, "condorid": 29, "condor_check_requir": 29, "condor_grid": 29, "being": [29, 36], "condor_outfil": 29, "chunk": [29, 36], "condor_queue_stat": 29, "condor_status_fil": 29, "condorpath": 29, "get_condor_statu": 29, "correspon": [29, 36], "make_condor_dir": 29, "set_condor_statu": 29, "held": [29, 36], "io": 30, "nfs_flush_hack": 30, "opendir": 30, "closedir": 30, "complaint": 30, "unclos": 30, "scandir": 30, "nfspath": 30, "mount": 30, "compression_typ": 30, "dir_ok": 30, "load_population_object": 30, "load_snapshot": 30, "preloaded_popul": 30, "locked_clos": 30, "partner": 30, "locked_open_for_writ": 30, "unlock": 30, "lock_suffix": 30, "lock_timeout": 30, "lock_lifetim": 30, "exists_ok": 30, "fatal_open_error": 30, "mode": 30, "lockfil": 30, "flufl": 30, "file_object": 30, "lock_object": 30, "merge_popul": 30, "refpop": 30, "newpop": 30, "merge_populations_from_fil": 30, "closefd": 30, "compresslevel": 30, "population_object": 30, "confirm": 30, "gzip": 30, "pickl": 30, "compress_pickl": 30, "lucianopaz": 30, "shared_memori": 30, "set_statu": 30, "format_stat": 30, "process_": 30, "snapshot_filenam": 30, "wait_for_unlock": 30, "wait": 30, "write_ensembl": 30, "recognis": 30, "bz2": 30, "msgpack": 30, "support": 30, "grid_ensemble_result": [30, 35], "stackoverflow": 31, "28060251": 31, "hi": 31, "gonna": 31, "mathieu": 31, "sfh": 31, "redshift": 31, "arenou2010_binary_fract": 31, "c2": 31, "sp": 31, "opm": 31, "fa": 31, "rssd": 31, "esa": 31, "doc_fetch": 31, "php": 31, "2969346": 31, "izzard2012_period_distribut": 31, "log10pmin": 31, "duquennoi": 31, "mayor": 31, "1991": 31, "spectral": 31, "15msun": 31, "sana": 31, "3msun": 31, "dlogp": 31, "raghavan": 31, "gaussian": [31, 37], "log10p": 31, "logp": 31, "m0": 31, "p1": 31, "p2": 31, "p3": 31, "moe_di_stefano_2017_multiplicity_fract": 31, "6e1": 31, "moe_di_stefano_2017_pdf": 31, "m3": 31, "m4": 31, "ecc2": 31, "ecc3": 31, "80": [31, 37], "build_q_tabl": 31, "independ": 31, "q_min": 31, "renormalis": 31, "lowest": 31, "qmin": 31, "goal": 31, "boundari": 31, "calc_p_integr": 31, "min_logp": 31, "max_logp": 31, "integrals_str": 31, "interpolator_nam": 31, "mass_str": 31, "min_per": 31, "calc_e_integr": 31, "period_str": 31, "calc_total_probden": 31, "prob_dict": 31, "calculate_constants_three_part_powerlaw": 31, "law_const": 31, "slope": 31, "const_distribut": 31, "min_bound": [31, 37], "max_bound": [31, 37], "val": 31, "cosmic_sfh_madau_dickinson2014": 31, "cosmic": 31, "madau": 31, "dickonson": 31, "1403": 31, "0007": 31, "mega": 31, "parsec": 31, "duquennoy1991": 31, "fill_data": 31, "sample_valu": 31, "data_dict": 31, "logmass": [31, 37], "logperiod": 31, "dstep": 31, "uniform": 31, "sigma": [31, 37], "gmin": 31, "gmax": 31, "deviat": [31, 37], "gaussian_func": 31, "gaussian_normalizing_const": 31, "get_integration_constant_q": 31, "q_interpol": 31, "tmp_tabl": 31, "qdata": 31, "get_max_multipl": 31, "multiplicity_arrai": 31, "imf_chabrier2003": 31, "chabrier": 31, "pasp": 31, "795": 31, "imf_scalo1986": 31, "scalo": 31, "80msol": 31, "70": 31, "imf_scalo1998": 31, "imf_tinsley1980": 31, "tinslei": 31, "1980": 31, "interpolate_in_mass_izzard2012": 31, "ktg93": 31, "linear_extrapolation_q": 31, "qs": 31, "qlimit": 31, "end_index": 31, "merge_multipl": 31, "result_arrai": 31, "max_multipl": 31, "fold": 31, "lambda_v": 31, "nmax": 31, "improv": [31, 37], "powerlaw": 31, "min_val": 31, "max_val": 31, "powerlaw_const": 31, "powerlaw_constant_nocach": 31, "powerlaw_extrapolation_q": 31, "raghavan2010_binary_fract": 31, "zsolar": 31, "long_spectral_typ": 31, "jaschek": 31, "amin": 31, "amax": 31, "x0": 31, "x1": 31, "ln": 31, "dp": 31, "p0": 31, "generalis": 31, "vb1print": 32, "system_numb": 32, "system_dict": 32, "ey": 32, "unix": 32, "epoch": 32, "vb2print": 32, "cmdline_str": 32, "grid_options_defaults_dict": 33, "grid_options_help": 33, "grid_options_description_check": 33, "write_grid_options_to_rst_fil": 33, "With": 33, "hack": 33, "reconsid": 33, "unnecessari": 33, "get_grid_options_defaults_dict": 33, "get_grid_options_descript": 33, "print_info": 33, "undescrib": 33, "And": [33, 42], "print_option_descript": 33, "filehandl": 33, "extra_text": 33, "delete_grid_vari": 34, "oldnam": 34, "newnam": 34, "grid_variable_numb": 34, "add_ensemble_metadata": 35, "combined_output_dict": 35, "add_system_metadata": 35, "get_slurm_statu": 36, "make_slurm_dir": 36, "set_slurm_statu": 36, "slurmid": 36, "slurm_check_requir": 36, "slurm_grid": 36, "slurm_outfil": 36, "slurm_queue_stat": 36, "xxx": 36, "slurm_status_fil": 36, "slurmpath": 36, "const_dt": 37, "cachedir": 37, "usecach": 37, "logspac": 37, "dlogt": 37, "tmin": 37, "tmax": 37, "mindm": 37, "1msun": 37, "0msun": 37, "comma": 37, "thu": 37, "maxdm": 37, "similar": 37, "fsampl": 37, "shannon": 37, "showtabl": 37, "showlist": 37, "log10mass": 37, "const_dt_cach": 37, "add_grid_valu": 37, "1gyr": 37, "suitabl": 37, "const_int": 37, "segment": 37, "linspac": 37, "const_rang": 37, "gaussian_zoom": 37, "zoom_mean": 37, "zoom_dispers": 37, "zoom_magnitud": 37, "depth": 37, "zoom_magntiud": 37, "peak_normalized_gaussian_func": 37, "hardli": 38, "minimum_stellar_mass": 38, "parse_binary_c_version_info": 38, "version_info_str": 38, "atom": 38, "dtlimit": 38, "git_branch": 38, "git_build": 38, "email": 38, "analys": 40, "example_log": 40, "fancy_parsing_funct": 40, "notifi": 40, "unknown": 40, "centralis": 40, "abstract": 40, "stellar_type_dict": 41, "stellar_type_dict_short": 41, "abbrevi": 41, "collect": 42, "binary_star": 42, "calc_period_from_sep": 42, "invers": 42, "zams_collis": 42, "collid": 42, "roche_lob": 42, "ragb": 42, "minimum_period_for_rlof": 42, "minimum_separation_for_rlof": 42, "maximum_mass_ratio_for_rlof": 42, "upon": 42, "r_l": 42, "1983": 42, "mass_accretor": 42, "mass_donor": 42, "rochelob": 42, "vice": 42, "versa": 42, "1996": 42, "mnra": 42, "281": 42, "257": 42, "pericent": 42}, "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, "", "BinarycDecoder"], [3, 2, 1, "", "BinarycEncoder"], [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.BinarycDecoder": [[3, 3, 1, "", "decode"]], "binarycpython.utils.ensemble.BinarycEncoder": [[3, 3, 1, "", "default"]], "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, "", "command_string_from_list"], [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, "", "hostnames"], [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, "", "quotewrap"], [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, "", "expand_args_by_hostname"], [20, 3, 1, "", "export_all_info"], [20, 3, 1, "", "jobID"], [20, 3, 1, "", "my_hostnames"], [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_id_range"], [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"]]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "method", "Python method"]}, "titleterms": {"binary_c": [0, 7, 9, 11, 12, 15, 18, 22, 39], "paramet": [0, 11], "section": 0, "star": [0, 6, 15], "binari": [0, 5, 6, 13, 15, 18], "nucsyn": 0, "output": [0, 6, 8, 13, 14, 15], "input": 0, "i": 0, "o": 0, "algorithm": 0, "misc": 0, "custom_logging_funct": 1, "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], "dict": 2, "ensembl": [3, 10], "exampl": [4, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 22, 39], "notebook": [4, 18], "content": [4, 22], "us": [5, 6, 7, 8, 9, 13, 14, 16, 18, 22, 39], "case": [5, 6, 8, 13, 14, 16], "black": 5, "hole": 5, "system": [5, 12, 16], "hertzsprung": 6, "russel": 6, "diagram": 6, "set": [6, 7, 8, 13, 14, 15], "up": [6, 7, 8, 13, 14, 15], "popul": [6, 8, 9, 12, 13, 14, 15, 20, 21, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "object": [6, 8, 9, 12, 13, 14, 15], "stellar": [6, 8, 13, 14], "grid": [6, 8, 13, 14, 15, 21], "log": [6, 8, 9, 13, 14, 15, 18], "handl": [6, 8, 10, 13, 14, 15], "evolv": [6, 8, 13, 14, 15], "tutori": [7, 9, 10, 11, 12, 15], "api": [7, 9, 12, 16, 18], "function": [7, 11, 12, 13, 14, 15, 16, 18, 19], "python": [7, 9, 11, 12, 15, 18, 22, 39], "usag": [7, 9, 22, 39], "free": 7, "store": 7, "get": [7, 11], "inform": [7, 11], "from": [7, 9, 22, 39], "common": 8, "envelop": 8, "evolut": [8, 9], "custom": [9, 18], "routin": 9, "when": 9, "run": [9, 12, 15, 18, 22, 39], "directli": 9, "string": 9, "compact": 9, "mass": [9, 14], "supernova": 9, "gener": [10, 22, 39], "data": 10, "how": 10, "extra": 11, "featur": 11, "about": 11, "build": [11, 22, 39], "pars": 11, "dictionari": 11, "modif": 11, "individu": 12, "singl": [12, 15], "run_system_wrapp": [12, 40], "via": [12, 22, 39], "zero": [13, 14], "ag": [13, 14], "luminos": [13, 14], "ad": [14, 15], "variabl": [14, 15, 22, 39], "zam": 14, "distribut": 14, "initi": 14, "A": 14, "better": 14, "sampl": 14, "noteworthi": 15, "full": 15, "script": 15, "solar": 16, "basic": 17, "core": 18, "wrapper": 18, "run_binari": 18, "run_binary_with_log": 18, "line": 18, "util": 18, "run_system": 18, "other": 18, "class": [20, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "code": [21, 22, 23, 39], "option": 21, "public": 21, "moe": 21, "di": 21, "stefano": 21, "sampler": 21, "privat": 21, "welcom": 22, "s": 22, "document": [22, 39], "instal": [22, 39], "requir": [22, 39], "environ": [22, 39], "instruct": [22, 39], "pip": [22, 39], "sourc": [22, 39], "after": [22, 39], "without": [22, 39], "note": [22, 39], "develop": [22, 39], "docstr": [22, 39], "test": [22, 39], "coverag": [22, 39], "report": [22, 39], "unit": [22, 39], "pull": [22, 39], "joss": [22, 39], "paper": [22, 39], "articl": [22, 39], "repo": [22, 39], "faq": [22, 39], "issu": [22, 39], "indic": 22, "tabl": 22, "binarycpython": 23, "plot_funct": 24, "extens": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "hpc": 25, "moe_di_stefano_2017": 26, "analyt": 27, "cach": 28, "condor": 29, "dataio": 30, "distribution_funct": 31, "grid_log": 32, "grid_options_default": 33, "gridcod": 34, "metadata": 35, "slurm": 36, "spacing_funct": 37, "version_info": 38, "stellar_typ": 41, "useful_func": 42}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "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": 4, "sphinx": 56}})
\ No newline at end of file
diff --git a/docs/build/html/stellar_types.html b/docs/build/html/stellar_types.html
index b34277ea9..da02979c7 100644
--- a/docs/build/html/stellar_types.html
+++ b/docs/build/html/stellar_types.html
@@ -154,9 +154,9 @@
     provided by <a href="https://readthedocs.org">Read the Docs</a>.
   
 <br><br>
-Generated on binarycpython git branch: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/build/html/useful_funcs.html b/docs/build/html/useful_funcs.html
index 30b97845d..d9fd24355 100644
--- a/docs/build/html/useful_funcs.html
+++ b/docs/build/html/useful_funcs.html
@@ -351,9 +351,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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">git url</a>.
 
 
 
diff --git a/docs/source/_templates/footer.html b/docs/source/_templates/footer.html
index 8ffdad5e6..e301e0147 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: master git revision abda8c4f6d329da2e0d918786588c29f46dff1c5 url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/master">git url</a>.
+Generated on binarycpython git branch: development_0.9.5/2.2.2 git revision 8d3c9c766e1b492a7b2b486c5acd2680bdff3d8c url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_0.9.5/2.2.2">git url</a>.
 <br><br>
-Using binary_c with bit branch branch_david: git revision: "6118:20220617:8463fa650" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.
+Using binary_c with bit branch clean_master: git revision: "6302:20220825:04c096f7a" url: <a href="https://gitlab.surrey.ac.uk/ri0005/binary_c/-/tree/clean_master">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 9d00a7aca..463c9af01 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**: 6118:20220617:8463fa650	**Built on**: Jun 17 2022 23:20:34
+	**binary_c git branch**: clean_master	**binary_c git revision**: 6302:20220825:04c096f7a	**Built on**: Aug 25 2022 11:34:43
 
 
 Section: stars
@@ -250,11 +250,6 @@ Section: stars
 | **Parameter input type**: True|False
 | **Default value**: False
 
-| **Parameter**: custom_timeout_time
-| **Description**: Custom timeout time. Requires compilation with DAVID_CUSTOM_TIMEOUT
-| **Parameter input type**: Float
-| **Default value**: 100
-
 | **Parameter**: evolution_splitting
 | **Description**: If True, turn on splitting of an evolutionary run if splitpoint (e.g. supernova) occurs.
 | **Parameter input type**: True|False
@@ -293,10 +288,10 @@ Section: stars
 | **Macros**: ['OPACITY_ALGORITHM_PACZYNSKI = 0', 'OPACITY_ALGORITHM_FERGUSON_OPAL = 1', 'OPACITY_ALGORITHM_STARS = 2']
 
 | **Parameter**: wind_mass_loss
-| **Description**: Defines the algorithm used for stellar winds. 0 = none, 1 = Hurley et al. (2002), 2 = Schneider (2018), 3 = Schneider + Sander and Wink (2020) for helium stars, 4 = Schneider + Hurley for LBV mass loss
+| **Description**: Defines the algorithm used for stellar winds. 0 = none, 1 = Hurley et al. (2002), 2 = Schneider (2018).
 | **Parameter input type**: Unsigned integer
 | **Default value**: 3
-| **Macros**: ['WIND_ALGORITHM_NONE = 0', 'WIND_ALGORITHM_HURLEY2002 = 1', 'WIND_ALGORITHM_SCHNEIDER2018 = 2', 'WIND_ALGORITHM_BINARY_C_2020 = 3', 'WIND_ALGORITHM_HENDRIKS_2022 = 4']
+| **Macros**: ['WIND_ALGORITHM_NONE = 0', 'WIND_ALGORITHM_HURLEY2002 = 1', 'WIND_ALGORITHM_SCHNEIDER2018 = 2', 'WIND_ALGORITHM_BINARY_C_2020 = 3', 'WIND_ALGORITHM_BINARY_C_2022 = 4']
 | **Extra**: 0
 
 | **Parameter**: gbwind
@@ -478,37 +473,6 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['BH_HURLEY2002 = 0', 'BH_BELCZYNSKI = 1', 'BH_SPERA2015 = 2', 'BH_FRYER12_DELAYED = 3', 'BH_FRYER12_RAPID = 4', 'BH_FRYER12_STARTRACK = 5']
 
-| **Parameter**: PPISN_prescription
-| **Description**: (Pulsational) Pair-Instability Supernova prescription: Relates initial helium core mass of star to whether the star undergoes PPISN or PISN. Requires PPISN flag to be True (see binary_c_parameters.h). 0=no ppisn, 1=Farmer et al 2019. 2=Hendriks et al 21 (in prep), which is different fit based on the same data as Farmer et al 2019
-| **Parameter input type**: Integer
-| **Default value**: 1
-| **Macros**: ['PPISN_NONE = 0', 'PPISN_FARMER19 = 1', 'PPISN_NEW_FIT_21 = 2']
-| **Extra**: Ignore
-
-| **Parameter**: PPISN_additional_massloss
-| **Description**: (Pulsational) Pair-Instability Supernova additional massloss (on top of the result of the prescription). Value currently is not required to be positive
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: PPISN_core_mass_range_shift
-| **Description**: (Pulsational) Pair-Instability Supernova CO core mass range shift: Value by which we shift the range of CO core mass values that undergo PPISN. This is taken into account in the fit that calculates the mass removal. Negative number is shifting the range to lower masses, positive to higher masses.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: PPISN_massloss_multiplier
-| **Description**: (Pulsational) Pair-Instability Supernova CO massloss multiplier: Value by which the (P)PISN massloss is multiplied. Currently only works with the new prescription. THe additional mass loss is not affected multiplied by this.
-| **Parameter input type**: Float
-| **Default value**: 1
-| **Extra**: Ignore
-
-| **Parameter**: use_LWN_fallback
-| **Description**: Flag whether to use the Nazehdin-Lovegrove-Woosley hydrogen envelope ejection at failed supernova.
-| **Parameter input type**: Integer
-| **Default value**: 1
-| **Extra**: Ignore
-
 | **Parameter**: sn_kick_distribution_II
 | **Description**: Set the distribution of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Integer
@@ -536,7 +500,7 @@ Section: stars
 | **Parameter**: sn_kick_distribution_GRB_COLLAPSAR
 | **Description**: Set the distribution of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Integer
-| **Default value**: 0
+| **Default value**: 1
 | **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
 
 | **Parameter**: sn_kick_distribution_TZ
@@ -575,24 +539,6 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
 
-| **Parameter**: sn_kick_distribution_PPISN
-| **Description**: Set the distribution of speeds applied to PPISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
-
-| **Parameter**: sn_kick_distribution_PISN
-| **Description**: Set the distribution of speeds applied to PISN supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
-
-| **Parameter**: sn_kick_distribution_PHDIS
-| **Description**: Set the distribution of speeds applied to PHDIS supernovae. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Macros**: ['KICK_VELOCITY_FIXED = 0', 'KICK_VELOCITY_MAXWELLIAN = 1', 'KICK_VELOCITY_CUSTOM = 2']
-
 | **Parameter**: sn_kick_dispersion_II
 | **Description**: Set the dispersion of speeds applied to kick type II core collapse supernova systems. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Float
@@ -616,7 +562,7 @@ Section: stars
 | **Parameter**: sn_kick_dispersion_GRB_COLLAPSAR
 | **Description**: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes after a type Ib/c core-collapse supernova which is also a collapsar. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
 | **Parameter input type**: Float
-| **Default value**: 0
+| **Default value**: 190
 
 | **Parameter**: sn_kick_dispersion_TZ
 | **Description**: Set the dispersion of speeds applied to kick newly-born neutron stars and black holes at the death of a Thorne-Zytkow object. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
@@ -648,21 +594,6 @@ Section: stars
 | **Parameter input type**: Float
 | **Default value**: 0
 
-| **Parameter**: sn_kick_dispersion_PPISN
-| **Description**: Set the dispersion of speeds applied to the survivor of a PPISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Float
-| **Default value**: 0
-
-| **Parameter**: sn_kick_dispersion_PISN
-| **Description**: Set the dispersion of speeds applied to the survivor of a PISN supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Float
-| **Default value**: 0
-
-| **Parameter**: sn_kick_dispersion_PHDIS
-| **Description**: Set the dispersion of speeds applied to the survivor of a PHDIS supernova. 0=fixed, 1=maxwellian (hurley/BSE), 2=custom function (see monte_carlo_kicks.c).
-| **Parameter input type**: Float
-| **Default value**: 0
-
 | **Parameter**: sn_kick_companion_IA_He
 | **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the, kick on the companion when a Ia He supernova occurs. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
 | **Parameter input type**: Float
@@ -783,24 +714,6 @@ Section: stars
 | **Default value**: 0
 | **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
 
-| **Parameter**: sn_kick_companion_PPISN
-| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PPISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
-
-| **Parameter**: sn_kick_companion_PISN
-| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PISN supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
-
-| **Parameter**: sn_kick_companion_PHDIS
-| **Description**: Set the speed (if >=0) of, or the algothim (if <0) used to calculate the kick on the companion, if it survives, in a PHDIS supernova. 0 = none, 1 = Liu+2015, 2 = Wheeler+ 1975.
-| **Parameter input type**: Float
-| **Default value**: 0
-| **Macros**: ['SN_IMPULSE_NONE = 0', 'SN_IMPULSE_LIU2015 = 1', 'SN_IMPULSE_WHEELER1975 = 2']
-
 | **Parameter**: wd_sigma
 | **Description**: Set the speed at which white dwarfs are kicked when they form, in km/s. Default is zero (i.e. no kick). Requires WD_KICKS.
 | **Parameter input type**: Float
@@ -861,22 +774,22 @@ Section: stars
 | **Parameter**: delta_mcmin
 | **Description**: A parameter to reduce the minimum core mass for third dredge up to occur on the TPAGB. As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lambda_min
 | **Description**: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min>0 implies that, once Mc>Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars. See also lambda_multiplier.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lambda_multiplier
 | **Description**: A parameter to increase the efficiency of third dredge up on the TPAGB. The efficiency is lambda * lambda_mult, and setting lambda_min>0 implies that, once Mc>Mcmin (see delta_mcmin) lambda=Max(lambda(fit to Karakas), lambda_min). As used by Izzard and Tout (2004) to increase the amount of dredge up, hence carbon, in Magellanic cloud stars.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: minimum_envelope_mass_for_third_dredgeup
 | **Description**: The minimum envelope mass for third dredge up on the TPAGB. Early, solar metallicity models by Straniero et al suggested 0.5Msun is typical. However, circumstantial evidence (Izzard et al 2009) as well as newer models by Stancliffe and Karakas suggest that at low metallicity a value nearer zero is more appropriate.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0.5
 
 | **Parameter**: mass_of_pmz
 | **Description**: The mass in the partial mixing zone of a TPAGB star, using the Karakas 2012 tables. Ask Carlo Abate for more details, or see the series of papers Abate et al 2012, 2013, 2014. Requires NUCSYN and USE_TABULAR_INTERSHELL_ABUNDANCES_KARAKAS_2012.
@@ -886,12 +799,12 @@ Section: stars
 | **Parameter**: c13_eff
 | **Description**: The "efficiency" of partial mixing in a TPAGB star intershell region, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: mc13_pocket_multiplier
 | **Description**: Multiplies the mass in the partial mixing zone of a TPAGB star, when using the s-process tables of Gallino, Busso, Lugaro et al. as provided by Maria Lugaro for the Izzard et al. 2009 paper. Requires NUCSYN and NUCSYN_S_PROCESS.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: tides_convective_damping
 | **Description**: Tidal convective damping algorithm. 0=TIDES_HURLEY2002 Zahn 197x timescales + Hut, as in Hurley et al (2002), 1 = TIDES_ZAHN1989: Zahn 1989 lambdas + Hut.
@@ -913,7 +826,7 @@ Section: stars
 | **Parameter**: hbbtfac
 | **Description**: A parameter to modulate the temperature at the base of the hot-bottom burning zone in TPAGB stars. (Works only if NUCSYN is defined)
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: wind_multiplier_%d
 | **Description**: Wind multiplier for the stellar type specified by the intger %d. By default these are all 1.0.
@@ -980,12 +893,24 @@ Section: stars
 | **Description**: Algorithm used to calculate the amount of mass retained during a nova explosion. 0=use nova_retention_fraction. (other methods pending)
 | **Parameter input type**: Integer
 | **Default value**: 0
-| **Macros**: ['NOVA_RETENTION_ALGORITHM_CONSTANT = 0', 'NOVA_RETENTION_ALGORITHM_CLAEYS2014 = 1', 'NOVA_RETENTION_ALGORITHM_HILLMAN2015 = 2']
+| **Macros**: ['NOVA_RETENTION_ALGORITHM_CONSTANT = 0', 'NOVA_RETENTION_ALGORITHM_CLAEYS2014 = 1', 'NOVA_RETENTION_ALGORITHM_HILLMAN2015 = 2', 'NOVA_RETENTION_ALGORITHM_WANGWU = 3']
+
+| **Parameter**: nova_yield_CO_algorithm
+| **Description**: Algorithm used to calculate the yields of COWD novae. Current options: NOVA_YIELD_CO_ALGOTHIM_JOSE_HERNANZ_1998 (0).
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['NOVA_YIELD_CO_ALGORITHM_JOSE_HERNANZ_1998 = 0']
+
+| **Parameter**: nova_yield_ONe_algorithm
+| **Description**: Algorithm used to calculate the yields of ONeWD novae. Current options: NOVA_YIELD_ONe_ALGOTHIM_JOSE_HERNANZ_1998 (0), NOVA_YIELD_ONe_ALGORITHM_JOSE2022 (1).
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['NOVA_YIELD_ONe_ALGORITHM_JOSE_HERNANZ_1998 = 0', 'NOVA_YIELD_ONe_ALGORITHM_JOSE_2022 = 1']
 
 | **Parameter**: MINT_metallicity
 | **Description**: This sets the metallicity for MINT. It is ignored if set to -1.0, the default, in which case the normal metallicity parameter is used.
 | **Parameter input type**: Float
-| **Default value**: -1
+| **Default value**: NULL
 
 | **Parameter**: gaia_Teff_binwidth
 | **Description**: log10(Effective temperature) bin width used to make Gaia-like HRDs
@@ -1012,25 +937,25 @@ Section: stars
 | **Parameter**: AGB_core_algorithm
 | **Description**: Algorithm to use for calculating AGB core masses. 0=Hurley et al. 2002 if no NUCSYN, Karakas 2002 if NUCSYN is defined; 1=Hurley et al. 2002 (overshooting models); 1=Karakas 2002 (non-overshooting models).
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_CORE_ALGORITHM_DEFAULT = 0', 'AGB_CORE_ALGORITHM_HURLEY = 1', 'AGB_CORE_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_radius_algorithm
 | **Description**: Algorithm to use for calculating radii on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_RADIUS_ALGORITHM_DEFAULT = 0', 'AGB_RADIUS_ALGORITHM_HURLEY = 1', 'AGB_RADIUS_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_luminosity_algorithm
 | **Description**: Algorithm to use for calculating luminosities on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_LUMINOSITY_ALGORITHM_DEFAULT = 0', 'AGB_LUMINOSITY_ALGORITHM_HURLEY = 1', 'AGB_LUMINOSITY_ALGORITHM_KARAKAS = 2']
 
 | **Parameter**: AGB_3dup_algorithm
 | **Description**: Algorithm to use for calculating third dredge up efficiency on the TPAGB.
 | **Parameter input type**: Integer
-| **Default value**: 1
+| **Default value**: 2
 | **Macros**: ['AGB_THIRD_DREDGE_UP_ALGORITHM_DEFAULT = 0', 'AGB_THIRD_DREDGE_UP_ALGORITHM_HURLEY = 1', 'AGB_THIRD_DREDGE_UP_ALGORITHM_KARAKAS = 2', 'AGB_THIRD_DREDGE_UP_ALGORITHM_STANCLIFFE = 3']
 
 | **Parameter**: overspin_algorithm
@@ -1170,6 +1095,16 @@ Section: stars
 | **Parameter input type**: True|False
 | **Default value**: False
 
+| **Parameter**: adjust_structure_from_mass_changes
+| **Description**: If True, adjust L and R based on changes in M on the previous thermal timescale. (Currently experimental hence defaults to FALSE)
+| **Parameter input type**: True|False
+| **Default value**: NULL
+
+| **Parameter**: save_mass_history_n_thermal
+| **Description**: Number of thermal timesteps of mass change history to be saved (4).
+| **Parameter input type**: Float
+| **Default value**: NULL
+
 | **Parameter**: degenerate_core_merger_nucsyn
 | **Description**: If TRUE, assume that in a degnerate core merger, energy is generated from nucleosynthesis of the whole core, and that this can disrupt the core. The BSE algorithm (Hurley et al. 2002) assumes this to be TRUE, but binary_c assumes FALSE by default. (FALSE)
 | **Parameter input type**: True|False
@@ -1183,7 +1118,7 @@ Section: stars
 | **Parameter**: degenerate_core_merger_dredgeup_fraction
 | **Description**: If non-zero, mix this fraction of the degenerate core during a merger.(0.0).
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 Section: binary
 ---------------
@@ -1522,23 +1457,45 @@ Section: binary
 | **Description**: Algorithm to be used when merging two white dwarfs. 0 = Hurley et al. (2002), 1 = Perets+ (2019), 2 = Chen+ (2016, todo) 
 | **Parameter input type**: Integer
 | **Default value**: 0
-| **Macros**: ['WDWD_MERGER_ALGORITHM_BSE = 0', 'WDWD_MERGER_ALGORITHM_PERETS2019 = 1', 'WDWD_MERGER_ALGORITHM_CHEN2016 = 2']
+| **Macros**: ['WDWD_MERGER_ALGORITHM_BSE = 0', 'WDWD_MERGER_ALGORITHM_PERETS2019 = 1', 'WDWD_MERGER_ALGORITHM_CHEN2016 = 2', 'WDWD_MERGER_ALGORITHM_SATO2016 = 3', 'WDWD_MERGER_ALGORITHM_HYBRID_PERETS2019_SATO2016 = 4', 'WDWD_MERGER_ALGORITHM_RUITER2013 = 5']
+
+| **Parameter**: eta_violent_WDWD_merger
+| **Description**: energy factor used to calculate q_crit for WDWD mergers that are "violent". Default = 0.75 (Ruiter 2013).
+| **Parameter input type**: Float
+| **Default value**: 0.75
+
+| **Parameter**: COWD_COWD_explode_above_mass
+| **Description**: COWD-COWD mergers above this mass trigger a SNIa.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: HeWD_COWD_explode_above_mass
+| **Description**: HeWD-COWD mergers above this mass trigger a SNIa.
+| **Parameter input type**: Float
+| **Default value**: 0
+
+| **Parameter**: COWD_to_ONeWD_accretion_rate
+| **Description**: Accretion rate above which COWDs are converted to ONeWDs, in Msun/yr. A typical value is 2.05e-6 (Wang et al. 2017).  Ignored if 0 (default 0).
+| **Parameter input type**: Float
+| **Default value**: 2.05e-06
 
 | **Parameter**: type_Ia_MCh_supernova_algorithm
 | **Description**: Algorithm to be used when calculating type Ia yields from Chandrasekhar-mass exploders. 0 = DD7 (Iwamoto 1999), 1 = Seitenzahl 2013 3D hydro yields (you must also set Seitenzahl2013_model) 
 | **Parameter input type**: Integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2', 'TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3']
 
 | **Parameter**: Seitenzahl2013_model
 | **Description**: Which of Seitenzahl et al. 2013's models to use? One of N1,N3,N5,N10,N20,N40,N100L,N100,N100H,N150,N200,N300C,N1600,N1600C,N100_Z0.5,N100_Z0.1,N100_Z0.01 (defaults to N100).
 | **Parameter input type**: String
-| **Default value**: NULL
+| **Default value**: N100
 | **Extra**: N1
 
 | **Parameter**: type_Ia_sub_MCh_supernova_algorithm
 | **Description**: Algorithm to be used when calculating type Ia yields from sub-Chandrasekhar-mass exploders. (Currently unused.)
 | **Parameter input type**: Integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2', 'TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3']
 
 | **Parameter**: max_HeWD_mass
 | **Description**: The maximum mass a HeWD can have before it ignites helium (0.7).
@@ -1546,9 +1503,31 @@ Section: binary
 | **Default value**: 0.7
 
 | **Parameter**: merger_mass_loss_fraction
-| **Description**: Fraction of the total mass which is lost when stars merge.
+| **Description**: Fraction of the total mass which is lost when stars merge. Note: if merger_mass_loss_fraction_by_stellar_type_<n> is set, where <n> is the stellar type, it is used in place of the value of merger_mass_loss_fraction. Can be a positive number, zero, or an algorithm from: MERGER_MASS_LOSS_FRACTION_GLEBBEEK_2013.
 | **Parameter input type**: Float
+| **Default value**: 0.1
+| **Macros**: ['MERGER_MASS_LOSS_FRACTION_NONE = 0', 'MERGER_MASS_LOSS_FRACTION_GLEBBEEK2013 = -1', 'MERGER_MASS_LOSS_FRACTION_UNUSED = 666666']
+
+| **Parameter**: merger_mass_loss_fraction_nondegenerate
+| **Description**: Equivalent to setting the merger_mass_loss_fraction_by_stellar_type for all nuclear-burning, non-degenerate stellar types (including low-mass main-sequence stars). Note: you should not combine this with attempts to set the mass loss fractions individually.
+| **Parameter input type**: *
+| **Default value**: NULL
+
+| **Parameter**: merger_mass_loss_fraction_degenerate
+| **Description**: Equivalent to setting the merger_mass_loss_fraction_by_stellar_type for all (compact) degenerate (i.e. WD, NS) stellar types. Note: you should not combine this with attempts to set the mass loss fractions individually.
+| **Parameter input type**: *
+| **Default value**: NULL
+
+| **Parameter**: merger_mass_loss_fraction_by_stellar_type_%d
+| **Description**: Fraction of the total mass which is lost when stars merge to stellar type <n>.
+| **Parameter input type**: Float(scanf)
+| **Default value**: NULL
+
+| **Parameter**: transient_method
+| **Description**: Choose the method used to model transients. Options: TRANSIENT_METHOD_NONE, TRANSIENT_METHOD_IVANOVA2013
+| **Parameter input type**: Integer
 | **Default value**: 0
+| **Macros**: ['TRANSIENT_METHOD_NONE = 0', 'TRANSIENT_METHOD_IVANOVA2013 = 1', 'TRANSIENT_METHOD_VILLAR2017 = 2']
 
 | **Parameter**: merger_angular_momentum_factor
 | **Description**: When two stars merge the resulting single star retains a fraction of the total system angular momentum (or the critical spin angular momentum, if it is smaller) multiplied by this factor.
@@ -1586,170 +1565,195 @@ Section: binary
 | **Parameter input type**: True|False
 | **Default value**: False
 
+| **Parameter**: qcrit_nuclear_burning
+| **Description**: Set qcrit, the critical mass ratio for stable mass transfer, for all donors irrespective of donor or accretor stellar type.
+| **Parameter input type**: *
+| **Default value**: NULL
+
+| **Parameter**: qcrit_QWD
+| **Description**: Set qcrit, the critical mass ratio for stable mass transfer, for all WD donors irrespective of the accretor stellar type.
+| **Parameter input type**: *
+| **Default value**: NULL
+
 | **Parameter**: qcrit_LMMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for low-mass main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.6944
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_MS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.6
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HG
 | **Description**: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_GB
 | **Description**: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_CHeB
 | **Description**: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_EAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_TPAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeHG
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.78125
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_HeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_COWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_ONeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_NS
 | **Description**: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_BH
 | **Description**: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for non-degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
-| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2021 = -8', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2021 = -8']
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_LMMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_MS
 | **Description**: Apply critical q=Mdonor/Maccretor value for (non-low mass) main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HG
 | **Description**: Apply critical q=Mdonor/Maccretor value for Hertzsprung gap stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4.7619
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_GB
 | **Description**: Apply critical q=Mdonor/Maccretor value for first red giant branch stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_CHeB
 | **Description**: Apply critical q=Mdonor/Maccretor value for core helium burning stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_EAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for early-AGB stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_TPAGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for TP-AGB stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeMS
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium main sequence stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 3
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeHG
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium Hertzsprung gap stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 4.7619
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeGB
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium red giant stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 1.15
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_HeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for helium white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_COWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for carbon-oxygen white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_ONeWD
 | **Description**: Apply critical q=Mdonor/Maccretor value for oxygen-neon white dwarf stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_NS
 | **Description**: Apply critical q=Mdonor/Maccretor value for neutron stars to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: qcrit_degenerate_BH
 | **Description**: Apply critical q=Mdonor/Maccretor value for black holes to determine the stability of Roche-lobe overflow for degenerate accretors. See also qcrits_*, qcrits_degenerate_*.
 | **Parameter input type**: Float
 | **Default value**: 0.625
+| **Macros**: ['QCRIT_BSE = -1', 'QCRIT_HJELLMING_WEBBINK = -2', 'QCRIT_Q_NO_COMENV = -3', 'QCRIT_CHEN_HAN_TABLE = -4', 'QCRIT_CHEN_HAN_FORMULA = -5', 'QCRIT_GE2015 = -6', 'QCRIT_VOS2018 = -7', 'QCRIT_TEMMINK2022 = -8', 'QCRIT_DEFAULT = -9', 'QCRIT_GB_BSE = -1', 'QCRIT_GB_HJELLMING_WEBBINK = -2', 'QCRIT_GB_Q_NO_COMENV = -3', 'QCRIT_GB_CHEN_HAN_TABLE = -4', 'QCRIT_GB_CHEN_HAN_FORMULA = -5', 'QCRIT_GB_GE2015 = -6', 'QCRIT_GB_VOS2018 = -7', 'QCRIT_GB_TEMMINK2022 = -8', 'QCRIT_GB_DEFAULT = -1']
 
 | **Parameter**: mass_for_Hestar_Ia_upper
 | **Description**: Only helium stars below this mass can explode as SNIa. Default is zero, i.e. it never happens. See also mass_for_Hestar_Ia_lower.
@@ -1775,13 +1779,13 @@ Section: binary
 | **Description**: Use this to choose which common envelope prescription you should use. 0=Hurley et al 2002 (based on the Paczyński energy model) or 1=Nelemans and Tout (angular momentum model). See also alpha_ce, comenv_ms_accretion_mass, comenv_ms_accretion_fraction, comenv_ns_accretion_fraction, comenv_ns_accretion_mass, nelemans_gamma, nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs, lambda_ce, lambda_ionisation.
 | **Parameter input type**: Integer
 | **Default value**: 0
-| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2']
+| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2', 'COMENV_GE2022 = 3']
 
 | **Parameter**: comenv_prescription%d
 | **Description**: Use this to choose which common envelope prescription you should use. 0=Hurley et al 2002 (based on the Paczyński energy model) or 1=Nelemans and Tout (angular momentum model). See also alpha_ce, comenv_ms_accretion_mass, comenv_ms_accretion_fraction, comenv_ns_accretion_fraction, comenv_ns_accretion_mass, nelemans_gamma, nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs, lambda_ce, lambda_ionisation.
 | **Parameter input type**: Int(scanf)
 | **Default value**: NULL
-| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2']
+| **Macros**: ['COMENV_UNDEF = -1', 'COMENV_BSE = 0', 'COMENV_NELEMANS_TOUT = 1', 'COMENV_NANDEZ2016 = 2', 'COMENV_GE2022 = 3']
 
 | **Parameter**: comenv_ejection_spin_method
 | **Description**: When a common envelope is ejected, we need to decide how fast the stars are left spinning. COMENV_EJECTION_SPIN_METHOD_DO_NOTHING (0) is the default, this just leaves the stars/stellar cores spinning with the same spin rate (omega = angular velocity) with which they entered the common envelope phase. COMENV_EJECTION_SPIN_METHOD_SYCHRONIZE instead tidally synchronizes the stars with their new orbital angular velocity.
@@ -1851,6 +1855,11 @@ Section: binary
 | **Parameter input type**: Float
 | **Default value**: 1e-05
 
+| **Parameter**: dedmRLOF
+| **Description**: de/dM during RLOF (defualt 0.0)
+| **Parameter input type**: Float
+| **Default value**: 0
+
 | **Parameter**: nelemans_gamma
 | **Description**: Set the fraction of the orbital specific angular momentum that is used to eject the common envelope according to the Nelemans and Tout prescription. See also nelemans_minq, nelemans_max_frac_j_change, nelemans_n_comenvs.
 | **Parameter input type**: Float
@@ -2052,6 +2061,17 @@ Section: binary
 | **Parameter input type**: Float
 | **Default value**: NULL
 
+| **Parameter**: unstable_RLOF_can_trigger_SNIa
+| **Description**: If true, allow unstable (dynamical) RLOF to trigger a sub-MCh SNIa. (False)
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: triggered_SNIa_algorithm
+| **Description**: Algorithm to use for triggered SNeIa
+| **Parameter input type**: Integer
+| **Default value**: 0
+| **Macros**: ['TYPE_IA_SUPERNOVA_ALGORITHM_DD2 = 0', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013 = 1', 'TYPE_IA_SUPERNOVA_ALGORITHM_SEITENZAHL2013_AUTOMATIC = 2', 'TYPE_IA_SUPERNOVA_ALGORITHM_LIVNE_ARNETT_1995 = 3']
+
 | **Parameter**: minimum_separation_for_instant_RLOF
 | **Description**: If True, instead of evolving the system just report the minimum separation (on the zero-age main sequence) that would lead to instant RLOF. Used by binary_grid. See also minimum_orbital_period_for_instant_RLOF and maximum_mass_ratio_for_instant_RLOF.
 | **Parameter input type**: True|False
@@ -2079,8 +2099,18 @@ Section: binary
 | **Default value**: 0
 | **Macros**: ['RLOF_INTERPOLATION_BINARY_C = 0', 'RLOF_INTERPOLATION_BSE = 1']
 
-| **Parameter**: nova_retention_fraction
-| **Description**: The mass accreted during a nova as fraction of mass transferred
+| **Parameter**: He_nova_ELDs
+| **Description**: Enable edge-lit detonations from WDs that have He novae. (Default: False, i.e. off.)
+| **Parameter input type**: True|False
+| **Default value**: False
+
+| **Parameter**: nova_retention_fraction_H
+| **Description**: The mass accreted during a hydrogen nova as fraction of mass transferred.
+| **Parameter input type**: Float
+| **Default value**: 0.001
+
+| **Parameter**: nova_retention_fraction_He
+| **Description**: The mass accreted during a helium nova as fraction of mass transferred.
 | **Parameter input type**: Float
 | **Default value**: 0.001
 
@@ -2090,41 +2120,46 @@ Section: binary
 | **Default value**: 0
 | **Macros**: ['BETA_REVERSE_NOVAE_GEOMETRY = -1']
 
+| **Parameter**: WD_accretion_rate_algorithms
+| **Description**: Wrapper to set all WD accretion rates in one go (see WD_accretion_rate_*).
+| **Parameter input type**: *
+| **Default value**: NULL
+
 | **Parameter**: WD_accretion_rate_novae_upper_limit_hydrogen_donor
 | **Description**: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is hydrogen rich: above this rate the mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_novae_upper_limit_helium_donor
 | **Description**: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is helium rich: above this rate the mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_novae_upper_limit_other_donor
 | **Description**: Upper limit of the stable mass transfer rate onto a white dwarf that leads to novae when the donor is neither hydrogen nor helium rich: above this rate the mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor
 | **Description**: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope with a hydrogen-rich donor. Below this mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_new_giant_envelope_lower_limit_helium_donor
 | **Description**: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope with a helium-rich donor. Below this mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: WD_accretion_rate_new_giant_envelope_lower_limit_other_donor
 | **Description**: Lower limit of the mass transfer rate onto a white dwarf that leads to a the formation of a new giant envelope when the donor is neither hydrogen nor helium rich. Below this mass transfer leads to stable burning.
 | **Parameter input type**: Float
 | **Default value**: -1
-| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2']
+| **Macros**: ['DONOR_RATE_ALGORITHM_CLAEYS2014 = -1', 'DONOR_RATE_ALGORITHM_BSE = -2', 'DONOR_RATE_ALGORITHM_K2014_P2014 = -3', 'DONOR_RATE_ALGORITHM_WANGWU = -4']
 
 | **Parameter**: CRAP_parameter
 | **Description**: Tidally enhanced mass loss parameter. See Tout and Eggleton's paper on the subject. (Was the parameter bb).
@@ -2151,6 +2186,21 @@ Section: binary
 | **Parameter input type**: Float
 | **Default value**: -1
 
+| **Parameter**: eccentric_RLOF_model
+| **Description**: Chooses which model is used to handle eccentric RLOF. Default is RLOF_ECCENTRIC_AS_CIRCULAR, i.e. ignore the eccentricity. Note: requires force_corotation_of_primary_and_orbit to be FALSE.
+| **Parameter input type**: Integer
+| **Default value**: 0
+
+| **Parameter**: force_circularization_on_RLOF
+| **Description**: If True forces circularization of stars and orbit when RLOF starts, this is as in the BSE algorithm. (True)
+| **Parameter input type**: True|False
+| **Default value**: True
+
+| **Parameter**: resolve_stellar_type_changes
+| **Description**: If True forces binary_c to resolve stellar type changes to within the minimum timestep. Warning: can be slow. (True)
+| **Parameter input type**: True|False
+| **Default value**: False
+
 | **Parameter**: nonconservative_angmom_gamma
 | **Description**: Mass lost from the system (but NOT from a stellar wind) takes a fraction gamma of the orbital angular momentum with it. Set to -1 to take the specific angular momentum of the donor star. Set to -2 to take super-Eddington, nova and disk-wind angular momenta as if a wind from the accretor.
 | **Parameter input type**: Float
@@ -2179,7 +2229,7 @@ Section: nucsyn
 | **Parameter**: NeNaMgAl
 | **Description**: Enables NeNaMgAl reaction network. Requires NUCSYN and NUCSYN_HBB.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: True
 | **Extra**: Ignore
 
 | **Parameter**: nucsyn_network%d
@@ -2200,19 +2250,21 @@ Section: nucsyn
 | **Parameter**: nucsyn_metallicity
 | **Description**: This sets the metallicity of the nucleosynthesis algorithms, i.e. the amount (by mass) of matter which is not hydrogen or helium. Usually you'd just set this with the metallicity parameter, but if you want the nucleosynthesis to be outside the range of the stellar evolution algorithm (e.g. Z=0 or Z=0.04) then you need to use nucsyn_metallicity. That said, it's also outside the range of some of the nucleosynthesis algorithms as well, so you have been warned!
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: -1
 | **Macros**: ['DEFAULT_TO_METALLICITY = -1']
 
 | **Parameter**: nucsyn_solver
 | **Description**: Choose the solver used in nuclear burning. 0 = KAPS_RENTROP is a Kaps-Rentrop scheme (fast, not great for stiff problems), 1 = LSODA (Adams/BSF switcher), 2 = CVODE library (https://computing.llnl.gov/projects/sundials. Default 0. 
 | **Parameter input type**: Unsigned integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['NUCSYN_SOLVER_KAPS_RENTROP = 0', 'NUCSYN_SOLVER_LSODA = 1', 'NUCSYN_SOLVER_CVODE = 2', 'NUCSYN_SOLVER_NUMBER = 3', 'NUCSYN_SOLVER_KAPS_RENTROP = 0', 'NUCSYN_SOLVER_LSODA = 1', 'NUCSYN_SOLVER_CVODE = 2', 'NUCSYN_SOLVER_NUMBER = 3']
 | **Extra**: 0
 
 | **Parameter**: initial_abundance_mix
 | **Description**: initial abundance mixture: 0=AG89, 1=Karakas 2002, 2=Lodders 2003, 3=Asplund 2005 (not available?), 4=Garcia Berro, 5=Grevesse Noels 1993
 | **Parameter input type**: Unsigned integer
-| **Default value**: NULL
+| **Default value**: 0
+| **Macros**: ['NUCSYN_INIT_ABUND_MIX_AG89 = 0', 'NUCSYN_INIT_ABUND_MIX_KARAKAS2002 = 1', 'NUCSYN_INIT_ABUND_MIX_LODDERS2003 = 2', 'NUCSYN_INIT_ABUND_MIX_ASPLUND2005 = 3', 'NUCSYN_INIT_ABUND_MIX_GARCIABERRO = 4', 'NUCSYN_INIT_ABUND_MIX_GREVESSE_NOELS_1993 = 5', 'NUCSYN_INIT_ABUND_MIX_ASPLUND2009 = 6', 'NUCSYN_INIT_ABUND_MIX_KOBAYASHI2011_ASPLUND2009 = 7', 'NUCSYN_INIT_ABUND_MIX_LODDERS2010 = 8']
 | **Extra**: 0
 
 | **Parameter**: init_abund
@@ -2236,37 +2288,38 @@ Section: nucsyn
 | **Parameter**: init_abunds_only
 | **Description**: If True, outputs only the initial abundances, then exits.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: initial_abunds_only
 | **Description**: If True, outputs only the initial abundances, then exits.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: no_thermohaline_mixing
 | **Description**: If True, disables thermohaline mixing.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: lithium_GB_post_Heflash
 | **Description**: Sets the lithium abundances after the helium flash. Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lithium_GB_post_1DUP
 | **Description**: Sets the lithium abundance after first dredge up. Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0
 
 | **Parameter**: lithium_hbb_multiplier
 | **Description**: Multiplies the lithium abundances on the AGB during HBB (based on Karakas/Fishlock et al models).Requires NUCSYN and LITHIUM_TABLES.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: angelou_lithium_decay_function
 | **Description**: Functional form which describes Li7 decay. Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Choices are: 0 expoential (see angelou_lithium_decay_time).
 | **Parameter input type**: Integer
 | **Default value**: NULL
+| **Macros**: ['ANGELOU_LITHIUM_DECAY_FUNCTION_EXPONENTIAL = 0']
 
 | **Parameter**: angelou_lithium_LMMS_time
 | **Description**: Time at which lithium manufacture is triggered in a low-mass (convective) main sequence (Myr). Requires NUCSYN and NUCSYN_ANGELOU_LITHIUM. Ignored if 0 (for the start, use 1e-6).
@@ -2386,46 +2439,10 @@ Section: nucsyn
 Section: output
 ---------------
 
-| **Parameter**: david_logging_function
-| **Description**: Function to choose which kind of information gets logged Requires DAVID. Choices are: 0= None, >0 for custom logging functions
-| **Parameter input type**: Integer
-| **Default value**: -1
-| **Extra**: Ignore
-
-| **Parameter**: david_tzo_logging
-| **Description**: Flag to enable logging for TZO project
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_ppisn_logging
-| **Description**: Flag to enable logging for PPISN project
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_ppisn_single_logging
-| **Description**: Flag to enable logging for PPISN project capturing single star systems that underwent SN
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_rlof_episode_logging
-| **Description**: Flag to enable the RLOF episode logging
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
-| **Parameter**: david_rlof_ensemble_logging
-| **Description**: Flag to enable the RLOF ensemble logging
-| **Parameter input type**: Integer
-| **Default value**: 0
-| **Extra**: Ignore
-
 | **Parameter**: cf_amanda_log
 | **Description**: Enable logging to compare to Amanda's models.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: float_overflow_checks
 | **Description**: Turn on to enable floating-point overflow checks at the end of each timestep, if they are available. 0=off, 1=warn (stderr) on failure, 2=exit on failure (0)
@@ -2465,7 +2482,7 @@ Section: output
 | **Parameter**: legacy_yields
 | **Description**: Turn on ensemble legacy yield output.
 | **Parameter input type**: True|False
-| **Default value**: NULL
+| **Default value**: False
 
 | **Parameter**: ensemble_defer
 | **Description**: Defer ensemble output.
@@ -2505,27 +2522,27 @@ Section: output
 | **Parameter**: EMP_logg_maximum
 | **Description**: Maximum logg that EMP stars are allowed to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_minimum_age.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 4
 
 | **Parameter**: EMP_minimum_age
 | **Description**: Minimum age that EMP stars are required to have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 10
 
 | **Parameter**: EMP_feh_maximum
 | **Description**: Maximum [Fe/H] that an EMP stars may have. See Izzard et al 2009. See also CEMP_cfe_minimum, NEMP_nfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default -2.0.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: -2
 
 | **Parameter**: CEMP_cfe_minimum
 | **Description**: Minimum [C/Fe] that CEMP stars are required to have. See Izzard et al 2009. See also NEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 0.7.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 0.7
 
 | **Parameter**: NEMP_cfe_minimum
 | **Description**: Minimum [N/Fe] that NEMP stars are required to have. See Izzard et al 2009, Pols et al. 2012. See also CEMP_cfe_minimum, EMP_logg_maximum, EMP_minimum_age. Default 1.0.
 | **Parameter input type**: Float
-| **Default value**: NULL
+| **Default value**: 1
 
 | **Parameter**: thick_disc_start_age
 | **Description**: Lookback time for the start of the thick disc star formation, e.g. 13e3 Myr. Units = Myr.
@@ -2563,12 +2580,24 @@ Section: output
 | **Default value**: False
 | **Extra**: 
 
+| **Parameter**: log_legacy_stellar_types
+| **Description**: If set to True, we output the stellar types in the log as numbers rather than (more human-readable) letters.
+| **Parameter input type**: True|False
+| **Default value**: False
+| **Extra**: 
+
 | **Parameter**: log_filename
 | **Description**: Location of the output logging filename. If set to "/dev/null" then there is no logging.
 | **Parameter input type**: String
 | **Default value**: /tmp/c_log.dat
 | **Extra**: 
 
+| **Parameter**: log_separator
+| **Description**: Separator used in the standard log. By default this is an empty string.
+| **Parameter input type**: String
+| **Default value**: 
+| **Extra**: 
+
 | **Parameter**: log_arrows
 | **Description**: Add arrows to the output log to show whether values are increasing or decreasing.
 | **Parameter input type**: True|False
@@ -2610,16 +2639,6 @@ Section: output
 | **Default value**: 2
 | **Macros**: ['INTERNAL_BUFFERING_OFF = 0', 'INTERNAL_BUFFERING_PRINT = 1', 'INTERNAL_BUFFERING_STORE = 2']
 
-| **Parameter**: eccentric_RLOF_model
-| **Description**: Chooses which model is used to handle eccentric RLOF. Default is RLOF_ECCENTRIC_AS_CIRCULAR, i.e. ignore the eccentricity. Note: requires force_corotation_of_primary_and_orbit to be FALSE.
-| **Parameter input type**: Integer
-| **Default value**: 0
-
-| **Parameter**: force_circularization_on_RLOF
-| **Description**: If True forces circularization of stars and orbit when RLOF starts, this is as in the BSE algorithm. (True)
-| **Parameter input type**: True|False
-| **Default value**: True
-
 | **Parameter**: wtts_log
 | **Description**: If True, enables log file output for WTTS2.
 | **Parameter input type**: True|False
@@ -2667,99 +2686,99 @@ Section: input
 | **Parameter**: MINT_dir
 | **Description**: Location of MINT algorithm data.
 | **Parameter input type**: String
-| **Default value**: 
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_data_cleanup
 | **Description**: Activate checks on incoming data to try to account for problems. Will make data-loading slower, but may fix a few things.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_MS_rejuvenation
 | **Description**: Turn on or off (hydrogen) main-sequence rejuvenation.
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_remesh
 | **Description**: Turn on or off MINT's remeshing.
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_use_ZAMS_profiles
 | **Description**: Use chemical profiles at the ZAMS if MINT_use_ZAMS_profiles is TRUE, otherwise set homogeneous abundances. (Default is TRUE, so we use the profiles if they are available.)
 | **Parameter input type**: True|False
-| **Default value**: True
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_fallback_to_test_data
 | **Description**: If TRUE, use the MINT test_data directory as a fallback when data is unavailable. (FALSE)
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_disable_grid_load_warnings
 | **Description**: Use this to explicitly disable MINT's warnings when loading a grid with, e.g., missing or too much data.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_Kippenhahn
 | **Description**: Turn on or off MINT's Kippenhahn diagrams. If 0, off, if 1, output star 1 (index 0), if 2 output star 2 (index 1). Default 0.
 | **Parameter input type**: Integer
-| **Default value**: 0
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_nshells
 | **Description**: Set the initial number of shells MINT uses in each star when doing nuclear burning. Note: remeshing can change this. If MINT_nshells is 0, shellular burning and other routines that require shells will not be available. (200)
 | **Parameter input type**: Integer
-| **Default value**: 200
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_maximum_nshells
 | **Description**: Set the maximum number of shells MINT uses in each star when doing nuclear burning. Note that this will be limited to MINT_HARD_MAX_NSHELLS. (1000)
 | **Parameter input type**: Integer
-| **Default value**: 1000
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_minimum_nshells
 | **Description**: Set the minimum number of shells MINT uses in each star when doing nuclear burning. Note that this will be greater than or equal to MINT_HARD_MIN_NSHELLS, which is 0 by default. (0)
 | **Parameter input type**: Integer
-| **Default value**: 10
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_Kippenhahn_stellar_type
 | **Description**: Stellar type selector for Kippenhahn plots. Set to -1 to ignore, otherwise the stellar type number for which Kippenhahn plot data should be output.
 | **Parameter input type**: Integer
-| **Default value**: -1
+| **Default value**: NULL
 | **Macros**: ['LOW_MASS_MS = 0', 'MS = 1', 'HG = 2', 'GIANT_BRANCH = 3', 'CHeB = 4', 'EAGB = 5', 'TPAGB = 6', 'HeMS = 7', 'HeHG = 8', 'HeGB = 9', 'HeWD = 10', 'COWD = 11', 'ONeWD = 12', 'NS = 13', 'BH = 14', 'MASSLESS_REMNANT = 15']
 | **Extra**: 
 
 | **Parameter**: MINT_Kippenhahn_companion_stellar_type
 | **Description**: Companion stellar type selector for Kippenhahn plots. Set to -1 to ignore, otherwise the stellar type number for the companion for which Kippenhahn plot data should be output.
 | **Parameter input type**: Integer
-| **Default value**: -1
+| **Default value**: NULL
 | **Macros**: ['LOW_MASS_MS = 0', 'MS = 1', 'HG = 2', 'GIANT_BRANCH = 3', 'CHeB = 4', 'EAGB = 5', 'TPAGB = 6', 'HeMS = 7', 'HeHG = 8', 'HeGB = 9', 'HeWD = 10', 'COWD = 11', 'ONeWD = 12', 'NS = 13', 'BH = 14', 'MASSLESS_REMNANT = 15']
 | **Extra**: 
 
 | **Parameter**: MINT_nuclear_burning
 | **Description**: Turn on or off MINT's nuclear burning algorithm.
 | **Parameter input type**: True|False
-| **Default value**: False
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_minimum_shell_mass
 | **Description**: Minimum shell mass in MINT's nuclear burning routines.
 | **Parameter input type**: Float
-| **Default value**: 1e-06
+| **Default value**: NULL
 | **Extra**: 
 
 | **Parameter**: MINT_maximum_shell_mass
 | **Description**: Maximum shell mass in MINT's nuclear burning routines. :
 | **Parameter input type**: Float
-| **Default value**: 0.1
+| **Default value**: NULL
 | **Extra**: 
 
 Section: i/o
@@ -2889,3 +2908,15 @@ Section: misc
 | **Default value**: NULL
 | **Extra**: Ignore
 
+| **Parameter**: bjorn
+| **Description**: Usage: --bjorn    ... shows an ASCII-art picture of Björn (requires jp2a to be installed).
+| **Parameter input type**: *
+| **Default value**: NULL
+| **Extra**: 0
+
+| **Parameter**: logo
+| **Description**: Usage: --logo    ... shows an ASCII-art picture of the binary_c logo (requires jp2a to be installed).
+| **Parameter input type**: *
+| **Default value**: NULL
+| **Extra**: 0
+
diff --git a/docs/source/examples/notebook_BHBH.ipynb b/docs/source/examples/notebook_BHBH.ipynb
index c3fa9b934..d639f4bd6 100644
--- a/docs/source/examples/notebook_BHBH.ipynb
+++ b/docs/source/examples/notebook_BHBH.ipynb
@@ -649,11 +649,20 @@
     "Playing around with the input for an individual system gives us some understanding of which parameters affect the formation of black hole systems, but, as mentioned in the introduction, this is nto the most appropriate way to find many such systems. We want to make use of the Population utilities, and set up custom logging and a parse function.\n",
     "\n",
     "Things to try next:\n",
+    "\n",
     "* Set up a population object with a grid in M1, q and orbital period (10 x 10 x 10)\n",
     "* Set up a custom logging function to catch BHBH systems, and include the ZAMS properties in the output.\n",
     "* Set up a parse function to process the output, try writing the output to a file.\n",
     "* Run this population at several different metallicities. Do you see a trend?"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "c8b4d134-1b41-49cc-a122-2aee89818248",
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
diff --git a/docs/source/grid_options_descriptions.rst b/docs/source/grid_options_descriptions.rst
index 7d765d8cf..f35b933fe 100644
--- a/docs/source/grid_options_descriptions.rst
+++ b/docs/source/grid_options_descriptions.rst
@@ -1,7 +1,7 @@
 Population grid code options
 ============================
 The following chapter contains all grid code options, along with their descriptions
-There are 29 options that are not described yet.
+There are 31 options that are not described yet.
 
 
 Public options
@@ -121,6 +121,10 @@ The following options are meant to be changed by the user.
 
 | **log_dt**: Time between verbose logging output.
 
+| **log_failed_systems**: No description available yet
+
+| **log_failed_systems_dir**: No description available yet
+
 | **log_file**: Log file for the population object. Unused
 
 | **log_newline**: Newline character used at the end of verbose logging statements. This is \n (newline) by default, but \x0d (carriage return) might also be what you want.
-- 
GitLab