From 7757bb95c428383b77f37010510dd285ce4a526c Mon Sep 17 00:00:00 2001
From: David Hendriks <davidhendriks93@gmail.com>
Date: Mon, 9 Dec 2019 12:43:14 +0000
Subject: [PATCH] updated notebooks

---
 binarycpython/utils/#functions.py#            | 198 ------------------
 ...workshop_example_notebook-checkpoint.ipynb |  85 ++++----
 .../notebooks/workshop_example_notebook.ipynb |  97 +++++----
 3 files changed, 90 insertions(+), 290 deletions(-)
 delete mode 100644 binarycpython/utils/#functions.py#

diff --git a/binarycpython/utils/#functions.py# b/binarycpython/utils/#functions.py#
deleted file mode 100644
index 1917a3eb0..000000000
--- a/binarycpython/utils/#functions.py#
+++ /dev/null
@@ -1,198 +0,0 @@
-from collections import defaultdict
-
-
-import binary_c
-from binarycpython.binaryc_python_utils
-from binaryc_python_utils.custom_logging_functions import (
-    create_and_load_logging_function,
-)
-
-
-def create_arg_string(arg_dict):
-    """
-    Function that creates the arg string
-    """
-    arg_string = ""
-    for key in arg_dict.keys():
-        arg_string += "{key} {value} ".format(key=key, value=arg_dict[key])
-    arg_string = arg_string.strip()
-    return arg_string
-
-
-def get_defaults():
-    """
-    Function that calls the binaryc get args function and cast it into a dictionary
-    All the values are strings
-    """
-    default_output = binary_c.return_arglines()
-    default_dict = {}
-
-    for default in default_output.split("\n"):
-        if not default in ["__ARG_BEGIN", "__ARG_END", ""]:
-            key, value = default.split(" = ")
-
-            # Filter out NULLS (not compiled anyway)
-            if not value in ["NULL", "Function"]:
-                if not value == "":
-                    default_dict[key] = value
-    return default_dict
-
-
-def get_arg_keys():
-    """
-    Function that return the list of possible keys to give in the arg string
-    """
-
-    return get_defaults().keys()
-
-
-def run_system(**kwargs):
-    """
-    Wrapper to run a system with settings 
-    
-    This function determines which underlying python-c api function will be called based upon the arguments that are passed via kwargs.
-
-    - if custom_logging_code or custom_logging_dict is included in the kwargs then it will     
-    - if 
-
-    """
-
-    # Load default args
-    args = get_defaults()
-    if "custom_logging_code" in kwargs:
-        # Use kwarg value to override defaults and add new args
-        for key in kwargs.keys():
-            if not key == "custom_logging_code":
-                args[key] = kwargs[key]
-
-        # Generate library and get memaddr
-        func_memaddr = create_and_load_logging_function(kwargs["custom_logging_code"])
-
-        # Construct arguments string and final execution string
-        arg_string = create_arg_string(args)
-        arg_string = "binary_c {}".format(arg_string)
-
-        # Run it and get output
-        output = binary_c.run_binary_custom_logging(arg_string, func_memaddr)
-        return output
-
-    elif "log_filename" in kwargs:
-        # Use kwarg value to override defaults and add new args
-        for key in kwargs.keys():
-            args[key] = kwargs[key]
-
-        # Construct arguments string and final execution string
-        arg_string = create_arg_string(args)
-        arg_string = "binary_c {}".format(arg_string)
-
-        # Run it and get output
-        output = binary_c.run_binary_with_logfile(arg_string)
-        return output
-
-    else:  # run the plain basic type
-
-        # Use kwarg value to override defaults and add new args
-        for key in kwargs.keys():
-            args[key] = kwargs[key]
-
-        # Construct arguments string and final execution string
-        arg_string = create_arg_string(args)
-        arg_string = "binary_c {}".format(arg_string)
-
-        # Run it and get output
-        output = binary_c.run_binary(arg_string)
-
-        return output
-
-
-def run_system_with_log(**kwargs):
-    """
-    Wrapper to run a system with settings AND logs the files to a designated place defined by the log_filename parameter.
-    """
-
-    # Load default args
-    args = get_defaults()
-    # args = {}
-
-    # For example
-    # physics_args['M_1'] = 20
-    # physics_args['separation'] = 0 # 0 = ignored, use period
-    # physics_args['orbital_period'] = 100000000000 # To make it single
-
-    # Use kwarg value to override defaults and add new args
-    for key in kwargs.keys():
-        args[key] = kwargs[key]
-
-    # Construct arguments string and final execution string
-    arg_string = create_arg_string(args)
-    arg_string = "binary_c {}".format(arg_string)
-
-    # print(arg_string)
-
-    # Run it and get output
-    buffer = ""
-    output = binary_c.run_binary_with_log(arg_string)
-
-    return output
-
-
-def parse_output(output, selected_header):
-    """
-    Function that parses output of binary_c:
-
-    This function works in two cases:
-    if the caught line contains output like 'example_header time=12.32 mass=0.94 ..'
-    or if the line contains output like 'example_header 12.32 0.94'
-
-    You can give a 'selected_header' to catch any line that starts with that. 
-    Then the values will be put into a dictionary.
-    
-    TODO: Think about exporting to numpy array or pandas instead of a defaultdict
-    """
-
-    value_dicts     = []
-    val_lists       = []
-
-    # split output on newlines
-    for i, line in enumerate(output.split("\n")):
-        # Skip any blank lines
-        if not line == "":
-            split_line = line.split()
-
-            # Select parts
-            header = split_line[0]
-            values_list = split_line[1:]
-
-            # print(values_list)
-            # Catch line starting with selected header
-            if header == selected_header:
-                # Check if the line contains '=' symbols:
-                value_dict = {}
-                if all('=' in el for el in values_list):
-                    for el in values_list:
-                        key, val = el.split("=")
-                        value_dict[key.strip()] = val.strip()
-                    value_dicts.append(value_dict)
-                else:
-                    if any('=' in el for el in values_list):
-                        raise ValueError('Caught line contains some = symbols but not all of them do. aborting run')
-                    else:
-                        for i, val in enumerate(values_list):
-                            value_dict[i] = val
-                        value_dicts.append(value_dict)
-
-    if len(value_dicts) == 0:
-        print(
-            "Sorry, didnt find any line matching your header {}".format(selected_header)
-        )
-        return None
-
-    keys = value_dicts[0].keys()
-
-    # Construct final dict.
-    final_values_dict = defaultdict(list)
-    for value_dict in value_dicts:
-        for key in keys:
-            final_values_dict[key].append(value_dict[key])
-
-    return final_values_dict
diff --git a/examples/notebooks/.ipynb_checkpoints/workshop_example_notebook-checkpoint.ipynb b/examples/notebooks/.ipynb_checkpoints/workshop_example_notebook-checkpoint.ipynb
index 88999e71e..163d9c5fc 100644
--- a/examples/notebooks/.ipynb_checkpoints/workshop_example_notebook-checkpoint.ipynb
+++ b/examples/notebooks/.ipynb_checkpoints/workshop_example_notebook-checkpoint.ipynb
@@ -14,7 +14,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 33,
+   "execution_count": 16,
    "metadata": {
     "Collapsed": "false"
    },
@@ -44,7 +44,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 17,
    "metadata": {
     "Collapsed": "false"
    },
@@ -99,7 +99,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "### run_binary_with_log"
@@ -107,7 +107,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 18,
    "metadata": {
     "Collapsed": "false"
    },
@@ -117,28 +117,27 @@
      "output_type": "stream",
      "text": [
       "True\n",
-      "      TIME      M1       M2   K1  K2           SEP   ECC  R1/ROL1 R2/ROL2  TYPE RANDOM_SEED=1748 RANDOM_COUNT=0\n",
-      "     0.0000   10.000   20.000  1   1    2.8176e+08  0.00   0.000   0.000  INITIAL \n",
-      "     8.8656    9.980   19.203  1   2    2.8966e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
-      "     8.8814    9.980   19.185  1   4    2.8983e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
-      "     9.8724    9.977   10.122  1   5    4.2066e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
-      "     9.8834    9.977    9.974  1   5    4.2379e+08  0.00   0.000   0.000  q-inv\n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  Randbuf=42123 - d48r(0)=0.976476 - d48r(1)=0.214027 - d48r(2)=0.638803 - d48r(3)=0.00325497 - d48r(4)=0.931833 \n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=8.50996 Mc=6.81718 type=5) -> kick 1(190) vk=132.601 vr=0.0878271 omega=5.85488 phi=-1.45663 -> vn=132.592 ; final sep -125.894 ecc -1 (random count 0) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  DISRUPT \n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  SN\n",
-      "    24.4615    9.890    1.621  2  13       -125.89 -1.00   0.000   0.000  OFF_MS\n",
-      "    24.4615    9.890    1.621  2  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    24.5257    9.887    1.621  3  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    24.5353    9.886    1.621  4  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    27.3558    9.424    1.621  5  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  d48r(5)=0.99127 - d48r(6)=0.231093 - d48r(7)=0.881928 - d48r(8)=0.603217 \n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=9.30206 Mc=2.87012 type=5) -> kick 1(190) vk=663.531 vr=0 omega=3.79013 phi=0.869266 -> vn=663.531 ; final sep -125.894 ecc -1 (random count 5) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  q-inv\n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  SN\n",
-      " 15000.0000    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  MAX_TIME\n",
+      "      TIME      M1       M2   K1  K2           SEP   ECC  R1/ROL1 R2/ROL2  TYPE RANDOM_SEED=7106 RANDOM_COUNT=0\n",
+      "     0.0000   15.000   14.000  1   1     2.786e+08  0.00   0.000   0.000  INITIAL \n",
+      "    12.7509   14.645   13.776  2   1    2.8427e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    12.7773   14.639   13.775  4   1    2.8435e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    13.1380   13.748   13.758  4   1    2.9373e+08  0.00   0.000   0.000  q-inv\n",
+      "    14.0900   10.830   13.705  4   2    3.2934e+08  0.00   0.000   0.000  OFF_MS\n",
+      "    14.0900   10.830   13.705  4   2    3.2934e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.1204   10.726   13.700  4   4    3.3081e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.2118   10.410   13.566  5   4    3.3702e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  Randbuf=34421 - d48r(0)=0.0570946 - d48r(1)=0.458272 - d48r(2)=0.13108 - d48r(3)=0.562029 - d48r(4)=0.924056 \n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=9.89211 Mc=4.78817 type=5) -> kick 1(190) vk=302.148 vr=0.113492 omega=5.80602 phi=0.124379 -> vn=302.048 ; final sep -31.2365 ecc -1 (random count 0) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  DISRUPT \n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  SN\n",
+      "    15.7087    1.472   10.210 13   5       -31.236 -1.00   0.000   0.000  TYPE_CHNGE\n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  d48r(5)=0.608402 - d48r(6)=0.696003 - d48r(7)=0.796455 - d48r(8)=0.0834973 \n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=9.85661 Mc=4.3914 type=5) -> kick 1(190) vk=392.156 vr=0 omega=0.524629 phi=0.634667 -> vn=392.156 ; final sep -31.2365 ecc -1 (random count 5) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  TYPE_CHNGE\n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  q-inv\n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  SN\n",
+      " 15000.0000    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  MAX_TIME\n",
       "Probability : 1\n",
       "\n"
      ]
