From 84f9321c1151169edf1fe9c68d0f91b2480757e4 Mon Sep 17 00:00:00 2001
From: Matthijs van der Wild <matthijs.van-der-wild@durham.ac.uk>
Date: Wed, 31 Jan 2024 10:19:37 +0000
Subject: [PATCH] Added check that antenna exists in solution file

---
 scripts/make_summary.py | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/scripts/make_summary.py b/scripts/make_summary.py
index fe6cdfc5..8d967fe1 100755
--- a/scripts/make_summary.py
+++ b/scripts/make_summary.py
@@ -144,10 +144,13 @@ def main(flagFiles = None, pipeline = 'LINC', run_type = 'calibrator', filtered_
 			for antenna in antennas:
 				json_output['metrics'][pipeline]['stations'].append({'station' : antenna, 'removed' : 'no'})
 		for antenna in antennas:
-			index = [i for (i, item) in enumerate(station_statistics) if item['station'] == antenna][0]
-			if 'percentage_flagged' not in json_output['metrics'][pipeline]['stations'][index].keys():
-				json_output['metrics'][pipeline]['stations'][index]['percentage_flagged'] = {}
-			json_output['metrics'][pipeline]['stations'][index]['percentage_flagged'][state] = flagged_fraction_antenna[antenna] * 100
+			try:
+				index = [i for (i, item) in enumerate(station_statistics) if item['station'] == antenna][0]
+				if 'percentage_flagged' not in json_output['metrics'][pipeline]['stations'][index].keys():
+					json_output['metrics'][pipeline]['stations'][index]['percentage_flagged'] = {}
+				json_output['metrics'][pipeline]['stations'][index]['percentage_flagged'][state] = flagged_fraction_antenna[antenna] * 100
+			except:
+				json_output['metrics'][pipeline]['stations'].append(  {'station' : antenna, 'removed' : 'yes'})
 		f.close()
 
 	## printing results human readable
-- 
GitLab