From 783d90db73a489c7917555b865d785bfaa25d954 Mon Sep 17 00:00:00 2001
From: Robert Izzard <r.izzard@surrey.ac.uk>
Date: Wed, 16 Oct 2019 12:22:12 +0200
Subject: [PATCH] add nova yielding

---
 src/librinterpolate/rinterpolate.c            |  6 ++---
 src/memory/free_tmpstore.c                    |  1 -
 src/novae/nova_event_handler.c                | 22 +++++++++++++++++++
 src/stellar_colours/eldridge2015_magnitudes.c |  2 --
 4 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/src/librinterpolate/rinterpolate.c b/src/librinterpolate/rinterpolate.c
index 504d5e579..6d8f8aae4 100644
--- a/src/librinterpolate/rinterpolate.c
+++ b/src/librinterpolate/rinterpolate.c
@@ -192,10 +192,8 @@ struct rinterpolate_data_t * rinterpolate(
          */
         if(unlikely(rinterpolate_data==NULL)) 
         {
-            printf("rinterpolate call alloc dataspace\n");
-            rinterpolate_alloc_dataspace(&rinterpolate_data);
-            printf("rinterpolate post call alloc dataspace %p\n",rinterpolate_data);
-            table_id = -1;
+           rinterpolate_alloc_dataspace(&rinterpolate_data);
+           table_id = -1;
         }
         else
         {
diff --git a/src/memory/free_tmpstore.c b/src/memory/free_tmpstore.c
index 5ac8a97cf..72403a4bb 100644
--- a/src/memory/free_tmpstore.c
+++ b/src/memory/free_tmpstore.c
@@ -79,7 +79,6 @@ void free_tmpstore(struct tmpstore_t * RESTRICT const tmpstore)
 #ifdef CHECK_RINTERPOLATE
             printf("FREE %p\n",tmpstore->rinterpolate_data);
 #endif
-            printf("rinterpolate free %p\n",tmpstore->rinterpolate_data);
             rinterpolate_free_data(tmpstore->rinterpolate_data);
             Safe_free(tmpstore->rinterpolate_data);
         }
diff --git a/src/novae/nova_event_handler.c b/src/novae/nova_event_handler.c
index 9545549a1..e1e1c8a9a 100644
--- a/src/novae/nova_event_handler.c
+++ b/src/novae/nova_event_handler.c
@@ -38,6 +38,28 @@ Event_handler_function nova_event_handler(void * const eventp,
     accretor->dm_novaH = 0.0;
     accretor->mass -= dm_lost;
     accretor->novastate = NOVA_STATE_POST;
+
+    /*
+     * yield nova material
+     */
+    double Xnova[ISOTOPE_ARRAY_SIZE];
+    nucsyn_set_nova_abunds(stardata,
+                           accretor,
+                           donor->Xenv,//THIS IS WRONG
+                           Xnova);
+    nucsyn_calc_yields(stardata,
+                       accretor,
+                       dm_lost,
+                       Xnova,
+                       0.0,
+                       NULL,
+                       accretor->starnum,
+                       YIELD_NOT_FINAL,
+                       NUCSYN_SOURCE_NOVAE);
+
+    /*
+     * Todo : re-accretion of a fraction
+     */
     
     return NULL;
 }
diff --git a/src/stellar_colours/eldridge2015_magnitudes.c b/src/stellar_colours/eldridge2015_magnitudes.c
index 7debf216a..16528a3e9 100644
--- a/src/stellar_colours/eldridge2015_magnitudes.c
+++ b/src/stellar_colours/eldridge2015_magnitudes.c
@@ -42,14 +42,12 @@ void eldridge2015_colours(struct stardata_t * const stardata,
     char *c[STELLAR_COLOUR_STRING_LENGTH] = STELLAR_COLOUR_STRINGS;
 #endif
 
-    printf("rinterpolate alloc %p\n",stardata->tmpstore->rinterpolate_data);
     rinterpolate(basel,
                  stardata->tmpstore->rinterpolate_data,
                  ELDRIDGE2015_METADATA_BASEL,
                  param,
                  mags,
                  0);
-    printf("rinterpolate post alloc %p\n",stardata->tmpstore->rinterpolate_data);
     
     /* set magnitudes */
 
-- 
GitLab