@@ -191,7 +190,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 19,
    "metadata": {
     "Collapsed": "false"
    },
@@ -295,7 +294,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 30,
+   "execution_count": 20,
    "metadata": {
     "Collapsed": "false"
    },
@@ -324,11 +323,11 @@
       "3     2.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "4     3.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "...            ...       ...       ...   ...   ...           ...  ...\n",
-      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
+      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
       "\n",
       "[3932 rows x 7 columns]\n",
       "              time    mass_1    mass_2   st1   st2           sep  ecc\n",
@@ -338,11 +337,11 @@
       "3     2.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "4     3.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "...            ...       ...       ...   ...   ...           ...  ...\n",
-      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
+      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
       "\n",
       "[3932 rows x 7 columns]\n"
      ]
@@ -393,7 +392,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 32,
+   "execution_count": 21,
    "metadata": {
     "Collapsed": "false"
    },
@@ -473,7 +472,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 49,
+   "execution_count": 12,
    "metadata": {
     "Collapsed": "false"
    },
@@ -520,7 +519,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 65,
+   "execution_count": 13,
    "metadata": {
     "Collapsed": "false"
    },
@@ -529,7 +528,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Took 12.005768775939941s\n"
+      "Took 14.214274644851685s\n"
      ]
     }
    ],
