From 1944df49e3f40975ee4a548f67f54c1070c8ac97 Mon Sep 17 00:00:00 2001 From: Craig Warren Date: Fri, 26 Feb 2016 15:16:16 +0000 Subject: [PATCH] Added code to auto-detect number of files to merge. --- tools/outputfiles_merge.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tools/outputfiles_merge.py b/tools/outputfiles_merge.py index 552d160b..d1525133 100644 --- a/tools/outputfiles_merge.py +++ b/tools/outputfiles_merge.py @@ -16,21 +16,23 @@ # You should have received a copy of the GNU General Public License # along with gprMax. If not, see . -import os, argparse +import argparse, glob, os import h5py import numpy as np """Merges traces (A-scans) from multiple output files into one new file, then removes the series of output files.""" # Parse command line arguments -parser = argparse.ArgumentParser(description='Merges traces (A-scans) from multiple output files into one new file, then removes the series of output files.', usage='cd gprMax; python -m tools.outputfiles_merge basefilename modelruns') +parser = argparse.ArgumentParser(description='Merges traces (A-scans) from multiple output files into one new file, then removes the series of output files.', usage='cd gprMax; python -m tools.outputfiles_merge basefilename') parser.add_argument('basefilename', help='base name of output file series including path') -parser.add_argument('modelruns', type=int, help='number of model runs, i.e. number of output files to merge') args = parser.parse_args() basefilename = args.basefilename -modelruns = args.modelruns outputfile = basefilename + '_merged.out' +files = glob.glob(basefilename + '*.out') +outputfiles = [filename for filename in files if '_merged' not in filename] +modelruns = len(outputfiles) +print('Found {} files to merge'.format(modelruns)) # Combined output file fout = h5py.File(outputfile, 'w')