diff --git a/docs/build/doctrees/binary_c_parameters.doctree b/docs/build/doctrees/binary_c_parameters.doctree index 4f7eaf93c33ca07debbf11034e3d8bfed0325440..eec593e1d6815ee01beb9bc568682ab241abafc5 100644 Binary files a/docs/build/doctrees/binary_c_parameters.doctree and b/docs/build/doctrees/binary_c_parameters.doctree differ diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle index c6e5256235d1483e8c90b5626c52149c8aa125c4..a1c47f1cbca152a45b2ffa21300ef7ba6c48b24c 100644 Binary files a/docs/build/doctrees/environment.pickle and b/docs/build/doctrees/environment.pickle differ diff --git a/docs/build/doctrees/examples.doctree b/docs/build/doctrees/examples.doctree index 6460507044d282b78a1e1de8e54061c8a24cbdba..d338f5d8552417a69007a27c5fe82a53820b2316 100644 Binary files a/docs/build/doctrees/examples.doctree and b/docs/build/doctrees/examples.doctree differ diff --git a/docs/build/doctrees/general_examples.doctree b/docs/build/doctrees/general_examples.doctree index c0897103678f85cac8a3573a82bcc3dd86c63396..6a9ea1d82f7f59f34c616945f3276e2fab821847 100644 Binary files a/docs/build/doctrees/general_examples.doctree and b/docs/build/doctrees/general_examples.doctree differ diff --git a/docs/build/doctrees/grid.doctree b/docs/build/doctrees/grid.doctree index 8f1abc8bc18130183f9f151de222d4ca2f23bdf3..1bbd8e16a994704f74e844fa06cbd6593a4c77b0 100644 Binary files a/docs/build/doctrees/grid.doctree and b/docs/build/doctrees/grid.doctree differ diff --git a/docs/build/doctrees/population_example.doctree b/docs/build/doctrees/population_example.doctree new file mode 100644 index 0000000000000000000000000000000000000000..386ca4430f3d2019e97f7f2ecd811426665de2e9 Binary files /dev/null and b/docs/build/doctrees/population_example.doctree differ diff --git a/docs/build/doctrees/useful_funcs.doctree b/docs/build/doctrees/useful_funcs.doctree index 63a62a9c6af39e9c77b2d4b2f399694c15cba313..2cbfcec94ca9ce3fc83e173d4c6706d5c9edfe15 100644 Binary files a/docs/build/doctrees/useful_funcs.doctree and b/docs/build/doctrees/useful_funcs.doctree differ diff --git a/docs/build/html/.buildinfo b/docs/build/html/.buildinfo index 3c9900c225d9c690e37b1ed9d2f6e5590c46de8e..0fef865eb8bf85eda5e675e928067129120fc8c0 100644 --- a/docs/build/html/.buildinfo +++ b/docs/build/html/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 6900461cb9d4573b7ee9d2e352bd1545 +config: f4e8f1e1d66809b0bdafd78f415a24e8 tags: 645f666f9bcd5a90fca523b33c5a78b7 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 59553cab465cb591625af82bb290feeba5589507..4e934288308f3ab578cdd2f5cbba552e50231364 100644 --- a/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/custom_logging_functions.html @@ -597,7 +597,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/distribution_functions.html b/docs/build/html/_modules/binarycpython/utils/distribution_functions.html index 99427b225e38d67586ed779962e41ed04a0a4b51..57b7d0e499c418c39e1a1c007f0d729e5ba17542 100644 --- a/docs/build/html/_modules/binarycpython/utils/distribution_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/distribution_functions.html @@ -1084,7 +1084,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/functions.html b/docs/build/html/_modules/binarycpython/utils/functions.html index 4e74cc1d57df072224212f9d6cfd5375983d42ce..3f083c3256a1ccd9c95b561e397cf9ed5181bc85 100644 --- a/docs/build/html/_modules/binarycpython/utils/functions.html +++ b/docs/build/html/_modules/binarycpython/utils/functions.html @@ -1527,7 +1527,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/grid.html b/docs/build/html/_modules/binarycpython/utils/grid.html index 9a78a9eaf317b52482b30178766274bb1e40d43a..22e2ce4ca80215568065f514fce46637181c4ad8 100644 --- a/docs/build/html/_modules/binarycpython/utils/grid.html +++ b/docs/build/html/_modules/binarycpython/utils/grid.html @@ -174,6 +174,7 @@ <span class="sd"> - TODO: uncomment and implement the HPC functionality</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: Create a designated dict for results</span> <span class="sd">"""</span> <span class="kn">import</span> <span class="nn">os</span> @@ -264,6 +265,12 @@ <span class="c1">#</span> <span class="bp">self</span><span class="o">.</span><span class="n">process_ID</span> <span class="o">=</span> <span class="mi">0</span> + <span class="c1"># Create location to store results. Users should write to this dictionary. </span> + <span class="bp">self</span><span class="o">.</span><span class="n">grid_results</span> <span class="o">=</span> <span class="p">{}</span> + + <span class="c1"># Create location where ensemble results are written to</span> + <span class="bp">self</span><span class="o">.</span><span class="n">grid_ensemble_results</span> <span class="o">=</span> <span class="p">{}</span> + <span class="c1">###################################################</span> <span class="c1"># Argument functions</span> <span class="c1">###################################################</span> @@ -871,8 +878,9 @@ <span class="c1"># Log and print some information</span> <span class="n">verbose_print</span><span class="p">(</span> - <span class="s2">"Population-</span><span class="si">{}</span><span class="s2"> finished! It took a total of </span><span class="si">{}</span><span class="s2">s to run </span><span class="si">{}</span><span class="s2"> systems on </span><span class="si">{}</span><span class="s2"> cores"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> + <span class="s2">"Population-</span><span class="si">{}</span><span class="s2"> finished! The total probability was: </span><span class="si">{}</span><span class="s2">. It took a total of </span><span class="si">{}</span><span class="s2">s to run </span><span class="si">{}</span><span class="s2"> systems on </span><span class="si">{}</span><span class="s2"> cores"</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">"_population_id"</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">"_probtot"</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">"_end_time_evolution"</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">"_start_time_evolution"</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">"_total_starcount"</span><span class="p">],</span> @@ -973,10 +981,8 @@ <span class="n">combined_output_dict</span> <span class="o">=</span> <span class="n">merge_dicts</span><span class="p">(</span><span class="n">combined_output_dict</span><span class="p">,</span> <span class="n">output_dict</span><span class="p">)</span> <span class="c1"># Put the values back as object properties</span> - <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"results"</span><span class="p">]</span> <span class="o">=</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">"results"</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">"ensemble_results"</span><span class="p">]</span> <span class="o">=</span> <span class="n">combined_output_dict</span><span class="p">[</span> - <span class="s2">"ensemble_results"</span> - <span class="p">]</span> <span class="c1"># Ensemble results are also passed as output from that dictionary</span> + <span class="bp">self</span><span class="o">.</span><span class="n">grid_results</span> <span class="o">=</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">"results"</span><span class="p">]</span> + <span class="bp">self</span><span class="o">.</span><span class="n">grid_ensemble_results</span> <span class="o">=</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s1">'ensemble_results'</span><span class="p">]</span> <span class="c1"># Ensemble results are also passed as output from that dictionary</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"_failed_count"</span><span class="p">]</span> <span class="o">=</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">"_failed_count"</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">"_failed_prob"</span><span class="p">]</span> <span class="o">=</span> <span class="n">combined_output_dict</span><span class="p">[</span><span class="s2">"_failed_prob"</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">"_failed_systems_error_codes"</span><span class="p">]</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span> @@ -995,6 +1001,7 @@ <span class="sd"> """</span> <span class="n">binary_cmdline_string</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_return_argline</span><span class="p">(</span><span class="n">full_system_dict</span><span class="p">)</span> + <span class="nb">print</span><span class="p">(</span><span class="n">binary_cmdline_string</span><span class="p">)</span> <span class="n">persistent_data_memaddr</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble"</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> @@ -1036,17 +1043,27 @@ <span class="n">ID</span> <span class="c1"># Store the ID as a object property again, lets see if that works.</span> <span class="p">)</span> + <span class="c1"># lets try out making stores for all the grids:</span> + <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"_store_memaddr"</span><span class="p">]</span> <span class="o">=</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_store_memaddr</span><span class="p">()</span> + + <span class="n">verbose_print</span><span class="p">(</span> + <span class="s2">"Process </span><span class="si">{}</span><span class="s2"> started at </span><span class="si">{}</span><span class="s2">.</span><span class="se">\t</span><span class="s2">Using store memaddr </span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">ID</span><span class="p">,</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="o">.</span><span class="n">isoformat</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">"_store_memaddr"</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">"verbosity"</span><span class="p">],</span> <span class="mi">0</span> + <span class="p">)</span> + + <span class="c1"># Set the ensemble memaddr</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble"</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> <span class="c1"># set persistent data memaddr if necessary.</span> <span class="n">persistent_data_memaddr</span> <span class="o">=</span> <span class="p">(</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_persistent_data_memaddr</span><span class="p">()</span> <span class="p">)</span> + <span class="bp">self</span><span class="o">.</span><span class="n">persistent_data_memory_dict</span> <span class="o">=</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="n">persistent_data_memaddr</span> <span class="p">}</span> - <span class="c1"># lets try out making stores for all the grids:</span> - <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"_store_memaddr"</span><span class="p">]</span> <span class="o">=</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_store_memaddr</span><span class="p">()</span> + <span class="n">verbose_print</span><span class="p">(</span> + <span class="s2">"</span><span class="se">\t</span><span class="s2">Using persistent_data memaddr: </span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">persistent_data_memaddr</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">"verbosity"</span><span class="p">],</span> <span class="mi">0</span> + <span class="p">)</span> <span class="c1"># apparently we have to re-load this for every process, otherwise NameErrors arise (seems like a bug but I'm not sure)</span> <span class="bp">self</span><span class="o">.</span><span class="n">_load_grid_function</span><span class="p">()</span> @@ -1066,11 +1083,9 @@ <span class="mi">0</span> <span class="c1"># counter for the actual amt of systems this thread ran</span> <span class="p">)</span> - <span class="n">verbose_print</span><span class="p">(</span> - <span class="s2">"Process </span><span class="si">{}</span><span class="s2"> started at </span><span class="si">{}</span><span class="s2">. Using store memaddr </span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">ID</span><span class="p">,</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="o">.</span><span class="n">isoformat</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">"_store_memaddr"</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">"verbosity"</span><span class="p">],</span> <span class="mi">0</span> - <span class="p">)</span> + <span class="n">round_number_mod</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># rotating modulo</span> - <span class="n">round_number_mod</span> <span class="o">=</span> <span class="mi">0</span> + <span class="n">total_time_calling_binary_c</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># Go over the generator</span> <span class="k">while</span> <span class="n">running</span><span class="p">:</span> @@ -1081,7 +1096,7 @@ <span class="n">system</span> <span class="o">=</span> <span class="nb">next</span><span class="p">(</span><span class="n">generator</span><span class="p">)</span> <span class="c1"># Check if the ID is the correct one for this process</span> - <span class="k">if</span> <span class="p">(</span><span class="n">localcounter</span> <span class="o">+</span> <span class="p">(</span><span class="n">ID</span><span class="o">+</span><span class="n">round_number_mod</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">"amt_cores"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span> + <span class="k">if</span> <span class="p">(</span><span class="n">localcounter</span> <span class="o">+</span> <span class="p">(</span><span class="n">ID</span> <span class="o">+</span> <span class="n">round_number_mod</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">"amt_cores"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span> <span class="c1"># Combine that with the other settings</span> <span class="n">full_system_dict</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span> @@ -1108,6 +1123,8 @@ <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> + <span class="n">total_time_calling_binary_c</span> <span class="o">+=</span> <span class="n">end_runtime_binary_c</span> <span class="o">-</span> <span class="n">start_runtime_binary_c</span> <span class="c1"># keep track of total binary_c call time</span> + <span class="c1"># Debug line: logging all the lines</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">'log_runtime_systems'</span><span class="p">]</span><span class="o">==</span><span class="mi">1</span><span class="p">:</span> <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"tmp_dir"</span><span class="p">],</span> <span class="s2">"thread_</span><span class="si">{}</span><span class="s2">_runtime_systems.txt"</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="s1">'a+'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> @@ -1123,7 +1140,7 @@ <span class="k">if</span> <span class="p">(</span><span class="n">localcounter</span><span class="o">+</span><span class="mi">1</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">"amt_cores"</span><span class="p">]</span><span class="o">==</span><span class="mi">0</span><span class="p">:</span> <span class="n">round_number_mod</span> <span class="o">+=</span> <span class="mi">1</span> - <span class="c1"># round_number_mod = (localcounter+1)%self.grid_options["amt_cores"]</span> + <span class="c1"># print("thread {} round_nr_mod {}. localcounter {}".format(ID, round_number_mod, localcounter))</span> <span class="c1"># Has to be here because this one is used for the (localcounter+ID) % (self..)</span> @@ -1132,15 +1149,27 @@ <span class="c1"># Handle ensemble output: is ensemble==1, then either directly write that data to a file, or combine everything into 1 file.</span> <span class="n">ensemble_json</span> <span class="o">=</span> <span class="p">{}</span> <span class="c1"># Make sure it exists already</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble"</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> + <span class="n">verbose_print</span><span class="p">(</span> + <span class="s2">"Process </span><span class="si">{}</span><span class="s2">: is freeing ensemble output (using persisten_data memaddr </span><span class="si">{}</span><span class="s2">)"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">ID</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">persistent_data_memory_dict</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="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"verbosity"</span><span class="p">],</span> <span class="mi">2</span> + <span class="p">)</span> + <span class="n">ensemble_raw_output</span> <span class="o">=</span> <span class="p">(</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">free_persistent_data_memaddr_and_return_json_output</span><span class="p">(</span> <span class="bp">self</span><span class="o">.</span><span class="n">persistent_data_memory_dict</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="p">)</span> + <span class="k">if</span> <span class="n">ensemble_raw_output</span> <span class="o">==</span> <span class="kc">None</span><span class="p">:</span> + <span class="n">verbose_print</span><span class="p">(</span> + <span class="s2">"Process </span><span class="si">{}</span><span class="s2">: Warning! Ensemble output is empty. "</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">ID</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">"verbosity"</span><span class="p">],</span> <span class="mi">2</span> + <span class="p">)</span> <span class="c1">#</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">"combine_ensemble_with_thread_joining"</span><span class="p">]</span> <span class="o">==</span> <span class="kc">True</span><span class="p">:</span> - <span class="n">ensemble_json</span> <span class="o">=</span> <span class="n">extract_ensemble_json_from_string</span><span class="p">(</span> + <span class="n">verbose_print</span><span class="p">(</span> + <span class="s2">"Process </span><span class="si">{}</span><span class="s2">: Extracting ensemble info from raw string"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">ID</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">"verbosity"</span><span class="p">],</span> <span class="mi">2</span> + <span class="p">)</span> + + <span class="n">ensemble_json</span><span class="p">[</span><span class="s1">'ensemble'</span><span class="p">]</span> <span class="o">=</span> <span class="n">extract_ensemble_json_from_string</span><span class="p">(</span> <span class="n">ensemble_raw_output</span> <span class="p">)</span> <span class="c1"># Load this into a dict so that we can combine it later</span> @@ -1152,23 +1181,24 @@ <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"_population_id"</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="nb">print</span><span class="p">(</span> - <span class="s2">"Thread </span><span class="si">{}</span><span class="s2">: Chosen to output the ensemble results directly to file: </span><span class="si">{}</span><span class="s2">"</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="n">output_file</span> - <span class="p">)</span> - <span class="p">)</span> <span class="c1"># Write to file</span> <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">output_file</span><span class="p">,</span> <span class="s2">"w"</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">ensemble_raw_output</span><span class="p">)</span> + <span class="nb">print</span><span class="p">(</span> + <span class="s2">"Thread </span><span class="si">{}</span><span class="s2">: Wrote ensemble results directly to file: </span><span class="si">{}</span><span class="s2">"</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="n">output_file</span> + <span class="p">)</span> + <span class="p">)</span> + <span class="c1"># free store mem:</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">free_store_memaddr</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">"_store_memaddr"</span><span class="p">])</span> <span class="c1"># Return a set of results and errors</span> <span class="n">output_dict</span> <span class="o">=</span> <span class="p">{</span> - <span class="s2">"results"</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">"results"</span><span class="p">],</span> + <span class="s2">"results"</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_results</span><span class="p">,</span> <span class="s2">"ensemble_results"</span><span class="p">:</span> <span class="n">ensemble_json</span><span class="p">,</span> <span class="s2">"_failed_count"</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">"_failed_count"</span><span class="p">],</span> <span class="s2">"_failed_prob"</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">"_failed_prob"</span><span class="p">],</span> @@ -1184,11 +1214,12 @@ <span class="n">end_process_time</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">verbose_print</span><span class="p">(</span> - <span class="s2">"Process </span><span class="si">{}</span><span class="s2"> finished:</span><span class="se">\n\t</span><span class="s2">generator started at </span><span class="si">{}</span><span class="s2">, done at </span><span class="si">{}</span><span class="s2"> (total: </span><span class="si">{}</span><span class="s2">s).</span><span class="se">\n\t</span><span class="s2">Ran </span><span class="si">{}</span><span class="s2"> systems with a total probability of </span><span class="si">{}</span><span class="s2">.</span><span class="se">\n\t</span><span class="s2">This thread had </span><span class="si">{}</span><span class="s2"> failing systems with a total probability of </span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> + <span class="s2">"Process </span><span class="si">{}</span><span class="s2"> finished:</span><span class="se">\n\t</span><span class="s2">generator started at </span><span class="si">{}</span><span class="s2">, done at </span><span class="si">{}</span><span class="s2"> (total: </span><span class="si">{}</span><span class="s2">s of which </span><span class="si">{}</span><span class="s2">s interfacing with binary_c).</span><span class="se">\n\t</span><span class="s2">Ran </span><span class="si">{}</span><span class="s2"> systems with a total probability of </span><span class="si">{}</span><span class="s2">.</span><span class="se">\n\t</span><span class="s2">This thread had </span><span class="si">{}</span><span class="s2"> failing systems with a total probability of </span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> <span class="n">ID</span><span class="p">,</span> <span class="n">start_process_time</span><span class="o">.</span><span class="n">isoformat</span><span class="p">(),</span> <span class="n">end_process_time</span><span class="o">.</span><span class="n">isoformat</span><span class="p">(),</span> <span class="p">(</span><span class="n">end_process_time</span><span class="o">-</span><span class="n">start_process_time</span><span class="p">)</span><span class="o">.</span><span class="n">total_seconds</span><span class="p">(),</span> + <span class="n">total_time_calling_binary_c</span><span class="p">,</span> <span class="n">number_of_systems_run</span><span class="p">,</span> <span class="n">probability_of_systems_run</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">"_failed_count"</span><span class="p">],</span> @@ -1271,7 +1302,7 @@ <span class="c1">### ensemble: make some checks for this</span> <span class="c1">## check the settings and set all the warnings.</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble"</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span> - <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="s2">"ensemble_defer"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> + <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble_defer"</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> <span class="n">verbose_print</span><span class="p">(</span> <span class="s2">"Error, if you want to run an ensemble in a population, the output needs to be deferred. Please set 'ensemble_defer' to 1"</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"verbosity"</span><span class="p">],</span> @@ -1279,31 +1310,22 @@ <span class="p">)</span> <span class="k">raise</span> <span class="ne">ValueError</span> - <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="s2">"ensemble_output_name"</span><span class="p">]:</span> + <span class="k">if</span> <span class="ow">not</span> <span class="nb">any</span><span class="p">(</span> + <span class="p">[</span><span class="n">key</span><span class="o">.</span><span class="n">startswith</span><span class="p">(</span><span class="s2">"ensemble_filter_"</span><span class="p">)</span> <span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">]</span> + <span class="p">):</span> <span class="n">verbose_print</span><span class="p">(</span> - <span class="s2">"Error: if you want to run an ensemble in a population, please set set 'ensemble_output_name'. It will be combined with 'data_dir' to write the output of the ensembles to"</span><span class="p">,</span> + <span class="s2">"Warning: Running the ensemble without any filter requires alot of available RAM"</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">"verbosity"</span><span class="p">],</span> <span class="mi">0</span><span class="p">,</span> <span class="p">)</span> - <span class="k">raise</span> <span class="ne">ValueError</span> - <span class="k">if</span> <span class="ow">not</span> <span class="nb">any</span><span class="p">(</span> - <span class="p">[</span><span class="n">key</span><span class="o">.</span><span class="n">startswith</span><span class="p">(</span><span class="s2">"ensemble_filter_"</span><span class="p">)</span> <span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</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">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble_filters_off"</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">1</span><span class="p">:</span> <span class="n">verbose_print</span><span class="p">(</span> <span class="s2">"Warning: Running the ensemble without any filter requires alot of available RAM"</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">"verbosity"</span><span class="p">],</span> <span class="mi">0</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">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble_filters_off"</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span> - <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="s2">"ensemble_filters_off"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span> - <span class="n">verbose_print</span><span class="p">(</span> - <span class="s2">"Warning: Running the ensemble without any filter requires alot of available RAM"</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">"verbosity"</span><span class="p">],</span> - <span class="mi">0</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">"combine_ensemble_with_thread_joining"</span><span class="p">]</span> <span class="o">==</span> <span class="kc">False</span><span class="p">:</span> <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"data_dir"</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span> <span class="n">verbose_print</span><span class="p">(</span> @@ -1311,6 +1333,7 @@ <span class="bp">self</span><span class="o">.</span><span class="n">grid_options</span><span class="p">[</span><span class="s2">"verbosity"</span><span class="p">],</span> <span class="mi">0</span><span class="p">,</span> <span class="p">)</span> + <span class="k">raise</span> <span class="ne">ValueError</span> <span class="c1"># Check which type of population generation</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">"evolution_type"</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"grid"</span><span class="p">:</span> @@ -2530,7 +2553,7 @@ <span class="c1">## check the settings:</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble"</span><span class="p">,</span> <span class="kc">None</span><span class="p">):</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="s2">"ensemble"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> - <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="p">[</span><span class="s2">"ensemble_defer"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> + <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">bse_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ensemble_defer"</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span> <span class="n">verbose_print</span><span class="p">(</span> <span class="s2">"Error, if you want to run an ensemble in a population, the output needs to be deferred"</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">"verbosity"</span><span class="p">],</span> @@ -2801,7 +2824,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/grid_options_defaults.html b/docs/build/html/_modules/binarycpython/utils/grid_options_defaults.html index f812032ac62baafb6ad6c0ed6e71b0e52a48421b..22629f991899b712cf6771625fe6db1273d928a8 100644 --- a/docs/build/html/_modules/binarycpython/utils/grid_options_defaults.html +++ b/docs/build/html/_modules/binarycpython/utils/grid_options_defaults.html @@ -786,7 +786,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/hpc_functions.html b/docs/build/html/_modules/binarycpython/utils/hpc_functions.html index 0d35b38e58a165917fbeab56e0a5917b52602287..24338e44ea77f361e3e82b567f41d1808bd0f93c 100644 --- a/docs/build/html/_modules/binarycpython/utils/hpc_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/hpc_functions.html @@ -315,7 +315,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/plot_functions.html b/docs/build/html/_modules/binarycpython/utils/plot_functions.html index bf1fc894bf9cc255c3529a9eb7f303b39332dbe6..acfd39c1545acf75e6282c54bd8822bd16ac93e3 100644 --- a/docs/build/html/_modules/binarycpython/utils/plot_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/plot_functions.html @@ -792,7 +792,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> 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 1d2d038dc9c39bd6ca9e15c9315dda4896a5da59..fb0db0ee1323d8e88e7a47ddcaab1432a356dfd2 100644 --- a/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html +++ b/docs/build/html/_modules/binarycpython/utils/run_system_wrapper.html @@ -271,7 +271,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/spacing_functions.html b/docs/build/html/_modules/binarycpython/utils/spacing_functions.html index 5f3c4b1a426f8e1c10215f302c7a239833de6104..87fe236fcbaca9f967067e6f03644d11a4c7c662 100644 --- a/docs/build/html/_modules/binarycpython/utils/spacing_functions.html +++ b/docs/build/html/_modules/binarycpython/utils/spacing_functions.html @@ -191,7 +191,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html index 225645e2b3b040f57b45cf10f9bccdfce0a4c4d4..31738128bd2382cd7026c887d8b4c18fdb9b771c 100644 --- a/docs/build/html/_modules/binarycpython/utils/useful_funcs.html +++ b/docs/build/html/_modules/binarycpython/utils/useful_funcs.html @@ -169,12 +169,76 @@ <span class="sd">"""</span> <span class="kn">import</span> <span class="nn">math</span> +<span class="kn">import</span> <span class="nn">re</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">binarycpython</span> <span class="kn">import</span> <span class="n">_binary_c_bindings</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">create_arg_string</span> + <span class="n">AURSUN</span> <span class="o">=</span> <span class="mf">2.150445198804013386961742071435e02</span> <span class="n">YEARDY</span> <span class="o">=</span> <span class="mf">3.651995478818308811241877265275e02</span> + + +<div class="viewcode-block" id="minimum_period_for_RLOF"><a class="viewcode-back" href="../../../useful_funcs.html#binarycpython.utils.useful_funcs.minimum_period_for_RLOF">[docs]</a><span class="k">def</span> <span class="nf">minimum_period_for_RLOF</span><span class="p">(</span><span class="n">M1</span><span class="p">,</span> <span class="n">M2</span><span class="p">,</span> <span class="n">metallicity</span><span class="p">,</span> <span class="n">store_memaddr</span><span class="o">=-</span><span class="mi">1</span><span class="p">):</span> + <span class="sd">"""</span> +<span class="sd"> Wrapper function for _binary_c_bindings.return_minimum_orbit_for_RLOF</span> + +<span class="sd"> Handles the output and returns the minimum orbital period at which RLOF just does not occur at zams</span> + +<span class="sd"> Args:</span> +<span class="sd"> M1: Primary mass in solar mass</span> +<span class="sd"> M2: Secondary mass in solar mass</span> +<span class="sd"> metallicity: metallicity</span> +<span class="sd"> store_memaddr (optional): store memory adress</span> +<span class="sd"> Returns:</span> +<span class="sd"> minimum orbital_period that just does not cause a RLOF at ZAMS</span> + +<span class="sd"> """</span> + + <span class="n">bse_dict</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="n">M1</span><span class="p">,</span> <span class="s2">"M_2"</span><span class="p">:</span> <span class="n">M2</span><span class="p">,</span> <span class="s2">"metallicity"</span><span class="p">:</span> <span class="n">metallicity</span><span class="p">,</span> <span class="s2">"minimum_orbital_period_for_instant_RLOF"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"minimum_separation_for_instant_RLOF"</span><span class="p">:</span> <span class="mi">1</span><span class="p">}</span> + + <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"binary_c "</span> <span class="o">+</span> <span class="n">create_arg_string</span><span class="p">(</span><span class="n">bse_dict</span><span class="p">)</span> + + <span class="n">output</span> <span class="o">=</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_minimum_orbit_for_RLOF</span><span class="p">(</span><span class="n">argstring</span><span class="p">,</span> <span class="n">store_memaddr</span><span class="p">)</span> + + <span class="n">minimum_period</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">re</span><span class="o">.</span><span class="n">search</span><span class="p">(</span><span class="s1">'MINIMUM PERIOD (.*)'</span><span class="p">,</span> <span class="n">output</span><span class="p">)</span><span class="o">.</span><span class="n">group</span><span class="p">(</span><span class="mi">1</span><span class="p">))</span> + + <span class="k">return</span> <span class="n">minimum_period</span></div> + +<span class="c1"># print(minimum_period_for_RLOF(10, 5, 0.02))</span> +<span class="c1"># print(minimum_period_for_RLOF(10, 2, 0.02))</span> + +<div class="viewcode-block" id="minimum_separation_for_RLOF"><a class="viewcode-back" href="../../../useful_funcs.html#binarycpython.utils.useful_funcs.minimum_separation_for_RLOF">[docs]</a><span class="k">def</span> <span class="nf">minimum_separation_for_RLOF</span><span class="p">(</span><span class="n">M1</span><span class="p">,</span> <span class="n">M2</span><span class="p">,</span> <span class="n">metallicity</span><span class="p">,</span> <span class="n">store_memaddr</span><span class="o">=-</span><span class="mi">1</span><span class="p">):</span> + <span class="sd">"""</span> +<span class="sd"> Wrapper function for _binary_c_bindings.return_minimum_orbit_for_RLOF</span> + +<span class="sd"> Handles the output and returns the minimum separation at which RLOF just does not occur at ZAMS</span> + +<span class="sd"> Args:</span> +<span class="sd"> M1: Primary mass in solar mass</span> +<span class="sd"> M2: Secondary mass in solar mass</span> +<span class="sd"> metallicity: metallicity</span> +<span class="sd"> store_memaddr (optional): store memory adress</span> +<span class="sd"> Returns:</span> +<span class="sd"> minimum separation that just does not cause a RLOF at ZAMS</span> + +<span class="sd"> """</span> + + <span class="n">bse_dict</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"M_1"</span><span class="p">:</span> <span class="n">M1</span><span class="p">,</span> <span class="s2">"M_2"</span><span class="p">:</span> <span class="n">M2</span><span class="p">,</span> <span class="s2">"metallicity"</span><span class="p">:</span> <span class="n">metallicity</span><span class="p">,</span> <span class="s2">"minimum_orbital_period_for_instant_RLOF"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"minimum_separation_for_instant_RLOF"</span><span class="p">:</span> <span class="mi">1</span><span class="p">}</span> + + <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"binary_c "</span> <span class="o">+</span> <span class="n">create_arg_string</span><span class="p">(</span><span class="n">bse_dict</span><span class="p">)</span> + + <span class="n">output</span> <span class="o">=</span> <span class="n">_binary_c_bindings</span><span class="o">.</span><span class="n">return_minimum_orbit_for_RLOF</span><span class="p">(</span><span class="n">argstring</span><span class="p">,</span> <span class="n">store_memaddr</span><span class="p">)</span> + + <span class="n">minimum_separation</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">re</span><span class="o">.</span><span class="n">search</span><span class="p">(</span><span class="s1">'MINIMUM SEPARATION (.*)'</span><span class="p">,</span> <span class="n">output</span><span class="p">)</span><span class="o">.</span><span class="n">group</span><span class="p">(</span><span class="mi">1</span><span class="p">))</span> + + <span class="k">return</span> <span class="n">minimum_separation</span></div> + +<span class="c1"># print(minimum_separation_for_RLOF(0.08, 0.08, 0.00002))</span> +<span class="c1"># print(minimum_separation_for_RLOF(10, 2, 0.02))</span> + <div class="viewcode-block" id="calc_period_from_sep"><a class="viewcode-back" href="../../../useful_funcs.html#binarycpython.utils.useful_funcs.calc_period_from_sep">[docs]</a><span class="k">def</span> <span class="nf">calc_period_from_sep</span><span class="p">(</span> <span class="n">M1</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="nb">int</span><span class="p">,</span> <span class="nb">float</span><span class="p">],</span> <span class="n">M2</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="nb">int</span><span class="p">,</span> <span class="nb">float</span><span class="p">],</span> <span class="n">sep</span><span class="p">:</span> <span class="n">Union</span><span class="p">[</span><span class="nb">int</span><span class="p">,</span> <span class="nb">float</span><span class="p">]</span> <span class="p">)</span> <span class="o">-></span> <span class="n">Union</span><span class="p">[</span><span class="nb">int</span><span class="p">,</span> <span class="nb">float</span><span class="p">]:</span> @@ -420,7 +484,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_modules/index.html b/docs/build/html/_modules/index.html index af315ee0873cc4d1f11110798fdc42ffefe966f2..a789af0843b21968bf2fb91f5c7fea80bd15f39f 100644 --- a/docs/build/html/_modules/index.html +++ b/docs/build/html/_modules/index.html @@ -172,7 +172,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/_sources/binary_c_parameters.rst.txt b/docs/build/html/_sources/binary_c_parameters.rst.txt index 56de8181e1e5404f7c0e5b2c6ec273f278045544..4fe498e19b7be769db2dba6961d758d454815b8e 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**: 5479:20210111:463f148ec **Built on**: Jan 28 2021 20:10:20 + **binary_c git branch**: branch_david **binary_c git revision**: 5542:20210311:f3401ead4 **Built on**: Mar 22 2021 12:07:51 Section: stars diff --git a/docs/build/html/_sources/examples.rst.txt b/docs/build/html/_sources/examples.rst.txt index 281bfaa659e3e775f75243f608c963bde50b7049..ab58720d9b5a670eb13d8468daa687e72ab86e52 100644 --- a/docs/build/html/_sources/examples.rst.txt +++ b/docs/build/html/_sources/examples.rst.txt @@ -5,4 +5,5 @@ This chapter contains the source code of example scripts which show the way of u .. toctree:: :hidden: - general_examples \ No newline at end of file + general_examples + population_example \ No newline at end of file diff --git a/docs/build/html/_sources/general_examples.rst.txt b/docs/build/html/_sources/general_examples.rst.txt index 4a070790a2c7ef4fa05a5c5d76026750ff9bfae4..8509de5b72faf82bc026ed2b785b2d72b4ccc702 100644 --- a/docs/build/html/_sources/general_examples.rst.txt +++ b/docs/build/html/_sources/general_examples.rst.txt @@ -3,5 +3,5 @@ Examples The source code of the general examples. .. literalinclude:: ../../examples/examples.py - :language: ruby + :language: python :linenos: \ No newline at end of file diff --git a/docs/build/html/_sources/population_example.rst.txt b/docs/build/html/_sources/population_example.rst.txt new file mode 100644 index 0000000000000000000000000000000000000000..192372d019133d818c4ba6ad207c5dc09989de62 --- /dev/null +++ b/docs/build/html/_sources/population_example.rst.txt @@ -0,0 +1,7 @@ +Example of population script +============================ +The source code of a script to run a population of stars. + +.. literalinclude:: ../../examples/example_population.py + :language: python + :linenos: \ No newline at end of file diff --git a/docs/build/html/binary_c_parameters.html b/docs/build/html/binary_c_parameters.html index 99a345af06ce15fe613878668bb7d17ed7636987..fadee75952a70b28799dfa0b17b5cf3f5f0e92a7 100644 --- a/docs/build/html/binary_c_parameters.html +++ b/docs/build/html/binary_c_parameters.html @@ -37,7 +37,7 @@ <link rel="index" title="Index" href="genindex.html" /> <link rel="search" title="Search" href="search.html" /> <link rel="next" title="Population grid code options" href="grid_options_descriptions.html" /> - <link rel="prev" title="Examples" href="general_examples.html" /> + <link rel="prev" title="Example of population script" href="population_example.html" /> </head> <body class="wy-body-for-nav"> @@ -168,7 +168,7 @@ <h1>Binary_c parameters<a class="headerlink" href="#binary-c-parameters" title="Permalink to this headline">¶</a></h1> <p>The following chapter contains all the parameters that the current version of binary_c can handle, along with their descriptions and other properties.</p> <dl class="simple"> -<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: branch_david <strong>binary_c git revision</strong>: 5479:20210111:463f148ec <strong>Built on</strong>: Jan 28 2021 20:10:20</p> +<dt>This information was obtained by the following binary_c build:</dt><dd><p><strong>binary_c git branch</strong>: branch_david <strong>binary_c git revision</strong>: 5542:20210311:f3401ead4 <strong>Built on</strong>: Mar 22 2021 12:07:51</p> </dd> </dl> <div class="section" id="section-stars"> @@ -2991,7 +2991,7 @@ <a href="grid_options_descriptions.html" class="btn btn-neutral float-right" title="Population grid code options" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a> - <a href="general_examples.html" class="btn btn-neutral float-left" title="Examples" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a> + <a href="population_example.html" class="btn btn-neutral float-left" title="Example of population script" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a> </div> @@ -3001,7 +3001,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/custom_logging_functions.html b/docs/build/html/custom_logging_functions.html index 53417465e84684402abed0de6593660837bb75fa..24fb7ce334b87a930af40a6f711c21984b294e47 100644 --- a/docs/build/html/custom_logging_functions.html +++ b/docs/build/html/custom_logging_functions.html @@ -378,7 +378,7 @@ I recommend using this in function in combination with a function that generates <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/distribution_functions.html b/docs/build/html/distribution_functions.html index d4b19ea9955384606852a0ecf28fbf863d854e3c..24ab3090a372707eb5a272e075eed19bc3f6482a 100644 --- a/docs/build/html/distribution_functions.html +++ b/docs/build/html/distribution_functions.html @@ -754,7 +754,7 @@ and is be given by dp/dlogP ~ (logP)^p for all other binary configurations (defa <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/examples.html b/docs/build/html/examples.html index 0e441813cfc862c84b2b9a11f606515b200d7300..d94fdbd349546254cb6e17e9e8e0263c1eae4db4 100644 --- a/docs/build/html/examples.html +++ b/docs/build/html/examples.html @@ -88,6 +88,7 @@ <li class="toctree-l1"><a class="reference internal" href="modules.html">Binarycpython code</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">Examples</a><ul> <li class="toctree-l2"><a class="reference internal" href="general_examples.html">Examples</a></li> +<li class="toctree-l2"><a class="reference internal" href="population_example.html">Example of population script</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="binary_c_parameters.html">Binary_c parameters</a></li> @@ -185,7 +186,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/functions.html b/docs/build/html/functions.html index e836d5b3d8b15003855f57e5e1bf716cc1063825..0b8698f3ef325ed40849dde447ef053806177b72 100644 --- a/docs/build/html/functions.html +++ b/docs/build/html/functions.html @@ -709,7 +709,7 @@ Writes the results to a .rst file that can be included in the docs.</p> <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/general_examples.html b/docs/build/html/general_examples.html index 204c52761359e88622ad8c52c2afafd8ce944a34..82aecdc2b570ec7d37f37139303bbb9ae38d0386 100644 --- a/docs/build/html/general_examples.html +++ b/docs/build/html/general_examples.html @@ -36,7 +36,7 @@ <link rel="index" title="Index" href="genindex.html" /> <link rel="search" title="Search" href="search.html" /> - <link rel="next" title="Binary_c parameters" href="binary_c_parameters.html" /> + <link rel="next" title="Example of population script" href="population_example.html" /> <link rel="prev" title="Examples" href="examples.html" /> </head> @@ -88,6 +88,7 @@ <li class="toctree-l1"><a class="reference internal" href="modules.html">Binarycpython code</a></li> <li class="toctree-l1 current"><a class="reference internal" href="examples.html">Examples</a><ul class="current"> <li class="toctree-l2 current"><a class="current reference internal" href="#">Examples</a></li> +<li class="toctree-l2"><a class="reference internal" href="population_example.html">Example of population script</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="binary_c_parameters.html">Binary_c parameters</a></li> @@ -162,7 +163,7 @@ <div class="section" id="examples"> <h1>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h1> <p>The source code of the general examples.</p> -<div class="highlight-ruby notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre> 1 +<div class="highlight-python notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre> 1 2 3 4 @@ -391,43 +392,43 @@ 227 228 229</pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="ch">#!/usr/bin/python3</span> -<span class="n">import</span> <span class="n">os</span> -<span class="n">import</span> <span class="n">sys</span> +<span class="kn">import</span> <span class="nn">os</span> +<span class="kn">import</span> <span class="nn">sys</span> -<span class="n">from</span> <span class="n">binarycpython</span> <span class="n">import</span> <span class="n">_binary_c_bindings</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="n">from</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="n">import</span> <span class="n">example_parse_output</span> -<span class="n">from</span> <span class="n">binarycpython</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">custom_logging_functions</span> <span class="n">import</span> <span class="p">(</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">example_parse_output</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="p">(</span> <span class="n">autogen_C_logging_code</span><span class="p">,</span> <span class="n">binary_c_log_code</span><span class="p">,</span> <span class="n">create_and_load_logging_function</span><span class="p">,</span> <span class="p">)</span> -<span class="n">from</span> <span class="n">binarycpython</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">run_system_wrapper</span> <span class="n">import</span> <span class="n">run_system</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.run_system_wrapper</span> <span class="kn">import</span> <span class="n">run_system</span> -<span class="s2">"""</span> -<span class="s2">Very basic scripts to run a binary system and print the output.</span> +<span class="sd">"""</span> +<span class="sd">Very basic scripts to run a binary system and print the output.</span> -<span class="s2">Use these as inspiration/base.</span> -<span class="s2">"""</span> +<span class="sd">Use these as inspiration/base.</span> +<span class="sd">"""</span> <span class="k">def</span> <span class="nf">run_example_binary</span><span class="p">():</span> - <span class="s2">"""</span> -<span class="s2"> Function to run a binary system. Very basic approach which directly adresses the run_system(..) python-c wrapper function.</span> -<span class="s2"> """</span> + <span class="sd">"""</span> +<span class="sd"> Function to run a binary system. Very basic approach which directly adresses the run_system(..) python-c wrapper function.</span> +<span class="sd"> """</span> - <span class="n">m1</span> <span class="o">=</span> <span class="mi">15</span><span class="o">.</span><span class="mi">0</span> <span class="c1"># Msun</span> - <span class="n">m2</span> <span class="o">=</span> <span class="mi">14</span><span class="o">.</span><span class="mi">0</span> <span class="c1"># Msun</span> + <span class="n">m1</span> <span class="o">=</span> <span class="mf">15.0</span> <span class="c1"># Msun</span> + <span class="n">m2</span> <span class="o">=</span> <span class="mf">14.0</span> <span class="c1"># Msun</span> <span class="n">separation</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># 0 = ignored, use period</span> - <span class="n">orbital_period</span> <span class="o">=</span> <span class="mi">4530</span><span class="o">.</span><span class="mi">0</span> <span class="c1"># days</span> - <span class="n">eccentricity</span> <span class="o">=</span> <span class="mi">0</span><span class="o">.</span><span class="mi">0</span> - <span class="n">metallicity</span> <span class="o">=</span> <span class="mi">0</span><span class="o">.</span><span class="mo">02</span> + <span class="n">orbital_period</span> <span class="o">=</span> <span class="mf">4530.0</span> <span class="c1"># days</span> + <span class="n">eccentricity</span> <span class="o">=</span> <span class="mf">0.0</span> + <span class="n">metallicity</span> <span class="o">=</span> <span class="mf">0.02</span> <span class="n">max_evolution_time</span> <span class="o">=</span> <span class="mi">15000</span> <span class="c1"># Myr. You need to include this argument.</span> <span class="c1">#</span> - <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"binary_c M_1 {m1} M_2 {m2} separation {separation} orbital_period {orbital_period} \</span> -<span class="s2"> eccentricity {eccentricity} metallicity {metallicity} \</span> -<span class="s2"> max_evolution_time {max_evolution_time}"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> + <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"binary_c M_1 </span><span class="si">{m1}</span><span class="s2"> M_2 </span><span class="si">{m2}</span><span class="s2"> separation </span><span class="si">{separation}</span><span class="s2"> orbital_period </span><span class="si">{orbital_period}</span><span class="s2"> </span><span class="se">\</span> +<span class="s2"> eccentricity </span><span class="si">{eccentricity}</span><span class="s2"> metallicity </span><span class="si">{metallicity}</span><span class="s2"> </span><span class="se">\</span> +<span class="s2"> max_evolution_time </span><span class="si">{max_evolution_time}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> <span class="n">m1</span><span class="o">=</span><span class="n">m1</span><span class="p">,</span> <span class="n">m2</span><span class="o">=</span><span class="n">m2</span><span class="p">,</span> <span class="n">separation</span><span class="o">=</span><span class="n">separation</span><span class="p">,</span> @@ -444,24 +445,24 @@ <span class="k">def</span> <span class="nf">run_example_binary_with_run_system</span><span class="p">():</span> - <span class="s2">"""</span> -<span class="s2"> This function serves as an example on the function run_system and parse_output.</span> -<span class="s2"> There is more functionality with this method and several tasks are done behind the scene.</span> + <span class="sd">"""</span> +<span class="sd"> This function serves as an example on the function run_system and parse_output.</span> +<span class="sd"> There is more functionality with this method and several tasks are done behind the scene.</span> -<span class="s2"> Requires pandas, numpy to run.</span> +<span class="sd"> Requires pandas, numpy to run.</span> -<span class="s2"> run_system: mostly just makes passing arguments to the function easier. It also loads all the necessary defaults in the background</span> -<span class="s2"> parse_output: Takes the raw output of binary_c and selects those lines that start with the given header.</span> -<span class="s2"> Note, if you dont use the custom_logging functionality binary_c should be configured to have output that starts with that given header</span> +<span class="sd"> run_system: mostly just makes passing arguments to the function easier. It also loads all the necessary defaults in the background</span> +<span class="sd"> parse_output: Takes the raw output of binary_c and selects those lines that start with the given header.</span> +<span class="sd"> Note, if you dont use the custom_logging functionality binary_c should be configured to have output that starts with that given header</span> -<span class="s2"> The parsing of the output only works correctly if either all of the values are described inline like `mass=<number>' or none of them are.</span> -<span class="s2"> """</span> +<span class="sd"> The parsing of the output only works correctly if either all of the values are described inline like `mass=<number>' or none of them are.</span> +<span class="sd"> """</span> - <span class="n">import</span> <span class="n">pandas</span> <span class="n">as</span> <span class="n">pd</span> - <span class="n">import</span> <span class="n">numpy</span> <span class="n">as</span> <span class="n">np</span> + <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> + <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span> <span class="c1"># Run system. all arguments can be given as optional arguments.</span> - <span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="no">M_1</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="no">M_2</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">separation</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">orbital_period</span><span class="o">=</span><span class="mi">100000000000</span><span class="p">)</span> + <span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span><span class="n">M_1</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">M_2</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">separation</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">orbital_period</span><span class="o">=</span><span class="mi">100000000000</span><span class="p">)</span> <span class="c1"># print(output)</span> @@ -490,7 +491,7 @@ <span class="c1"># This example has column headers which are numbered, but we can override that with custom headers.</span> <span class="n">df2</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="o">.</span><span class="n">from_dict</span><span class="p">(</span><span class="n">result_example_header_2</span><span class="p">,</span> <span class="n">dtype</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span> - <span class="n">df2</span><span class="o">.</span><span class="n">columns</span> <span class="o">=</span> <span class="o">[</span><span class="s2">"time"</span><span class="p">,</span> <span class="s2">"mass_1"</span><span class="p">,</span> <span class="s2">"mass_2"</span><span class="p">,</span> <span class="s2">"st1"</span><span class="p">,</span> <span class="s2">"st2"</span><span class="p">,</span> <span class="s2">"sep"</span><span class="p">,</span> <span class="s2">"ecc"</span><span class="o">]</span> + <span class="n">df2</span><span class="o">.</span><span class="n">columns</span> <span class="o">=</span> <span class="p">[</span><span class="s2">"time"</span><span class="p">,</span> <span class="s2">"mass_1"</span><span class="p">,</span> <span class="s2">"mass_2"</span><span class="p">,</span> <span class="s2">"st1"</span><span class="p">,</span> <span class="s2">"st2"</span><span class="p">,</span> <span class="s2">"sep"</span><span class="p">,</span> <span class="s2">"ecc"</span><span class="p">]</span> <span class="nb">print</span><span class="p">(</span><span class="n">df2</span><span class="p">)</span> <span class="c1"># print(df)</span> @@ -504,15 +505,15 @@ <span class="k">def</span> <span class="nf">run_example_custom_logging_autogenerated</span><span class="p">():</span> - <span class="s2">"""</span> -<span class="s2"> This is an example function for the autogeneration of logging codes that binary_c uses.</span> -<span class="s2"> """</span> + <span class="sd">"""</span> +<span class="sd"> This is an example function for the autogeneration of logging codes that binary_c uses.</span> +<span class="sd"> """</span> <span class="c1"># generate logging lines</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="n">autogen_C_logging_code</span><span class="p">(</span> <span class="p">{</span> - <span class="s2">"MY_STELLAR_DATA"</span><span class="p">:</span> <span class="o">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[0].mass"</span><span class="o">]</span><span class="p">,</span> - <span class="s2">"my_sss2"</span><span class="p">:</span> <span class="o">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[1].mass"</span><span class="o">]</span><span class="p">,</span> + <span class="s2">"MY_STELLAR_DATA"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[0].mass"</span><span class="p">],</span> + <span class="s2">"my_sss2"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[1].mass"</span><span class="p">],</span> <span class="p">}</span> <span class="p">)</span> @@ -525,14 +526,14 @@ <span class="p">)</span> <span class="c1">#</span> - <span class="n">m1</span> <span class="o">=</span> <span class="mi">15</span><span class="o">.</span><span class="mi">0</span> <span class="c1"># Msun</span> - <span class="n">m2</span> <span class="o">=</span> <span class="mi">14</span><span class="o">.</span><span class="mi">0</span> <span class="c1"># Msun</span> + <span class="n">m1</span> <span class="o">=</span> <span class="mf">15.0</span> <span class="c1"># Msun</span> + <span class="n">m2</span> <span class="o">=</span> <span class="mf">14.0</span> <span class="c1"># Msun</span> <span class="n">separation</span> <span class="o">=</span> <span class="mi">0</span> <span class="c1"># 0 = ignored, use period</span> - <span class="n">orbital_period</span> <span class="o">=</span> <span class="mi">4530</span><span class="o">.</span><span class="mi">0</span> <span class="c1"># days</span> - <span class="n">eccentricity</span> <span class="o">=</span> <span class="mi">0</span><span class="o">.</span><span class="mi">0</span> - <span class="n">metallicity</span> <span class="o">=</span> <span class="mi">0</span><span class="o">.</span><span class="mo">02</span> + <span class="n">orbital_period</span> <span class="o">=</span> <span class="mf">4530.0</span> <span class="c1"># days</span> + <span class="n">eccentricity</span> <span class="o">=</span> <span class="mf">0.0</span> + <span class="n">metallicity</span> <span class="o">=</span> <span class="mf">0.02</span> <span class="n">max_evolution_time</span> <span class="o">=</span> <span class="mi">15000</span> - <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"binary_c M_1 {0:g} M_2 {1:g} separation {2:g} orbital_period {3:g} eccentricity {4:g} metallicity {5:g} max_evolution_time {6:g}"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> + <span class="n">argstring</span> <span class="o">=</span> <span class="s2">"binary_c M_1 </span><span class="si">{0:g}</span><span class="s2"> M_2 </span><span class="si">{1:g}</span><span class="s2"> separation </span><span class="si">{2:g}</span><span class="s2"> orbital_period </span><span class="si">{3:g}</span><span class="s2"> eccentricity </span><span class="si">{4:g}</span><span class="s2"> metallicity </span><span class="si">{5:g}</span><span class="s2"> max_evolution_time </span><span class="si">{6:g}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span> <span class="n">m1</span><span class="p">,</span> <span class="n">m2</span><span class="p">,</span> <span class="n">separation</span><span class="p">,</span> @@ -551,33 +552,33 @@ <span class="k">def</span> <span class="nf">run_example_binary_with_custom_logging</span><span class="p">():</span> - <span class="s2">"""</span> -<span class="s2"> Function that will use a automatically generated piece of logging code. Compile it, load it</span> -<span class="s2"> into memory and run a binary system. See run_system on how several things are done in the background here.</span> -<span class="s2"> """</span> + <span class="sd">"""</span> +<span class="sd"> Function that will use a automatically generated piece of logging code. Compile it, load it</span> +<span class="sd"> into memory and run a binary system. See run_system on how several things are done in the background here.</span> +<span class="sd"> """</span> - <span class="n">import</span> <span class="n">pandas</span> <span class="n">as</span> <span class="n">pd</span> - <span class="n">import</span> <span class="n">numpy</span> <span class="n">as</span> <span class="n">np</span> + <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span> + <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span> <span class="c1"># generate logging lines. Here you can choose whatever you want to have logged, and with what header</span> <span class="c1"># this generates working print statements</span> <span class="n">logging_line</span> <span class="o">=</span> <span class="n">autogen_C_logging_code</span><span class="p">(</span> <span class="p">{</span> - <span class="s2">"MY_STELLAR_DATA"</span><span class="p">:</span> <span class="o">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[0].mass"</span><span class="o">]</span><span class="p">,</span> + <span class="s2">"MY_STELLAR_DATA"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"model.time"</span><span class="p">,</span> <span class="s2">"star[0].mass"</span><span class="p">],</span> <span class="p">}</span> <span class="p">)</span> <span class="c1"># OR</span> <span class="c1"># You can also decide to `write` your own logging_line, which allows you to write a more complex logging statement with conditionals.</span> - <span class="n">logging_line</span> <span class="o">=</span> <span class="s1">'Printf("MY_STELLAR_DATA time=%g mass=%g</span><span class="se">\\</span><span class="s1">n", stardata->model.time, stardata->star[0].mass)'</span> + <span class="n">logging_line</span> <span class="o">=</span> <span class="s1">'Printf("MY_STELLAR_DATA time=</span><span class="si">%g</span><span class="s1"> mass=</span><span class="si">%g</span><span class="se">\\</span><span class="s1">n", stardata->model.time, stardata->star[0].mass)'</span> <span class="c1"># Generate entire shared lib code around logging lines</span> <span class="n">custom_logging_code</span> <span class="o">=</span> <span class="n">binary_c_log_code</span><span class="p">(</span><span class="n">logging_line</span><span class="p">)</span> <span class="c1"># Run system. all arguments can be given as optional arguments. the custom_logging_code is one of them and will be processed automatically.</span> <span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span> - <span class="no">M_1</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> - <span class="n">metallicity</span><span class="o">=</span><span class="mi">0</span><span class="o">.</span><span class="mo">002</span><span class="p">,</span> - <span class="no">M_2</span><span class="o">=</span><span class="mi">0</span><span class="o">.</span><span class="mi">1</span><span class="p">,</span> + <span class="n">M_1</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> + <span class="n">metallicity</span><span class="o">=</span><span class="mf">0.002</span><span class="p">,</span> + <span class="n">M_2</span><span class="o">=</span><span class="mf">0.1</span><span class="p">,</span> <span class="n">separation</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">orbital_period</span><span class="o">=</span><span class="mi">100000000000</span><span class="p">,</span> <span class="n">custom_logging_code</span><span class="o">=</span><span class="n">custom_logging_code</span><span class="p">,</span> @@ -600,18 +601,18 @@ <span class="k">def</span> <span class="nf">run_example_binary_with_writing_logfile</span><span class="p">():</span> - <span class="s2">"""</span> -<span class="s2"> Same as above but when giving the log_filename argument the log filename will be written</span> -<span class="s2"> """</span> + <span class="sd">"""</span> +<span class="sd"> Same as above but when giving the log_filename argument the log filename will be written</span> +<span class="sd"> """</span> - <span class="n">import</span> <span class="n">pandas</span> <span class="n">as</span> <span class="n">pd</span> - <span class="n">import</span> <span class="n">numpy</span> <span class="n">as</span> <span class="n">np</span> - <span class="n">import</span> <span class="n">tempfile</span> + <span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</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">tempfile</span> <span class="c1"># Run system. all arguments can be given as optional arguments.</span> <span class="n">output</span> <span class="o">=</span> <span class="n">run_system</span><span class="p">(</span> - <span class="no">M_1</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> - <span class="no">M_2</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> + <span class="n">M_1</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> + <span class="n">M_2</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">separation</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">orbital_period</span><span class="o">=</span><span class="mi">100000000000</span><span class="p">,</span> <span class="n">log_filename</span><span class="o">=</span><span class="n">tempfile</span><span class="o">.</span><span class="n">gettempdir</span><span class="p">()</span> <span class="o">+</span> <span class="s2">"/test_log.txt"</span><span class="p">,</span> @@ -631,7 +632,7 @@ <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> - <a href="binary_c_parameters.html" class="btn btn-neutral float-right" title="Binary_c parameters" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a> + <a href="population_example.html" class="btn btn-neutral float-right" title="Example of population script" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a> <a href="examples.html" class="btn btn-neutral float-left" title="Examples" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a> @@ -644,7 +645,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/genindex.html b/docs/build/html/genindex.html index fd3fd4fdab9e7ceff7ba3521a0e18521a47943e9..e9954b899a4e96fef83e739dab6e87ecd7338ace 100644 --- a/docs/build/html/genindex.html +++ b/docs/build/html/genindex.html @@ -454,6 +454,10 @@ <li><a href="functions.html#binarycpython.utils.functions.make_build_text">make_build_text() (in module binarycpython.utils.functions)</a> </li> <li><a href="functions.html#binarycpython.utils.functions.merge_dicts">merge_dicts() (in module binarycpython.utils.functions)</a> +</li> + <li><a href="useful_funcs.html#binarycpython.utils.useful_funcs.minimum_period_for_RLOF">minimum_period_for_RLOF() (in module binarycpython.utils.useful_funcs)</a> +</li> + <li><a href="useful_funcs.html#binarycpython.utils.useful_funcs.minimum_separation_for_RLOF">minimum_separation_for_RLOF() (in module binarycpython.utils.useful_funcs)</a> </li> <li> module @@ -632,7 +636,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/grid.html b/docs/build/html/grid.html index 18bc400ab69c1b897716ff3f98233ee19ab4fde8..8ced97503a8ddaf708ab2e314b78d9bb496091c7 100644 --- a/docs/build/html/grid.html +++ b/docs/build/html/grid.html @@ -191,6 +191,7 @@ but copying functionality isn’t recommended except if you know what you are do <li><p>TODO: uncomment and implement the HPC functionality</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: Create a designated dict for results</p></li> </ul> </dd> </dl> @@ -465,7 +466,7 @@ like m1,m2,sep, orb-per, ecc, probability etc.</p> <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/grid_options_defaults.html b/docs/build/html/grid_options_defaults.html index ea357ce8c92d814935585deef60e15fa0c6870b8..148ec390eb8387bb28eb85d726280d263da07bf8 100644 --- a/docs/build/html/grid_options_defaults.html +++ b/docs/build/html/grid_options_defaults.html @@ -261,7 +261,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/grid_options_descriptions.html b/docs/build/html/grid_options_descriptions.html index 7e45825ec62aff7dd211a245b56e88f6acd6d864..aef7e1c0c4f0583822bf0908c65a64d8a89b4417 100644 --- a/docs/build/html/grid_options_descriptions.html +++ b/docs/build/html/grid_options_descriptions.html @@ -326,7 +326,7 @@ There are 1 options that are not described yet.</p> <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/hpc_functions.html b/docs/build/html/hpc_functions.html index b4e2a376d570255f5247bbc112bbb216d08aa08a..627876c8f96a6fefdb5c1d5adcbf856a5b594d01 100644 --- a/docs/build/html/hpc_functions.html +++ b/docs/build/html/hpc_functions.html @@ -197,7 +197,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/index.html b/docs/build/html/index.html index f596f5792a19d1579dab3700d3a603e7aef802d3..7937e04943dba6d1afc70ff513cad7227b1a15d3 100644 --- a/docs/build/html/index.html +++ b/docs/build/html/index.html @@ -228,7 +228,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/modules.html b/docs/build/html/modules.html index 9abe42379b70b37661b55aa5b1dcb593eac43ab2..aa5eb5e26efd91d79e10b479834dcd6295957375 100644 --- a/docs/build/html/modules.html +++ b/docs/build/html/modules.html @@ -208,7 +208,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv index ac4ccb7b8e572b34ae35f77d6aafe34954e41522..f64b02e86059822786cc5d39fb155ab3016694d5 100644 Binary files a/docs/build/html/objects.inv and b/docs/build/html/objects.inv differ diff --git a/docs/build/html/plot_functions.html b/docs/build/html/plot_functions.html index 48bcfe1bca30e4c312c3aa8c75843b64cf94ba2d..308c870e7fc6e6eb40b16a5eb880c7e713b37bb4 100644 --- a/docs/build/html/plot_functions.html +++ b/docs/build/html/plot_functions.html @@ -430,7 +430,7 @@ This is not included in all the plotting routines.</p></li> <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/population_example.html b/docs/build/html/population_example.html new file mode 100644 index 0000000000000000000000000000000000000000..3452450151bbf54692a145e148d5afeb399690a5 --- /dev/null +++ b/docs/build/html/population_example.html @@ -0,0 +1,633 @@ + + +<!DOCTYPE html> +<html class="writer-html5" lang="en" > +<head> + <meta charset="utf-8"> + + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + + <title>Example of population script — binary_c-python documentation</title> + + + + <link rel="stylesheet" href="_static/css/theme.css" type="text/css" /> + <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> + + + + + + + + <!--[if lt IE 9]> + <script src="_static/js/html5shiv.min.js"></script> + <![endif]--> + + + <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script> + <script src="_static/jquery.js"></script> + <script src="_static/underscore.js"></script> + <script src="_static/doctools.js"></script> + <script src="_static/language_data.js"></script> + + <script type="text/javascript" src="_static/js/theme.js"></script> + + + <link rel="index" title="Index" href="genindex.html" /> + <link rel="search" title="Search" href="search.html" /> + <link rel="next" title="Binary_c parameters" href="binary_c_parameters.html" /> + <link rel="prev" title="Examples" href="general_examples.html" /> +</head> + +<body class="wy-body-for-nav"> + + + <div class="wy-grid-for-nav"> + + <nav data-toggle="wy-nav-shift" class="wy-nav-side"> + <div class="wy-side-scroll"> + <div class="wy-side-nav-search" > + + + + <a href="index.html" class="icon icon-home" alt="Documentation Home"> binary_c-python + + + + </a> + + + + + + + +<div role="search"> + <form id="rtd-search-form" class="wy-form" action="search.html" method="get"> + <input type="text" name="q" placeholder="Search docs" /> + <input type="hidden" name="check_keywords" value="yes" /> + <input type="hidden" name="area" value="default" /> + </form> +</div> + + + </div> + + + <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> + + + + + + + <p class="caption"><span class="caption-text">Contents:</span></p> +<ul class="current"> +<li class="toctree-l1"><a class="reference internal" href="readme_link.html">Python module for binary_c</a></li> +<li class="toctree-l1"><a class="reference internal" href="modules.html">Binarycpython code</a></li> +<li class="toctree-l1 current"><a class="reference internal" href="examples.html">Examples</a><ul class="current"> +<li class="toctree-l2"><a class="reference internal" href="general_examples.html">Examples</a></li> +<li class="toctree-l2 current"><a class="current reference internal" href="#">Example of population script</a></li> +</ul> +</li> +<li class="toctree-l1"><a class="reference internal" href="binary_c_parameters.html">Binary_c parameters</a></li> +<li class="toctree-l1"><a class="reference internal" href="grid_options_descriptions.html">Population grid code options</a></li> +</ul> + + + + </div> + + </div> + </nav> + + <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> + + + <nav class="wy-nav-top" aria-label="top navigation"> + + <i data-toggle="wy-nav-top" class="fa fa-bars"></i> + <a href="index.html">binary_c-python</a> + + </nav> + + + <div class="wy-nav-content"> + + <div class="rst-content"> + + + + + + + + + + + + + + + + + +<div role="navigation" aria-label="breadcrumbs navigation"> + + <ul class="wy-breadcrumbs"> + + <li><a href="index.html" class="icon icon-home"></a> »</li> + + <li><a href="examples.html">Examples</a> »</li> + + <li>Example of population script</li> + + + <li class="wy-breadcrumbs-aside"> + + + <a href="_sources/population_example.rst.txt" rel="nofollow"> View page source</a> + + + </li> + + </ul> + + + <hr/> +</div> + <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> + <div itemprop="articleBody"> + + <div class="section" id="example-of-population-script"> +<h1>Example of population script<a class="headerlink" href="#example-of-population-script" title="Permalink to this headline">¶</a></h1> +<p>The source code of a script to run a population of stars.</p> +<div class="highlight-python notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre> 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18 + 19 + 20 + 21 + 22 + 23 + 24 + 25 + 26 + 27 + 28 + 29 + 30 + 31 + 32 + 33 + 34 + 35 + 36 + 37 + 38 + 39 + 40 + 41 + 42 + 43 + 44 + 45 + 46 + 47 + 48 + 49 + 50 + 51 + 52 + 53 + 54 + 55 + 56 + 57 + 58 + 59 + 60 + 61 + 62 + 63 + 64 + 65 + 66 + 67 + 68 + 69 + 70 + 71 + 72 + 73 + 74 + 75 + 76 + 77 + 78 + 79 + 80 + 81 + 82 + 83 + 84 + 85 + 86 + 87 + 88 + 89 + 90 + 91 + 92 + 93 + 94 + 95 + 96 + 97 + 98 + 99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204</pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span> + +<span class="c1"># import json</span> +<span class="c1"># import time</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.grid</span> <span class="kn">import</span> <span class="n">Population</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.functions</span> <span class="kn">import</span> <span class="n">get_help_all</span><span class="p">,</span> <span class="n">get_help</span><span class="p">,</span> <span class="n">create_hdf5</span><span class="p">,</span> <span class="n">output_lines</span> +<span class="kn">from</span> <span class="nn">binarycpython.utils.custom_logging_functions</span> <span class="kn">import</span> <span class="n">temp_dir</span> + +<span class="c1">#########################################################</span> +<span class="c1"># This file serves as an example for running a population.</span> +<span class="c1"># The use of help(<function>) is a good way to inspect what parameters are there to use</span> +<span class="c1">#########################################################</span> + +<span class="k">def</span> <span class="nf">parse_function</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output</span><span class="p">):</span> + <span class="c1"># EXAMPLE PARSE_FUNCTION</span> + + <span class="c1"># extract info from the population instance</span> + + <span class="c1"># Get some information from the</span> + <span class="n">data_dir</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="s2">"data_dir"</span><span class="p">]</span> + <span class="n">base_filename</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="s2">"base_filename"</span><span class="p">]</span> + + <span class="c1"># Check directory, make if necessary</span> + <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span><span class="n">data_dir</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="n">seperator</span> <span class="o">=</span> <span class="s2">" "</span> + + <span class="c1"># Create filename</span> + <span class="n">outfilename</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">data_dir</span><span class="p">,</span> <span class="n">base_filename</span><span class="p">)</span> + + <span class="n">parameters</span> <span class="o">=</span> <span class="p">[</span><span class="s2">"time"</span><span class="p">,</span> <span class="s2">"mass"</span><span class="p">,</span> <span class="s2">"zams_mass"</span><span class="p">,</span> <span class="s2">"probability"</span><span class="p">,</span> <span class="s2">"radius"</span><span class="p">,</span> <span class="s2">"stellar_type"</span><span class="p">]</span> + + <span class="c1"># Go over the output.</span> + <span class="k">for</span> <span class="n">el</span> <span class="ow">in</span> <span class="n">output_lines</span><span class="p">(</span><span class="n">output</span><span class="p">):</span> + <span class="n">headerline</span> <span class="o">=</span> <span class="n">el</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="c1"># CHeck the header and act accordingly</span> + <span class="k">if</span> <span class="n">headerline</span> <span class="o">==</span> <span class="s2">"MY_STELLAR_DATA"</span><span class="p">:</span> + <span class="n">values</span> <span class="o">=</span> <span class="n">el</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="nb">print</span><span class="p">(</span><span class="n">values</span><span class="p">)</span> + + <span class="k">if</span> <span class="ow">not</span> <span class="nb">len</span><span class="p">(</span><span class="n">parameters</span><span class="p">)</span><span class="o">==</span><span class="nb">len</span><span class="p">(</span><span class="n">values</span><span class="p">):</span> + <span class="nb">print</span><span class="p">(</span><span class="s2">"Amount of column names isnt equal to amount of columns"</span><span class="p">)</span> + <span class="k">raise</span> <span class="ne">ValueError</span> + + <span class="k">if</span> <span class="ow">not</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">outfilename</span><span class="p">):</span> + <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">outfilename</span><span class="p">,</span> <span class="s2">"w"</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">seperator</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">parameters</span><span class="p">)</span> <span class="o">+</span> <span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span> + + <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">outfilename</span><span class="p">,</span> <span class="s2">"a"</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">seperator</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">values</span><span class="p">)</span> <span class="o">+</span> <span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span> + +<span class="c1"># Create population object</span> +<span class="n">example_pop</span> <span class="o">=</span> <span class="n">Population</span><span class="p">()</span> + +<span class="c1"># If you want verbosity, set this before other things</span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="n">verbose</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span> + +<span class="c1"># Setting values can be done via .set(<parameter_name>=<value>)</span> +<span class="c1"># Values that are known to be binary_c_parameters are loaded into bse_options.</span> +<span class="c1"># Those that are present in the default grid_options are set in grid_options</span> +<span class="c1"># All other values that you set are put in a custom_options dict</span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> + <span class="c1"># binary_c physics options</span> + <span class="n">M_1</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="c1"># bse_options</span> + <span class="n">separation</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="c1"># bse_options</span> + <span class="n">orbital_period</span><span class="o">=</span><span class="mi">45000000080</span><span class="p">,</span> <span class="c1"># bse_options</span> + <span class="n">max_evolution_time</span><span class="o">=</span><span class="mi">15000</span><span class="p">,</span> <span class="c1"># bse_options</span> + <span class="n">eccentricity</span><span class="o">=</span><span class="mf">0.02</span><span class="p">,</span> <span class="c1"># bse_options</span> + + <span class="c1"># Set companion to low mass</span> + <span class="n">M_2</span><span class="o">=</span><span class="mf">0.08</span><span class="p">,</span> <span class="c1"># Since in the example we run a single system, we should set the companion mass here. If we donm't do this, the code will complain. </span> + + <span class="c1"># grid_options</span> + <span class="n">amt_cores</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="c1"># grid_options</span> + <span class="n">verbose</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="c1"># verbosity. Not fully configured correctly yet but having it value of 1 prints alot of stuff</span> + + <span class="c1"># Custom options # TODO: need to be set in grid_options probably</span> + <span class="n">data_dir</span><span class="o">=</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span> + <span class="n">temp_dir</span><span class="p">(),</span> <span class="s2">"example_python_population_result"</span> + <span class="p">),</span> <span class="c1"># custom_options</span> + <span class="n">base_filename</span><span class="o">=</span><span class="s2">"example_pop.dat"</span><span class="p">,</span> <span class="c1"># custom_options</span> +<span class="p">)</span> + +<span class="c1"># Creating a parsing function</span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> + <span class="n">parse_function</span><span class="o">=</span><span class="n">parse_function</span><span class="p">,</span> <span class="c1"># Setting the parse function thats used in the evolve_population</span> +<span class="p">)</span> + +<span class="c1">### Custom logging</span> + +<span class="c1">## Below example requires changing the parse function</span> +<span class="c1">## very simple example of custom logging. Will work but need to change the parse function to handle that nicely.</span> +<span class="c1"># example_pop.set(</span> +<span class="c1"># C_auto_logging={</span> +<span class="c1"># "MY_HEADER_LINE": ["star[0].mass", "star[1].mass", "model.probability"]</span> +<span class="c1"># }</span> +<span class="c1"># )</span> + + +<span class="c1"># Log the moment when the star turns into neutron</span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">set</span><span class="p">(</span> + <span class="n">C_logging_code</span><span class="o">=</span><span class="s2">"""</span> +<span class="s2">if(stardata->star[0].stellar_type >= 13) </span> +<span class="s2">{</span> +<span class="s2"> if (stardata->model.time < stardata->model.max_evolution_time)</span> +<span class="s2"> {</span> +<span class="s2"> Printf("MY_STELLAR_DATA </span><span class="si">%30.12e</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%d</span><span class="se">\\</span><span class="s2">n",</span> +<span class="s2"> // </span> +<span class="s2"> stardata->model.time, // 1</span> +<span class="s2"> stardata->star[0].mass, // 2</span> +<span class="s2"> stardata->common.zero_age.mass[0], // 4</span> +<span class="s2"> stardata->model.probability, // 5</span> +<span class="s2"> stardata->star[0].radius, // 6</span> +<span class="s2"> stardata->star[0].stellar_type // 7</span> +<span class="s2"> );</span> +<span class="s2"> };</span> +<span class="s2"> /* Kill the simulation to save time */</span> +<span class="s2"> stardata->model.max_evolution_time = stardata->model.time - stardata->model.dtm;</span> +<span class="s2">};</span> +<span class="s2">"""</span> +<span class="p">)</span> + +<span class="c1"># Add grid variables</span> +<span class="n">resolution</span> <span class="o">=</span> <span class="p">{</span> + <span class="s2">"M_1"</span><span class="p">:</span> <span class="mi">20</span><span class="p">,</span> + <span class="s1">'q'</span><span class="p">:</span> <span class="mi">20</span><span class="p">,</span> + <span class="s1">'per'</span><span class="p">:</span> <span class="mi">40</span> +<span class="p">}</span> + +<span class="c1"># Mass</span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">add_grid_variable</span><span class="p">(</span> + <span class="n">name</span><span class="o">=</span><span class="s2">"lnm1"</span><span class="p">,</span> + <span class="n">longname</span><span class="o">=</span><span class="s2">"Primary mass"</span><span class="p">,</span> + <span class="n">valuerange</span><span class="o">=</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span> <span class="mi">150</span><span class="p">],</span> + <span class="n">resolution</span><span class="o">=</span><span class="s2">"</span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">resolution</span><span class="p">[</span><span class="s2">"M_1"</span><span class="p">]),</span> + <span class="n">spacingfunc</span><span class="o">=</span><span class="s2">"const(math.log(2), math.log(150), </span><span class="si">{}</span><span class="s2">)"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">resolution</span><span class="p">[</span><span class="s2">"M_1"</span><span class="p">]),</span> + <span class="n">precode</span><span class="o">=</span><span class="s2">"M_1=math.exp(lnm1)"</span><span class="p">,</span> + <span class="n">probdist</span><span class="o">=</span><span class="s2">"three_part_powerlaw(M_1, 0.1, 0.5, 1.0, 150, -1.3, -2.3, -2.3)*M_1"</span><span class="p">,</span> + <span class="n">dphasevol</span><span class="o">=</span><span class="s2">"dlnm1"</span><span class="p">,</span> + <span class="n">parameter_name</span><span class="o">=</span><span class="s2">"M_1"</span><span class="p">,</span> + <span class="n">condition</span><span class="o">=</span><span class="s2">""</span><span class="p">,</span> <span class="c1"># Impose a condition on this grid variable. Mostly for a check for yourself</span> +<span class="p">)</span> + +<span class="c1"># # Mass ratio</span> +<span class="c1"># test_pop.add_grid_variable(</span> +<span class="c1"># name="q",</span> +<span class="c1"># longname="Mass ratio",</span> +<span class="c1"># valuerange=["0.1/M_1", 1],</span> +<span class="c1"># resolution="{}".format(resolution['q']),</span> +<span class="c1"># spacingfunc="const(0.1/M_1, 1, {})".format(resolution['q']),</span> +<span class="c1"># probdist="flatsections(q, [{'min': 0.1/M_1, 'max': 1.0, 'height': 1}])",</span> +<span class="c1"># dphasevol="dq",</span> +<span class="c1"># precode="M_2 = q * M_1",</span> +<span class="c1"># parameter_name="M_2",</span> +<span class="c1"># condition="", # Impose a condition on this grid variable. Mostly for a check for yourself </span> +<span class="c1"># )</span> + +<span class="c1"># # </span> +<span class="c1"># test_pop.add_grid_variable(</span> +<span class="c1"># name="log10per", # in days</span> +<span class="c1"># longname="log10(Orbital_Period)", </span> +<span class="c1"># valuerange=[0.15, 5.5],</span> +<span class="c1"># resolution="{}".format(resolution["per"]),</span> +<span class="c1"># spacingfunc="const(0.15, 5.5, {})".format(resolution["per"]),</span> +<span class="c1"># precode="""orbital_period = 10** log10per</span> +<span class="c1"># sep = calc_sep_from_period(M_1, M_2, orbital_period)</span> +<span class="c1"># sep_min = calc_sep_from_period(M_1, M_2, 10**0.15)</span> +<span class="c1"># sep_max = calc_sep_from_period(M_1, M_2, 10**5.5)""", </span> +<span class="c1"># probdist="sana12(M_1, M_2, sep, orbital_period, sep_min, sep_max, math.log10(10**0.15), math.log10(10**5.5), -0.55)",</span> +<span class="c1"># parameter_name="orbital_period",</span> +<span class="c1"># dphasevol="dlog10per",</span> +<span class="c1"># )</span> + + + +<span class="c1"># Exporting of all the settings can be done with .export_all_info()</span> +<span class="c1"># on default it exports everything, but can be supressed by turning it off:</span> +<span class="c1"># population settings (bse_options, grid_options, custom_options), turn off with include_population</span> +<span class="c1"># settings=False</span> +<span class="c1"># binary_c_defaults (all the commandline arguments that binary c accepts, and their defaults).</span> +<span class="c1"># turn off with include_binary_c_defaults=False</span> +<span class="c1"># include_binary_c_version_info (all the compilation info, and information about the compiled</span> +<span class="c1"># parameters), turn off with include_binary_c_version_info=False</span> +<span class="c1"># include_binary_c_help_all (all the help information for all the binary_c parameters),</span> +<span class="c1"># turn off with include_binary_c_help_all=Fase</span> +<span class="c1"># On default it will write this to the custom_options['data_dir'], but that can be overriden by</span> +<span class="c1"># setting use_datadir=False and providing an outfile=<></span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">export_all_info</span><span class="p">()</span> + +<span class="c1">## Executing a single system</span> +<span class="c1">## This uses the M_1 orbital period etc set with the set function</span> +<span class="c1"># output = example_pop.evolve_single()</span> +<span class="c1"># print(output)</span> + +<span class="c1">## Executing a population</span> +<span class="c1">## This uses the values generated by the grid_variables</span> +<span class="n">example_pop</span><span class="o">.</span><span class="n">evolve</span><span class="p">()</span> <span class="c1"># TODO: update this function call</span> + +<span class="c1"># Wrapping up the results to an hdf5 file can be done by using the create_hdf5</span> +<span class="c1"># (<directory containing data and settings>) This function takes the settings file</span> +<span class="c1"># (ending in _settings.json) and the data files (ending in .dat) from the data_dir</span> +<span class="c1"># and packing them into an hdf5 file, which is then written into the same data_dir directory</span> +<span class="n">create_hdf5</span><span class="p">(</span><span class="n">data_dir</span><span class="o">=</span><span class="n">example_pop</span><span class="o">.</span><span class="n">custom_options</span><span class="p">[</span><span class="s2">"data_dir"</span><span class="p">],</span> <span class="n">name</span><span class="o">=</span><span class="s2">"example_pop.hdf5"</span><span class="p">)</span> +</pre></div> +</td></tr></table></div> +</div> + + + </div> + + </div> + <footer> + + <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> + + <a href="binary_c_parameters.html" class="btn btn-neutral float-right" title="Binary_c parameters" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a> + + + <a href="general_examples.html" class="btn btn-neutral float-left" title="Examples" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a> + + </div> + + + <hr/> + + <div role="contentinfo"> + <p> + + © Copyright 2021, David Hendriks, Robert Izzard + + </p> + </div> + + + + Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a + + <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> + + provided by <a href="https://readthedocs.org">Read the Docs</a>. + +</footer> + + </div> + </div> + + </section> + + </div> + + + <script type="text/javascript"> + jQuery(function () { + SphinxRtdTheme.Navigation.enable(true); + }); + </script> + + + + + + +</body> +</html> \ No newline at end of file diff --git a/docs/build/html/py-modindex.html b/docs/build/html/py-modindex.html index 9440b93e90b774c2e6ed1298bb4416769982db0b..3a44ccaf316334b0c2cba68c95f003caf0842bff 100644 --- a/docs/build/html/py-modindex.html +++ b/docs/build/html/py-modindex.html @@ -237,7 +237,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/readme_link.html b/docs/build/html/readme_link.html index 5f3f9f89d8c77c13ce95b175553eb2f7750d94ee..0d318532938c6888bb3eeb3861f4d942b9478ae7 100644 --- a/docs/build/html/readme_link.html +++ b/docs/build/html/readme_link.html @@ -260,7 +260,7 @@ export PYTHONPATH=<full path to root dir of repo>:$PYTHONPATH <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/run_system_wrapper.html b/docs/build/html/run_system_wrapper.html index 6130498febeb635fa4a54d547da182d59a1253bf..6a55ea25c60438e298258e2e7fc71285ea652c80 100644 --- a/docs/build/html/run_system_wrapper.html +++ b/docs/build/html/run_system_wrapper.html @@ -244,7 +244,7 @@ and returns what the parse_function returns</p> <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/search.html b/docs/build/html/search.html index a715353036ae243b42b9147a90a7fad5893a037f..611aafb8d84bd3b75951ff9d0288a405cf408aee 100644 --- a/docs/build/html/search.html +++ b/docs/build/html/search.html @@ -176,7 +176,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js index e67d016e379708e1b1c1510bb8dff2433973af2e..18e10d8649e817ea96646ad84173d62364080160 100644 --- a/docs/build/html/searchindex.js +++ b/docs/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["binary_c_parameters","custom_logging_functions","distribution_functions","examples","functions","general_examples","grid","grid_options_defaults","grid_options_descriptions","hpc_functions","index","modules","plot_functions","readme_link","run_system_wrapper","spacing_functions","stellar_types","useful_funcs"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["binary_c_parameters.rst","custom_logging_functions.rst","distribution_functions.rst","examples.rst","functions.rst","general_examples.rst","grid.rst","grid_options_defaults.rst","grid_options_descriptions.rst","hpc_functions.rst","index.rst","modules.rst","plot_functions.rst","readme_link.rst","run_system_wrapper.rst","spacing_functions.rst","stellar_types.rst","useful_funcs.rst"],objects:{"binarycpython.utils":{custom_logging_functions:[1,0,0,"-"],distribution_functions:[2,0,0,"-"],functions:[4,0,0,"-"],grid:[6,0,0,"-"],grid_options_defaults:[7,0,0,"-"],hpc_functions:[9,0,0,"-"],plot_functions:[12,0,0,"-"],run_system_wrapper:[14,0,0,"-"],spacing_functions:[15,0,0,"-"],stellar_types:[16,0,0,"-"],useful_funcs:[17,0,0,"-"]},"binarycpython.utils.custom_logging_functions":{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:[1,1,1,""]},"binarycpython.utils.distribution_functions":{"const":[2,1,1,""],Arenou2010_binary_fraction:[2,1,1,""],Izzard2012_period_distribution:[2,1,1,""],Kroupa2001:[2,1,1,""],calculate_constants_three_part_powerlaw:[2,1,1,""],cosmic_SFH_madau_dickinson2014:[2,1,1,""],duquennoy1991:[2,1,1,""],flat:[2,1,1,""],flatsections:[2,1,1,""],gaussian:[2,1,1,""],gaussian_func:[2,1,1,""],gaussian_normalizing_const:[2,1,1,""],imf_chabrier2003:[2,1,1,""],imf_scalo1986:[2,1,1,""],imf_scalo1998:[2,1,1,""],imf_tinsley1980:[2,1,1,""],interpolate_in_mass_izzard2012:[2,1,1,""],ktg93:[2,1,1,""],number:[2,1,1,""],powerlaw:[2,1,1,""],powerlaw_constant:[2,1,1,""],prepare_dict:[2,1,1,""],raghavan2010_binary_fraction:[2,1,1,""],sana12:[2,1,1,""],set_opts:[2,1,1,""],three_part_powerlaw:[2,1,1,""]},"binarycpython.utils.functions":{BinaryCEncoder:[4,2,1,""],binarycDecoder:[4,2,1,""],binaryc_json_serializer:[4,1,1,""],create_arg_string:[4,1,1,""],create_hdf5:[4,1,1,""],example_parse_output:[4,1,1,""],extract_ensemble_json_from_string:[4,1,1,""],filter_arg_dict:[4,1,1,""],get_arg_keys:[4,1,1,""],get_defaults:[4,1,1,""],get_help:[4,1,1,""],get_help_all:[4,1,1,""],get_help_super:[4,1,1,""],handle_ensemble_string_to_json:[4,1,1,""],inspect_dict:[4,1,1,""],load_logfile:[4,1,1,""],make_build_text:[4,1,1,""],merge_dicts:[4,1,1,""],output_lines:[4,1,1,""],parse_binary_c_version_info:[4,1,1,""],remove_file:[4,1,1,""],return_binary_c_version_info:[4,1,1,""],temp_dir:[4,1,1,""],verbose_print:[4,1,1,""],write_binary_c_parameter_descriptions_to_rst_file:[4,1,1,""]},"binarycpython.utils.functions.BinaryCEncoder":{"default":[4,3,1,""]},"binarycpython.utils.functions.binarycDecoder":{decode:[4,3,1,""]},"binarycpython.utils.grid":{Population:[6,2,1,""]},"binarycpython.utils.grid.Population":{add_grid_variable:[6,3,1,""],evolve:[6,3,1,""],evolve_population:[6,3,1,""],evolve_single:[6,3,1,""],export_all_info:[6,3,1,""],parse_cmdline:[6,3,1,""],return_all_info:[6,3,1,""],return_population_settings:[6,3,1,""],set:[6,3,1,""],write_binary_c_calls_to_file:[6,3,1,""]},"binarycpython.utils.grid_options_defaults":{grid_options_description_checker:[7,1,1,""],grid_options_help:[7,1,1,""],write_grid_options_to_rst_file:[7,1,1,""]},"binarycpython.utils.plot_functions":{color_by_index:[12,1,1,""],dummy:[12,1,1,""],parse_function_hr_diagram:[12,1,1,""],parse_function_masses:[12,1,1,""],parse_function_orbit:[12,1,1,""],plot_HR_diagram:[12,1,1,""],plot_masses:[12,1,1,""],plot_orbit:[12,1,1,""],plot_system:[12,1,1,""]},"binarycpython.utils.run_system_wrapper":{run_system:[14,1,1,""]},"binarycpython.utils.spacing_functions":{"const":[15,1,1,""]},"binarycpython.utils.useful_funcs":{calc_period_from_sep:[17,1,1,""],calc_sep_from_period:[17,1,1,""],ragb:[17,1,1,""],roche_lobe:[17,1,1,""],rzams:[17,1,1,""],zams_collision:[17,1,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method"},terms:{"0001":17,"0007":2,"001":0,"002":5,"054":2,"0820":0,"08msun":0,"0902":0,"100":[0,2],"1000":5,"100000000000":5,"10e4":13,"115":2,"125":0,"12e":1,"13e3":0,"1403":2,"15000":[0,5],"15msun":2,"190":0,"1951":0,"1972":0,"1975":0,"1980":2,"1983":17,"1986":[0,2],"1991":2,"1993":0,"1996":17,"1998":[0,2],"1999":0,"1ckzg0p9":13,"1e9":0,"200":0,"2000":0,"2001":2,"2002":0,"2003":[0,2],"2004":0,"2005":0,"2009":0,"2010":[0,2],"2012":[0,2],"2013":0,"2014":[0,2],"2015":0,"2016":0,"2017":0,"2018":[0,1],"2019":[0,13],"2020":0,"2021":0,"20210111":0,"257":17,"25msun":0,"281":17,"2969346":2,"2msun":0,"3000":0,"3msun":2,"42msun":0,"44msun":0,"4530":5,"463f148ec":0,"4e3":0,"500":0,"5479":0,"5msun":0,"625":0,"6944":0,"6msun":0,"7619":0,"763":2,"78125":0,"795":2,"80msol":2,"boolean":[0,4,6,8,12,17],"break":0,"case":[0,4],"catch":[4,5,8],"char":8,"class":[4,6],"const":[2,6,15],"default":[0,1,2,4,5,6,7,8,14],"export":[4,6,13],"float":[0,2,4,15,17],"function":[0,1,2,3,5,6,7,8,9,10,11,12,14,15,17],"import":[5,6,13],"int":[0,1,2,4,6,7,8,15,17],"long":[0,4,6,8,16],"new":[0,2,4,6],"null":[0,4],"paczy\u0144ski":0,"public":[7,10],"return":[0,1,2,4,6,7,8,12,14,15,17],"short":[0,16],"super":0,"switch":0,"throw":13,"true":[0,4,6,7,8,12],"try":[0,13],"while":0,And:[7,17],For:[0,12],Gas:0,Its:8,NOT:[0,6,14],Not:8,One:0,Pms:12,That:[0,13],The:[0,1,2,4,5,6,8,12,14],Then:[4,13],There:[2,5,6,7,8,12],These:[4,8,12],Use:[0,5,6],Used:[0,8,12],Useful:[0,6,7],Uses:[0,15],Was:0,Will:[4,6,14],With:7,_binary_c_bind:[4,5],_binary_c_config_execut:8,_binary_c_dir:8,_binary_c_execut:8,_binary_c_shared_librari:8,_commandline_input:8,_count:8,_custom_logging_shared_library_fil:8,_end_time_evolut:8,_errors_exceed:8,_errors_found:8,_evolution_type_opt:8,_failed_count:8,_failed_prob:8,_failed_systems_error_cod:8,_generate_grid_cod:8,_grid_vari:8,_main_pid:8,_population_id:8,_probtot:8,_repeat:8,_set:6,_start_time_evolut:8,_store_memaddr:8,_system_gener:8,_total_starcount:8,abat:0,abbrevi:16,abl:13,about:[4,6,7,13,17],abov:[0,4,5,6,13],abund:0,acc2:0,acceler:0,accept:4,access:8,accord:0,accret:0,accretion_end_tim:0,accretion_limit_dynamical_multipli:0,accretion_limit_eddington_lmms_multipli:0,accretion_limit_eddington_steady_multipli:0,accretion_limit_eddington_wd_to_remnant_multipli:0,accretion_limit_thermal_multipli:0,accretion_start_tim:0,accretor:[0,17],acess:2,act:0,activ:0,actual:[0,4,6,12,13],adapt:0,add:[2,4,6,12,15],add_grid_vari:6,added:4,admittingli:12,adress:[1,5,8],affect:0,after:[0,6],ag89:0,again:4,against:12,agb:0,agb_3dup_algorithm:0,agb_core_algorithm:0,agb_core_algorithm_default:0,agb_core_algorithm_hurlei:0,agb_core_algorithm_karaka:0,agb_luminosity_algorithm:0,agb_luminosity_algorithm_default:0,agb_luminosity_algorithm_hurlei:0,agb_luminosity_algorithm_karaka:0,agb_radius_algorithm:0,agb_radius_algorithm_default:0,agb_radius_algorithm_hurlei:0,agb_radius_algorithm_karaka:0,agb_third_dredge_up_algorithm_default:0,agb_third_dredge_up_algorithm_hurlei:0,agb_third_dredge_up_algorithm_karaka:0,agb_third_dredge_up_algorithm_stancliff:0,age:0,aging:0,algorithm:10,algothim:0,all:[0,1,2,4,5,6,7,8,11,12,14],all_info:6,allow:[0,5,8],allow_nan:4,along:[0,7,8],alot:8,alpha:0,alpha_c:0,alphacb:0,alreadi:6,also:[0,4,5,6,7,13,17],alt:13,altern:0,alwai:0,amanda:0,amax:2,amin:2,amount:[0,6,7,8,15],amt_cor:8,analys:14,andrew:13,andronov:0,angelou_lithium_cheb_decay_tim:0,angelou_lithium_cheb_massfrac:0,angelou_lithium_cheb_tim:0,angelou_lithium_decay_funct:0,angelou_lithium_decay_function_exponenti:0,angelou_lithium_decay_tim:0,angelou_lithium_eagb_decay_tim:0,angelou_lithium_eagb_massfrac:0,angelou_lithium_eagb_tim:0,angelou_lithium_gb_decay_tim:0,angelou_lithium_gb_massfrac:0,angelou_lithium_gb_tim:0,angelou_lithium_hg_decay_tim:0,angelou_lithium_hg_massfrac:0,angelou_lithium_hg_tim:0,angelou_lithium_lmms_decay_tim:0,angelou_lithium_lmms_massfrac:0,angelou_lithium_lmms_tim:0,angelou_lithium_ms_decay_tim:0,angelou_lithium_ms_massfrac:0,angelou_lithium_ms_tim:0,angelou_lithium_tpagb_decay_tim:0,angelou_lithium_tpagb_massfrac:0,angelou_lithium_tpagb_tim:0,angelou_lithium_vrot_trigg:0,angelou_lithium_vrotfrac_trigg:0,angmom_to_orbit_factor:0,angular:[0,12],angular_momentum_accretion_rate1:0,angular_momentum_accretion_rate2:0,angular_momentum_accretion_rate_orbit:0,ani:[0,2,4,6],anoth:0,ansi:0,anyth:[0,8],anywai:6,anywher:[6,13],api:[0,4],api_log_filename_prefix:0,append:[1,4],appli:0,approach:5,appropri:0,approxim:0,aren:2,arenou2010_binary_fract:2,arg:[2,4,12],arg_dict:4,argpair:4,argstr:5,argument:[0,2,4,5,6,8,14],argument_of_periastron:0,argument_of_periastron_quadrupl:0,argument_of_periastron_tripl:0,around:[0,5],arrai:[2,4,5],artifici:0,artificial_accretion_ignor:0,arxiv:[0,2],asarrai:5,asign:6,ask:[0,17],asplund:0,assum:[0,12],ast871:0,astronomi:0,astropi:12,atom:4,attempt:[4,6],auto:11,autogen_c_logging_cod:[1,5],autogener:[1,5],automat:[0,1,5,7,13],avaibl:13,avail:[0,4,8,12],awai:0,axi:[0,12],b_1:0,b_2:0,b_3:0,b_4:0,b_inclination1:0,b_inclination2:0,b_inclination3:0,b_inclination4:0,back:0,background:5,backward:0,bagb:0,barn:0,base:[0,2,4,5,6,12,13,17],base_filenam:6,bashrc:13,basic:[5,6],batchmod:0,beasor:0,becaus:[0,5,6,13],becom:[0,1,2,4],been:[0,6],befor:[0,6,8,13],behaviour:[4,14],behind:5,being:4,belczynski:0,below:0,berro:0,bertolami:0,best:[6,8],beta_reverse_nova:0,beta_reverse_novae_geometri:0,better:6,between:[0,2,15],bewar:6,bh_belczynski:0,bh_fryer12_delai:0,bh_fryer12_rapid:0,bh_hurley2002:0,bh_prescript:0,bh_spera2015:0,big:0,bin:[0,5,13],binari:[2,5,6,8,10,12,13,17],binary_c:[1,2,4,5,6,8,12,14],binary_c_cal:6,binary_c_inline_config:1,binary_c_log_cod:[1,5],binary_c_macro:0,binary_c_output:4,binary_c_python:4,binary_c_python_api:13,binary_c_task_:0,binary_c_write_log_cod:1,binary_grid:0,binary_star:17,binaryc:[1,4,13,14],binaryc_config:1,binaryc_json_seri:4,binarycdecod:4,binarycencod:4,binarycpython:[1,2,4,5,6,7,10,12,13,14,15,17],bind:0,birth:0,bivari:0,black:0,black_hol:0,bloecker:0,blog:1,boltzman:12,boltzmann:0,bondi:0,bondi_hoyle_accretion_factor:0,bool:[4,6,7,12],born:0,both:[0,4],bottom:0,bound:[2,15],boundari:2,brake:0,branch:[0,4],branch_david:0,breakup:0,broken:0,bse:[0,2],bse_opt:6,buffer:0,build:[0,1,4,10],built:[0,1,4,13],burn:0,busso:0,bye:0,c13_eff:0,c_auto_log:8,c_log:0,c_logging_cod:8,calc_period_from_sep:17,calc_sep_from_period:17,calcul:[0,2,6,8,17],calculate_constants_three_part_powerlaw:2,call:[0,1,4,6,8,12,14],can:[0,1,2,4,5,6,8,12,13,14],cannot:[6,13],cap:0,captur:0,carbon:0,carbon_oxygen_white_dwarf:0,carlo:0,carrasco:0,carri:0,cast:[4,5],categor:4,caught:4,cbdisc:0,cbdisc_alpha:0,cbdisc_eccentricity_pumping_dermin:0,cbdisc_eccentricity_pumping_method:0,cbdisc_eccentricity_pumping_non:0,cbdisc_end_evolution_after_disc:0,cbdisc_fail_ring_inside_separ:0,cbdisc_gamma:0,cbdisc_init_djdm:0,cbdisc_init_dm:0,cbdisc_inner_edge_strip:0,cbdisc_inner_edge_stripping_timescal:0,cbdisc_kappa:0,cbdisc_mass_loss_constant_r:0,cbdisc_mass_loss_fuv_multipli:0,cbdisc_mass_loss_inner_l2_cross_multipli:0,cbdisc_mass_loss_inner_viscous_accretion_method:0,cbdisc_mass_loss_inner_viscous_accretion_method_equ:0,cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015:0,cbdisc_mass_loss_inner_viscous_accretion_method_non:0,cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015:0,cbdisc_mass_loss_inner_viscous_angular_momentum_multipli:0,cbdisc_mass_loss_inner_viscous_multipli:0,cbdisc_mass_loss_ism_pressur:0,cbdisc_mass_loss_ism_ram_pressure_multipli:0,cbdisc_mass_loss_xray_multipli:0,cbdisc_max_lifetim:0,cbdisc_minimum_evaporation_timescal:0,cbdisc_minimum_fr:0,cbdisc_minimum_luminos:0,cbdisc_minimum_mass:0,cbdisc_no_wind_if_cbdisc:0,cbdisc_outer_edge_strip:0,cbdisc_outer_edge_stripping_timescal:0,cbdisc_resonance_damp:0,cbdisc_resonance_multipli:0,cbdisc_torquef:0,cbdisc_viscous_l2_coupl:0,cbdisc_viscous_photoevaporative_coupl:0,cbdisc_viscous_photoevaporative_coupling_inst:0,cbdisc_viscous_photoevaporative_coupling_non:0,cbdisc_viscous_photoevaporative_coupling_visc:0,cemp:0,cemp_cfe_minimum:0,certain:[3,8],cf_amanda_log:0,cflag:13,chabrier:2,chandrasekhar:0,chandrasekhar_mass:0,chang:[0,1,2,4,6,7,8],chapter:[0,3,8,11],cheb:0,check:[2,4,6,7,17],check_circular:4,chemic:0,chen:0,child:[4,13],choic:[0,6,12],choos:[0,5,12],chosen:6,circular:0,circumbinari:0,circumstanti:0,claei:0,clark:0,clean:[1,6,13],clean_up_custom_logging_fil:6,clear:4,cloud:0,cls:4,cluster:9,cmdline:6,code:[0,1,3,5,6,7,10,12,13,14],collaps:0,collapsar:0,collect:17,collid:17,color:12,color_by_index:12,colour:0,colour_log:0,column:[5,12],com:1,combin:[1,4,6,8],combine_ensemble_with_thread_join:8,come:[2,13,15],comenv_bs:0,comenv_disc_angmom_fract:0,comenv_disc_mass_fract:0,comenv_ejection_spin_method:0,comenv_ejection_spin_method_do_noth:0,comenv_ejection_spin_method_sychron:0,comenv_ejection_spin_method_synchron:0,comenv_merger_spin_method:0,comenv_merger_spin_method_breakup:0,comenv_merger_spin_method_conserve_angmom:0,comenv_merger_spin_method_conserve_omega:0,comenv_merger_spin_method_specif:0,comenv_ms_accret:0,comenv_ms_accretion_fract:0,comenv_ms_accretion_mass:0,comenv_nandez2016:0,comenv_nelemans_tout:0,comenv_ns_accret:0,comenv_ns_accretion_fract:0,comenv_ns_accretion_mass:0,comenv_post_eccentr:0,comenv_prescript:0,comenv_splitmass:0,comenv_undef:0,command:[0,1,6,8,13],commandlin:[6,8],commit:4,common:0,companion:0,compar:0,compil:[1,5,13],compile_shared_lib:1,complain:13,complex:[5,6,8,12],compon:[4,12],comput:9,condit:[5,6],condor:[6,8,9],condor_grid:6,config:[1,8,13],config_fil:1,configur:[2,5],conserv:0,consid:[0,1,2,4,6,8,12],constant:[0,2,12],construct:[0,1,5],conta:7,contain:[0,1,2,3,4,6,7,8,9,11,12,14,15,16],content:[4,10],continu:6,control:0,convect:0,converg:0,convert:[2,4,6],cool:0,copi:[6,13,17],core:[0,6,8,12],core_helium_burn:0,core_mass:0,correct:[6,12,17],correctli:[5,12,13],correspond:12,corretor:0,cosmic:2,cosmic_sfh_madau_dickinson2014:2,could:[0,4],counter:8,coupl:0,coverag:13,cowd:0,cpu:0,crap_paramet:0,creat:[4,6],create_and_load_logging_funct:[1,5],create_arg_str:4,create_hdf5:4,critic:0,cross:0,ctype:1,cuntz:0,current:[0,4],custom:[0,1,4,5,6,8,12,14],custom_log:[5,6,8],custom_logging_cod:[1,5,14],custom_logging_func_memaddr:[5,8],custom_logging_funct:[5,8,10,11],custom_logging_info:6,custom_opt:6,cut:5,dai:[0,5,17],damp:0,dat:[0,4],data:[0,4,5,14],data_dir:[4,6,8],datadir:6,datafram:[5,12],date:6,david:[0,13],david_logging_funct:0,dd7:0,deactiv:0,deal:4,death:0,debug:8,decai:0,decid:[0,4,5],decod:4,decreas:0,deeper:6,def:5,default_to_metal:0,defaultdict:4,defer:0,defin:[0,1,2,6,12],definit:[1,17],degener:0,degre:0,delta_mcmin:0,den:0,depend:[0,2,12],deprec:0,dermin:0,describ:[0,2,5,8,13],descript:[0,4,8,10,11],design:12,desir:0,destruct:6,detail:[0,4],determin:[0,6,17],deton:0,dev:0,develop:1,deviat:2,dewi:0,dex:0,df2:5,diagnost:8,diagram:[0,12],dickonson:2,dict:[1,2,4,6,7,16],dict_1:4,dict_2:4,dictinari:8,dictionari:[1,2,4,6,7,8,12,16],did:[4,13],didnt:13,differ:[0,4,6,12,13],dimmer:0,dir:13,direct:[0,6],directli:5,director:8,directori:[0,4,6,8,13],disabl:0,disable_end_log:0,disable_ev:0,disc:0,disc_legacy_log:0,disc_log2d:0,disc_log:0,disc_log_directori:0,disc_log_dt:0,disc_log_level_non:0,disc_log_level_norm:0,disc_log_level_normal_first_disc_onli:0,disc_log_level_subtimestep:0,disc_log_level_subtimestep_first_disc_onli:0,disc_n_monte_carlo_guess:0,disc_stripping_timescale_infinit:0,disc_stripping_timescale_inst:0,disc_stripping_timescale_orbit:0,disc_stripping_timescale_visc:0,disc_timestep_factor:0,discs_circumbinary_from_comenv:0,discs_circumbinary_from_wind:0,disk:[0,6],dispers:0,displai:0,distribut:[0,2,9],distribution_funct:[10,11],distributoon:2,divid:9,dlnm1:6,dlogp:2,doc:[4,7,13],doc_fetch:2,docstr:12,document:[4,7,8,11,13],doe:[0,2,6,13,17],doesn:6,doesnt:[5,7],doing:[0,1,6,7],don:8,done:[0,5,13],donor:[0,17],donor_limit_dynamical_multipli:0,donor_limit_envelope_multipli:0,donor_limit_thermal_multipli:0,donor_rate_algorithm_bs:0,donor_rate_algorithm_claeys2014:0,dont:[2,4,5,6],dphasevol:6,dr2:0,dr3:0,drai:0,dredg:0,dtfac:0,dtlimit:4,dtm:1,dtype:5,due:13,dummi:[2,12],dump:[0,4],dumpvers:0,duquennoi:2,duquennoy1991:2,dure:0,dust:0,dwarf:0,dynam:0,e2_hurley_2002:0,e2_izzard:0,e2_prescript:0,each:[0,2,4,6,8],eagb:0,eagb_wind_beasor_etal_2020:0,eagb_wind_bs:0,eagb_wind_goldman_etal_2017:0,eagbwind:0,eagbwindfac:0,earli:0,early_asymptotic_giant_branch:0,easi:4,easier:[4,5],easili:13,ecc:[5,6],eccentr:[0,2,5,12,17],eccentric_rlof_model:0,eccentricity_quadrupl:0,eccentricity_tripl:0,echo:0,eddington:0,edg:0,edu:0,effect:[0,2],effective_metal:0,effici:0,egg:13,eggleton:[0,17],either:[0,4,5,6,14],eject:0,eld:0,eldridg:0,electon:0,electron:0,element:[0,1,4,8,12],email:4,emp:0,emp_logg_maximum:0,emp_minimum_ag:0,empti:[4,7],enabl:0,encod:4,encount:8,end:[0,4,8],energi:0,enhanc:0,enlarg:0,ensembl:[0,4,8],ensemble_def:0,ensemble_dt:0,ensemble_filter_:0,ensemble_filters_off:0,ensemble_json:4,ensemble_legacy_ensembl:0,ensemble_list:6,ensemble_logdt:0,ensemble_logtim:0,ensemble_output_:8,ensemble_result:8,ensemble_startlogtim:0,ensure_ascii:4,enter:0,enthalpi:0,entir:5,entri:4,entrypoint:6,env:12,envelop:0,environ:10,episod:0,equal:4,equat:0,equation_of_state_algorithm:0,equation_of_state_paczynski:0,equatori:0,error:[4,8,13],esa:2,escap:0,escape_fract:0,escape_veloc:0,esnemble_macro:0,eta:0,etal:0,etc:[0,4,6,9,12,13,14],euler:0,evalu:[2,6,17],evan:0,evapor:0,event:0,everi:0,everyth:[6,8],evid:0,evolut:[0,1,5,6,8,12],evolution_split:0,evolution_splitting_maxdepth:0,evolution_splitting_sn_n:0,evolution_typ:8,evolutionari:0,evolv:[0,6],evolve_popul:6,evolve_singl:6,exact:[1,4,8],exactli:0,exampl:[1,2,4,6,10,13,14],example_head:4,example_header_1:5,example_header_2:5,example_log:14,example_log_co:1,example_parse_output:[4,5],exce:[0,8],except:[4,6,7,12],excess:0,execut:[0,6,8,13],exist:[0,6,7,13],exist_ok:4,exit:0,exp:6,expand:14,experienc:13,experiment:[0,4,13],explain:4,explicilti:1,explod:0,explos:0,expoenti:0,expon:0,export_all_info:6,express:0,extend:13,extern:0,extra:[0,6,8,14],extract:4,extract_ensemble_json_from_str:4,fabian:0,fabian_imf_log:0,fabian_imf_log_tim:0,fabian_imf_log_timestep:0,factor:[0,2,8],fail:[0,4,8,13],fail_sil:4,failed_system:8,failed_system_log:8,failed_systems_threshold:8,fals:[0,4,6,8,12],fancy_parsing_funct:14,faq:10,far:0,farmer:0,fast:0,ferguson:0,field:0,fig:[0,2],figur:[8,12,13],file:[0,1,4,6,7,8,9,12,13],file_log:0,filenam:[0,1,4,5,6,8,14],filepath:[1,4],filesystem:4,filter:[0,4],filter_arg_dict:4,filter_valu:4,fin:0,find:[6,8],finish:[4,12],first:[0,2,4,6,17],first_giant_branch:0,fishlock:0,fit:[0,2,6,17],fix:[0,2,4,6,12],flag:[1,4,8],flash:0,flat:2,flatsect:2,flaw:6,float64:5,flto:13,follow:[0,2,4,8,12,13],forc:0,force_circularization_on_rlof:0,force_corotation_of_primary_and_orbit:0,forloop:6,form:[0,4,6,7],formal:0,format:[0,2,4,5,6],formula:0,forward:0,found:[2,13],four:0,fpic:1,fraction:[0,2],frequenc:0,friction:0,fring:0,from:[0,2,4,5,6,8,12,13,17],from_binary_c_config:1,from_dict:5,ftz:13,full:[4,8,13],full_path:4,fulli:6,func_memaddr:5,fuv:0,gaia:[0,2],gaia_colour_transform_method:0,gaia_conversion_ubvri_bivariate_jordi2010:0,gaia_conversion_ubvri_riello2020:0,gaia_conversion_ubvri_univariate_evans2018:0,gaia_conversion_ubvri_univariate_jordi2010:0,gaia_conversion_ugriz_bivariate_jordi2010:0,gaia_conversion_ugriz_riello2020:0,gaia_conversion_ugriz_univariate_evans2018:0,gaia_conversion_ugriz_univariate_jordi2010:0,gaia_l_binwidth:0,gaia_teff_binwidth:0,gain:8,galact:0,gallino:0,gamma:0,gap:0,garcia:0,gauss:0,gaussian:2,gaussian_func:2,gaussian_normalizing_const:2,gb_reimers_eta:0,gb_wind_beasor_etal_2020:0,gb_wind_goldman_etal_2017:0,gb_wind_reim:0,gb_wind_schroeder_cuntz_2005:0,gbwind:0,gbwindfac:0,gcc:[1,13],gce:0,gener:[0,1,2,4,5,6,7,8,12],geometr:0,gerosa:0,get:[0,4,5,6,7,8,13,14,17],get_arg_kei:4,get_default:4,get_help:4,get_help_al:[4,6],get_help_sup:4,gettempdir:5,giant:0,giant_branch:0,git:[0,4],git_branch:4,git_build:4,give:[0,2,4,5,17],given:[0,1,2,4,5,6,14,17],globablli:2,global:[0,2],global_dict:2,gmax:2,gmin:2,goe:[0,6,12],gogo:0,going:13,goldman:0,gonna:2,good:[0,8,17],gravit:0,gravitational_radiation_bs:0,gravitational_radiation_bse_when_no_rlof:0,gravitational_radiation_landau_lifshitz:0,gravitational_radiation_landau_lifshitz_when_no_rlof:0,gravitational_radiation_model:0,gravitational_radiation_modulator_:0,gravitational_radiation_modulator_j:0,gravitational_radiation_non:0,grb:0,greater:0,grevess:0,grid:[0,4,6,10,11],grid_class:[10,11],grid_cod:6,grid_opt:[6,8],grid_options_default:7,grid_options_defaults_dict:7,grid_options_descript:7,grid_options_description_check:7,grid_options_help:7,grid_vari:8,gridcod:6,gridcode_filenam:8,group:4,guess:[0,2],hachisu:0,hachisu_disk_wind:0,hachisu_ignore_qcrit:0,hachisu_qcrit:0,hack:7,had:6,half:0,handi:0,handl:[0,6,8,14],handle_ensemble_string_to_json:4,happen:[0,13],has:[0,1,4,5,6,8],have:[0,2,4,5,6,7,8,12,13],hbb:0,hbbtfac:0,hdf5:4,hdf5file:4,header:[1,4,5],headlin:8,hegb:0,hehg:0,height:2,helium:0,helium_flash_mass_loss:0,helium_white_dwarf:0,help:[0,4,7],help_al:0,hem:0,henc:0,hendrik:13,here:[1,4,5,6,12],hertzsprung:0,hertzsprung_gap:0,hertzstrpung:0,heuvel:0,hewd:0,hex:8,high:[0,2],higher:[0,4,8],his:2,histori:2,hole:0,hopefulli:0,hot:0,how:[0,4,5,6,8],howev:0,hoyl:0,hpc:[6,9],hpc_function:[10,11],hr_diagram:12,hrd:0,hrdiag:0,hrdiag_output:0,html:13,http:[0,1,2,13],hurlei:0,hybrid:0,hydro:0,hydrogen:0,ibc:0,idea:12,idum:0,ignit:0,ignor:[0,5],iia:0,imag:13,imf:[0,2],imf_chabrier2003:2,imf_scalo1986:2,imf_scalo1998:2,imf_tinsley1980:2,immedi:0,implement:[0,6,8],impli:0,inclin:0,inclination1:0,inclination2:0,inclination3:0,inclination4:0,inclini:0,incliniation_quadrupl:0,incliniation_tripl:0,includ:[0,1,4,5,6,12,13],include_binary_c_default:6,include_binary_c_help_al:6,include_binary_c_version_info:6,include_default:6,include_population_set:6,increas:0,inde:0,indent:4,index:[0,2,10],indic:0,individual_nova:0,induc:0,inertia:0,info:[4,6,12,13],inform:[0,1,4,6,7,12],init:6,init_abund:0,init_abund_dex:0,init_abund_mult:0,init_abunds_onli:0,initi:[0,2,6],initial_abundance_hash:6,initial_abundance_mix:0,initial_abunds_onli:0,inlin:5,inner:0,input:[1,2,4,6,8,10,12,17],input_dict:4,insert:6,inspect:[4,12],inspect_dict:4,inspir:[1,5,12,17],instabl:0,instal:13,instanc:4,instant:0,instantli:0,instead:[0,4,8,13],instruct:10,integ:[0,6,8,17],interact:[0,7],interfac:4,interfer:13,intern:[0,8],internal_buff:0,internal_buffering_off:0,internal_buffering_print:0,internal_buffering_stor:0,interpol:2,interpolate_in_mass_izzard2012:2,intershel:0,interstellar:0,intro:0,invers:17,involv:0,inward:0,isn:[4,6],isotop:[0,4],isotope_hash:6,isotope_list:6,issu:13,item:1,iter:4,its:[0,4,7,12,13,14],itself:[4,8,13],iwamoto:0,izzard2012_period_distribut:2,izzard:[0,13],jager:0,jan:0,jaschek:2,jeff:13,jia:0,john:0,jordi:0,json:[4,6,8],jsondecod:4,jsonencod:4,jupyt:13,just:[0,2,4,5,6,8],kappa:0,karaka:0,keep:6,kei:[1,2,4,6,7,8,12],kelvin:0,keplerian:0,keypair:4,keyword:[12,14],kick:[0,8],kick_backward:0,kick_forward:0,kick_inward:0,kick_outward:0,kick_random:0,kick_straight_up:0,kick_velocity_custom:0,kick_velocity_fix:0,kick_velocity_maxwellian:0,kill:1,kim:0,kind:0,know:[0,1,6,7],known:[0,6,14],kroupa2001:[2,6],kroupa:2,ktg93:2,kwarg:[6,12,14],lambda:0,lambda_c:0,lambda_ce_dewi_tauri:0,lambda_ce_polytrop:0,lambda_ce_wang_2016:0,lambda_enthalpi:0,lambda_ionis:0,lambda_min:0,lambda_mult:0,lambda_multipli:0,lamer:0,landau:0,langer:0,larger:0,late:5,latter:0,law:2,ld_library_path:13,lead:0,leav:0,left:0,legaci:0,legacy_yield:0,lengthen:0,less:[0,1,2],let:6,level:[1,4],li7:0,lib:5,libbinary_c:[8,13],libgsl:13,libmemo:13,librari:[1,5,6,8,13,14],library_path:13,librinterpol:13,lies:0,lifetim:0,lifshitz:0,like:[0,1,4,5,6,8,12,13,15],limit:[0,12],line:[1,4,5,6,8,12,13],linear:[0,8],linearli:[6,15],linker:1,linspac:15,list:[0,1,2,4,8,13,14,15],list_arg:0,list_of_sub_kei:2,lit:0,lithium:0,lithium_gb_post_1dup:0,lithium_gb_post_heflash:0,lithium_hbb_multipli:0,lithium_t:0,littleton:0,liu:0,lnm1:6,load:[0,1,4,5,6,12],load_logfil:4,lobe:[0,17],local:2,locat:[0,2,8,13],lodder:0,log10:[0,2],log10p:2,log10pmin:2,log:[0,1,2,5,6,8,12,13,14,17],log_arg:8,log_args_dir:8,log_fil:8,log_filenam:[0,5,14],log_runtime_system:8,logarithm:2,logensembletim:0,logfil:[4,13,14],logg:0,logging_dict:1,logging_lin:5,logic:[1,6,8],logp:2,logper:2,long_spectral_typ:2,longer:0,longnam:6,look:[1,4],lookback:0,loon:0,loop:6,loos:12,lose:0,loss:0,lost:0,lot:[4,14],low:[0,2],low_mass_m:0,low_mass_main_sequ:0,lower:[0,2,15],lsun:12,lugaro:0,luminos:[0,12],luminosity_1:12,luminosity_2:12,lynnett:0,m_1:[0,5,6,14],m_2:[0,5],m_3:0,m_4:0,m_max:[2,6],m_min:6,m_re:5,maccretor:0,machin:[8,13],macro:[0,4],madau:2,maeder:0,magellan:0,magnet:0,magnetic_braking_algorithm:0,magnetic_braking_algorithm_andronov_2003:0,magnetic_braking_algorithm_barnes_2010:0,magnetic_braking_algorithm_hurley_2002:0,magnetic_braking_algorithm_rappaport_1983:0,magnetic_braking_factor:0,magnetic_braking_gamma:0,mai:0,main:[0,1,8],main_sequ:0,mainli:9,major:0,make:[0,1,2,4,5,6,8,12,13,14],make_build_text:4,makedir:4,manag:13,mani:[0,6,8],manual:13,manual_vrot:0,manufactur:0,marchant:0,maria:0,mass:[0,1,2,4,5,6,8,12,14,17],mass_1:[5,12],mass_2:[5,12],mass_accretion_for_eld:0,mass_accretion_rate1:0,mass_accretion_rate2:0,mass_accretor:17,mass_donor:17,mass_evolut:12,mass_for_hestar_ia_low:0,mass_for_hestar_ia_upp:0,mass_of_pmz:0,massiv:[0,2],massless_remn:0,master:[8,12],match:[0,4,12],materi:0,math:6,matplotlib:12,matter:[0,13],mattsson:0,mattsson_mass_loss:0,mattsson_orich_tpagbwind:0,max:[0,2],max_bound:[2,15],max_evolution_tim:[0,1,5],max_hewd_mass:0,max_model_numb:0,max_neutron_star_mass:0,max_stellar_angmom_chang:0,max_val:2,maximum:[0,2,8],maximum_mass_ratio_for_instant_rlof:0,maximum_mcbagb_for_degenerate_carbon_ignit:0,maximum_nuclear_burning_timestep:0,maximum_timestep:0,maximum_timestep_factor:0,maxmimum:0,maxwellian:0,mayb:12,mayor:2,mc13_pocket_multipli:0,mch:0,mcmin:0,mdonor:0,mean:[0,2,4,6,13],meant:8,medium:0,megaparsec:2,memaddr:5,memori:[1,5,6,8],menv:0,merg:[0,4,8],merge_dict:4,merger:0,merger_angular_momentum_factor:0,mesa:13,mesasdk_init:13,mesasdk_root:13,messag:4,mestel:0,met:6,metal:[0,2,5,17],method:[0,5,6],meynet:0,might:[6,13],milki:0,miller:0,min:2,min_bound:[2,15],min_val:2,mind:5,minimal_verbos:4,minimum:[0,2,4],minimum_co_core_mass_for_carbon_ignit:0,minimum_co_core_mass_for_neon_ignit:0,minimum_donor_menv_for_comenv:0,minimum_envelope_mass_for_third_dredgeup:0,minimum_helium_ignition_core_mass:0,minimum_mcbagb_for_nondegenerate_carbon_ignit:0,minimum_orbital_period_for_instant_rlof:0,minimum_separation_for_instant_rlof:0,minimum_timestep:0,mint:0,mint_dir:0,mint_ms_rejuven:0,mira:0,misc:10,miscellan:4,miss:[4,7],mix:0,mixtur:0,mmax:2,mnra:17,model:[0,1,5],modifi:0,modul:[0,7,10,11],modulo:8,moment:[0,15],momenta:[0,12],momentum:0,mont:0,monte_carlo_kick:0,montecarlo:8,more:[0,1,4,5,6,8,12,13,15],most:[4,13],mostli:[4,5,7,8,12,14],msun:[0,5],much:4,mulitpli:8,mulitprocess:8,multipl:[0,2],multiplc:0,multipli:0,multiprocess:[6,8],multithread:8,must:[0,2],my_sss2:5,my_stellar_data:[1,5],myr:[0,5],n100:0,n100_z0:0,n100h:0,n100l:0,n10:0,n150:0,n1600:0,n1600c:0,n200:0,n20:0,n300c:0,n40:0,naked_helium_star_giant_branch:0,naked_helium_star_hertzsprung_gap:0,naked_main_sequence_helium_star:0,name:[1,4,5,6,7,13,14,16],natur:0,nauenberg:0,nearer:0,necessari:[4,5,6,13],need:[0,5,6,13],neg:0,neither:[0,6],neleman:0,nelemans_gamma:0,nelemans_max_frac_j_chang:0,nelemans_minq:0,nelemans_n_comenv:0,nelemans_recalc_eccentr:0,nenamg:0,neon:0,nest:[4,6],network:0,neutrn:0,neutron:0,neutron_star:0,never:0,newer:[0,2],newli:0,newopt:2,newton:0,next:4,nice:[1,6,12],nieuwenhuijzen:0,nieuwenhuijzen_windfac:0,no_thermohaline_mix:0,noecho:0,noechonow:0,noel:0,nomin:0,non:0,nonconservative_angmom_gamma:0,none:[0,1,2,4,5,6,7],nor:0,normal:[0,2],normalis:2,note:[0,5,10],notebook:13,notifi:14,nova:0,nova_faml_multipli:0,nova_irradiation_multipli:0,nova_retention_algorithm_claeys2014:0,nova_retention_algorithm_const:0,nova_retention_algorithm_hillman2015:0,nova_retention_fract:0,nova_retention_method:0,nova_timestep_accelerator_index:0,nova_timestep_accelerator_max:0,nova_timestep_accelerator_num:0,now:[0,2,4,5],nuclear:0,nuclear_mass_hash:6,nuclear_mass_list:6,nucleosynthesi:[0,4],nucleosynthesis_sourc:4,nucreacmult:0,nucsyn:10,nucsyn_angelou_lithium:0,nucsyn_gce_outflow_check:0,nucsyn_hbb:0,nucsyn_init_abund_mix_ag89:0,nucsyn_init_abund_mix_asplund2005:0,nucsyn_init_abund_mix_asplund2009:0,nucsyn_init_abund_mix_garciaberro:0,nucsyn_init_abund_mix_grevesse_noels_1993:0,nucsyn_init_abund_mix_karakas2002:0,nucsyn_init_abund_mix_kobayashi2011_asplund2009:0,nucsyn_init_abund_mix_lodders2003:0,nucsyn_init_abund_mix_lodders2010:0,nucsyn_metal:0,nucsyn_s_process:0,nucsyn_third_dredge_up:0,nugi:0,number:[0,2,4,5,6],numpi:[4,5,15],obj:4,object:[0,4,6,8,9,12],object_hook:4,object_pairs_hook:4,obtain:0,occur:0,ofcours:12,off:[0,5],offset:0,ohio:0,old_solut:13,omega:0,onc:0,one:[0,4,5,6,12,13],onewd:0,onli:[0,4,5,6,8,17],onset:0,onto:0,opac:0,opacity_algorithm:0,opacity_algorithm_ferguson_op:0,opacity_algorithm_paczynski:0,opacity_algorithm_star:0,opal:0,opm:2,opt:[2,4],option:[1,2,4,5,6,10,11,13],orb:6,orbit:[0,2,12],orbit_evolut:12,orbital_inclin:0,orbital_inclinationi:0,orbital_period:[0,5],orbital_period_quadrupl:0,orbital_period_tripl:0,orbital_phas:0,orbital_phase_quadrupl:0,orbital_phase_tripl:0,order:[4,5,6],org:[0,2],origin:13,other:[0,1,2,4,7,8,12],otherwis:[6,7,8],out:[4,7,8,13],outcom:0,outer:0,outfil:6,outfile_nam:1,output:[1,4,5,6,8,10,12,13,14],output_dir:6,output_fil:[4,7],output_filenam:6,output_lin:4,outsid:0,outward:0,over:[4,6],overflow:0,overrid:[2,5],overshoot:0,overspin_algorithm:0,overspin_bs:0,overspin_massloss:0,own:[5,6,8,13],oxygen:0,oxygen_neon_white_dwarf:0,packag:[4,13,15],paczynski:0,page:[0,10],pair:[0,4],panda:[4,5,12],pane:12,panel:0,paper:0,param:12,param_nam:4,paramet:[1,2,4,6,7,8,10,12,13,14,15,17],parameter_nam:[4,6],parameter_value_input_typ:4,pars:[4,5,6,12,14],parse_binary_c_version_info:4,parse_cmdlin:6,parse_const:4,parse_float:4,parse_funct:[6,8,14],parse_function_hr_diagram:12,parse_function_mass:12,parse_function_orbit:12,parse_int:4,parse_output:5,part:[2,5,6,17],partial:0,particularli:0,pasp:2,pass:[5,8,12,13,14],path:[4,8,13],pdf:[0,2],pend:0,per:[0,4,6,8,17],peret:0,perform:0,perhap:0,periastron:0,pericent:17,period:[0,2,5,12,17],perl:1,person:13,pgo:0,phase:0,phasevol:0,photoevapor:0,php:2,pick:12,piec:[5,6],pinnsonneault:0,pip:13,pisn:0,pkg:13,place:8,placehold:12,plai:0,plan:8,pleas:[0,4],plot:[5,12],plot_funct:[10,11],plot_hr_diagram:12,plot_hr_diagram_singl:12,plot_mass:12,plot_orbit:12,plot_system:12,plot_typ:12,pls:6,plu:0,pms:12,pms_mass_1:12,pms_mass_2:12,pogg:0,point:[0,2,4,13],pol:0,polytrop:0,popuation_id:8,popul:[0,2,6,7,9,10,15],population_set:6,posit:[0,2],possibl:[0,1,2,4,7,13],post:0,post_sn_orbit_bs:0,post_sn_orbit_method:0,post_sn_orbit_tt98:0,postagb_legacy_log:0,potenti:0,power:[0,2],powerlaw:2,powerlaw_const:2,ppisn:0,ppisn_dis:0,ppisn_farmer19:0,ppisn_prescript:0,pre:[0,12],pre_main_sequ:0,pre_main_sequence_fit_lob:0,precis:4,precod:6,predefin:2,predictor:0,prefer:[0,6],prefix:0,preload:12,prepar:2,prepare_dict:2,prescript:0,present:[2,4,6],preserv:0,preset:12,pressur:0,prevent:0,previou:4,previous_stardata:1,primari:[1,2,6,17],print:[4,5,7,8,13],print_help:4,print_info:7,print_structur:4,printf:[1,5],prior:0,privat:[6,7,10],probabl:[0,1,2,6,7,8,13],probdist:6,problabl:12,process:[0,4,5,6,8],progenitor:0,program:13,project:0,proper:7,properli:0,properti:[0,4,8,12],provid:[0,2,6,8,14],pseudorandom:0,puls:[0,17],pulsat:0,pump:0,purpos:[8,12],put:[1,4,5,8,12,13],pyenv:13,python3:[5,13],python:[4,5],python_api_test:13,pythonpath:13,qcrit_bh:0,qcrit_cheb:0,qcrit_cowd:0,qcrit_degenerate_bh:0,qcrit_degenerate_cheb:0,qcrit_degenerate_cowd:0,qcrit_degenerate_eagb:0,qcrit_degenerate_gb:0,qcrit_degenerate_hegb:0,qcrit_degenerate_hehg:0,qcrit_degenerate_hem:0,qcrit_degenerate_hewd:0,qcrit_degenerate_hg:0,qcrit_degenerate_lmm:0,qcrit_degenerate_m:0,qcrit_degenerate_n:0,qcrit_degenerate_onewd:0,qcrit_degenerate_tpagb:0,qcrit_eagb:0,qcrit_gb:0,qcrit_gb_bs:0,qcrit_gb_chen_han_formula:0,qcrit_gb_chen_han_t:0,qcrit_gb_ge2015:0,qcrit_gb_hjellming_webbink:0,qcrit_gb_q_no_comenv:0,qcrit_gb_vos2018:0,qcrit_hegb:0,qcrit_hehg:0,qcrit_hem:0,qcrit_hewd:0,qcrit_hg:0,qcrit_lmm:0,qcrit_m:0,qcrit_n:0,qcrit_onewd:0,qcrit_tpagb:0,qcrits_:0,qcrits_degenerate_:0,quadrat:0,quadrulpl:0,quadrupl:0,quantiti:12,quit:[0,4],r_l:17,radi:0,radiat:0,radii:[0,17],radiu:[0,1,12,17],radius_1:12,radius_2:12,ragb:17,raghavan2010_binary_fract:2,raghavan:2,rai:0,railton:0,rais:[0,4,8],ram:0,random:[0,8],random_se:0,random_skip:0,random_system:0,random_systems_se:0,rang:[0,2,6,15],rapidli:0,rappaport:0,rate:[0,2],rather:[0,4,6,8],ratio:[0,2,17],raw:[4,5,6,12,14],raw_output:4,reaction:0,read:[4,13],real:6,realli:[0,6,7,8],reason:0,rebuild:13,recalcul:0,reciev:4,recombin:0,recommend:[1,6,13],recurs:[4,6],red:0,redhat:1,redshift:2,reduc:0,reduct:8,regardless:12,region:0,reimer:0,reject:0,rejuven:0,rel:0,relat:0,remain:0,remnant:0,remov:[0,4,6],remove_fil:4,repeat:[0,8],repo:13,report:0,represent:[4,6],reproduc:0,requir:[0,4,5,10,12,14],reset:0,reset_pref:0,reset_star:0,reset_stars_default:0,resolut:[0,6],resolv:[0,13],reson:0,respect:[0,2],rest:6,restructuredtext:4,result:[0,1,2,4,5,6,8,13],result_example_head:5,result_example_header_1:5,result_example_header_2:5,retain:0,rethink:4,return_all_info:6,return_binary_c_version_info:[4,6],return_compilation_dict:1,return_help_al:4,return_population_set:6,return_version_info:4,revap_in:0,revap_out:0,revers:[0,12],reverse_tim:0,revis:[0,4],rewrit:6,ri0005:13,rich:0,riello:0,rin:0,ring:0,risk:6,ritter:0,rk2:0,rk4:0,rlof:0,rlof_angular_momentum_transfer_model:0,rlof_angular_momentum_transfer_model_bs:0,rlof_angular_momentum_transfer_model_conserv:0,rlof_eccentric_as_circular:0,rlof_entry_threshold:0,rlof_f:0,rlof_interpolation_binary_c:0,rlof_interpolation_bs:0,rlof_interpolation_method:0,rlof_mdot_factor:0,rlof_mdot_modul:0,rlof_method:0,rlof_method_adapt:0,rlof_method_adaptive2:0,rlof_method_bs:0,rlof_method_claei:0,rlof_method_ritt:0,rlof_nonconservative_gamma_donor:0,rlof_nonconservative_gamma_isotrop:0,rlof_radiation_correct:0,rob:[0,2,17],robert:13,roch:[0,17],roche_lob:17,rochelob:17,room:6,root:13,rotat:[0,2],rotation:0,rotationally_enhanced_expon:0,rotationally_enhanced_mass_loss:0,rotationally_enhanced_massloss:0,rotationally_enhnaced_massloss_angmom:0,rotationally_enhnaced_massloss_langer_formula:0,rotationally_enhnaced_massloss_langer_formula_and_angmom:0,rotationally_enhnaced_massloss_non:0,rout:0,routin:[0,5,6,12],row:12,rring:0,rssd:2,rst:[4,7],rsun:12,run:[0,1,4,5,6,8,13,14],run_example_binari:5,run_example_binary_with_custom_log:5,run_example_binary_with_run_system:5,run_example_binary_with_writing_logfil:5,run_example_custom_logging_autogener:5,run_system:[5,12,14],run_system_wrapp:[5,10,11],runtim:[1,8],russel:0,rzam:17,sai:0,said:0,same:[0,4,5,13],sampl:[0,2,6,15],sana12:2,sana:2,save:[1,2],scalo:2,scanf:0,scene:5,scheme:0,schneider:0,schroeder:0,script:[3,5],sdb:0,sdo:0,search:10,second:[0,2,4,12],secondari:[2,17],section:[2,4,9,10],see:[0,5,6,12,13],seed:0,seem:12,segment:15,seitenzahl2013_model:0,seitenzahl:0,select:[0,4,5],selected_head:[4,5],self:[6,8],semi:0,sent:0,sentenc:1,sep:[2,5,6,17],separ:[0,2,4,5,12,17],separation_quadrupl:0,separation_tripl:0,separta:0,seper:[6,7],sequenc:0,seri:0,serial:4,serializ:6,serv:[4,5],server:6,set:[0,1,2,4,6,7,8,12,13],set_opt:2,settingsfil:4,setup:14,sever:[5,7,8,12,14],sfh:2,shara:0,share:[1,5,8,13,14],shared_lib_filenam:5,shim:13,should:[0,1,5,7,8,12,13,14],shouldn:[0,4],show:[3,8,12],show_plot:12,show_stellar_typ:12,shown:12,siess:0,sigma:2,silent:4,sill:0,simpli:0,simul:[0,1,8],simulation_:6,sinc:[4,12],singl:[0,2,6,12],skip:0,skipkei:4,sliced_df:5,slope:2,slow:0,slurm:[6,8,9],slurm_grid:6,small:0,small_envelope_method:0,small_envelope_method_bs:0,small_envelope_method_miller_bertolami:0,smaller:0,sn_impulse_liu2015:0,sn_impulse_non:0,sn_impulse_wheeler1975:0,sn_kick_companion_a:0,sn_kick_companion_aic_bh:0,sn_kick_companion_bh_bh:0,sn_kick_companion_bh_n:0,sn_kick_companion_ecap:0,sn_kick_companion_grb_collapsar:0,sn_kick_companion_hestaria:0,sn_kick_companion_ia_chand:0,sn_kick_companion_ia_chand_co:0,sn_kick_companion_ia_eld:0,sn_kick_companion_ia_h:0,sn_kick_companion_ia_he_co:0,sn_kick_companion_ia_hybrid_hecowd:0,sn_kick_companion_ia_hybrid_hecowd_sublumin:0,sn_kick_companion_ibc:0,sn_kick_companion_ii:0,sn_kick_companion_iia:0,sn_kick_companion_ns_n:0,sn_kick_companion_tz:0,sn_kick_companion_wdkick:0,sn_kick_dispersion_aic_bh:0,sn_kick_dispersion_bh_bh:0,sn_kick_dispersion_bh_n:0,sn_kick_dispersion_ecap:0,sn_kick_dispersion_grb_collapsar:0,sn_kick_dispersion_ia_hybrid_hecowd:0,sn_kick_dispersion_ia_hybrid_hecowd_sublumin:0,sn_kick_dispersion_ibc:0,sn_kick_dispersion_ii:0,sn_kick_dispersion_ns_n:0,sn_kick_dispersion_tz:0,sn_kick_distribution_aic_bh:0,sn_kick_distribution_bh_bh:0,sn_kick_distribution_bh_n:0,sn_kick_distribution_ecap:0,sn_kick_distribution_grb_collapsar:0,sn_kick_distribution_ia_hybrid_hecowd:0,sn_kick_distribution_ia_hybrid_hecowd_sublumin:0,sn_kick_distribution_ibc:0,sn_kick_distribution_ii:0,sn_kick_distribution_ns_n:0,sn_kick_distribution_tz:0,sneia:0,snia:0,solar:[0,17],solarmass:2,solver:0,solver_forward_eul:0,solver_predictor_corrector:0,solver_rk2:0,solver_rk4:0,some:[0,1,2,5,6,8,12,13],someth:[0,6],soon:15,sort:4,sort_kei:4,sourc:[1,2,3,4,5,6,7,8,11,12,13,14,15,17],source_file_filenam:8,source_list:6,sourcefile_nam:1,space:[0,6,15],spacing_funct:[10,11],spacingfunc:6,spacingfunct:6,special:0,specif:[0,4,12],specifi:[0,8],spectral:2,speed:[0,8],speedtest:0,spheric:0,spin:0,split:[0,8],splitpoint:0,spread:6,src:13,st1:5,st2:5,stabil:0,stabl:0,stancliff:0,standard:[0,2],star:[1,2,5,6,8,10,12,17],stardata:[0,1,5],stardata_dump_filenam:0,stardata_load_filenam:0,start:[0,1,4,5,7,8],start_tim:0,state:0,statement:[1,5],statist:0,statu:[0,1],steadi:0,stefan:12,stellar:[0,12,16],stellar_structure_algorithm:0,stellar_structure_algorithm_external_funct:0,stellar_structure_algorithm_mint:0,stellar_structure_algorithm_modified_bs:0,stellar_structure_algorithm_non:0,stellar_typ:[1,10,11,12],stellar_type_1:[0,12],stellar_type_2:[0,12],stellar_type_3:0,stellar_type_4:0,stellar_type_dict:16,stellar_type_dict_short:16,step:[12,15],still:[1,8],stop:0,storag:0,store:[0,2,6,8],str:[1,4,6,7,12],straight:6,straniero:0,strength:0,strict:4,string:[0,1,4,6,7,8,12,14],strip:0,stronger:0,struct:0,structur:[0,4,8,12],stuff:[2,4,8,12],style:0,sub:0,subdirectori:4,subject:0,sublumin:0,subroutin:9,subsequ:0,succe:0,suggest:[0,13],sum:0,supercrit:0,supernova:[0,8],superwind:0,superwind_mira_switchon:0,sure:[2,6,8,12,13,14],surfac:0,surrei:13,surviv:0,survivor:0,svg:13,symmetr:0,synchron:0,synonym:0,sys:5,system:[0,5,6,8,12,13,14],system_gener:6,t_re:5,tabl:[0,2],take:[0,2,4,5,6,8,14],taken:0,target:[1,7,13],task:[0,2,4,5,6,7,9,12,14,15,17],tauri:0,tbse:0,teff:2,teff_1:12,teff_2:12,temp_dir:4,temperatur:[0,2,12],tempfil:5,termin:1,test:[0,4,6,13],test_log:5,text:[4,7,13],than:[0,2,4,8],thats:0,thei:[0,2,6,12],thelog:0,them:[4,5,6],themselv:[2,4],theres:6,thermal:[0,2,17],thermally_pulsing_asymptotic_giant_branch:0,thermohalin:0,thesi:0,thi:[0,1,2,3,4,5,6,7,8,11,12,13,14,15,17],thick:0,thick_disc_end_ag:0,thick_disc_logg_max:0,thick_disc_logg_min:0,thick_disc_start_ag:0,thin:0,thing:[2,4,5,6,7,14],think:[0,4,6],third:[0,2],third_dup:0,third_dup_multipli:0,thorn:0,those:[4,5,6,13],thread:8,thread_id:8,three:[0,2],three_part_powerlaw:2,threshold:[4,8],through:[6,12,14],throughout:6,tidal:0,tidal_strength_factor:0,tide:0,time:[0,1,2,4,5,6,8,12],timescal:0,timestamp:8,timestep:0,timestep_limit:0,timestep_log:0,timestep_modul:0,timestep_multipli:0,timestep_solver_factor:0,tinslei:2,tmp:[0,4,13],tmp_dir:[6,8],todo:[0,1,2,4,6,7,8,12,14,15,17],toler:0,too:[0,14],topic:0,torqu:0,total:[0,6,8,12],tout:[0,17],tpagb:0,tpagb_reimers_eta:0,tpagb_wind_beasor_etal_2020:0,tpagb_wind_bloeck:0,tpagb_wind_goldman_etal_2017:0,tpagb_wind_mattsson:0,tpagb_wind_reim:0,tpagb_wind_rob_cwind:0,tpagb_wind_van_loon:0,tpagb_wind_vw93_karaka:0,tpagb_wind_vw93_karakas_carbon_star:0,tpagb_wind_vw93_orig:0,tpagb_wind_vw93_orig_carbon_star:0,tpagbwind:0,tpagbwindfac:0,track:[8,12],trade:0,transfer:0,transform:[0,4],treat:0,trigger:0,tripl:0,tru:4,truli:0,tupl:1,turn:[0,4],two:[0,4,16,17],txt:[5,6,13,14],type:[0,1,2,4,6,7,8,12,15,16,17],type_ia_mch_supernova_algorithm:0,type_ia_mch_supernova_algorithm_dd2:0,type_ia_mch_supernova_algorithm_seitenzahl2013:0,type_ia_mch_supernova_algorithm_seitenzahl2013_automat:0,type_ia_sub_mch_supernova_algorithm:0,type_ia_sub_mch_supernova_algorithm_livne_arnett_1995:0,typic:0,ubvri:0,ugriv:0,uncom:6,under:15,undergo:0,underli:13,understand:6,undescrib:7,uniform:2,union:[2,4,15,17],uniqu:8,unit:[0,17],univari:0,unknown:14,unless:[1,6,8],unload:6,unrecogn:13,unsign:0,until:[0,2],unus:[0,8],updat:[2,6,13],upper:[0,2,15],usag:[0,10],use:[0,2,4,5,6,8,9,12,13,14],use_astropy_valu:12,use_datadir:6,use_fixed_timestep_:0,use_periastron_roche_radiu:0,use_tabular_intershell_abundances_karakas_2012:0,used:[0,1,2,4,6,8,12],useful:[0,4,6,8,13,14,17],useful_func:[10,11],user:[1,2,4,6,7,8,14],uses:[0,5],using:[0,1,3,5,6,13],usr:5,usual:[0,2,8,13],util:[1,2,4,5,6,7,12,14,15,17],val:2,valid:[0,2,4],valu:[0,1,2,4,5,6,7,8,12,13],valuerang:6,van:0,vandenheuvel_log:0,vari:0,variabl:[0,4,6,8,10],variant:0,variou:0,vassiliadi:0,veloc:[0,2],verbos:[1,4,8,13],verbose_print:4,veri:[0,5,6,15],versa:17,version:[0,4,6,13],version_info:4,version_info_str:4,version_onli:0,via:[6,8,12],vice:17,vink:0,virtual:13,viscos:0,viscou:0,volum:0,vrot1:0,vrot2:0,vrot3:0,vrot4:0,vrot_breakup:0,vrot_bs:0,vrot_non_rot:0,vrot_sync:0,vw93:0,vw93_eagb_wind_spe:0,vw93_mira_shift:0,vw93_multipli:0,vw93_tpagb_wind_spe:0,vwind_multipli:0,wai:[0,3,4,6,8,12,13],wang:0,want:[0,2,4,5,7,8,12,13],warmup_cpu:0,warn:[0,6,13],wave:0,wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor:0,wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor:0,wd_accretion_rate_new_giant_envelope_lower_limit_other_donor:0,wd_accretion_rate_novae_upper_limit_helium_donor:0,wd_accretion_rate_novae_upper_limit_hydrogen_donor:0,wd_accretion_rate_novae_upper_limit_other_donor:0,wd_kick:0,wd_kick_at_every_puls:0,wd_kick_at_given_puls:0,wd_kick_direct:0,wd_kick_end_agb:0,wd_kick_first_rlof:0,wd_kick_pulse_numb:0,wd_kick_when:0,wd_sigma:0,wdwd_merger_algorithm:0,wdwd_merger_algorithm_bs:0,wdwd_merger_algorithm_chen2016:0,wdwd_merger_algorithm_perets2019:0,weight:[0,8],well:[0,4,8,13],were:4,what:[0,1,2,4,5,6,7,13,14],whatev:[5,6,13],wheeler:0,when:[0,1,4,5,6,7,8,13,14],where:[0,1,2,4,6,7,8],whether:[0,2,4,6,7,8,12,17],which:[0,1,2,3,4,5,6,7,8,13,14],white:0,white_dwarf_cooling_carrasco2014:0,white_dwarf_cooling_mestel:0,white_dwarf_cooling_mestel_modifi:0,white_dwarf_cooling_model:0,white_dwarf_radius_carrasco2014:0,white_dwarf_radius_model:0,white_dwarf_radius_mu:0,white_dwarf_radius_nauenberg1972:0,whole:6,width:0,wind:0,wind_algorithm_binary_c_2020:0,wind_algorithm_hurley2002:0,wind_algorithm_non:0,wind_algorithm_schneider2018:0,wind_angmom_loss_bs:0,wind_angmom_loss_lw:0,wind_angmom_loss_lw_hybrid:0,wind_angmom_loss_spherically_symmetr:0,wind_angular_momentum_loss:0,wind_disc_angmom_fract:0,wind_disc_mass_fract:0,wind_djorb_fac:0,wind_gas_to_dust_ratio:0,wind_mass_loss:0,wind_multiplier_:0,within:[0,4,6],without:[2,6],won:0,wood:0,wooslei:0,work:[0,4,5,12,13],would:[0,4,12,13],wouldnt:6,wr_wind:0,wr_wind_bs:0,wr_wind_eldridg:0,wr_wind_fac:0,wr_wind_maeder_meynet:0,wr_wind_nugis_lam:0,wrap:1,wrapper:[4,5],write:[1,4,5,6,7,8,14],write_binary_c_calls_to_fil:6,write_binary_c_parameter_descriptions_to_rst_fil:4,write_grid_options_to_rst_fil:7,written:[5,6,7,8,14],wrlof_mass_transf:0,wrlof_method:0,wrlof_non:0,wrlof_q_depend:0,wrlof_quadrat:0,wrong:13,wrt:1,wrwindfac:0,wtts2:0,wtts_log:0,www:[0,2],year:[0,2],yet:[0,4,5,6,8,12],yield:0,you:[0,1,4,5,6,7,8,12,13,17],young:0,your:[5,13],yourself:12,zam:[2,14,17],zams_collis:17,zero:[0,1],zone:0,zoom:0,zoomfac_multiplier_decreas:0,zoomfac_multiplier_increas:0,zshrc:13,zsolar:2,zytkow:0},titles:["Binary_c parameters","custom_logging_functions module","distribution_functions module","Examples","functions module","Examples","grid_class module","Grid options and descriptions","Population grid code options","hpc_functions module","Welcome to binary_c-python\u2019s documentation!","Binarycpython code","plot_functions module","Python module for binary_c","run_system_wrapper module","spacing_functions module","stellar_types module","useful_funcs module"],titleterms:{"function":4,"public":8,algorithm:0,binari:0,binary_c:[0,10,13],binarycpython:11,build:13,code:[8,11],custom_logging_funct:1,descript:7,distribution_funct:2,document:10,environ:13,exampl:[3,5],faq:13,grid:[7,8],grid_class:6,hpc_function:9,indic:10,input:0,instruct:13,misc:0,modul:[1,2,4,6,9,12,13,14,15,16,17],note:13,nucsyn:0,option:[7,8],output:0,paramet:0,plot_funct:12,popul:8,privat:8,python:[10,13],requir:13,run_system_wrapp:14,section:0,spacing_funct:15,star:0,stellar_typ:16,tabl:10,usag:13,useful_func:17,variabl:13,welcom:10}}) \ No newline at end of file +Search.setIndex({docnames:["binary_c_parameters","custom_logging_functions","distribution_functions","examples","functions","general_examples","grid","grid_options_defaults","grid_options_descriptions","hpc_functions","index","modules","plot_functions","population_example","readme_link","run_system_wrapper","spacing_functions","stellar_types","useful_funcs"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["binary_c_parameters.rst","custom_logging_functions.rst","distribution_functions.rst","examples.rst","functions.rst","general_examples.rst","grid.rst","grid_options_defaults.rst","grid_options_descriptions.rst","hpc_functions.rst","index.rst","modules.rst","plot_functions.rst","population_example.rst","readme_link.rst","run_system_wrapper.rst","spacing_functions.rst","stellar_types.rst","useful_funcs.rst"],objects:{"binarycpython.utils":{custom_logging_functions:[1,0,0,"-"],distribution_functions:[2,0,0,"-"],functions:[4,0,0,"-"],grid:[6,0,0,"-"],grid_options_defaults:[7,0,0,"-"],hpc_functions:[9,0,0,"-"],plot_functions:[12,0,0,"-"],run_system_wrapper:[15,0,0,"-"],spacing_functions:[16,0,0,"-"],stellar_types:[17,0,0,"-"],useful_funcs:[18,0,0,"-"]},"binarycpython.utils.custom_logging_functions":{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:[1,1,1,""]},"binarycpython.utils.distribution_functions":{"const":[2,1,1,""],Arenou2010_binary_fraction:[2,1,1,""],Izzard2012_period_distribution:[2,1,1,""],Kroupa2001:[2,1,1,""],calculate_constants_three_part_powerlaw:[2,1,1,""],cosmic_SFH_madau_dickinson2014:[2,1,1,""],duquennoy1991:[2,1,1,""],flat:[2,1,1,""],flatsections:[2,1,1,""],gaussian:[2,1,1,""],gaussian_func:[2,1,1,""],gaussian_normalizing_const:[2,1,1,""],imf_chabrier2003:[2,1,1,""],imf_scalo1986:[2,1,1,""],imf_scalo1998:[2,1,1,""],imf_tinsley1980:[2,1,1,""],interpolate_in_mass_izzard2012:[2,1,1,""],ktg93:[2,1,1,""],number:[2,1,1,""],powerlaw:[2,1,1,""],powerlaw_constant:[2,1,1,""],prepare_dict:[2,1,1,""],raghavan2010_binary_fraction:[2,1,1,""],sana12:[2,1,1,""],set_opts:[2,1,1,""],three_part_powerlaw:[2,1,1,""]},"binarycpython.utils.functions":{BinaryCEncoder:[4,2,1,""],binarycDecoder:[4,2,1,""],binaryc_json_serializer:[4,1,1,""],create_arg_string:[4,1,1,""],create_hdf5:[4,1,1,""],example_parse_output:[4,1,1,""],extract_ensemble_json_from_string:[4,1,1,""],filter_arg_dict:[4,1,1,""],get_arg_keys:[4,1,1,""],get_defaults:[4,1,1,""],get_help:[4,1,1,""],get_help_all:[4,1,1,""],get_help_super:[4,1,1,""],handle_ensemble_string_to_json:[4,1,1,""],inspect_dict:[4,1,1,""],load_logfile:[4,1,1,""],make_build_text:[4,1,1,""],merge_dicts:[4,1,1,""],output_lines:[4,1,1,""],parse_binary_c_version_info:[4,1,1,""],remove_file:[4,1,1,""],return_binary_c_version_info:[4,1,1,""],temp_dir:[4,1,1,""],verbose_print:[4,1,1,""],write_binary_c_parameter_descriptions_to_rst_file:[4,1,1,""]},"binarycpython.utils.functions.BinaryCEncoder":{"default":[4,3,1,""]},"binarycpython.utils.functions.binarycDecoder":{decode:[4,3,1,""]},"binarycpython.utils.grid":{Population:[6,2,1,""]},"binarycpython.utils.grid.Population":{add_grid_variable:[6,3,1,""],evolve:[6,3,1,""],evolve_population:[6,3,1,""],evolve_single:[6,3,1,""],export_all_info:[6,3,1,""],parse_cmdline:[6,3,1,""],return_all_info:[6,3,1,""],return_population_settings:[6,3,1,""],set:[6,3,1,""],write_binary_c_calls_to_file:[6,3,1,""]},"binarycpython.utils.grid_options_defaults":{grid_options_description_checker:[7,1,1,""],grid_options_help:[7,1,1,""],write_grid_options_to_rst_file:[7,1,1,""]},"binarycpython.utils.plot_functions":{color_by_index:[12,1,1,""],dummy:[12,1,1,""],parse_function_hr_diagram:[12,1,1,""],parse_function_masses:[12,1,1,""],parse_function_orbit:[12,1,1,""],plot_HR_diagram:[12,1,1,""],plot_masses:[12,1,1,""],plot_orbit:[12,1,1,""],plot_system:[12,1,1,""]},"binarycpython.utils.run_system_wrapper":{run_system:[15,1,1,""]},"binarycpython.utils.spacing_functions":{"const":[16,1,1,""]},"binarycpython.utils.useful_funcs":{calc_period_from_sep:[18,1,1,""],calc_sep_from_period:[18,1,1,""],minimum_period_for_RLOF:[18,1,1,""],minimum_separation_for_RLOF:[18,1,1,""],ragb:[18,1,1,""],roche_lobe:[18,1,1,""],rzams:[18,1,1,""],zams_collision:[18,1,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method"},terms:{"0001":18,"0007":2,"001":0,"002":5,"054":2,"0820":0,"08msun":0,"0902":0,"100":[0,2],"1000":5,"100000000000":5,"10e4":14,"115":2,"125":0,"12e":[1,13],"13e3":0,"1403":2,"150":13,"15000":[0,5,13],"15msun":2,"190":0,"1951":0,"1972":0,"1975":0,"1980":2,"1983":18,"1986":[0,2],"1991":2,"1993":0,"1996":18,"1998":[0,2],"1999":0,"1ckzg0p9":14,"1e9":0,"200":0,"2000":0,"2001":2,"2002":0,"2003":[0,2],"2004":0,"2005":0,"2009":0,"2010":[0,2],"2012":[0,2],"2013":0,"2014":[0,2],"2015":0,"2016":0,"2017":0,"2018":[0,1],"2019":[0,14],"2020":0,"2021":0,"20210111":[],"20210311":0,"257":18,"25msun":0,"281":18,"2969346":2,"2msun":0,"3000":0,"3msun":2,"42msun":0,"44msun":0,"45000000080":13,"4530":5,"463f148ec":[],"4e3":0,"500":0,"5479":[],"5542":0,"5msun":0,"625":0,"6944":0,"6msun":0,"7619":0,"763":2,"78125":0,"795":2,"80msol":2,"boolean":[0,4,6,8,12,18],"break":0,"case":[0,4],"catch":[4,5,8],"char":8,"class":[4,6],"const":[2,6,13,16],"default":[0,1,2,4,5,6,7,8,13,15],"export":[4,6,13,14],"float":[0,2,4,16,18],"function":[0,1,2,3,5,6,7,8,9,10,11,12,13,15,16,18],"import":[5,6,13,14],"int":[0,1,2,4,6,7,8,16,18],"long":[0,4,6,8,17],"new":[0,2,4,6],"null":[0,4],"paczy\u0144ski":0,"public":[7,10],"return":[0,1,2,4,6,7,8,12,15,16,18],"short":[0,17],"super":0,"switch":0,"throw":14,"true":[0,4,6,7,8,12,13],"try":[0,14],"while":0,And:[7,18],For:[0,12],Gas:0,Its:8,NOT:[0,6,15],Not:[8,13],One:0,Pms:12,That:[0,14],The:[0,1,2,4,5,6,8,12,13,15],Then:[4,14],There:[2,5,6,7,8,12],These:[4,8,12],Use:[0,5,6],Used:[0,8,12],Useful:[0,6,7],Uses:[0,16],Was:0,Will:[4,6,13,15],With:7,_binary_c_bind:[4,5,18],_binary_c_config_execut:8,_binary_c_dir:8,_binary_c_execut:8,_binary_c_shared_librari:8,_commandline_input:8,_count:8,_custom_logging_shared_library_fil:8,_end_time_evolut:8,_errors_exceed:8,_errors_found:8,_evolution_type_opt:8,_failed_count:8,_failed_prob:8,_failed_systems_error_cod:8,_generate_grid_cod:8,_grid_vari:8,_main_pid:8,_population_id:8,_probtot:8,_repeat:8,_set:[6,13],_start_time_evolut:8,_store_memaddr:8,_system_gener:8,_total_starcount:8,abat:0,abbrevi:17,abl:14,about:[4,6,7,13,14,18],abov:[0,4,5,6,14],abund:0,acc2:0,acceler:0,accept:[4,13],access:8,accord:0,accordingli:13,accret:0,accretion_end_tim:0,accretion_limit_dynamical_multipli:0,accretion_limit_eddington_lmms_multipli:0,accretion_limit_eddington_steady_multipli:0,accretion_limit_eddington_wd_to_remnant_multipli:0,accretion_limit_thermal_multipli:0,accretion_start_tim:0,accretor:[0,18],acess:2,act:[0,13],activ:0,actual:[0,4,6,12,14],adapt:0,add:[2,4,6,12,13,16],add_grid_vari:[6,13],added:4,admittingli:12,adress:[1,5,8,18],affect:0,after:[0,6],ag89:0,again:4,against:12,agb:0,agb_3dup_algorithm:0,agb_core_algorithm:0,agb_core_algorithm_default:0,agb_core_algorithm_hurlei:0,agb_core_algorithm_karaka:0,agb_luminosity_algorithm:0,agb_luminosity_algorithm_default:0,agb_luminosity_algorithm_hurlei:0,agb_luminosity_algorithm_karaka:0,agb_radius_algorithm:0,agb_radius_algorithm_default:0,agb_radius_algorithm_hurlei:0,agb_radius_algorithm_karaka:0,agb_third_dredge_up_algorithm_default:0,agb_third_dredge_up_algorithm_hurlei:0,agb_third_dredge_up_algorithm_karaka:0,agb_third_dredge_up_algorithm_stancliff:0,age:0,aging:0,algorithm:10,algothim:0,all:[0,1,2,4,5,6,7,8,11,12,13,15],all_info:6,allow:[0,5,8],allow_nan:4,along:[0,7,8],alot:[8,13],alpha:0,alpha_c:0,alphacb:0,alreadi:6,also:[0,4,5,6,7,14,18],alt:14,altern:0,alwai:0,amanda:0,amax:2,amin:2,amount:[0,6,7,8,13,16],amt_cor:[8,13],analys:15,andrew:14,andronov:0,angelou_lithium_cheb_decay_tim:0,angelou_lithium_cheb_massfrac:0,angelou_lithium_cheb_tim:0,angelou_lithium_decay_funct:0,angelou_lithium_decay_function_exponenti:0,angelou_lithium_decay_tim:0,angelou_lithium_eagb_decay_tim:0,angelou_lithium_eagb_massfrac:0,angelou_lithium_eagb_tim:0,angelou_lithium_gb_decay_tim:0,angelou_lithium_gb_massfrac:0,angelou_lithium_gb_tim:0,angelou_lithium_hg_decay_tim:0,angelou_lithium_hg_massfrac:0,angelou_lithium_hg_tim:0,angelou_lithium_lmms_decay_tim:0,angelou_lithium_lmms_massfrac:0,angelou_lithium_lmms_tim:0,angelou_lithium_ms_decay_tim:0,angelou_lithium_ms_massfrac:0,angelou_lithium_ms_tim:0,angelou_lithium_tpagb_decay_tim:0,angelou_lithium_tpagb_massfrac:0,angelou_lithium_tpagb_tim:0,angelou_lithium_vrot_trigg:0,angelou_lithium_vrotfrac_trigg:0,angmom_to_orbit_factor:0,angular:[0,12],angular_momentum_accretion_rate1:0,angular_momentum_accretion_rate2:0,angular_momentum_accretion_rate_orbit:0,ani:[0,2,4,6],anoth:0,ansi:0,anyth:[0,8],anywai:6,anywher:[6,14],api:[0,4],api_log_filename_prefix:0,append:[1,4],appli:0,approach:5,appropri:0,approxim:0,aren:2,arenou2010_binary_fract:2,arg:[2,4,12],arg_dict:4,argpair:4,argstr:5,argument:[0,2,4,5,6,8,13,15],argument_of_periastron:0,argument_of_periastron_quadrupl:0,argument_of_periastron_tripl:0,around:[0,5],arrai:[2,4,5],artifici:0,artificial_accretion_ignor:0,arxiv:[0,2],asarrai:5,asign:6,ask:[0,18],asplund:0,assum:[0,12],ast871:0,astronomi:0,astropi:12,atom:4,attempt:[4,6],auto:11,autogen_c_logging_cod:[1,5],autogener:[1,5],automat:[0,1,5,7,14],avaibl:14,avail:[0,4,8,12],awai:0,axi:[0,12],b_1:0,b_2:0,b_3:0,b_4:0,b_inclination1:0,b_inclination2:0,b_inclination3:0,b_inclination4:0,back:0,background:5,backward:0,bagb:0,barn:0,base:[0,2,4,5,6,12,14,18],base_filenam:[6,13],bashrc:14,basic:[5,6],batchmod:0,beasor:0,becaus:[0,5,6,14],becom:[0,1,2,4],been:[0,6],befor:[0,6,8,13,14],behaviour:[4,15],behind:5,being:4,belczynski:0,below:[0,13],berro:0,bertolami:0,best:[6,8],beta_reverse_nova:0,beta_reverse_novae_geometri:0,better:6,between:[0,2,16],bewar:6,bh_belczynski:0,bh_fryer12_delai:0,bh_fryer12_rapid:0,bh_hurley2002:0,bh_prescript:0,bh_spera2015:0,big:0,bin:[0,5,14],binari:[2,5,6,8,10,12,13,14,18],binary_c:[1,2,4,5,6,8,12,13,15],binary_c_cal:6,binary_c_default:13,binary_c_inline_config:1,binary_c_log_cod:[1,5],binary_c_macro:0,binary_c_output:4,binary_c_paramet:13,binary_c_python:4,binary_c_python_api:14,binary_c_task_:0,binary_c_write_log_cod:1,binary_grid:0,binary_star:18,binaryc:[1,4,14,15],binaryc_config:1,binaryc_json_seri:4,binarycdecod:4,binarycencod:4,binarycpython:[1,2,4,5,6,7,10,12,13,14,15,16,18],bind:0,birth:0,bivari:0,black:0,black_hol:0,bloecker:0,blog:1,boltzman:12,boltzmann:0,bondi:0,bondi_hoyle_accretion_factor:0,bool:[4,6,7,12],born:0,both:[0,4],bottom:0,bound:[2,16],boundari:2,brake:0,branch:[0,4],branch_david:0,breakup:0,broken:0,bse:[0,2],bse_opt:[6,13],buffer:0,build:[0,1,4,10],built:[0,1,4,14],burn:0,busso:0,bye:0,c13_eff:0,c_auto_log:[8,13],c_log:0,c_logging_cod:[8,13],calc_period_from_sep:18,calc_sep_from_period:[13,18],calcul:[0,2,6,8,18],calculate_constants_three_part_powerlaw:2,call:[0,1,4,6,8,12,13,15],can:[0,1,2,4,5,6,8,12,13,14,15],cannot:[6,14],cap:0,captur:0,carbon:0,carbon_oxygen_white_dwarf:0,carlo:0,carrasco:0,carri:0,cast:[4,5],categor:4,caught:4,caus:18,cbdisc:0,cbdisc_alpha:0,cbdisc_eccentricity_pumping_dermin:0,cbdisc_eccentricity_pumping_method:0,cbdisc_eccentricity_pumping_non:0,cbdisc_end_evolution_after_disc:0,cbdisc_fail_ring_inside_separ:0,cbdisc_gamma:0,cbdisc_init_djdm:0,cbdisc_init_dm:0,cbdisc_inner_edge_strip:0,cbdisc_inner_edge_stripping_timescal:0,cbdisc_kappa:0,cbdisc_mass_loss_constant_r:0,cbdisc_mass_loss_fuv_multipli:0,cbdisc_mass_loss_inner_l2_cross_multipli:0,cbdisc_mass_loss_inner_viscous_accretion_method:0,cbdisc_mass_loss_inner_viscous_accretion_method_equ:0,cbdisc_mass_loss_inner_viscous_accretion_method_gerosa_2015:0,cbdisc_mass_loss_inner_viscous_accretion_method_non:0,cbdisc_mass_loss_inner_viscous_accretion_method_young_clarke_2015:0,cbdisc_mass_loss_inner_viscous_angular_momentum_multipli:0,cbdisc_mass_loss_inner_viscous_multipli:0,cbdisc_mass_loss_ism_pressur:0,cbdisc_mass_loss_ism_ram_pressure_multipli:0,cbdisc_mass_loss_xray_multipli:0,cbdisc_max_lifetim:0,cbdisc_minimum_evaporation_timescal:0,cbdisc_minimum_fr:0,cbdisc_minimum_luminos:0,cbdisc_minimum_mass:0,cbdisc_no_wind_if_cbdisc:0,cbdisc_outer_edge_strip:0,cbdisc_outer_edge_stripping_timescal:0,cbdisc_resonance_damp:0,cbdisc_resonance_multipli:0,cbdisc_torquef:0,cbdisc_viscous_l2_coupl:0,cbdisc_viscous_photoevaporative_coupl:0,cbdisc_viscous_photoevaporative_coupling_inst:0,cbdisc_viscous_photoevaporative_coupling_non:0,cbdisc_viscous_photoevaporative_coupling_visc:0,cemp:0,cemp_cfe_minimum:0,certain:[3,8],cf_amanda_log:0,cflag:14,chabrier:2,chandrasekhar:0,chandrasekhar_mass:0,chang:[0,1,2,4,6,7,8,13],chapter:[0,3,8,11],cheb:0,check:[2,4,6,7,13,18],check_circular:4,chemic:0,chen:0,child:[4,14],choic:[0,6,12],choos:[0,5,12],chosen:6,circular:0,circumbinari:0,circumstanti:0,claei:0,clark:0,clean:[1,6,14],clean_up_custom_logging_fil:6,clear:4,cloud:0,cls:4,cluster:9,cmdline:6,code:[0,1,3,5,6,7,10,12,13,14,15],collaps:0,collapsar:0,collect:18,collid:18,color:12,color_by_index:12,colour:0,colour_log:0,column:[5,12,13],com:1,combin:[1,4,6,8],combine_ensemble_with_thread_join:8,come:[2,14,16],comenv_bs:0,comenv_disc_angmom_fract:0,comenv_disc_mass_fract:0,comenv_ejection_spin_method:0,comenv_ejection_spin_method_do_noth:0,comenv_ejection_spin_method_sychron:0,comenv_ejection_spin_method_synchron:0,comenv_merger_spin_method:0,comenv_merger_spin_method_breakup:0,comenv_merger_spin_method_conserve_angmom:0,comenv_merger_spin_method_conserve_omega:0,comenv_merger_spin_method_specif:0,comenv_ms_accret:0,comenv_ms_accretion_fract:0,comenv_ms_accretion_mass:0,comenv_nandez2016:0,comenv_nelemans_tout:0,comenv_ns_accret:0,comenv_ns_accretion_fract:0,comenv_ns_accretion_mass:0,comenv_post_eccentr:0,comenv_prescript:0,comenv_splitmass:0,comenv_undef:0,command:[0,1,6,8,14],commandlin:[6,8,13],commit:4,common:[0,13],companion:[0,13],compar:0,compil:[1,5,13,14],compile_shared_lib:1,complain:[13,14],complex:[5,6,8,12],compon:[4,12],comput:9,condit:[5,6,13],condor:[6,8,9],condor_grid:6,config:[1,8,14],config_fil:1,configur:[2,5,13],conserv:0,consid:[0,1,2,4,6,8,12],constant:[0,2,12],construct:[0,1,5],conta:7,contain:[0,1,2,3,4,6,7,8,9,11,12,13,15,16,17],content:[4,10],continu:6,control:0,convect:0,converg:0,convert:[2,4,6],cool:0,copi:[6,14,18],core:[0,6,8,12],core_helium_burn:0,core_mass:0,correct:[6,12,18],correctli:[5,12,13,14],correspond:12,corretor:0,cosmic:2,cosmic_sfh_madau_dickinson2014:2,could:[0,4],counter:8,coupl:0,coverag:14,cowd:0,cpu:0,crap_paramet:0,creat:[4,6,13],create_and_load_logging_funct:[1,5],create_arg_str:4,create_hdf5:[4,13],critic:0,cross:0,ctype:1,cuntz:0,current:[0,4],custom:[0,1,4,5,6,8,12,13,15],custom_log:[5,6,8],custom_logging_cod:[1,5,15],custom_logging_func_memaddr:[5,8],custom_logging_funct:[5,8,10,11,13],custom_logging_info:6,custom_opt:[6,13],cut:5,dai:[0,5,13,18],damp:0,dat:[0,4,13],data:[0,4,5,13,15],data_dir:[4,6,8,13],datadir:6,datafram:[5,12],date:6,david:[0,14],david_logging_funct:0,dd7:0,deactiv:0,deal:4,death:0,debug:8,decai:0,decid:[0,4,5],decod:4,decreas:0,deeper:6,def:[5,13],default_to_metal:0,defaultdict:4,defer:0,defin:[0,1,2,6,12],definit:[1,18],degener:0,degre:0,delta_mcmin:0,den:0,depend:[0,2,12],deprec:0,dermin:0,describ:[0,2,5,8,14],descript:[0,4,8,10,11],design:[6,12],desir:0,destruct:6,detail:[0,4],determin:[0,6,18],deton:0,dev:0,develop:1,deviat:2,dewi:0,dex:0,df2:5,diagnost:8,diagram:[0,12],dickonson:2,dict:[1,2,4,6,7,13,17],dict_1:4,dict_2:4,dictinari:8,dictionari:[1,2,4,6,7,8,12,17],did:[4,14],didnt:14,differ:[0,4,6,12,14],dimmer:0,dir:14,direct:[0,6],directli:5,director:8,directori:[0,4,6,8,13,14],disabl:0,disable_end_log:0,disable_ev:0,disc:0,disc_legacy_log:0,disc_log2d:0,disc_log:0,disc_log_directori:0,disc_log_dt:0,disc_log_level_non:0,disc_log_level_norm:0,disc_log_level_normal_first_disc_onli:0,disc_log_level_subtimestep:0,disc_log_level_subtimestep_first_disc_onli:0,disc_n_monte_carlo_guess:0,disc_stripping_timescale_infinit:0,disc_stripping_timescale_inst:0,disc_stripping_timescale_orbit:0,disc_stripping_timescale_visc:0,disc_timestep_factor:0,discs_circumbinary_from_comenv:0,discs_circumbinary_from_wind:0,disk:[0,6],dispers:0,displai:0,distribut:[0,2,9],distribution_funct:[10,11],distributoon:2,divid:9,dlnm1:[6,13],dlog10per:13,dlogp:2,doc:[4,7,14],doc_fetch:2,docstr:12,document:[4,7,8,11,14],doe:[0,2,6,14,18],doesn:6,doesnt:[5,7],doing:[0,1,6,7],don:8,done:[0,5,13,14],donm:13,donor:[0,18],donor_limit_dynamical_multipli:0,donor_limit_envelope_multipli:0,donor_limit_thermal_multipli:0,donor_rate_algorithm_bs:0,donor_rate_algorithm_claeys2014:0,dont:[2,4,5,6],dphasevol:[6,13],dr2:0,dr3:0,drai:0,dredg:0,dtfac:0,dtlimit:4,dtm:[1,13],dtype:5,due:14,dummi:[2,12],dump:[0,4],dumpvers:0,duquennoi:2,duquennoy1991:2,dure:0,dust:0,dwarf:0,dynam:0,e2_hurley_2002:0,e2_izzard:0,e2_prescript:0,each:[0,2,4,6,8],eagb:0,eagb_wind_beasor_etal_2020:0,eagb_wind_bs:0,eagb_wind_goldman_etal_2017:0,eagbwind:0,eagbwindfac:0,earli:0,early_asymptotic_giant_branch:0,easi:4,easier:[4,5],easili:14,ecc:[5,6],eccentr:[0,2,5,12,13,18],eccentric_rlof_model:0,eccentricity_quadrupl:0,eccentricity_tripl:0,echo:0,eddington:0,edg:0,edu:0,effect:[0,2],effective_metal:0,effici:0,egg:14,eggleton:[0,18],either:[0,4,5,6,15],eject:0,eld:0,eldridg:0,electon:0,electron:0,element:[0,1,4,8,12],email:4,emp:0,emp_logg_maximum:0,emp_minimum_ag:0,empti:[4,7],enabl:0,encod:4,encount:8,end:[0,4,8,13],energi:0,enhanc:0,enlarg:0,ensembl:[0,4,8],ensemble_def:0,ensemble_dt:0,ensemble_filter_:0,ensemble_filters_off:0,ensemble_json:4,ensemble_legacy_ensembl:0,ensemble_list:6,ensemble_logdt:0,ensemble_logtim:0,ensemble_output_:8,ensemble_result:8,ensemble_startlogtim:0,ensure_ascii:4,enter:0,enthalpi:0,entir:5,entri:4,entrypoint:6,env:12,envelop:0,environ:10,episod:0,equal:[4,13],equat:0,equation_of_state_algorithm:0,equation_of_state_paczynski:0,equatori:0,error:[4,8,14],esa:2,escap:0,escape_fract:0,escape_veloc:0,esnemble_macro:0,eta:0,etal:0,etc:[0,4,6,9,12,13,14,15],euler:0,evalu:[2,6,18],evan:0,evapor:0,event:0,everi:0,everyth:[6,8,13],evid:0,evolut:[0,1,5,6,8,12],evolution_split:0,evolution_splitting_maxdepth:0,evolution_splitting_sn_n:0,evolution_typ:8,evolutionari:0,evolv:[0,6,13],evolve_popul:[6,13],evolve_singl:[6,13],exact:[1,4,8],exactli:0,exampl:[1,2,4,6,10,14,15],example_head:4,example_header_1:5,example_header_2:5,example_log:15,example_log_co:1,example_parse_output:[4,5],example_pop:13,example_python_population_result:13,exce:[0,8],except:[4,6,7,12],excess:0,execut:[0,6,8,13,14],exist:[0,6,7,13,14],exist_ok:[4,13],exit:0,exp:[6,13],expand:15,experienc:14,experiment:[0,4,14],explain:4,explicilti:1,explod:0,explos:0,expoenti:0,expon:0,export_all_info:[6,13],express:0,extend:14,extern:0,extra:[0,6,8,15],extract:[4,13],extract_ensemble_json_from_str:4,f3401ead4:0,fabian:0,fabian_imf_log:0,fabian_imf_log_tim:0,fabian_imf_log_timestep:0,factor:[0,2,8],fail:[0,4,8,14],fail_sil:4,failed_system:8,failed_system_log:8,failed_systems_threshold:8,fals:[0,4,6,8,12,13],fancy_parsing_funct:15,faq:10,far:0,farmer:0,fase:13,fast:0,ferguson:0,field:0,fig:[0,2],figur:[8,12,14],file:[0,1,4,6,7,8,9,12,13,14],file_log:0,filenam:[0,1,4,5,6,8,13,15],filepath:[1,4],filesystem:4,filter:[0,4],filter_arg_dict:4,filter_valu:4,fin:0,find:[6,8],finish:[4,12],first:[0,2,4,6,18],first_giant_branch:0,fishlock:0,fit:[0,2,6,18],fix:[0,2,4,6,12],flag:[1,4,8],flash:0,flat:2,flatsect:[2,13],flaw:6,float64:5,flto:14,follow:[0,2,4,8,12,14],forc:0,force_circularization_on_rlof:0,force_corotation_of_primary_and_orbit:0,forloop:6,form:[0,4,6,7],formal:0,format:[0,2,4,5,6,13],formula:0,forward:0,found:[2,14],four:0,fpic:1,fraction:[0,2],frequenc:0,friction:0,fring:0,from:[0,2,4,5,6,8,12,13,14,18],from_binary_c_config:1,from_dict:5,ftz:14,full:[4,8,14],full_path:4,fulli:[6,13],func_memaddr:5,fuv:0,gaia:[0,2],gaia_colour_transform_method:0,gaia_conversion_ubvri_bivariate_jordi2010:0,gaia_conversion_ubvri_riello2020:0,gaia_conversion_ubvri_univariate_evans2018:0,gaia_conversion_ubvri_univariate_jordi2010:0,gaia_conversion_ugriz_bivariate_jordi2010:0,gaia_conversion_ugriz_riello2020:0,gaia_conversion_ugriz_univariate_evans2018:0,gaia_conversion_ugriz_univariate_jordi2010:0,gaia_l_binwidth:0,gaia_teff_binwidth:0,gain:8,galact:0,gallino:0,gamma:0,gap:0,garcia:0,gauss:0,gaussian:2,gaussian_func:2,gaussian_normalizing_const:2,gb_reimers_eta:0,gb_wind_beasor_etal_2020:0,gb_wind_goldman_etal_2017:0,gb_wind_reim:0,gb_wind_schroeder_cuntz_2005:0,gbwind:0,gbwindfac:0,gcc:[1,14],gce:0,gener:[0,1,2,4,5,6,7,8,12,13],geometr:0,gerosa:0,get:[0,4,5,6,7,8,13,14,15,18],get_arg_kei:4,get_default:4,get_help:[4,13],get_help_al:[4,6,13],get_help_sup:4,gettempdir:5,giant:0,giant_branch:0,git:[0,4],git_branch:4,git_build:4,give:[0,2,4,5,18],given:[0,1,2,4,5,6,15,18],globablli:2,global:[0,2],global_dict:2,gmax:2,gmin:2,goe:[0,6,12],gogo:0,going:14,goldman:0,gonna:2,good:[0,8,13,18],gravit:0,gravitational_radiation_bs:0,gravitational_radiation_bse_when_no_rlof:0,gravitational_radiation_landau_lifshitz:0,gravitational_radiation_landau_lifshitz_when_no_rlof:0,gravitational_radiation_model:0,gravitational_radiation_modulator_:0,gravitational_radiation_modulator_j:0,gravitational_radiation_non:0,grb:0,greater:0,grevess:0,grid:[0,4,6,10,11,13],grid_class:[10,11],grid_cod:6,grid_opt:[6,8,13],grid_options_default:7,grid_options_defaults_dict:7,grid_options_descript:7,grid_options_description_check:7,grid_options_help:7,grid_vari:[8,13],gridcod:6,gridcode_filenam:8,group:4,guess:[0,2],hachisu:0,hachisu_disk_wind:0,hachisu_ignore_qcrit:0,hachisu_qcrit:0,hack:7,had:6,half:0,handi:0,handl:[0,6,8,13,15,18],handle_ensemble_string_to_json:4,happen:[0,14],has:[0,1,4,5,6,8],have:[0,2,4,5,6,7,8,12,13,14],hbb:0,hbbtfac:0,hdf5:[4,13],hdf5file:4,header:[1,4,5,13],headerlin:13,headlin:8,hegb:0,hehg:0,height:[2,13],helium:0,helium_flash_mass_loss:0,helium_white_dwarf:0,help:[0,4,7,13],help_al:0,hem:0,henc:0,hendrik:14,here:[1,4,5,6,12,13],hertzsprung:0,hertzsprung_gap:0,hertzstrpung:0,heuvel:0,hewd:0,hex:8,high:[0,2],higher:[0,4,8],his:2,histori:2,hole:0,hopefulli:0,hot:0,how:[0,4,5,6,8],howev:0,hoyl:0,hpc:[6,9],hpc_function:[10,11],hr_diagram:12,hrd:0,hrdiag:0,hrdiag_output:0,html:14,http:[0,1,2,14],hurlei:0,hybrid:0,hydro:0,hydrogen:0,ibc:0,idea:12,idum:0,ignit:0,ignor:[0,5],iia:0,imag:14,imf:[0,2],imf_chabrier2003:2,imf_scalo1986:2,imf_scalo1998:2,imf_tinsley1980:2,immedi:0,implement:[0,6,8],impli:0,impos:13,inclin:0,inclination1:0,inclination2:0,inclination3:0,inclination4:0,inclini:0,incliniation_quadrupl:0,incliniation_tripl:0,includ:[0,1,4,5,6,12,14],include_binary_c_default:[6,13],include_binary_c_help_al:[6,13],include_binary_c_version_info:[6,13],include_default:6,include_popul:13,include_population_set:6,increas:0,inde:0,indent:4,index:[0,2,10],indic:0,individual_nova:0,induc:0,inertia:0,info:[4,6,12,13,14],inform:[0,1,4,6,7,12,13],init:6,init_abund:0,init_abund_dex:0,init_abund_mult:0,init_abunds_onli:0,initi:[0,2,6],initial_abundance_hash:6,initial_abundance_mix:0,initial_abunds_onli:0,inlin:5,inner:0,input:[1,2,4,6,8,10,12,18],input_dict:4,insert:6,inspect:[4,12,13],inspect_dict:4,inspir:[1,5,12,18],instabl:0,instal:14,instanc:[4,13],instant:0,instantli:0,instead:[0,4,8,14],instruct:10,integ:[0,6,8,18],interact:[0,7],interfac:4,interfer:14,intern:[0,8],internal_buff:0,internal_buffering_off:0,internal_buffering_print:0,internal_buffering_stor:0,interpol:2,interpolate_in_mass_izzard2012:2,intershel:0,interstellar:0,intro:0,invers:18,involv:0,inward:0,isn:[4,6],isnt:13,isotop:[0,4],isotope_hash:6,isotope_list:6,issu:14,item:1,iter:4,its:[0,4,7,12,14,15],itself:[4,8,14],iwamoto:0,izzard2012_period_distribut:2,izzard:[0,14],jager:0,jan:[],jaschek:2,jeff:14,jia:0,john:0,join:13,jordi:0,json:[4,6,8,13],jsondecod:4,jsonencod:4,jupyt:14,just:[0,2,4,5,6,8,18],kappa:0,karaka:0,keep:6,kei:[1,2,4,6,7,8,12],kelvin:0,keplerian:0,keypair:4,keyword:[12,15],kick:[0,8],kick_backward:0,kick_forward:0,kick_inward:0,kick_outward:0,kick_random:0,kick_straight_up:0,kick_velocity_custom:0,kick_velocity_fix:0,kick_velocity_maxwellian:0,kill:[1,13],kim:0,kind:0,know:[0,1,6,7],known:[0,6,13,15],kroupa2001:[2,6],kroupa:2,ktg93:2,kwarg:[6,12,15],lambda:0,lambda_c:0,lambda_ce_dewi_tauri:0,lambda_ce_polytrop:0,lambda_ce_wang_2016:0,lambda_enthalpi:0,lambda_ionis:0,lambda_min:0,lambda_mult:0,lambda_multipli:0,lamer:0,landau:0,langer:0,larger:0,late:5,latter:0,law:2,ld_library_path:14,lead:0,leav:0,left:0,legaci:0,legacy_yield:0,len:13,lengthen:0,less:[0,1,2],let:6,level:[1,4],li7:0,lib:5,libbinary_c:[8,14],libgsl:14,libmemo:14,librari:[1,5,6,8,14,15],library_path:14,librinterpol:14,lies:0,lifetim:0,lifshitz:0,like:[0,1,4,5,6,8,12,14,16],limit:[0,12],line:[1,4,5,6,8,12,14],linear:[0,8],linearli:[6,16],linker:1,linspac:16,list:[0,1,2,4,8,14,15,16],list_arg:0,list_of_sub_kei:2,lit:0,lithium:0,lithium_gb_post_1dup:0,lithium_gb_post_heflash:0,lithium_hbb_multipli:0,lithium_t:0,littleton:0,liu:0,lnm1:[6,13],load:[0,1,4,5,6,12,13],load_logfil:4,lobe:[0,18],local:2,locat:[0,2,8,14],lodder:0,log10:[0,2,13],log10p:2,log10per:13,log10pmin:2,log:[0,1,2,5,6,8,12,13,14,15,18],log_arg:8,log_args_dir:8,log_fil:8,log_filenam:[0,5,15],log_runtime_system:8,logarithm:2,logensembletim:0,logfil:[4,14,15],logg:0,logging_dict:1,logging_lin:5,logic:[1,6,8],logp:2,logper:2,long_spectral_typ:2,longer:0,longnam:[6,13],look:[1,4],lookback:0,loon:0,loop:6,loos:12,lose:0,loss:0,lost:0,lot:[4,15],low:[0,2,13],low_mass_m:0,low_mass_main_sequ:0,lower:[0,2,16],lsun:12,lugaro:0,luminos:[0,12],luminosity_1:12,luminosity_2:12,lynnett:0,m_1:[0,5,6,13,15],m_2:[0,5,13],m_3:0,m_4:0,m_max:[2,6],m_min:6,m_re:5,maccretor:0,machin:[8,14],macro:[0,4],madau:2,maeder:0,magellan:0,magnet:0,magnetic_braking_algorithm:0,magnetic_braking_algorithm_andronov_2003:0,magnetic_braking_algorithm_barnes_2010:0,magnetic_braking_algorithm_hurley_2002:0,magnetic_braking_algorithm_rappaport_1983:0,magnetic_braking_factor:0,magnetic_braking_gamma:0,mai:0,main:[0,1,8],main_sequ:0,mainli:9,major:0,make:[0,1,2,4,5,6,8,12,13,14,15],make_build_text:4,makedir:[4,13],manag:14,mani:[0,6,8],manual:14,manual_vrot:0,manufactur:0,mar:0,marchant:0,maria:0,mass:[0,1,2,4,5,6,8,12,13,15,18],mass_1:[5,12],mass_2:[5,12],mass_accretion_for_eld:0,mass_accretion_rate1:0,mass_accretion_rate2:0,mass_accretor:18,mass_donor:18,mass_evolut:12,mass_for_hestar_ia_low:0,mass_for_hestar_ia_upp:0,mass_of_pmz:0,massiv:[0,2],massless_remn:0,master:[8,12],match:[0,4,12],materi:0,math:[6,13],matplotlib:12,matter:[0,14],mattsson:0,mattsson_mass_loss:0,mattsson_orich_tpagbwind:0,max:[0,2,13],max_bound:[2,16],max_evolution_tim:[0,1,5,13],max_hewd_mass:0,max_model_numb:0,max_neutron_star_mass:0,max_stellar_angmom_chang:0,max_val:2,maximum:[0,2,8],maximum_mass_ratio_for_instant_rlof:0,maximum_mcbagb_for_degenerate_carbon_ignit:0,maximum_nuclear_burning_timestep:0,maximum_timestep:0,maximum_timestep_factor:0,maxmimum:0,maxwellian:0,mayb:12,mayor:2,mc13_pocket_multipli:0,mch:0,mcmin:0,mdonor:0,mean:[0,2,4,6,14],meant:8,medium:0,megaparsec:2,memaddr:5,memori:[1,5,6,8,18],menv:0,merg:[0,4,8],merge_dict:4,merger:0,merger_angular_momentum_factor:0,mesa:14,mesasdk_init:14,mesasdk_root:14,messag:4,mestel:0,met:6,metal:[0,2,5,18],method:[0,5,6],meynet:0,might:[6,14],milki:0,miller:0,min:[2,13],min_bound:[2,16],min_val:2,mind:5,minimal_verbos:4,minimum:[0,2,4,18],minimum_co_core_mass_for_carbon_ignit:0,minimum_co_core_mass_for_neon_ignit:0,minimum_donor_menv_for_comenv:0,minimum_envelope_mass_for_third_dredgeup:0,minimum_helium_ignition_core_mass:0,minimum_mcbagb_for_nondegenerate_carbon_ignit:0,minimum_orbital_period_for_instant_rlof:0,minimum_period_for_rlof:18,minimum_separation_for_instant_rlof:0,minimum_separation_for_rlof:18,minimum_timestep:0,mint:0,mint_dir:0,mint_ms_rejuven:0,mira:0,misc:10,miscellan:4,miss:[4,7],mix:0,mixtur:0,mmax:2,mnra:18,model:[0,1,5,13],modifi:0,modul:[0,7,10,11],modulo:8,moment:[0,13,16],momenta:[0,12],momentum:0,mont:0,monte_carlo_kick:0,montecarlo:8,more:[0,1,4,5,6,8,12,14,16],most:[4,14],mostli:[4,5,7,8,12,13,15],msun:[0,5],much:4,mulitpli:8,mulitprocess:8,multipl:[0,2],multiplc:0,multipli:0,multiprocess:[6,8],multithread:8,must:[0,2],my_header_lin:13,my_sss2:5,my_stellar_data:[1,5,13],myr:[0,5],n100:0,n100_z0:0,n100h:0,n100l:0,n10:0,n150:0,n1600:0,n1600c:0,n200:0,n20:0,n300c:0,n40:0,naked_helium_star_giant_branch:0,naked_helium_star_hertzsprung_gap:0,naked_main_sequence_helium_star:0,name:[1,4,5,6,7,13,14,15,17],natur:0,nauenberg:0,nearer:0,necessari:[4,5,6,13,14],need:[0,5,6,13,14],neg:0,neither:[0,6],neleman:0,nelemans_gamma:0,nelemans_max_frac_j_chang:0,nelemans_minq:0,nelemans_n_comenv:0,nelemans_recalc_eccentr:0,nenamg:0,neon:0,nest:[4,6],network:0,neutrn:0,neutron:[0,13],neutron_star:0,never:0,newer:[0,2],newli:0,newopt:2,newton:0,next:4,nice:[1,6,12,13],nieuwenhuijzen:0,nieuwenhuijzen_windfac:0,no_thermohaline_mix:0,noecho:0,noechonow:0,noel:0,nomin:0,non:0,nonconservative_angmom_gamma:0,none:[0,1,2,4,5,6,7],nor:0,normal:[0,2],normalis:2,note:[0,5,10],notebook:14,notifi:15,nova:0,nova_faml_multipli:0,nova_irradiation_multipli:0,nova_retention_algorithm_claeys2014:0,nova_retention_algorithm_const:0,nova_retention_algorithm_hillman2015:0,nova_retention_fract:0,nova_retention_method:0,nova_timestep_accelerator_index:0,nova_timestep_accelerator_max:0,nova_timestep_accelerator_num:0,now:[0,2,4,5],nuclear:0,nuclear_mass_hash:6,nuclear_mass_list:6,nucleosynthesi:[0,4],nucleosynthesis_sourc:4,nucreacmult:0,nucsyn:10,nucsyn_angelou_lithium:0,nucsyn_gce_outflow_check:0,nucsyn_hbb:0,nucsyn_init_abund_mix_ag89:0,nucsyn_init_abund_mix_asplund2005:0,nucsyn_init_abund_mix_asplund2009:0,nucsyn_init_abund_mix_garciaberro:0,nucsyn_init_abund_mix_grevesse_noels_1993:0,nucsyn_init_abund_mix_karakas2002:0,nucsyn_init_abund_mix_kobayashi2011_asplund2009:0,nucsyn_init_abund_mix_lodders2003:0,nucsyn_init_abund_mix_lodders2010:0,nucsyn_metal:0,nucsyn_s_process:0,nucsyn_third_dredge_up:0,nugi:0,number:[0,2,4,5,6],numpi:[4,5,16],obj:4,object:[0,4,6,8,9,12,13],object_hook:4,object_pairs_hook:4,obtain:0,occur:[0,18],ofcours:12,off:[0,5,13],offset:0,ohio:0,old_solut:14,omega:0,onc:0,one:[0,4,5,6,12,14],onewd:0,onli:[0,4,5,6,8,18],onset:0,onto:0,opac:0,opacity_algorithm:0,opacity_algorithm_ferguson_op:0,opacity_algorithm_paczynski:0,opacity_algorithm_star:0,opal:0,open:13,opm:2,opt:[2,4],option:[1,2,4,5,6,10,11,13,14,18],orb:6,orbit:[0,2,12,13,18],orbit_evolut:12,orbital_inclin:0,orbital_inclinationi:0,orbital_period:[0,5,13,18],orbital_period_quadrupl:0,orbital_period_tripl:0,orbital_phas:0,orbital_phase_quadrupl:0,orbital_phase_tripl:0,order:[4,5,6],org:[0,2],origin:14,other:[0,1,2,4,7,8,12,13],otherwis:[6,7,8],out:[4,7,8,14],outcom:0,outer:0,outfil:[6,13],outfile_nam:1,outfilenam:13,output:[1,4,5,6,8,10,12,13,14,15,18],output_dir:6,output_fil:[4,7],output_filenam:6,output_lin:[4,13],outsid:0,outward:0,over:[4,6,13],overflow:0,overrid:[2,5],overriden:13,overshoot:0,overspin_algorithm:0,overspin_bs:0,overspin_massloss:0,own:[5,6,8,14],oxygen:0,oxygen_neon_white_dwarf:0,pack:13,packag:[4,14,16],paczynski:0,page:[0,10],pair:[0,4],panda:[4,5,12],pane:12,panel:0,paper:0,param:12,param_nam:4,paramet:[1,2,4,6,7,8,10,12,13,14,15,16,18],parameter_nam:[4,6,13],parameter_value_input_typ:4,pars:[4,5,6,12,13,15],parse_binary_c_version_info:4,parse_cmdlin:6,parse_const:4,parse_float:4,parse_funct:[6,8,13,15],parse_function_hr_diagram:12,parse_function_mass:12,parse_function_orbit:12,parse_int:4,parse_output:5,part:[2,5,6,18],partial:0,particularli:0,pasp:2,pass:[5,8,12,14,15],path:[4,8,13,14],pdf:[0,2],pend:0,per:[0,4,6,8,13,18],peret:0,perform:0,perhap:0,periastron:0,pericent:18,period:[0,2,5,12,13,18],perl:1,person:14,pgo:0,phase:0,phasevol:0,photoevapor:0,php:2,physic:13,pick:12,piec:[5,6],pinnsonneault:0,pip:14,pisn:0,pkg:14,place:8,placehold:12,plai:0,plan:8,pleas:[0,4],plot:[5,12],plot_funct:[10,11],plot_hr_diagram:12,plot_hr_diagram_singl:12,plot_mass:12,plot_orbit:12,plot_system:12,plot_typ:12,pls:6,plu:0,pms:12,pms_mass_1:12,pms_mass_2:12,pogg:0,point:[0,2,4,14],pol:0,polytrop:0,popuation_id:8,popul:[0,2,6,7,9,10,16],population_set:6,posit:[0,2],possibl:[0,1,2,4,7,14],post:0,post_sn_orbit_bs:0,post_sn_orbit_method:0,post_sn_orbit_tt98:0,postagb_legacy_log:0,potenti:0,power:[0,2],powerlaw:2,powerlaw_const:2,ppisn:0,ppisn_dis:0,ppisn_farmer19:0,ppisn_prescript:0,pre:[0,12],pre_main_sequ:0,pre_main_sequence_fit_lob:0,precis:4,precod:[6,13],predefin:2,predictor:0,prefer:[0,6],prefix:0,preload:12,prepar:2,prepare_dict:2,prescript:0,present:[2,4,6,13],preserv:0,preset:12,pressur:0,prevent:0,previou:4,previous_stardata:1,primari:[1,2,6,13,18],print:[4,5,7,8,13,14],print_help:4,print_info:7,print_structur:4,printf:[1,5,13],prior:0,privat:[6,7,10],probabl:[0,1,2,6,7,8,13,14],probdist:[6,13],problabl:12,process:[0,4,5,6,8],progenitor:0,program:14,project:0,proper:7,properli:0,properti:[0,4,8,12],provid:[0,2,6,8,13,15],pseudorandom:0,puls:[0,18],pulsat:0,pump:0,purpos:[8,12],put:[1,4,5,8,12,13,14],pyenv:14,python3:[5,14],python:[4,5],python_api_test:14,pythonpath:14,qcrit_bh:0,qcrit_cheb:0,qcrit_cowd:0,qcrit_degenerate_bh:0,qcrit_degenerate_cheb:0,qcrit_degenerate_cowd:0,qcrit_degenerate_eagb:0,qcrit_degenerate_gb:0,qcrit_degenerate_hegb:0,qcrit_degenerate_hehg:0,qcrit_degenerate_hem:0,qcrit_degenerate_hewd:0,qcrit_degenerate_hg:0,qcrit_degenerate_lmm:0,qcrit_degenerate_m:0,qcrit_degenerate_n:0,qcrit_degenerate_onewd:0,qcrit_degenerate_tpagb:0,qcrit_eagb:0,qcrit_gb:0,qcrit_gb_bs:0,qcrit_gb_chen_han_formula:0,qcrit_gb_chen_han_t:0,qcrit_gb_ge2015:0,qcrit_gb_hjellming_webbink:0,qcrit_gb_q_no_comenv:0,qcrit_gb_vos2018:0,qcrit_hegb:0,qcrit_hehg:0,qcrit_hem:0,qcrit_hewd:0,qcrit_hg:0,qcrit_lmm:0,qcrit_m:0,qcrit_n:0,qcrit_onewd:0,qcrit_tpagb:0,qcrits_:0,qcrits_degenerate_:0,quadrat:0,quadrulpl:0,quadrupl:0,quantiti:12,quit:[0,4],r_l:18,radi:0,radiat:0,radii:[0,18],radiu:[0,1,12,13,18],radius_1:12,radius_2:12,ragb:18,raghavan2010_binary_fract:2,raghavan:2,rai:0,railton:0,rais:[0,4,8,13],ram:0,random:[0,8],random_se:0,random_skip:0,random_system:0,random_systems_se:0,rang:[0,2,6,16],rapidli:0,rappaport:0,rate:[0,2],rather:[0,4,6,8],ratio:[0,2,13,18],raw:[4,5,6,12,15],raw_output:4,reaction:0,read:[4,14],real:6,realli:[0,6,7,8],reason:0,rebuild:14,recalcul:0,reciev:4,recombin:0,recommend:[1,6,14],recurs:[4,6],red:0,redhat:1,redshift:2,reduc:0,reduct:8,regardless:12,region:0,reimer:0,reject:0,rejuven:0,rel:0,relat:0,remain:0,remnant:0,remov:[0,4,6],remove_fil:4,repeat:[0,8],repo:14,report:0,represent:[4,6],reproduc:0,requir:[0,4,5,10,12,13,15],reset:0,reset_pref:0,reset_star:0,reset_stars_default:0,resolut:[0,6,13],resolv:[0,14],reson:0,respect:[0,2],rest:6,restructuredtext:4,result:[0,1,2,4,5,6,8,13,14],result_example_head:5,result_example_header_1:5,result_example_header_2:5,retain:0,rethink:4,return_all_info:6,return_binary_c_version_info:[4,6],return_compilation_dict:1,return_help_al:4,return_minimum_orbit_for_rlof:18,return_population_set:6,return_version_info:4,revap_in:0,revap_out:0,revers:[0,12],reverse_tim:0,revis:[0,4],rewrit:6,ri0005:14,rich:0,riello:0,rin:0,ring:0,risk:6,ritter:0,rk2:0,rk4:0,rlof:[0,18],rlof_angular_momentum_transfer_model:0,rlof_angular_momentum_transfer_model_bs:0,rlof_angular_momentum_transfer_model_conserv:0,rlof_eccentric_as_circular:0,rlof_entry_threshold:0,rlof_f:0,rlof_interpolation_binary_c:0,rlof_interpolation_bs:0,rlof_interpolation_method:0,rlof_mdot_factor:0,rlof_mdot_modul:0,rlof_method:0,rlof_method_adapt:0,rlof_method_adaptive2:0,rlof_method_bs:0,rlof_method_claei:0,rlof_method_ritt:0,rlof_nonconservative_gamma_donor:0,rlof_nonconservative_gamma_isotrop:0,rlof_radiation_correct:0,rob:[0,2,18],robert:14,roch:[0,18],roche_lob:18,rochelob:18,room:6,root:14,rotat:[0,2],rotation:0,rotationally_enhanced_expon:0,rotationally_enhanced_mass_loss:0,rotationally_enhanced_massloss:0,rotationally_enhnaced_massloss_angmom:0,rotationally_enhnaced_massloss_langer_formula:0,rotationally_enhnaced_massloss_langer_formula_and_angmom:0,rotationally_enhnaced_massloss_non:0,rout:0,routin:[0,5,6,12],row:12,rring:0,rssd:2,rst:[4,7],rsun:12,run:[0,1,4,5,6,8,13,14,15],run_example_binari:5,run_example_binary_with_custom_log:5,run_example_binary_with_run_system:5,run_example_binary_with_writing_logfil:5,run_example_custom_logging_autogener:5,run_system:[5,12,15],run_system_wrapp:[5,10,11],runtim:[1,8],russel:0,rzam:18,sai:0,said:0,same:[0,4,5,13,14],sampl:[0,2,6,16],sana12:[2,13],sana:2,save:[1,2,13],scalo:2,scanf:0,scene:5,scheme:0,schneider:0,schroeder:0,script:[3,5],sdb:0,sdo:0,search:10,second:[0,2,4,12],secondari:[2,18],section:[2,4,9,10],see:[0,5,6,12,14],seed:0,seem:12,segment:16,seitenzahl2013_model:0,seitenzahl:0,select:[0,4,5],selected_head:[4,5],self:[6,8,13],semi:0,sent:0,sentenc:1,sep:[2,5,6,13,18],sep_max:13,sep_min:13,separ:[0,2,4,5,12,13,18],separation_quadrupl:0,separation_tripl:0,separta:0,seper:[6,7,13],sequenc:0,seri:0,serial:4,serializ:6,serv:[4,5,13],server:6,set:[0,1,2,4,6,7,8,12,13,14],set_opt:2,settingsfil:4,setup:15,sever:[5,7,8,12,15],sfh:2,shara:0,share:[1,5,8,14,15],shared_lib_filenam:5,shim:14,should:[0,1,5,7,8,12,13,14,15],shouldn:[0,4],show:[3,8,12],show_plot:12,show_stellar_typ:12,shown:12,siess:0,sigma:2,silent:4,sill:0,simpl:13,simpli:0,simul:[0,1,8,13],simulation_:6,sinc:[4,12,13],singl:[0,2,6,12,13],skip:0,skipkei:4,sliced_df:5,slope:2,slow:0,slurm:[6,8,9],slurm_grid:6,small:0,small_envelope_method:0,small_envelope_method_bs:0,small_envelope_method_miller_bertolami:0,smaller:0,sn_impulse_liu2015:0,sn_impulse_non:0,sn_impulse_wheeler1975:0,sn_kick_companion_a:0,sn_kick_companion_aic_bh:0,sn_kick_companion_bh_bh:0,sn_kick_companion_bh_n:0,sn_kick_companion_ecap:0,sn_kick_companion_grb_collapsar:0,sn_kick_companion_hestaria:0,sn_kick_companion_ia_chand:0,sn_kick_companion_ia_chand_co:0,sn_kick_companion_ia_eld:0,sn_kick_companion_ia_h:0,sn_kick_companion_ia_he_co:0,sn_kick_companion_ia_hybrid_hecowd:0,sn_kick_companion_ia_hybrid_hecowd_sublumin:0,sn_kick_companion_ibc:0,sn_kick_companion_ii:0,sn_kick_companion_iia:0,sn_kick_companion_ns_n:0,sn_kick_companion_tz:0,sn_kick_companion_wdkick:0,sn_kick_dispersion_aic_bh:0,sn_kick_dispersion_bh_bh:0,sn_kick_dispersion_bh_n:0,sn_kick_dispersion_ecap:0,sn_kick_dispersion_grb_collapsar:0,sn_kick_dispersion_ia_hybrid_hecowd:0,sn_kick_dispersion_ia_hybrid_hecowd_sublumin:0,sn_kick_dispersion_ibc:0,sn_kick_dispersion_ii:0,sn_kick_dispersion_ns_n:0,sn_kick_dispersion_tz:0,sn_kick_distribution_aic_bh:0,sn_kick_distribution_bh_bh:0,sn_kick_distribution_bh_n:0,sn_kick_distribution_ecap:0,sn_kick_distribution_grb_collapsar:0,sn_kick_distribution_ia_hybrid_hecowd:0,sn_kick_distribution_ia_hybrid_hecowd_sublumin:0,sn_kick_distribution_ibc:0,sn_kick_distribution_ii:0,sn_kick_distribution_ns_n:0,sn_kick_distribution_tz:0,sneia:0,snia:0,solar:[0,18],solarmass:2,solver:0,solver_forward_eul:0,solver_predictor_corrector:0,solver_rk2:0,solver_rk4:0,some:[0,1,2,5,6,8,12,13,14],someth:[0,6],soon:16,sort:4,sort_kei:4,sourc:[1,2,3,4,5,6,7,8,11,12,13,14,15,16,18],source_file_filenam:8,source_list:6,sourcefile_nam:1,space:[0,6,16],spacing_funct:[10,11],spacingfunc:[6,13],spacingfunct:6,special:0,specif:[0,4,12],specifi:[0,8],spectral:2,speed:[0,8],speedtest:0,spheric:0,spin:0,split:[0,8,13],splitpoint:0,spread:6,src:14,st1:5,st2:5,stabil:0,stabl:0,stancliff:0,standard:[0,2],star:[1,2,5,6,8,10,12,13,18],stardata:[0,1,5,13],stardata_dump_filenam:0,stardata_load_filenam:0,start:[0,1,4,5,7,8],start_tim:0,state:0,statement:[1,5],statist:0,statu:[0,1],steadi:0,stefan:12,stellar:[0,12,17],stellar_structure_algorithm:0,stellar_structure_algorithm_external_funct:0,stellar_structure_algorithm_mint:0,stellar_structure_algorithm_modified_bs:0,stellar_structure_algorithm_non:0,stellar_typ:[1,10,11,12,13],stellar_type_1:[0,12],stellar_type_2:[0,12],stellar_type_3:0,stellar_type_4:0,stellar_type_dict:17,stellar_type_dict_short:17,step:[12,16],still:[1,8],stop:0,storag:0,store:[0,2,6,8,18],store_memaddr:18,str:[1,4,6,7,12],straight:6,straniero:0,strength:0,strict:4,string:[0,1,4,6,7,8,12,15],strip:0,stronger:0,struct:0,structur:[0,4,8,12],stuff:[2,4,8,12,13],style:0,sub:0,subdirectori:4,subject:0,sublumin:0,subroutin:9,subsequ:0,succe:0,suggest:[0,14],sum:0,supercrit:0,supernova:[0,8],superwind:0,superwind_mira_switchon:0,supress:13,sure:[2,6,8,12,14,15],surfac:0,surrei:14,surviv:0,survivor:0,svg:14,symmetr:0,synchron:0,synonym:0,sys:5,system:[0,5,6,8,12,13,14,15],system_gener:6,t_re:5,tabl:[0,2],take:[0,2,4,5,6,8,13,15],taken:0,target:[1,7,14],task:[0,2,4,5,6,7,9,12,15,16,18],tauri:0,tbse:0,teff:2,teff_1:12,teff_2:12,temp_dir:[4,13],temperatur:[0,2,12],tempfil:5,termin:1,test:[0,4,6,14],test_log:5,test_pop:13,text:[4,7,14],than:[0,2,4,8],thats:[0,13],thei:[0,2,6,12],thelog:0,them:[4,5,6,13],themselv:[2,4],theres:6,thermal:[0,2,18],thermally_pulsing_asymptotic_giant_branch:0,thermohalin:0,thesi:0,thi:[0,1,2,3,4,5,6,7,8,11,12,13,14,15,16,18],thick:0,thick_disc_end_ag:0,thick_disc_logg_max:0,thick_disc_logg_min:0,thick_disc_start_ag:0,thin:0,thing:[2,4,5,6,7,13,15],think:[0,4,6],third:[0,2],third_dup:0,third_dup_multipli:0,thorn:0,those:[4,5,6,13,14],thread:8,thread_id:8,three:[0,2],three_part_powerlaw:[2,13],threshold:[4,8],through:[6,12,15],throughout:6,tidal:0,tidal_strength_factor:0,tide:0,time:[0,1,2,4,5,6,8,12,13],timescal:0,timestamp:8,timestep:0,timestep_limit:0,timestep_log:0,timestep_modul:0,timestep_multipli:0,timestep_solver_factor:0,tinslei:2,tmp:[0,4,14],tmp_dir:[6,8],todo:[0,1,2,4,6,7,8,12,13,15,16,18],toler:0,too:[0,15],topic:0,torqu:0,total:[0,6,8,12],tout:[0,18],tpagb:0,tpagb_reimers_eta:0,tpagb_wind_beasor_etal_2020:0,tpagb_wind_bloeck:0,tpagb_wind_goldman_etal_2017:0,tpagb_wind_mattsson:0,tpagb_wind_reim:0,tpagb_wind_rob_cwind:0,tpagb_wind_van_loon:0,tpagb_wind_vw93_karaka:0,tpagb_wind_vw93_karakas_carbon_star:0,tpagb_wind_vw93_orig:0,tpagb_wind_vw93_orig_carbon_star:0,tpagbwind:0,tpagbwindfac:0,track:[8,12],trade:0,transfer:0,transform:[0,4],treat:0,trigger:0,tripl:0,tru:4,truli:0,tupl:1,turn:[0,4,13],two:[0,4,17,18],txt:[5,6,14,15],type:[0,1,2,4,6,7,8,12,16,17,18],type_ia_mch_supernova_algorithm:0,type_ia_mch_supernova_algorithm_dd2:0,type_ia_mch_supernova_algorithm_seitenzahl2013:0,type_ia_mch_supernova_algorithm_seitenzahl2013_automat:0,type_ia_sub_mch_supernova_algorithm:0,type_ia_sub_mch_supernova_algorithm_livne_arnett_1995:0,typic:0,ubvri:0,ugriv:0,uncom:6,under:16,undergo:0,underli:14,understand:6,undescrib:7,uniform:2,union:[2,4,16,18],uniqu:8,unit:[0,18],univari:0,unknown:15,unless:[1,6,8],unload:6,unrecogn:14,unsign:0,until:[0,2],unus:[0,8],updat:[2,6,13,14],upper:[0,2,16],usag:[0,10],use:[0,2,4,5,6,8,9,12,13,14,15],use_astropy_valu:12,use_datadir:[6,13],use_fixed_timestep_:0,use_periastron_roche_radiu:0,use_tabular_intershell_abundances_karakas_2012:0,used:[0,1,2,4,6,8,12,13],useful:[0,4,6,8,14,15,18],useful_func:[10,11],user:[1,2,4,6,7,8,15],uses:[0,5,13],using:[0,1,3,5,6,13,14],usr:5,usual:[0,2,8,14],util:[1,2,4,5,6,7,12,13,15,16,18],val:2,valid:[0,2,4],valu:[0,1,2,4,5,6,7,8,12,13,14],valueerror:13,valuerang:[6,13],van:0,vandenheuvel_log:0,vari:0,variabl:[0,4,6,8,10,13],variant:0,variou:0,vassiliadi:0,veloc:[0,2],verbos:[1,4,8,13,14],verbose_print:4,veri:[0,5,6,13,16],versa:18,version:[0,4,6,14],version_info:4,version_info_str:4,version_onli:0,via:[6,8,12,13],vice:18,vink:0,virtual:14,viscos:0,viscou:0,volum:0,vrot1:0,vrot2:0,vrot3:0,vrot4:0,vrot_breakup:0,vrot_bs:0,vrot_non_rot:0,vrot_sync:0,vw93:0,vw93_eagb_wind_spe:0,vw93_mira_shift:0,vw93_multipli:0,vw93_tpagb_wind_spe:0,vwind_multipli:0,wai:[0,3,4,6,8,12,13,14],wang:0,want:[0,2,4,5,7,8,12,13,14],warmup_cpu:0,warn:[0,6,14],wave:0,wd_accretion_rate_new_giant_envelope_lower_limit_helium_donor:0,wd_accretion_rate_new_giant_envelope_lower_limit_hydrogen_donor:0,wd_accretion_rate_new_giant_envelope_lower_limit_other_donor:0,wd_accretion_rate_novae_upper_limit_helium_donor:0,wd_accretion_rate_novae_upper_limit_hydrogen_donor:0,wd_accretion_rate_novae_upper_limit_other_donor:0,wd_kick:0,wd_kick_at_every_puls:0,wd_kick_at_given_puls:0,wd_kick_direct:0,wd_kick_end_agb:0,wd_kick_first_rlof:0,wd_kick_pulse_numb:0,wd_kick_when:0,wd_sigma:0,wdwd_merger_algorithm:0,wdwd_merger_algorithm_bs:0,wdwd_merger_algorithm_chen2016:0,wdwd_merger_algorithm_perets2019:0,weight:[0,8],well:[0,4,8,14],were:4,what:[0,1,2,4,5,6,7,13,14,15],whatev:[5,6,14],wheeler:0,when:[0,1,4,5,6,7,8,13,14,15],where:[0,1,2,4,6,7,8],whether:[0,2,4,6,7,8,12,18],which:[0,1,2,3,4,5,6,7,8,13,14,15,18],white:0,white_dwarf_cooling_carrasco2014:0,white_dwarf_cooling_mestel:0,white_dwarf_cooling_mestel_modifi:0,white_dwarf_cooling_model:0,white_dwarf_radius_carrasco2014:0,white_dwarf_radius_model:0,white_dwarf_radius_mu:0,white_dwarf_radius_nauenberg1972:0,whole:6,width:0,wind:0,wind_algorithm_binary_c_2020:0,wind_algorithm_hurley2002:0,wind_algorithm_non:0,wind_algorithm_schneider2018:0,wind_angmom_loss_bs:0,wind_angmom_loss_lw:0,wind_angmom_loss_lw_hybrid:0,wind_angmom_loss_spherically_symmetr:0,wind_angular_momentum_loss:0,wind_disc_angmom_fract:0,wind_disc_mass_fract:0,wind_djorb_fac:0,wind_gas_to_dust_ratio:0,wind_mass_loss:0,wind_multiplier_:0,within:[0,4,6],without:[2,6],won:0,wood:0,wooslei:0,work:[0,4,5,12,13,14],would:[0,4,12,14],wouldnt:6,wr_wind:0,wr_wind_bs:0,wr_wind_eldridg:0,wr_wind_fac:0,wr_wind_maeder_meynet:0,wr_wind_nugis_lam:0,wrap:[1,13],wrapper:[4,5,18],write:[1,4,5,6,7,8,13,15],write_binary_c_calls_to_fil:6,write_binary_c_parameter_descriptions_to_rst_fil:4,write_grid_options_to_rst_fil:7,written:[5,6,7,8,13,15],wrlof_mass_transf:0,wrlof_method:0,wrlof_non:0,wrlof_q_depend:0,wrlof_quadrat:0,wrong:14,wrt:1,wrwindfac:0,wtts2:0,wtts_log:0,www:[0,2],year:[0,2],yet:[0,4,5,6,8,12,13],yield:0,you:[0,1,4,5,6,7,8,12,13,14,18],young:0,your:[5,14],yourself:[12,13],zam:[2,15,18],zams_collis:18,zams_mass:13,zero:[0,1],zero_ag:13,zone:0,zoom:0,zoomfac_multiplier_decreas:0,zoomfac_multiplier_increas:0,zshrc:14,zsolar:2,zytkow:0},titles:["Binary_c parameters","custom_logging_functions module","distribution_functions module","Examples","functions module","Examples","grid_class module","Grid options and descriptions","Population grid code options","hpc_functions module","Welcome to binary_c-python\u2019s documentation!","Binarycpython code","plot_functions module","Example of population script","Python module for binary_c","run_system_wrapper module","spacing_functions module","stellar_types module","useful_funcs module"],titleterms:{"function":4,"public":8,algorithm:0,binari:0,binary_c:[0,10,14],binarycpython:11,build:14,code:[8,11],custom_logging_funct:1,descript:7,distribution_funct:2,document:10,environ:14,exampl:[3,5,13],faq:14,grid:[7,8],grid_class:6,hpc_function:9,indic:10,input:0,instruct:14,misc:0,modul:[1,2,4,6,9,12,14,15,16,17,18],note:14,nucsyn:0,option:[7,8],output:0,paramet:0,plot_funct:12,popul:[8,13],privat:8,python:[10,14],requir:14,run_system_wrapp:15,script:13,section:0,spacing_funct:16,star:0,stellar_typ:17,tabl:10,usag:14,useful_func:18,variabl:14,welcom:10}}) \ No newline at end of file diff --git a/docs/build/html/spacing_functions.html b/docs/build/html/spacing_functions.html index d4b59005d5a57829dc989483d19dd56946a30742..0aac247b138c0368c4ff7667efd99fc3f94224d1 100644 --- a/docs/build/html/spacing_functions.html +++ b/docs/build/html/spacing_functions.html @@ -220,7 +220,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/stellar_types.html b/docs/build/html/stellar_types.html index 967fdfa76f3c6dce190010969a3ef60303e0d6e2..51edae1c16d4afbf8d91ea328e5351ee23e0a1bb 100644 --- a/docs/build/html/stellar_types.html +++ b/docs/build/html/stellar_types.html @@ -201,7 +201,7 @@ <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/build/html/useful_funcs.html b/docs/build/html/useful_funcs.html index 386b9cb822c46b320fcbb2c168e6805fd50b62f4..aca941bd7dd59de07727620ec3a2e58f9a6b2787 100644 --- a/docs/build/html/useful_funcs.html +++ b/docs/build/html/useful_funcs.html @@ -230,6 +230,46 @@ </dl> </dd></dl> +<dl class="py function"> +<dt id="binarycpython.utils.useful_funcs.minimum_period_for_RLOF"> +<code class="sig-prename descclassname">binarycpython.utils.useful_funcs.</code><code class="sig-name descname">minimum_period_for_RLOF</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">M1</span></em>, <em class="sig-param"><span class="n">M2</span></em>, <em class="sig-param"><span class="n">metallicity</span></em>, <em class="sig-param"><span class="n">store_memaddr</span><span class="o">=</span><span class="default_value">- 1</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/useful_funcs.html#minimum_period_for_RLOF"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#binarycpython.utils.useful_funcs.minimum_period_for_RLOF" title="Permalink to this definition">¶</a></dt> +<dd><p>Wrapper function for _binary_c_bindings.return_minimum_orbit_for_RLOF</p> +<p>Handles the output and returns the minimum orbital period at which RLOF just does not occur at zams</p> +<dl class="field-list simple"> +<dt class="field-odd">Parameters</dt> +<dd class="field-odd"><ul class="simple"> +<li><p><strong>M1</strong> – Primary mass in solar mass</p></li> +<li><p><strong>M2</strong> – Secondary mass in solar mass</p></li> +<li><p><strong>metallicity</strong> – metallicity</p></li> +<li><p><strong>store_memaddr</strong> (<em>optional</em>) – store memory adress</p></li> +</ul> +</dd> +<dt class="field-even">Returns</dt> +<dd class="field-even"><p>minimum orbital_period that just does not cause a RLOF at ZAMS</p> +</dd> +</dl> +</dd></dl> + +<dl class="py function"> +<dt id="binarycpython.utils.useful_funcs.minimum_separation_for_RLOF"> +<code class="sig-prename descclassname">binarycpython.utils.useful_funcs.</code><code class="sig-name descname">minimum_separation_for_RLOF</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">M1</span></em>, <em class="sig-param"><span class="n">M2</span></em>, <em class="sig-param"><span class="n">metallicity</span></em>, <em class="sig-param"><span class="n">store_memaddr</span><span class="o">=</span><span class="default_value">- 1</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/useful_funcs.html#minimum_separation_for_RLOF"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#binarycpython.utils.useful_funcs.minimum_separation_for_RLOF" title="Permalink to this definition">¶</a></dt> +<dd><p>Wrapper function for _binary_c_bindings.return_minimum_orbit_for_RLOF</p> +<p>Handles the output and returns the minimum separation at which RLOF just does not occur at ZAMS</p> +<dl class="field-list simple"> +<dt class="field-odd">Parameters</dt> +<dd class="field-odd"><ul class="simple"> +<li><p><strong>M1</strong> – Primary mass in solar mass</p></li> +<li><p><strong>M2</strong> – Secondary mass in solar mass</p></li> +<li><p><strong>metallicity</strong> – metallicity</p></li> +<li><p><strong>store_memaddr</strong> (<em>optional</em>) – store memory adress</p></li> +</ul> +</dd> +<dt class="field-even">Returns</dt> +<dd class="field-even"><p>minimum separation that just does not cause a RLOF at ZAMS</p> +</dd> +</dl> +</dd></dl> + <dl class="py function"> <dt id="binarycpython.utils.useful_funcs.ragb"> <code class="sig-prename descclassname">binarycpython.utils.useful_funcs.</code><code class="sig-name descname">ragb</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">m</span></em>, <em class="sig-param"><span class="n">z</span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binarycpython/utils/useful_funcs.html#ragb"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#binarycpython.utils.useful_funcs.ragb" title="Permalink to this definition">¶</a></dt> @@ -335,7 +375,7 @@ determine if two stars collide on the ZAMS</p> <div role="contentinfo"> <p> - © Copyright 2020, David Hendriks, Robert Izzard + © Copyright 2021, David Hendriks, Robert Izzard </p> </div> diff --git a/docs/source/binary_c_parameters.rst b/docs/source/binary_c_parameters.rst index 56de8181e1e5404f7c0e5b2c6ec273f278045544..4fe498e19b7be769db2dba6961d758d454815b8e 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**: 5479:20210111:463f148ec **Built on**: Jan 28 2021 20:10:20 + **binary_c git branch**: branch_david **binary_c git revision**: 5542:20210311:f3401ead4 **Built on**: Mar 22 2021 12:07:51 Section: stars diff --git a/docs/source/conf.py b/docs/source/conf.py index 8f5768736b981db76340efd880517048c0373585..dc821f72be00f3d8a8731413cfb35ea9a4a02709 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -31,7 +31,7 @@ cautodoc_root = os.path.abspath("../../") # -- Project information ----------------------------------------------------- project = "binary_c-python" -copyright = "2020, David Hendriks, Robert Izzard" +copyright = "2021, David Hendriks, Robert Izzard" author = "David Hendriks, Robert Izzard" diff --git a/docs/source/examples.rst b/docs/source/examples.rst index 281bfaa659e3e775f75243f608c963bde50b7049..ab58720d9b5a670eb13d8468daa687e72ab86e52 100644 --- a/docs/source/examples.rst +++ b/docs/source/examples.rst @@ -5,4 +5,5 @@ This chapter contains the source code of example scripts which show the way of u .. toctree:: :hidden: - general_examples \ No newline at end of file + general_examples + population_example \ No newline at end of file diff --git a/docs/source/general_examples.rst b/docs/source/general_examples.rst index 4a070790a2c7ef4fa05a5c5d76026750ff9bfae4..8509de5b72faf82bc026ed2b785b2d72b4ccc702 100644 --- a/docs/source/general_examples.rst +++ b/docs/source/general_examples.rst @@ -3,5 +3,5 @@ Examples The source code of the general examples. .. literalinclude:: ../../examples/examples.py - :language: ruby + :language: python :linenos: \ No newline at end of file diff --git a/docs/source/population_example.rst b/docs/source/population_example.rst new file mode 100644 index 0000000000000000000000000000000000000000..192372d019133d818c4ba6ad207c5dc09989de62 --- /dev/null +++ b/docs/source/population_example.rst @@ -0,0 +1,7 @@ +Example of population script +============================ +The source code of a script to run a population of stars. + +.. literalinclude:: ../../examples/example_population.py + :language: python + :linenos: \ No newline at end of file