From e486bb12be8e83de0bad69656229516e80a26df9 Mon Sep 17 00:00:00 2001 From: Craig Warren Date: Mon, 18 Dec 2017 12:01:19 +0000 Subject: [PATCH] Added warning to numerical dispersion function for case when waveform is undersampled. --- gprMax/grid.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gprMax/grid.py b/gprMax/grid.py index f1c48388..4d10f4cf 100644 --- a/gprMax/grid.py +++ b/gprMax/grid.py @@ -270,8 +270,11 @@ def dispersion_analysis(G): freqmaxpower = np.where(np.isclose(power[1::], np.amax(power[1::])))[0][0] # Set maximum frequency to a threshold drop from maximum power, ignoring DC value - freq = np.where((np.amax(power[freqmaxpower::]) - power[freqmaxpower::]) > G.highestfreqthres)[0][0] + 1 - results['maxfreq'].append(freqs[freq]) + try: + freq = np.where((np.amax(power[freqmaxpower::]) - power[freqmaxpower::]) > G.highestfreqthres)[0][0] + 1 + results['maxfreq'].append(freqs[freq]) + except: + results['error'] = 'unable to calculate maximum power from waveform, most likely due to undersampling.' # If waveform is truncated don't do any further analysis else: