From 92de877fc97dc1115bc1998eee5f9e776b6dfb03 Mon Sep 17 00:00:00 2001
From: Roberto Susino <roberto.susino@inaf.it>
Date: Fri, 1 Oct 2021 13:38:51 +0200
Subject: [PATCH] Fix bug in output filenames definition

---
 metis_l2_prep_vl_polariz.pro | 48 +++++++++++++++++++-----------------
 1 file changed, 26 insertions(+), 22 deletions(-)

diff --git a/metis_l2_prep_vl_polariz.pro b/metis_l2_prep_vl_polariz.pro
index 418547b..ed38bdf 100755
--- a/metis_l2_prep_vl_polariz.pro
+++ b/metis_l2_prep_vl_polariz.pro
@@ -324,6 +324,10 @@ pro metis_l2_prep_vl_polariz
 	date_beg_string = date_beg_string.replace('-', '')
 	date_beg_string = date_beg_string.replace(':', '')
 
+	; array of output file names
+
+	out_file_name = strarr(4)
+
 	; keywords specific for polarized brightness images
 
 	primary_pb_header = primary_header
@@ -331,7 +335,7 @@ pro metis_l2_prep_vl_polariz
 	; name of the fits file
 
 	file_name = 'solo_L2_metis-vl-pb_' + date_beg_string + '_V' + version + '.fits'
-	out_file_name = 'output/' + file_name
+	out_file_name[0] = 'output/' + file_name
 
 	fxaddpar, primary_pb_header, 'FILENAME', file_name
 	fxaddpar, primary_pb_header, 'BTYPE', 'VL polarized brightness'
@@ -350,10 +354,10 @@ pro metis_l2_prep_vl_polariz
 
 	if not ref_detector then pb_image = metis_rectify(pb_image, 'VL')
 	fits_add_checksum, primary_pb_header, pb_image
-	mwrfits, pb_image, out_file_name, primary_pb_header, /no_comment, /create, /silent
+	mwrfits, pb_image, out_file_name[0], primary_pb_header, /no_comment, /create, /silent
 
 	journal, 'Polarized-brightness FITS file created:'
-	journal, '  file name = ' + file_basename(out_file_name)
+	journal, '  file name = ' + file_basename(out_file_name[0])
 
 	; add the extension with the quality matrix
 
@@ -363,7 +367,7 @@ pro metis_l2_prep_vl_polariz
 	fxaddpar, extension_header, 'EXTNAME', 'Quality matrix', 'Extension name'
 	if not ref_detector then quality_matrix = metis_rectify(quality_matrix, 'VL')
 	fits_add_checksum, extension_header, quality_matrix
-	mwrfits, quality_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, quality_matrix, out_file_name[0], extension_header, /no_comment, /silent
 
 	journal, 'Quality-matrix extension correctly added.'
 
@@ -376,7 +380,7 @@ pro metis_l2_prep_vl_polariz
 	error_matrix = intarr(header.naxis1, header.naxis2)
 	if not ref_detector then error_matrix = metis_rectify(error_matrix, 'VL')
 	fits_add_checksum, extension_header, error_matrix
-	mwrfits, error_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, error_matrix, out_file_name[0], extension_header, /no_comment, /silent
 
 	journal, 'Error-matrix extension correctly added.'
 
@@ -387,7 +391,7 @@ pro metis_l2_prep_vl_polariz
 	; name of the fits file
 
 	file_name = 'solo_L2_metis-vl-tb_' + date_beg_string + '_V' + version + '.fits'
-	out_file_name = 'output/' + file_name
+	out_file_name[1] = 'output/' + file_name
 
 	fxaddpar, primary_tb_header, 'FILENAME', file_name
 	fxaddpar, primary_tb_header, 'BTYPE', 'VL total brightness'
@@ -406,10 +410,10 @@ pro metis_l2_prep_vl_polariz
 
 	if not ref_detector then tb_image = metis_rectify(tb_image, 'VL')
 	fits_add_checksum, primary_tb_header, tb_image
-	mwrfits, tb_image, out_file_name, primary_tb_header, /no_comment, /create, /silent
+	mwrfits, tb_image, out_file_name[1], primary_tb_header, /no_comment, /create, /silent
 
 	journal, 'Total-brightness FITS file created:'
-	journal, '  file name = ' + file_basename(out_file_name)
+	journal, '  file name = ' + file_basename(out_file_name[1])
 
 	; add the extension with the quality matrix
 
@@ -419,7 +423,7 @@ pro metis_l2_prep_vl_polariz
 	fxaddpar, extension_header, 'EXTNAME', 'Quality matrix', 'Extension name'
 	if not ref_detector then quality_matrix = metis_rectify(quality_matrix, 'VL')
 	fits_add_checksum, extension_header, quality_matrix
-	mwrfits, quality_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, quality_matrix, out_file_name[1], extension_header, /no_comment, /silent
 
 	journal, 'Quality-matrix extension correctly added.'
 
@@ -432,7 +436,7 @@ pro metis_l2_prep_vl_polariz
 	error_matrix = intarr(header.naxis1, header.naxis2)
 	if not ref_detector then error_matrix = metis_rectify(error_matrix, 'VL')
 	fits_add_checksum, extension_header, error_matrix
-	mwrfits, error_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, error_matrix, out_file_name[1], extension_header, /no_comment, /silent
 
 	journal, 'Error-matrix extension correctly added.'
 
