diff --git a/modules/aeolus/aeolus_amv.py b/modules/aeolus/aeolus_amv.py
index 76718c0ec1ed0252712322692463aacc6ea3b925..4c29633430b62b4586d01381937414fe0b907d59 100644
--- a/modules/aeolus/aeolus_amv.py
+++ b/modules/aeolus/aeolus_amv.py
@@ -1944,7 +1944,7 @@ def create_file(filename, aeolus_to_amv_dct, aeolus_dct, amv_files, cld_lyr=Fals
 
     rootgrp.close()
 
-def create_file_new(match_dct, filename, amv_params):
+def create_file_new(match_dct, filename, amv_params, amv_file_s):
     num_aparams = 7
     num_aprofs = 0
     max_num_alevels = 0
@@ -1955,6 +1955,9 @@ def create_file_new(match_dct, filename, amv_params):
     atimes = []
     elems = []
     lines = []
+    fidxs = []
+
+    amv_file_s = np.array(amv_file_s, dtype='object')
 
     # scan to get max num levels, amvs
     keys = list(match_dct.keys())
@@ -1970,6 +1973,7 @@ def create_file_new(match_dct, filename, amv_params):
             atimes.append(key)
             elems.append(tup[0])
             lines.append(tup[1])
+            fidxs.append(tup[2])
 
             nlevs = prof.shape[0]
             if nlevs > max_num_alevels:
@@ -1985,6 +1989,7 @@ def create_file_new(match_dct, filename, amv_params):
     atimes = np.array(atimes)
     elems = np.array(elems)
     lines = np.array(lines)
+    fidxs = np.array(fidxs)
 
     # Sample file to retrieve and copy variable attributes
     rg_exmpl = Dataset('/ships19/cloud/scratch/4TH_AMV_INTERCOMPARISON/FMWK2_AMV/GOES16_ABI_2KM_FD_2019293_0020_34_WINDS_AMV_EN-14CT.nc', 'r')
@@ -1996,8 +2001,10 @@ def create_file_new(match_dct, filename, amv_params):
     dim_alevs = rootgrp.createDimension('max_num_aeolus_levels', size=max_num_alevels)
     dim_amvs = rootgrp.createDimension('max_num_amvs', size=max_num_amvs)
     dim_num_aeolus_prof = rootgrp.createDimension('num_aeolus_profs', size=num_aprofs)
+    dim_num_files = rootgrp.createDimension('num_amv_files', size=amv_file_s.shape[0])
 
     prf_time = rootgrp.createVariable('time', 'f4', ['num_aeolus_profs'])
+    amv_file_names = rootgrp.createVariable('amv_file_names', str, ['num_amv_files'])
 
     # ---- Profile variables ---------------
     prf_lon = rootgrp.createVariable('prof_longitude', 'f4', ['num_aeolus_profs'])
@@ -2007,6 +2014,7 @@ def create_file_new(match_dct, filename, amv_params):
     prf_time.units = 'seconds since 1970-01-1 00:00:00'
     prf_elem = rootgrp.createVariable('FD_elem', 'f4', ['num_aeolus_profs'])
     prf_line = rootgrp.createVariable('FD_line', 'f4', ['num_aeolus_profs'])
+    prf_fidx = rootgrp.createVariable('amv_file_index', 'i4', ['num_aeolus_profs'])
     prf_azm = rootgrp.createVariable('prof_azm', 'f4', ['num_aeolus_profs', 'max_num_aeolus_levels'])
     prf_azm.units = 'degree'
     prf_spd = rootgrp.createVariable('prof_spd', 'f4', ['num_aeolus_profs', 'max_num_aeolus_levels'])
@@ -2038,6 +2046,9 @@ def create_file_new(match_dct, filename, amv_params):
     prf_elem[:] = elems
     prf_line[:] = lines
     prf_time[:] = atimes
+    prf_fidx[:] = fidxs
+
+    amv_file_names[:] = amv_file_s
 
     idx = 0
     for key in keys:
@@ -2082,7 +2093,7 @@ def create_amv_to_aeolus_match_file(aeolus_files_dir, amv_files_dir, outfile=Non
     m_d = match_amvs_to_aeolus_fast(a_d, amv_files_dir, amv_source, band, amv_files)
 
     if outfile is not None:
-        create_file_new(m_d, outfile, amv_files.get_parameters())
+        create_file_new(m_d, outfile, amv_files.get_parameters(), amv_files.flist)
 
 
 # match_file: pathname for the product file