From 41b70c5a79808f5b4c1a4e43651eb021eeeb4a9f Mon Sep 17 00:00:00 2001
From: KyleKlenk <kyle.c.klenk@gmail.com>
Date: Wed, 9 Aug 2023 15:15:23 -0600
Subject: [PATCH] Added number of failed GRUs to be printed to the screen

---
 build/source/actors/job_actor/job_actor.cpp     | 8 +++++++-
 build/source/actors/summa_actor/summa_actor.cpp | 3 ++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/build/source/actors/job_actor/job_actor.cpp b/build/source/actors/job_actor/job_actor.cpp
index 0726291..d27497b 100644
--- a/build/source/actors/job_actor/job_actor.cpp
+++ b/build/source/actors/job_actor/job_actor.cpp
@@ -113,7 +113,7 @@ behavior job_actor(stateful_actor<job_state>* self,
                                                      gru, 
                                                      self->state.dt_init_start_factor, 
                                                      self->state.hru_actor_settings.rel_tol,
-                                                      self->state.hru_actor_settings.abs_tol,
+                                                     self->state.hru_actor_settings.abs_tol,
                                                      self->state.max_run_attempts));    
           }
         }, // end init_gru
@@ -185,6 +185,12 @@ behavior job_actor(stateful_actor<job_state>* self,
             
             std::vector<serializable_netcdf_gru_actor_info> 
                 netcdf_gru_info = getGruNetcdfInfo(self->state.max_run_attempts,self->state.gru_container.gru_list);
+              
+              
+            
+            self->state.num_gru_failed = std::count_if(netcdf_gru_info.begin(), netcdf_gru_info.end(), [](auto& gru_info) {
+                  return !gru_info.successful;
+              });
 
             self->request(self->state.file_access_actor, 
                           infinite,
diff --git a/build/source/actors/summa_actor/summa_actor.cpp b/build/source/actors/summa_actor/summa_actor.cpp
index 24603dc..3af7209 100644
--- a/build/source/actors/summa_actor/summa_actor.cpp
+++ b/build/source/actors/summa_actor/summa_actor.cpp
@@ -69,12 +69,13 @@ behavior summa_actor(stateful_actor<summa_actor_state>* self, int startGRU, int
 															  timing_info.job_write_duration.end(),
 															  0.0);
 				
-				aout(self) << "\n________________SUMMA_ACTOR TIMING INFO________________\n"
+				aout(self) << "\n________________SUMMA INFO________________\n"
 						   << "Total Duration = " << self->state.summa_actor_timing.getDuration("total_duration").value_or(-1.0) << " Seconds\n"
 						   << "Total Duration = " << self->state.summa_actor_timing.getDuration("total_duration").value_or(-1.0) / 60 << " Minutes\n"
 						   << "Total Duration = " << (self->state.summa_actor_timing.getDuration("total_duration").value_or(-1.0) / 60) / 60 << " Hours\n"
 						   << "Total Read Duration = " << total_read_duration  << "Seconds\n"
 						   << "Total Write Duration = " << total_write_duration << "Seconds\n"
+						   << "Num Failed = " << self->state.numFailed << "\n"
 						   << "___________________Program Finished__________________\n"; 
 
 
-- 
GitLab