@@ -443,7 +447,7 @@ pro metis_l2_prep_vl_polariz
 	; name of the fits file
 
 	file_name = 'solo_L2_metis-vl-pol-angle_' + date_beg_string + '_V' + version + '.fits'
-	out_file_name = 'output/' + file_name
+	out_file_name[2] = 'output/' + file_name
 
 	fxaddpar, primary_polangle_header, 'FILENAME', file_name
 	fxaddpar, primary_polangle_header, 'BTYPE', 'VL polarization angle'
@@ -462,10 +466,10 @@ pro metis_l2_prep_vl_polariz
 
 	if not ref_detector then pol_angle = metis_rectify(pol_angle, 'VL')
 	fits_add_checksum, primary_polangle_header, pol_angle
-	mwrfits, pol_angle, out_file_name, primary_polangle_header, /no_comment, /create, /silent
+	mwrfits, pol_angle, out_file_name[2], primary_polangle_header, /no_comment, /create, /silent
 
 	journal, 'Polarization-angle FITS file created:'
-	journal, '  file name = ' + file_basename(out_file_name)
+	journal, '  file name = ' + file_basename(out_file_name[2])
 
 	; add the extension with the quality matrix
 
@@ -475,7 +479,7 @@ pro metis_l2_prep_vl_polariz
 	fxaddpar, extension_header, 'EXTNAME', 'Quality matrix', 'Extension name'
 	if not ref_detector then quality_matrix = metis_rectify(quality_matrix, 'VL')
 	fits_add_checksum, extension_header, quality_matrix
-	mwrfits, quality_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, quality_matrix, out_file_name[2], extension_header, /no_comment, /silent
 
 	journal, 'Quality-matrix extension correctly added.'
 
@@ -488,7 +492,7 @@ pro metis_l2_prep_vl_polariz
 	error_matrix = intarr(header.naxis1, header.naxis2)
 	if not ref_detector then error_matrix = metis_rectify(error_matrix, 'VL')
 	fits_add_checksum, extension_header, error_matrix
-	mwrfits, error_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, error_matrix, out_file_name[2], extension_header, /no_comment, /silent
 
 	journal, 'Error-matrix extension correctly added.'
 
@@ -522,7 +526,7 @@ pro metis_l2_prep_vl_polariz
 	; name of the fits file
 
 	file_name = 'solo_L2_metis-vl-stokes_' + date_beg_string + '_V' + version + '.fits'
-	out_file_name = 'output/' + file_name
+	out_file_name[3] = 'output/' + file_name
 
 	fxaddpar, primary_stokes_header, 'FILENAME', file_name
 	fxaddpar, primary_stokes_header, 'BTYPE', 'Stokes I'
@@ -540,10 +544,10 @@ pro metis_l2_prep_vl_polariz
 	; add checksum and datasum to the fits header
 	if not ref_detector then i = metis_rectify(i, 'VL')
 	fits_add_checksum, primary_stokes_header, i
-	mwrfits, i, out_file_name, primary_stokes_header, /no_comment, /create, /silent
+	mwrfits, i, out_file_name[3], primary_stokes_header, /no_comment, /create, /silent
 
 	journal, 'Stokes parameters FITS file created:'
-	journal, '  file name = ' + file_basename(out_file_name)
+	journal, '  file name = ' + file_basename(out_file_name[3])
 
 	; add the extension with the stokes q image
 
@@ -557,7 +561,7 @@ pro metis_l2_prep_vl_polariz
 	fxaddpar, extension_header, 'DATAMAX', max(q, /nan)
 	if not ref_detector then q = metis_rectify(q, 'VL')
 	fits_add_checksum, extension_header, q
-	mwrfits, q, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, q, out_file_name[3], extension_header, /no_comment, /silent
 
 	journal, 'Q parameter extension correctly added.'
 
@@ -573,7 +577,7 @@ pro metis_l2_prep_vl_polariz
 	fxaddpar, extension_header, 'DATAMAX', max(u, /nan)
 	if not ref_detector then u = metis_rectify(u, 'VL')
 	fits_add_checksum, extension_header, u
-	mwrfits, u, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, u, out_file_name[3], extension_header, /no_comment, /silent
 
 	journal, 'U parameter extension correctly added.'
 
@@ -585,7 +589,7 @@ pro metis_l2_prep_vl_polariz
 	fxaddpar, extension_header, 'EXTNAME', 'Quality matrix', 'Extension name'
 	if not ref_detector then quality_matrix = metis_rectify(quality_matrix, 'VL')
 	fits_add_checksum, extension_header, quality_matrix
-	mwrfits, quality_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, quality_matrix, out_file_name[3], extension_header, /no_comment, /silent
 
 	journal, 'Quality-matrix extension correctly added.'
 
@@ -598,7 +602,7 @@ pro metis_l2_prep_vl_polariz
 	error_matrix = intarr(header.naxis1, header.naxis2)
 	if not ref_detector then error_matrix = metis_rectify(error_matrix, 'VL')
 	fits_add_checksum, extension_header, error_matrix
-	mwrfits, error_matrix, out_file_name, extension_header, /no_comment, /silent
+	mwrfits, error_matrix, out_file_name[3], extension_header, /no_comment, /silent
 
 	journal, 'Error-matrix extension correctly added.'
 
-- 
GitLab