@@ -572,7 +571,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 64,
+   "execution_count": 22,
    "metadata": {
     "Collapsed": "false"
    },
diff --git a/examples/notebooks/workshop_example_notebook.ipynb b/examples/notebooks/workshop_example_notebook.ipynb
index ced84285b..163d9c5fc 100644
--- a/examples/notebooks/workshop_example_notebook.ipynb
+++ b/examples/notebooks/workshop_example_notebook.ipynb
@@ -14,7 +14,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 33,
+   "execution_count": 16,
    "metadata": {
     "Collapsed": "false"
    },
@@ -36,7 +36,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "### run_binary()\n"
@@ -44,7 +44,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 17,
    "metadata": {
     "Collapsed": "false"
    },
@@ -99,7 +99,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "### run_binary_with_log"
@@ -107,7 +107,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 18,
    "metadata": {
     "Collapsed": "false"
    },
@@ -117,28 +117,27 @@
      "output_type": "stream",
      "text": [
       "True\n",
-      "      TIME      M1       M2   K1  K2           SEP   ECC  R1/ROL1 R2/ROL2  TYPE RANDOM_SEED=1748 RANDOM_COUNT=0\n",
-      "     0.0000   10.000   20.000  1   1    2.8176e+08  0.00   0.000   0.000  INITIAL \n",
-      "     8.8656    9.980   19.203  1   2    2.8966e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
-      "     8.8814    9.980   19.185  1   4    2.8983e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
-      "     9.8724    9.977   10.122  1   5    4.2066e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
-      "     9.8834    9.977    9.974  1   5    4.2379e+08  0.00   0.000   0.000  q-inv\n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  Randbuf=42123 - d48r(0)=0.976476 - d48r(1)=0.214027 - d48r(2)=0.638803 - d48r(3)=0.00325497 - d48r(4)=0.931833 \n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=8.50996 Mc=6.81718 type=5) -> kick 1(190) vk=132.601 vr=0.0878271 omega=5.85488 phi=-1.45663 -> vn=132.592 ; final sep -125.894 ecc -1 (random count 0) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  DISRUPT \n",
-      "     9.8901    9.977    1.621  1  13       -125.89 -1.00   0.000   0.000  SN\n",
-      "    24.4615    9.890    1.621  2  13       -125.89 -1.00   0.000   0.000  OFF_MS\n",
-      "    24.4615    9.890    1.621  2  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    24.5257    9.887    1.621  3  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    24.5353    9.886    1.621  4  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    27.3558    9.424    1.621  5  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  d48r(5)=0.99127 - d48r(6)=0.231093 - d48r(7)=0.881928 - d48r(8)=0.603217 \n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=9.30206 Mc=2.87012 type=5) -> kick 1(190) vk=663.531 vr=0 omega=3.79013 phi=0.869266 -> vn=663.531 ; final sep -125.894 ecc -1 (random count 5) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  TYPE_CHNGE\n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  q-inv\n",
-      "    27.4616    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  SN\n",
-      " 15000.0000    1.338    1.621 13  13       -125.89 -1.00   0.000   0.000  MAX_TIME\n",
+      "      TIME      M1       M2   K1  K2           SEP   ECC  R1/ROL1 R2/ROL2  TYPE RANDOM_SEED=7106 RANDOM_COUNT=0\n",
+      "     0.0000   15.000   14.000  1   1     2.786e+08  0.00   0.000   0.000  INITIAL \n",
+      "    12.7509   14.645   13.776  2   1    2.8427e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    12.7773   14.639   13.775  4   1    2.8435e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    13.1380   13.748   13.758  4   1    2.9373e+08  0.00   0.000   0.000  q-inv\n",
+      "    14.0900   10.830   13.705  4   2    3.2934e+08  0.00   0.000   0.000  OFF_MS\n",
+      "    14.0900   10.830   13.705  4   2    3.2934e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.1204   10.726   13.700  4   4    3.3081e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.2118   10.410   13.566  5   4    3.3702e+08  0.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  Randbuf=34421 - d48r(0)=0.0570946 - d48r(1)=0.458272 - d48r(2)=0.13108 - d48r(3)=0.562029 - d48r(4)=0.924056 \n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=9.89211 Mc=4.78817 type=5) -> kick 1(190) vk=302.148 vr=0.113492 omega=5.80602 phi=0.124379 -> vn=302.048 ; final sep -31.2365 ecc -1 (random count 0) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  TYPE_CHNGE\n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  DISRUPT \n",
+      "    14.2646    1.472   13.462 13   4       -31.236 -1.00   0.000   0.000  SN\n",
+      "    15.7087    1.472   10.210 13   5       -31.236 -1.00   0.000   0.000  TYPE_CHNGE\n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  d48r(5)=0.608402 - d48r(6)=0.696003 - d48r(7)=0.796455 - d48r(8)=0.0834973 \n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  SN kick II (SN type 12 12, pre-explosion M=9.85661 Mc=4.3914 type=5) -> kick 1(190) vk=392.156 vr=0 omega=0.524629 phi=0.634667 -> vn=392.156 ; final sep -31.2365 ecc -1 (random count 5) - Runaway v=(0,0,0) |v|=0 : companion v=(0,0,0), |v|=0 ; \n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  TYPE_CHNGE\n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  q-inv\n",
+      "    15.7695    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  SN\n",
+      " 15000.0000    1.472    1.444 13  13       -31.236 -1.00   0.000   0.000  MAX_TIME\n",
       "Probability : 1\n",
       "\n"
      ]
