<!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>Examples &mdash; 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="Example of population script" href="population_example.html" />
    <link rel="prev" title="Examples" href="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 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>
<li class="toctree-l1"><a class="reference internal" href="grid_options_descriptions.html">Population grid code options</a></li>
<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python">Visit the GitLab repo</a></li>
<li class="toctree-l1"><a class="reference external" href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/issues/new">Submit an issue</a></li>
</ul>

            
          
        </div>
        
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" aria-label="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> &raquo;</li>
        
          <li><a href="examples.html">Examples</a> &raquo;</li>
        
      <li>Examples</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="_sources/general_examples.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="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-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
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229</pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="ch">#!/usr/bin/python3</span>
<span class="kn">import</span> <span class="nn">os</span>
<span class="kn">import</span> <span class="nn">sys</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">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="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="sd">&quot;&quot;&quot;</span>
<span class="sd">Very basic scripts to run a binary system and print the output.</span>

<span class="sd">Use these as inspiration/base.</span>
<span class="sd">&quot;&quot;&quot;</span>


<span class="k">def</span> <span class="nf">run_example_binary</span><span class="p">():</span>
    <span class="sd">&quot;&quot;&quot;</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">    &quot;&quot;&quot;</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="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">&quot;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">&quot;</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>
        <span class="n">orbital_period</span><span class="o">=</span><span class="n">orbital_period</span><span class="p">,</span>
        <span class="n">eccentricity</span><span class="o">=</span><span class="n">eccentricity</span><span class="p">,</span>
        <span class="n">metallicity</span><span class="o">=</span><span class="n">metallicity</span><span class="p">,</span>
        <span class="n">max_evolution_time</span><span class="o">=</span><span class="n">max_evolution_time</span><span class="p">,</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">run_system</span><span class="p">(</span><span class="n">argstring</span><span class="p">)</span>
    <span class="nb">print</span><span class="p">(</span><span class="n">output</span><span class="p">)</span>


<span class="n">run_example_binary</span><span class="p">()</span>