@@ -183,7 +182,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "### run binary with custom logging line"
@@ -191,7 +190,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 19,
    "metadata": {
     "Collapsed": "false"
    },
@@ -267,7 +266,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "## Using utils functions\n",
@@ -277,7 +276,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "### run_system()\n",
@@ -295,7 +294,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 30,
+   "execution_count": 20,
    "metadata": {
     "Collapsed": "false"
    },
@@ -324,11 +323,11 @@
       "3     2.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "4     3.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "...            ...       ...       ...   ...   ...           ...  ...\n",
-      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
+      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
       "\n",
       "[3932 rows x 7 columns]\n",
       "              time    mass_1    mass_2   st1   st2           sep  ecc\n",
@@ -338,11 +337,11 @@
       "3     2.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "4     3.000000e-07  10.00000  20.00000   1.0   1.0  2.817620e+08  0.0\n",
       "...            ...       ...       ...   ...   ...           ...  ...\n",
-      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
-      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -1.705700e+01 -1.0\n",
+      "3927  1.102750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3928  1.202750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3929  1.302750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3930  1.402750e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
+      "3931  1.500000e+04   1.33817   1.62124  13.0  13.0 -4.896110e+01 -1.0\n",
       "\n",
       "[3932 rows x 7 columns]\n"
      ]
@@ -383,7 +382,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "### run_system() and custom logging\n",
@@ -393,7 +392,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 32,
+   "execution_count": 21,
    "metadata": {
     "Collapsed": "false"
    },
@@ -464,7 +463,7 @@
   {
    "cell_type": "markdown",
    "metadata": {
-    "Collapsed": "true"
+    "Collapsed": "false"
    },
    "source": [
     "## Other example\n",
@@ -473,7 +472,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 49,
+   "execution_count": 12,
    "metadata": {
     "Collapsed": "false"
    },
@@ -520,7 +519,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 65,
+   "execution_count": 13,
    "metadata": {
     "Collapsed": "false"
    },
@@ -529,7 +528,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Took 12.005768775939941s\n"
+      "Took 14.214274644851685s\n"
      ]
     }
    ],
@@ -572,7 +571,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 64,
+   "execution_count": 22,
    "metadata": {
     "Collapsed": "false"
    },
-- 
GitLab