<span class="k">def</span> <span class="nf">run_example_binary_with_run_system</span><span class="p">():</span>
    <span class="sd">&quot;&quot;&quot;</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="sd">    Requires pandas, numpy to run.</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="sd">    The parsing of the output only works correctly if either all of the values are described inline like `mass=&lt;number&gt;&#39; or none of them are.</span>
<span class="sd">    &quot;&quot;&quot;</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="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>

    <span class="c1"># Catch results that start with a given header. (Mind that binary_c has to be configured to print them if your not using a custom logging function)</span>
    <span class="n">result_example_header_1</span> <span class="o">=</span> <span class="n">example_parse_output</span><span class="p">(</span>
        <span class="n">output</span><span class="p">,</span> <span class="n">selected_header</span><span class="o">=</span><span class="s2">&quot;example_header_1&quot;</span>
    <span class="p">)</span>
    <span class="n">result_example_header_2</span> <span class="o">=</span> <span class="n">example_parse_output</span><span class="p">(</span>
        <span class="n">output</span><span class="p">,</span> <span class="n">selected_header</span><span class="o">=</span><span class="s2">&quot;example_header_2&quot;</span>
    <span class="p">)</span>

    <span class="c1"># print(result_example_header_1)</span>

    <span class="c1">#### Now do whatever you want with it:</span>
    <span class="c1"># Put it in numpy arrays</span>
    <span class="c1"># t_res = np.asarray(result_example_header[&#39;t&#39;], dtype=np.float64, order=&#39;C&#39;)</span>
    <span class="c1"># m_res = np.asarray(result_example_header[&#39;mass&#39;], dtype=np.float64, order=&#39;C&#39;)</span>

    <span class="c1"># Or put them into a pandas array</span>

    <span class="c1"># Cast the data into a dataframe.</span>
    <span class="c1"># This example automatically catches the column names because the binary_c output line is constructed as &#39;example_header_1 time=&lt;number&gt;..&#39;</span>
    <span class="nb">print</span><span class="p">(</span><span class="n">result_example_header_1</span><span class="p">)</span>
    <span class="n">df</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_1</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="nb">print</span><span class="p">(</span><span class="n">df</span><span class="p">)</span>

    <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="p">[</span><span class="s2">&quot;time&quot;</span><span class="p">,</span> <span class="s2">&quot;mass_1&quot;</span><span class="p">,</span> <span class="s2">&quot;mass_2&quot;</span><span class="p">,</span> <span class="s2">&quot;st1&quot;</span><span class="p">,</span> <span class="s2">&quot;st2&quot;</span><span class="p">,</span> <span class="s2">&quot;sep&quot;</span><span class="p">,</span> <span class="s2">&quot;ecc&quot;</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>
    <span class="c1"># sliced_df = df[df.t &lt; 1000] # Cut off late parts of evolution</span>
    <span class="c1"># print(sliced_df[[&quot;t&quot;,&quot;m1&quot;]])</span>

    <span class="c1"># Some routine to plot.</span>


<span class="c1"># run_example_binary_with_run_system()</span>


<span class="k">def</span> <span class="nf">run_example_custom_logging_autogenerated</span><span class="p">():</span>
    <span class="sd">&quot;&quot;&quot;</span>
<span class="sd">    This is an example function for the autogeneration of logging codes that binary_c uses.</span>
<span class="sd">    &quot;&quot;&quot;</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">&quot;MY_STELLAR_DATA&quot;</span><span class="p">:</span> <span class="p">[</span><span class="s2">&quot;model.time&quot;</span><span class="p">,</span> <span class="s2">&quot;star[0].mass&quot;</span><span class="p">],</span>
            <span class="s2">&quot;my_sss2&quot;</span><span class="p">:</span> <span class="p">[</span><span class="s2">&quot;model.time&quot;</span><span class="p">,</span> <span class="s2">&quot;star[1].mass&quot;</span><span class="p">],</span>
        <span class="p">}</span>
    <span class="p">)</span>

    <span class="c1"># Generate 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"># Generate library and get memaddr</span>
    <span class="n">func_memaddr</span><span class="p">,</span> <span class="n">shared_lib_filename</span> <span class="o">=</span> <span class="n">create_and_load_logging_function</span><span class="p">(</span>
        <span class="n">custom_logging_code</span>
    <span class="p">)</span>

    <span class="c1">#</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="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">&quot;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">&quot;</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>
        <span class="n">orbital_period</span><span class="p">,</span>
        <span class="n">eccentricity</span><span class="p">,</span>
        <span class="n">metallicity</span><span class="p">,</span>
        <span class="n">max_evolution_time</span><span class="p">,</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">run_system</span><span class="p">(</span>
        <span class="n">argstring</span><span class="p">,</span> <span class="n">custom_logging_func_memaddr</span><span class="o">=</span><span class="n">func_memaddr</span>
    <span class="p">)</span>
    <span class="nb">print</span><span class="p">(</span><span class="n">output</span><span class="p">)</span>


<span class="c1"># run_example_custom_logging_autogenerated()</span>


<span class="k">def</span> <span class="nf">run_example_binary_with_custom_logging</span><span class="p">():</span>
    <span class="sd">&quot;&quot;&quot;</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">    &quot;&quot;&quot;</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">&quot;MY_STELLAR_DATA&quot;</span><span class="p">:</span> <span class="p">[</span><span class="s2">&quot;model.time&quot;</span><span class="p">,</span> <span class="s2">&quot;star[0].mass&quot;</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">&#39;Printf(&quot;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&quot;, stardata-&gt;model.time, stardata-&gt;star[0].mass)&#39;</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="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>
    <span class="p">)</span>

    <span class="nb">print</span><span class="p">(</span><span class="n">output</span><span class="p">)</span>

    <span class="c1"># Catch results that start with a given header. (Mind that binary_c has to be configured to print them if your not using a custom logging function)</span>
    <span class="c1"># DOESNT WORK YET if you have the line autogenerated.</span>
    <span class="n">result_example_header</span> <span class="o">=</span> <span class="n">parse_output</span><span class="p">(</span><span class="n">output</span><span class="p">,</span> <span class="s2">&quot;MY_STELLAR_DATA&quot;</span><span class="p">)</span>

    <span class="c1"># Cast the data into a dataframe.</span>
    <span class="n">df</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</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="c1"># Do whatever you like with the dataframe.</span>
    <span class="nb">print</span><span class="p">(</span><span class="n">df</span><span class="p">)</span>


<span class="c1"># run_example_binary_with_custom_logging()</span>


<span class="k">def</span> <span class="nf">run_example_binary_with_writing_logfile</span><span class="p">():</span>
    <span class="sd">&quot;&quot;&quot;</span>
<span class="sd">    Same as above but when giving the log_filename argument the log filename will be written</span>
<span class="sd">    &quot;&quot;&quot;</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="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">&quot;/test_log.txt&quot;</span><span class="p">,</span>
    <span class="p">)</span>


<span class="n">run_example_binary_with_writing_logfile</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="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>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
        
        &copy; 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>.
<br><br>
Generated on binarycpython git branch: development_version/2.1.7 git revision 1b4c6f9cc7be3ad0a2d3770500d30d610bf35d8f url: <a href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c-python/-/tree/development_version/2.1.7">git url</a>.
<br><br>
Using binary_c with bit branch branch_david: git revision: "6044:20210720:d1ed5b6c1" url: <a href="https://gitlab.eps.surrey.ac.uk/ri0005/binary_c/-/tree/branch_david">git url</a>.



</footer>

        </div>
      </div>

    </section>

  </div>
  

  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script>

  
  
    
   

</body>
</html>