Mercurial > hg > cm
changeset 1:dc43033a2c20
* Added .dat files containing parameters and filter coefficients
* In cortical_model: added get_specific_loudness() function and dependencies.
* In cortical_model & in utils: fixed bugs created from changing variable and function names before last submit
* In cortical_model: changed plot_excitation_tf (now named plot_excitation_response) to allow an input signal to be optionally given to be analysed.
TODO:
* In cortical_model: comment
* In cortical_model: add partial loudness function
author | Carl Bussey <c.bussey@se10.qmul.ac.uk> |
---|---|
date | Sun, 02 Feb 2014 22:35:48 +0000 |
parents | 5609fd93e935 |
children | 3b3c1c4ad283 |
files | A.dat alpha.dat cortical_model.py erb.dat outMidFir.dat tq.dat utils.py |
diffstat | 7 files changed, 263 insertions(+), 30 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/A.dat Sun Feb 02 22:35:48 2014 +0000 @@ -0,0 +1,1 @@ +4.7209,4.7204,4.7169,4.7084,4.6964,4.6814,4.6658,4.6565,4.6494,4.6421,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387,4.6387
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/alpha.dat Sun Feb 02 22:35:48 2014 +0000 @@ -0,0 +1,1 @@ +0.2,0.19999,0.19992,0.19975,0.19952,0.19921,0.19886,0.19863,0.19843,0.19818,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803,0.19803
--- a/cortical_model.py Sat Jan 25 20:00:38 2014 +0000 +++ b/cortical_model.py Sun Feb 02 22:35:48 2014 +0000 @@ -11,6 +11,7 @@ * utils.py and/or utils.pyc * erb.dat * outMidFir.dat + * tq.dat External dependencies: * scipy @@ -21,21 +22,108 @@ import utils import scipy.signal as sp +import scipy.fftpack as fft import numpy as np from copy import deepcopy import matplotlib.pyplot as plt -def get_partial_loudness(): +def get_specific_loudness(exc_i, inc_loud_region = False): """ - A function to calculate the partial loudness of an excitation pattern at given ERB. + A function to calculate the specific loudness of the excitation patterns at each ERB. TO DO """ + lenSig = np.shape(exc_i)[-1] #length signal + tq_dB, A, alpha = utils.load_sl_parameters() #load tq, A and alpha parameters + tq_dB = np.transpose(np.tile(tq_dB, (lenSig,1))) + tq = 10**(tq_dB / 10) + A = np.transpose(np.tile(A, (lenSig,1))) + alpha = np.transpose(np.tile(alpha, (lenSig,1))) + tq500_dB = 3.73 #threshold of quiet at 500Hz reference + G = 10**((tq500_dB - tq_dB)/10) #gain parameter + specific_loudness = exc_low = exc_mid = exc_high = np.zeros(np.shape(exc_i)) + less_than_tq = get_less_than_tq(exc_i, tq) #boolean array of elements less than or equal to the threshold of quiet + greater_than_tq = ~less_than_tq #boolean array of elements greater than the threshold of quiet + greater_than_tl = get_greater_than_tl(exc_i) #boolean array of elements greater than the loud threshold + gttq_lttl = greater_than_tq[~greater_than_tl] #boolean array of elements greater than the threshold of quiet but less than the threshold of loud - return + exc_low = exc_i[less_than_tq] + specific_loudness[less_than_tq] = get_specific_loudness_low(exc_low, G[less_than_tq], tq[less_than_tq], A[less_than_tq], alpha[less_than_tq]) + + if(inc_loud_region): + exc_mid = exc_i[gttq_lttl] + exc_high = exc_i[greater_than_tl] + specific_loudness[gttq_lttl] = get_specific_loudness_mid(exc_mid, G[gttq_lttl], A[gttq_lttl], alpha[gttq_lttl]) + specific_loudness[greater_than_tl] = get_specific_loudness_high(exc_high) + else: + exc_mid = exc_i[greater_than_tq] + specific_loudness[greater_than_tq] = get_specific_loudness_mid(exc_mid, G[greater_than_tq], A[greater_than_tq], alpha[greater_than_tq]) + + return specific_loudness -def get_excitation_i(input, fs, SPL, rectify=False): +def get_specific_loudness_low(exc_low, G, tq, A, alpha): + + C = 0.047 #constant parameter + specific_loudness_low = C * ((2*exc_low)/(exc_low+tq))**1.5 * ((G * exc_low + A)**alpha - A**alpha) + + return specific_loudness_low + +def get_specific_loudness_mid(exc_mid, G, A, alpha): + + C = 0.047 #constant parameter + specific_loudness_mid = C * ((G * exc_mid + A)**alpha - A**alpha) + + return specific_loudness_mid + +def get_specific_loudness_high(exc_high): + """ + + """ + + C = 0.047 #constant parameter + specific_loudness_high = C * (exc_high / (1.04 * 10**6))**0.5 + + return specific_loudness_high + +def get_greater_than_tl(exc_i): + """ + A function to return if each element of the excitation intensity is greater than the threshold of loud. + + Parameters: + * exc_i (type: array-like matrix of floats) - the input excitation intensity + + Returns: + * le_tq (type: array-like matrix of booleans) - a boolean array with dimensions equal to the input + specifying if the excitation intensity is greater than the threshold of loud + """ + + lenSig = np.shape(exc_i)[-1] + g_tl = exc_i[:,:]>np.transpose(np.tile(10**10,(lenSig,39))) + + return g_tl + +def get_less_than_tq(exc_i, tq): + """ + A function to return if each element of the excitation intensity is less than the threshold of quiet. + + Parameters: + * exc_i (type: array-like matrix of floats) - the input excitation intensity + * tq (type: array-like matrix of floats) - the threshold of quiet for each ERB. + + Returns: + * le_tq (type: array-like matrix of booleans) - a boolean array with dimensions equal to the input + specifying if the excitation intensity is less than the threshold of quiet + """ + + if (np.shape(exc_i)!=np.shape(tq)): + np.transpose(np.tile(exc_i,(np.shape(exc_i)[-1],1))) + + le_tq = exc_i<=tq + + return le_tq + +def get_excitation_i(input, fs, SPL, rectify=False, verbose = False): """ A function to calculate the excitation intensity of the input signal. @@ -57,7 +145,7 @@ input = np.array(input) inputOMFir = outMidFir(input) inputPa = v_Pascal(inputOMFir, SPL) - gtfs = gamma_tone_filter(inputPa, fs) + gtfs = gamma_tone_filter(inputPa, fs, verbose = verbose) if (rectify): gtfs = half_rectification(gtfs) gtfs = pa_i(gtfs) @@ -65,7 +153,7 @@ return gtfs -def plot_excitation_tf(fs = 44100, outMidFilt = True, xscale = 'log', yscale = 'log'): +def plot_excitation_response(input = 0, fs = 44100, outMidFilt = True, xscale = 'log', yscale = 'log'): """ A function that plots the transfer function of the outer middle ear and each gammatone filter. @@ -80,9 +168,10 @@ signal at each gammatone filter (and optionally, including the outer middle ear response). The response at the nth gammatone filter can be accessed by y[n]. """ - - input = np.zeros(np.ceil(fs)) - input[0] = 1 + + if ((np.shape(input)==())): + input = np.zeros(np.ceil(fs)) + input[0] = 1 if(outMidFilt): input = outMidFir(input) y = gamma_tone_filter(input, fs) @@ -91,7 +180,7 @@ plt.show() - return y + return fft.fft(y) def get_modulation_i(input, fs): """ @@ -109,7 +198,6 @@ be accessed with y[n]. """ - input = np.array(input) b = fir_antialias(fs) input_lp = sp.lfilter(b,(1),input_fr) @@ -138,7 +226,7 @@ return y -def gamma_tone_filter(input, fs): +def gamma_tone_filter(input, fs, verbose = False): """ A function to filter to decompose the input signal into 39 different gammatones filtered signals modelling the ERBs. @@ -153,7 +241,7 @@ input = np.array(input) fc, bw = utils.load_erb_data() - y = decomposition(input,fs,fc,bw) + y = decomposition(input,fs,fc,bw, verbose = verbose) return y @@ -172,7 +260,7 @@ """ input = np.array(input) - y = np.sign(input)*(0.00002*10**(np.log10(np.abs(input))+dBFS/20)) + y = np.sign(input)*(0.00002*10**(np.log10(np.abs(input))+SPL/20)) return y @@ -209,7 +297,7 @@ input = np.array(input) y = input / 1*(10**12) - return + return y def downsample(input, factor=100): """ @@ -299,7 +387,6 @@ signal of the nth filter can be accessed using y[n]. """ - input = np.array(input) nFreqs = len(fc) shape = (nFreqs,) + np.shape(input)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/erb.dat Sun Feb 02 22:35:48 2014 +0000 @@ -0,0 +1,39 @@ +20,26.828 +48.327,29.881 +79.877,33.281 +115.02,37.069 +154.16,41.287 +197.75,45.985 +246.3,51.217 +300.38,57.045 +360.61,63.536 +427.69,70.766 +502.41,78.819 +585.63,87.787 +678.32,97.777 +781.56,108.9 +896.54,121.29 +1024.6,135.1 +1167.3,150.47 +1326.1,167.59 +1503.1,186.66 +1700.2,207.9 +1919.7,231.56 +2164.2,257.91 +2436.5,287.26 +2739.8,319.94 +3077.6,356.35 +3453.8,396.9 +3872.9,442.06 +4339.6,492.36 +4859.5,548.39 +5438.5,610.79 +6083.4,680.29 +6801.7,757.7 +7601.7,843.92 +8492.8,939.95 +9485.2,1046.9 +10591,1166 +11822,1298.7 +13193,1446.5 +14720,1611.1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/outMidFir.dat Sun Feb 02 22:35:48 2014 +0000 @@ -0,0 +1,1 @@ +-5e-08,-4e-08,-5e-08,-3e-08,-2e-08,-1e-08,-0,-1e-08,-0,-3e-08,-1e-08,-3e-08,-2e-08,-3e-08,-2e-08,-3e-08,-4e-08,-3e-08,-5e-08,-3e-08,-5e-08,-3e-08,-3e-08,-1e-08,-2e-08,-1e-08,-0,-1e-08,0,-0,2e-08,0,2e-08,-1e-08,-1e-08,-4e-08,-5e-08,-5e-08,-6e-08,-2e-08,-0,3e-08,2e-08,3e-08,-2e-08,-2e-08,-1e-08,1e-08,3e-08,4e-08,4e-08,0,0,-3e-08,-3e-08,-4e-08,-3e-08,-3e-08,-3e-08,-2e-08,-3e-08,-1e-08,-2e-08,-0,-2e-08,-1e-08,-2e-08,-1e-08,-1e-08,-1e-08,0,-0,1e-08,-1e-08,0,-2e-08,-1e-08,-3e-08,-1e-08,-2e-08,-2e-08,-2e-08,-4e-08,-3e-08,-5e-08,-4e-08,-5e-08,-3e-08,-3e-08,-1e-08,-1e-08,-2e-08,-2e-08,-4e-08,-3e-08,-4e-08,-2e-08,-3e-08,-2e-08,-3e-08,-3e-08,-3e-08,-4e-08,-3e-08,-3e-08,-2e-08,-4e-08,-2e-08,-4e-08,-3e-08,-4e-08,-4e-08,-5e-08,-6e-08,-6e-08,-7e-08,-5e-08,-6e-08,-4e-08,-4e-08,-2e-08,-3e-08,-3e-08,-3e-08,-4e-08,-4e-08,-5e-08,-4e-08,-6e-08,-5e-08,-7e-08,-7e-08,-8e-08,-7e-08,-7e-08,-6e-08,-4e-08,-5e-08,-2e-08,-4e-08,-3e-08,-5e-08,-4e-08,-5e-08,-4e-08,-4e-08,-5e-08,-4e-08,-6e-08,-3e-08,-5e-08,-2e-08,-3e-08,-2e-08,-4e-08,-4e-08,-3e-08,-4e-08,-2e-08,-4e-08,-3e-08,-6e-08,-5e-08,-8e-08,-6e-08,-6e-08,-5e-08,-4e-08,-4e-08,-2e-08,-5e-08,-4e-08,-6e-08,-5e-08,-6e-08,-5e-08,-5e-08,-6e-08,-6e-08,-9e-08,-8e-08,-1.1e-07,-8e-08,-1e-07,-8e-08,-9e-08,-8e-08,-8e-08,-8e-08,-8e-08,-9e-08,-7e-08,-9e-08,-6e-08,-8e-08,-6e-08,-6e-08,-4e-08,-3e-08,-3e-08,-2e-08,-6e-08,-8e-08,-1.2e-07,-9e-08,-1e-07,-5e-08,-5e-08,-6e-08,-8e-08,-1.2e-07,-1.3e-07,-1.4e-07,-9e-08,-1e-07,-6e-08,-6e-08,-5e-08,-7e-08,-8e-08,-9e-08,-1e-07,-9e-08,-1.1e-07,-9e-08,-1.2e-07,-1.1e-07,-1.4e-07,-1.3e-07,-1.5e-07,-1.4e-07,-1.3e-07,-1.4e-07,-1.1e-07,-1.3e-07,-1e-07,-1.2e-07,-1e-07,-1.2e-07,-1e-07,-1e-07,-9e-08,-8e-08,-1e-07,-1e-07,-1.4e-07,-1.2e-07,-1.5e-07,-1.2e-07,-1.2e-07,-7e-08,-6e-08,-6e-08,-6e-08,-1e-07,-9e-08,-1e-07,-6e-08,-6e-08,-1e-08,-3e-08,-5e-08,-7e-08,-8e-08,-9e-08,-1.1e-07,-8e-08,-1.2e-07,-9e-08,-1.2e-07,-9e-08,-1.1e-07,-9e-08,-9e-08,-1e-07,-8e-08,-1e-07,-8e-08,-1e-07,-7e-08,-9e-08,-7e-08,-9e-08,-9e-08,-1e-07,-1.3e-07,-1.2e-07,-1.5e-07,-1.2e-07,-1.5e-07,-1.2e-07,-1.5e-07,-1.3e-07,-1.5e-07,-1.5e-07,-1.5e-07,-1.6e-07,-1.3e-07,-1.4e-07,-1e-07,-1.3e-07,-1e-07,-1.4e-07,-1.4e-07,-1.5e-07,-1.4e-07,-1.3e-07,-1.3e-07,-1.1e-07,-1.4e-07,-1.1e-07,-1.4e-07,-1.1e-07,-1.2e-07,-9e-08,-1.1e-07,-1.1e-07,-1e-07,-1.1e-07,-8e-08,-1e-07,-7e-08,-1.1e-07,-9e-08,-1.3e-07,-1.1e-07,-1.1e-07,-1e-07,-7e-08,-7e-08,-3e-08,-5e-08,-2e-08,-6e-08,-4e-08,-7e-08,-5e-08,-7e-08,-8e-08,-9e-08,-1.2e-07,-1.2e-07,-1.6e-07,-1.3e-07,-1.5e-07,-1.1e-07,-1.1e-07,-8e-08,-8e-08,-8e-08,-7e-08,-1e-07,-8e-08,-1.2e-07,-1e-07,-1.4e-07,-1.1e-07,-1.4e-07,-1.2e-07,-1.1e-07,-1.1e-07,-8e-08,-8e-08,-5e-08,-9e-08,-5e-08,-8e-08,-4e-08,-5e-08,-4e-08,-6e-08,-9e-08,-1e-07,-1.4e-07,-1e-07,-1.1e-07,-5e-08,-6e-08,-1e-08,-2e-08,-1e-08,-1e-08,-3e-08,-1e-08,-4e-08,0,-3e-08,-0,-6e-08,-4e-08,-9e-08,-1e-07,-1e-07,-1.1e-07,-9e-08,-1.2e-07,-8e-08,-1.3e-07,-1e-07,-1.5e-07,-1.2e-07,-1.4e-07,-1.4e-07,-1.2e-07,-1.2e-07,-9e-08,-9e-08,1e-08,-0,6e-08,4e-08,1e-08,-1.1e-07,-1.5e-07,-1.4e-07,-1.4e-07,-1e-08,1e-08,2e-08,-7e-08,-9e-08,-1.8e-07,-1.3e-07,-6e-08,0,7e-08,1e-07,1.4e-07,7e-08,1e-07,4e-08,6e-08,3e-08,6e-08,5e-08,5e-08,5e-08,1e-08,5e-08,-0,5e-08,1e-08,5e-08,3e-08,6e-08,6e-08,6e-08,8e-08,5e-08,1e-07,7e-08,1.3e-07,9e-08,1.3e-07,9e-08,8e-08,6e-08,4e-08,6e-08,5e-08,1.3e-07,1e-07,1.6e-07,1e-07,1.1e-07,6e-08,1.1e-07,1.5e-07,1.8e-07,2.6e-07,2.3e-07,2.6e-07,2e-07,2.5e-07,1.8e-07,2.2e-07,2e-07,2e-07,1.9e-07,1.8e-07,2.2e-07,1.8e-07,2.5e-07,2.1e-07,2.7e-07,2.3e-07,2.7e-07,2.6e-07,2.9e-07,3.2e-07,3.2e-07,3.7e-07,3.3e-07,3.8e-07,3.1e-07,3.4e-07,2.8e-07,3.2e-07,3e-07,3.2e-07,3.3e-07,3.1e-07,3.3e-07,2.8e-07,3.2e-07,2.7e-07,3.3e-07,3e-07,3.6e-07,3.6e-07,3.6e-07,3.7e-07,3.2e-07,3.4e-07,2.9e-07,3.4e-07,2.9e-07,3.6e-07,3.2e-07,3.5e-07,3.4e-07,3.5e-07,3.8e-07,3.6e-07,4.3e-07,3.8e-07,4.4e-07,4e-07,4.6e-07,4.2e-07,4.6e-07,4.4e-07,4.2e-07,4.3e-07,3.8e-07,4.3e-07,3.9e-07,4.9e-07,4.8e-07,5.8e-07,5.9e-07,6.6e-07,6.7e-07,6.7e-07,6.9e-07,6.4e-07,6.9e-07,6.1e-07,6.6e-07,5.8e-07,6e-07,5.4e-07,5.5e-07,5.5e-07,5.6e-07,6.3e-07,6.3e-07,7.4e-07,7.1e-07,7.9e-07,7.2e-07,7.5e-07,7e-07,6.9e-07,6.6e-07,6.2e-07,6.3e-07,5.5e-07,6.1e-07,5.6e-07,6.4e-07,6.1e-07,6.9e-07,6.6e-07,6.7e-07,6.8e-07,6.8e-07,7.5e-07,7.3e-07,8e-07,7e-07,7.3e-07,6.3e-07,6.6e-07,6.7e-07,7.4e-07,8.2e-07,8.6e-07,9.7e-07,9.3e-07,1.02e-06,9.4e-07,1.01e-06,9.7e-07,1.04e-06,1.05e-06,1.09e-06,1.11e-06,1.06e-06,1.11e-06,1.01e-06,1.06e-06,1e-06,1.06e-06,9.8e-07,1.03e-06,9.9e-07,9.6e-07,9.7e-07,9e-07,9.5e-07,8.6e-07,9e-07,8.5e-07,9.6e-07,9.4e-07,1.12e-06,1.31e-06,1.42e-06,1.5e-06,1.49e-06,1.32e-06,8.5e-07,7.2e-07,5.7e-07,6.9e-07,9.4e-07,1.16e-06,1.01e-06,8.1e-07,6e-07,3.1e-07,4.5e-07,6.3e-07,9.1e-07,1.02e-06,1.26e-06,1.23e-06,1.18e-06,1.1e-06,9.9e-07,9.4e-07,8.5e-07,9.2e-07,8.4e-07,9.3e-07,8.3e-07,8.9e-07,8.5e-07,8.7e-07,8.9e-07,8.9e-07,9.5e-07,9e-07,1.01e-06,9.3e-07,1.02e-06,9.6e-07,1.03e-06,9.9e-07,1.03e-06,1.06e-06,1.05e-06,1.12e-06,1.05e-06,1.13e-06,1.06e-06,1.16e-06,1.09e-06,1.18e-06,1.19e-06,1.22e-06,1.23e-06,1.17e-06,1.18e-06,1.08e-06,1.2e-06,1.14e-06,1.28e-06,1.27e-06,1.34e-06,1.29e-06,1.3e-06,1.32e-06,1.26e-06,1.32e-06,1.24e-06,1.3e-06,1.19e-06,1.28e-06,1.21e-06,1.27e-06,1.26e-06,1.27e-06,1.31e-06,1.27e-06,1.36e-06,1.31e-06,1.45e-06,1.4e-06,1.53e-06,1.51e-06,1.59e-06,1.59e-06,1.59e-06,1.61e-06,1.52e-06,1.58e-06,1.48e-06,1.58e-06,1.49e-06,1.57e-06,1.49e-06,1.51e-06,1.47e-06,1.44e-06,1.5e-06,1.46e-06,1.59e-06,1.52e-06,1.62e-06,1.49e-06,1.51e-06,1.37e-06,1.37e-06,1.33e-06,1.28e-06,1.3e-06,1.18e-06,1.21e-06,1.08e-06,1.19e-06,1.12e-06,1.24e-06,1.23e-06,1.3e-06,1.32e-06,1.34e-06,1.46e-06,1.44e-06,1.6e-06,1.52e-06,1.6e-06,1.45e-06,1.47e-06,1.38e-06,1.4e-06,1.42e-06,1.4e-06,1.47e-06,1.37e-06,1.47e-06,1.34e-06,1.44e-06,1.36e-06,1.47e-06,1.46e-06,1.52e-06,1.57e-06,1.53e-06,1.6e-06,1.48e-06,1.53e-06,1.35e-06,1.4e-06,1.24e-06,1.29e-06,1.26e-06,1.28e-06,1.31e-06,1.28e-06,1.39e-06,1.36e-06,1.57e-06,1.56e-06,1.79e-06,1.79e-06,1.88e-06,1.85e-06,1.85e-06,1.84e-06,1.71e-06,1.76e-06,1.54e-06,1.5e-06,1.27e-06,1.32e-06,1.19e-06,1.31e-06,1.37e-06,1.4e-06,1.47e-06,1.41e-06,1.46e-06,1.28e-06,1.35e-06,1.11e-06,1.07e-06,8.8e-07,8.7e-07,8e-07,7.8e-07,8.6e-07,8e-07,9.4e-07,8.1e-07,9.1e-07,8.6e-07,1.01e-06,9e-07,1.07e-06,1.15e-06,1.09e-06,1.21e-06,1.25e-06,1.42e-06,1.44e-06,1.75e-06,1.7e-06,1.91e-06,1.95e-06,2.25e-06,2.62e-06,2.68e-06,2.66e-06,2.42e-06,1.81e-06,5.2e-07,-9e-08,-7e-07,-9.4e-07,-1e-07,1.8e-06,2.87e-06,3.23e-06,3.19e-06,1.69e-06,9e-07,1.47e-06,2.59e-06,3.74e-06,5.15e-06,4.85e-06,3.59e-06,2.62e-06,1.6e-06,6.9e-07,3.6e-07,8.3e-07,9e-07,1.38e-06,1.76e-06,2.08e-06,2.13e-06,2.3e-06,2.45e-06,2.57e-06,2.77e-06,2.68e-06,2.93e-06,2.82e-06,2.94e-06,2.97e-06,3.14e-06,3.03e-06,3.04e-06,3.03e-06,2.78e-06,2.77e-06,2.59e-06,2.71e-06,2.54e-06,2.61e-06,2.36e-06,2.28e-06,2.02e-06,1.83e-06,1.82e-06,1.77e-06,2.01e-06,2.06e-06,2.4e-06,2.34e-06,2.48e-06,2.27e-06,2.18e-06,2.02e-06,1.92e-06,1.9e-06,1.79e-06,1.92e-06,1.75e-06,1.94e-06,1.88e-06,2.11e-06,2.14e-06,2.36e-06,2.45e-06,2.5e-06,2.62e-06,2.51e-06,2.6e-06,2.37e-06,2.4e-06,2.11e-06,2.11e-06,1.91e-06,1.89e-06,1.88e-06,1.9e-06,2.07e-06,2.07e-06,2.35e-06,2.29e-06,2.52e-06,2.39e-06,2.5e-06,2.38e-06,2.39e-06,2.33e-06,2.19e-06,2.19e-06,1.95e-06,2.01e-06,1.77e-06,1.92e-06,1.77e-06,1.93e-06,1.91e-06,2e-06,2.04e-06,2.01e-06,2.12e-06,1.98e-06,2.18e-06,2.01e-06,2.18e-06,2.02e-06,2.09e-06,1.92e-06,1.89e-06,1.86e-06,1.71e-06,1.79e-06,1.63e-06,1.77e-06,1.58e-06,1.79e-06,1.71e-06,1.88e-06,1.88e-06,1.91e-06,1.92e-06,1.79e-06,1.86e-06,1.63e-06,1.79e-06,1.58e-06,1.74e-06,1.61e-06,1.74e-06,1.74e-06,1.79e-06,1.89e-06,1.85e-06,2.07e-06,1.97e-06,2.25e-06,2.14e-06,2.33e-06,2.17e-06,2.2e-06,2.06e-06,1.95e-06,1.97e-06,1.85e-06,2.04e-06,1.93e-06,2.2e-06,2.09e-06,2.32e-06,2.25e-06,2.41e-06,2.46e-06,2.48e-06,2.59e-06,2.43e-06,2.52e-06,2.28e-06,2.46e-06,2.24e-06,2.37e-06,2.22e-06,2.17e-06,1.98e-06,1.85e-06,1.93e-06,1.83e-06,2.15e-06,2.06e-06,2.26e-06,2.02e-06,2.1e-06,1.91e-06,1.97e-06,2e-06,1.96e-06,2.06e-06,1.87e-06,2.02e-06,1.76e-06,1.92e-06,1.73e-06,1.88e-06,1.8e-06,1.88e-06,1.94e-06,1.92e-06,2.11e-06,2e-06,2.28e-06,2.15e-06,2.4e-06,2.29e-06,2.53e-06,2.54e-06,2.68e-06,2.82e-06,2.79e-06,2.97e-06,2.85e-06,3.2e-06,3.2e-06,3.58e-06,3.55e-06,3.77e-06,3.59e-06,3.36e-06,3.23e-06,3e-06,3.07e-06,3.09e-06,3.76e-06,3.8e-06,4.09e-06,3.85e-06,3.58e-06,3.23e-06,3.37e-06,3.65e-06,3.83e-06,4.33e-06,4.06e-06,3.96e-06,3.47e-06,3.42e-06,2.94e-06,2.93e-06,2.86e-06,2.79e-06,2.84e-06,2.74e-06,2.93e-06,2.71e-06,2.96e-06,2.74e-06,3e-06,2.89e-06,3.06e-06,3.15e-06,3.25e-06,3.45e-06,3.43e-06,3.72e-06,3.5e-06,3.75e-06,3.47e-06,3.57e-06,3.34e-06,3.37e-06,3.29e-06,3.23e-06,3.32e-06,3.13e-06,3.35e-06,3.14e-06,3.45e-06,3.35e-06,3.71e-06,3.76e-06,4.06e-06,4.21e-06,4.19e-06,4.3e-06,4e-06,4.06e-06,3.7e-06,3.89e-06,3.63e-06,3.83e-06,3.71e-06,3.76e-06,3.81e-06,3.79e-06,3.98e-06,3.83e-06,4.12e-06,3.85e-06,4.04e-06,3.77e-06,3.89e-06,3.69e-06,3.68e-06,3.66e-06,3.5e-06,3.63e-06,3.41e-06,3.67e-06,3.46e-06,3.82e-06,3.74e-06,4.08e-06,4.16e-06,4.36e-06,4.53e-06,4.47e-06,4.71e-06,4.5e-06,4.84e-06,4.68e-06,5.04e-06,4.89e-06,5.07e-06,4.96e-06,4.91e-06,4.95e-06,4.81e-06,5.08e-06,4.95e-06,5.34e-06,5.16e-06,5.51e-06,5.37e-06,5.57e-06,5.61e-06,5.68e-06,5.79e-06,5.61e-06,5.74e-06,5.3e-06,5.45e-06,5.08e-06,5.24e-06,5.01e-06,5.16e-06,5.1e-06,5.11e-06,5.38e-06,5.37e-06,5.78e-06,5.64e-06,5.92e-06,5.45e-06,5.42e-06,4.92e-06,4.73e-06,4.46e-06,4.21e-06,4.17e-06,3.85e-06,4.02e-06,3.72e-06,4.1e-06,3.98e-06,4.39e-06,4.41e-06,4.68e-06,4.77e-06,4.73e-06,4.85e-06,4.52e-06,4.65e-06,4.17e-06,4.3e-06,3.9e-06,4.1e-06,3.99e-06,4.2e-06,4.37e-06,4.41e-06,4.68e-06,4.49e-06,4.85e-06,4.6e-06,4.95e-06,4.75e-06,5e-06,4.81e-06,4.9e-06,5.03e-06,5.02e-06,5.39e-06,5.29e-06,5.62e-06,5.2e-06,5.41e-06,5.08e-06,5.32e-06,5.37e-06,5.56e-06,5.64e-06,5.49e-06,5.62e-06,5.22e-06,5.55e-06,5.29e-06,5.64e-06,5.41e-06,5.56e-06,5.29e-06,5.07e-06,4.83e-06,4.32e-06,4.26e-06,3.71e-06,3.84e-06,3.38e-06,3.63e-06,3.35e-06,3.56e-06,3.54e-06,3.59e-06,3.72e-06,3.52e-06,3.73e-06,3.34e-06,3.61e-06,3.15e-06,3.32e-06,3.02e-06,3.2e-06,3.25e-06,3.52e-06,4.02e-06,4.19e-06,4.88e-06,4.81e-06,5.26e-06,5e-06,5.3e-06,4.96e-06,5.15e-06,5.29e-06,5.3e-06,5.43e-06,5.12e-06,5.16e-06,4.63e-06,5.13e-06,5.03e-06,5.68e-06,5.94e-06,6.31e-06,6.32e-06,6.29e-06,6.4e-06,5.92e-06,6.1e-06,5.6e-06,5.73e-06,5.2e-06,5.33e-06,4.9e-06,4.76e-06,4.56e-06,4.21e-06,4.2e-06,3.72e-06,3.89e-06,3.37e-06,3.6e-06,3.11e-06,3.31e-06,3.09e-06,3.11e-06,3.06e-06,2.83e-06,2.89e-06,2.41e-06,2.7e-06,2.29e-06,2.69e-06,2.41e-06,2.67e-06,2.46e-06,2.54e-06,2.72e-06,2.82e-06,3.53e-06,3.76e-06,4.7e-06,4.75e-06,5.45e-06,5.3e-06,5.59e-06,5.53e-06,5.71e-06,5.91e-06,5.81e-06,6.19e-06,5.85e-06,6.26e-06,5.98e-06,6.57e-06,6.51e-06,7e-06,7.09e-06,7.24e-06,7.46e-06,7.31e-06,7.65e-06,7.21e-06,7.46e-06,6.76e-06,6.74e-06,6.02e-06,5.85e-06,5.5e-06,5.26e-06,5.21e-06,4.86e-06,5.15e-06,4.72e-06,5.24e-06,4.94e-06,5.31e-06,4.92e-06,4.9e-06,4.48e-06,4.02e-06,3.8e-06,3.11e-06,3.06e-06,2.2e-06,2.15e-06,1.28e-06,1.3e-06,8.2e-07,1.01e-06,1.22e-06,1.47e-06,2.04e-06,2.09e-06,2.77e-06,2.57e-06,3.21e-06,2.86e-06,3.14e-06,2.7e-06,2.49e-06,2.1e-06,1.71e-06,1.77e-06,1.33e-06,1.77e-06,1.4e-06,1.97e-06,1.79e-06,2.47e-06,2.63e-06,3.09e-06,3.34e-06,3.16e-06,3.25e-06,2.58e-06,2.69e-06,2e-06,2.38e-06,1.95e-06,2.26e-06,2.12e-06,2.26e-06,2.33e-06,2.2e-06,2.65e-06,2.39e-06,2.99e-06,2.63e-06,3.07e-06,2.48e-06,2.48e-06,1.89e-06,1.45e-06,1.17e-06,6.7e-07,7.6e-07,1.8e-07,5.4e-07,-2.1e-07,-8e-08,-8.3e-07,-9.3e-07,-1.35e-06,-1.53e-06,-1.54e-06,-1.79e-06,-1.38e-06,-1.84e-06,-1.19e-06,-1.42e-06,-8e-07,-1.07e-06,-7.5e-07,-1.17e-06,-1.8e-06,-2.07e-06,-2.66e-06,-2.4e-06,-2.63e-06,-1.73e-06,-1.96e-06,-1.06e-06,-8.7e-07,-1e-07,5.5e-07,1.22e-06,1.77e-06,1.45e-06,1.7e-06,6.9e-07,5.3e-07,-7e-07,-1.01e-06,-2.11e-06,-2.56e-06,-3.12e-06,-3.43e-06,-3.01e-06,-2.97e-06,-1.97e-06,-1.94e-06,-1.11e-06,-1.75e-06,-1.67e-06,-2.54e-06,-3.17e-06,-4.04e-06,-5.06e-06,-5.8e-06,-7.17e-06,-7.37e-06,-8.32e-06,-7.82e-06,-8.13e-06,-7.46e-06,-7.58e-06,-7.43e-06,-7.62e-06,-8.11e-06,-8.04e-06,-8.77e-06,-8.52e-06,-9.26e-06,-8.91e-06,-9.61e-06,-9.18e-06,-9.35e-06,-8.97e-06,-8.3e-06,-7.97e-06,-7.24e-06,-7.34e-06,-6.46e-06,-6.85e-06,-5.88e-06,-5.82e-06,-5.05e-06,-4.99e-06,-4.6e-06,-4.23e-06,-4.2e-06,-3.3e-06,-3.33e-06,-2.49e-06,-3.09e-06,-2.85e-06,-4e-06,-4.4e-06,-5.36e-06,-6.1e-06,-6.57e-06,-7.4e-06,-7.38e-06,-8.21e-06,-7.71e-06,-8.41e-06,-8.08e-06,-9.08e-06,-9.7e-06,-1.114e-05,-1.264e-05,-1.413e-05,-1.626e-05,-1.737e-05,-1.944e-05,-2.023e-05,-2.183e-05,-2.165e-05,-2.202e-05,-2.11e-05,-2.018e-05,-1.932e-05,-1.853e-05,-1.887e-05,-1.888e-05,-2.046e-05,-2.087e-05,-2.264e-05,-2.319e-05,-2.455e-05,-2.514e-05,-2.591e-05,-2.624e-05,-2.571e-05,-2.558e-05,-2.393e-05,-2.318e-05,-2.117e-05,-2.05e-05,-1.882e-05,-1.851e-05,-1.785e-05,-1.773e-05,-1.818e-05,-1.819e-05,-1.891e-05,-1.858e-05,-1.939e-05,-1.85e-05,-1.884e-05,-1.808e-05,-1.811e-05,-1.755e-05,-1.726e-05,-1.729e-05,-1.686e-05,-1.759e-05,-1.722e-05,-1.826e-05,-1.799e-05,-1.898e-05,-1.881e-05,-1.963e-05,-1.99e-05,-2.02e-05,-2.098e-05,-2.101e-05,-2.201e-05,-2.184e-05,-2.306e-05,-2.261e-05,-2.324e-05,-2.241e-05,-2.189e-05,-2.079e-05,-1.978e-05,-1.935e-05,-1.845e-05,-1.924e-05,-1.879e-05,-1.964e-05,-1.921e-05,-2.027e-05,-2.032e-05,-2.137e-05,-2.229e-05,-2.287e-05,-2.351e-05,-2.256e-05,-2.232e-05,-2.05e-05,-2.022e-05,-1.858e-05,-1.854e-05,-1.769e-05,-1.749e-05,-1.728e-05,-1.721e-05,-1.802e-05,-1.794e-05,-1.927e-05,-1.868e-05,-1.907e-05,-1.769e-05,-1.721e-05,-1.543e-05,-1.418e-05,-1.255e-05,-1.019e-05,-8.91e-06,-6.95e-06,-6.98e-06,-6.56e-06,-8.76e-06,-9.85e-06,-1.223e-05,-1.362e-05,-1.533e-05,-1.718e-05,-1.885e-05,-2.165e-05,-2.325e-05,-2.597e-05,-2.609e-05,-2.701e-05,-2.612e-05,-2.625e-05,-2.569e-05,-2.599e-05,-2.659e-05,-2.665e-05,-2.817e-05,-2.868e-05,-3.148e-05,-3.356e-05,-3.751e-05,-3.955e-05,-4.224e-05,-4.339e-05,-4.422e-05,-4.535e-05,-4.579e-05,-4.716e-05,-4.662e-05,-4.725e-05,-4.569e-05,-4.58e-05,-4.505e-05,-4.615e-05,-4.721e-05,-4.876e-05,-5.029e-05,-5.039e-05,-5.164e-05,-5.093e-05,-5.163e-05,-5.067e-05,-5.106e-05,-4.894e-05,-4.701e-05,-4.417e-05,-4.114e-05,-3.902e-05,-3.694e-05,-3.712e-05,-3.61e-05,-3.746e-05,-3.708e-05,-3.828e-05,-3.845e-05,-3.975e-05,-4.043e-05,-4.121e-05,-4.28e-05,-4.302e-05,-4.509e-05,-4.568e-05,-4.817e-05,-4.884e-05,-5.106e-05,-5.161e-05,-5.288e-05,-5.381e-05,-5.463e-05,-5.678e-05,-5.803e-05,-6.091e-05,-6.195e-05,-6.542e-05,-6.703e-05,-7e-05,-7.198e-05,-7.467e-05,-7.606e-05,-7.6e-05,-7.595e-05,-7.324e-05,-7.186e-05,-6.849e-05,-6.742e-05,-6.539e-05,-6.616e-05,-6.658e-05,-6.866e-05,-7.172e-05,-7.467e-05,-7.896e-05,-8.183e-05,-8.631e-05,-8.777e-05,-9.02e-05,-8.881e-05,-8.666e-05,-8.173e-05,-7.609e-05,-7.02e-05,-6.52e-05,-6.353e-05,-6.174e-05,-6.447e-05,-6.679e-05,-7.163e-05,-7.54e-05,-8.169e-05,-8.659e-05,-9.094e-05,-9.461e-05,-9.573e-05,-9.656e-05,-9.45e-05,-9.439e-05,-9.257e-05,-9.434e-05,-9.524e-05,-9.82e-05,-0.00010132,-0.00010541,-0.0001099,-0.00011345,-0.00011802,-0.0001186,-0.00011984,-0.00011706,-0.00011509,-0.00011157,-0.00011015,-0.00010772,-0.00010532,-0.00010325,-9.852e-05,-9.525e-05,-9.121e-05,-9.083e-05,-8.853e-05,-8.929e-05,-8.767e-05,-8.519e-05,-8.121e-05,-7.801e-05,-7.687e-05,-7.645e-05,-8.01e-05,-8.176e-05,-8.6e-05,-8.689e-05,-8.847e-05,-8.795e-05,-8.835e-05,-8.64e-05,-8.243e-05,-7.852e-05,-7.225e-05,-6.919e-05,-6.647e-05,-6.948e-05,-7.264e-05,-8.042e-05,-8.679e-05,-9.31e-05,-9.909e-05,-0.00010404,-0.00010752,-0.00010671,-0.00010528,-9.608e-05,-8.716e-05,-7.692e-05,-7.172e-05,-6.988e-05,-7.519e-05,-8.459e-05,-9.541e-05,-0.00010881,-0.00012034,-0.00013501,-0.00014732,-0.00016092,-0.0001683,-0.00017369,-0.00017158,-0.00016404,-0.00015454,-0.00014493,-0.00013814,-0.00013254,-0.00013396,-0.00013448,-0.00014134,-0.00014879,-0.00015888,-0.00016821,-0.00017794,-0.00018357,-0.00018327,-0.0001828,-0.00017772,-0.0001742,-0.00016833,-0.00016654,-0.00016167,-0.00015926,-0.00015682,-0.00015575,-0.00015679,-0.00015744,-0.0001592,-0.00015638,-0.0001538,-0.00014371,-0.00013699,-0.00013023,-0.00012654,-0.00012456,-0.00012636,-0.00012795,-0.00012495,-0.00012317,-0.00011594,-0.00010951,-9.946e-05,-9.302e-05,-8.387e-05,-7.971e-05,-7.839e-05,-7.827e-05,-8.242e-05,-8.977e-05,-0.00010168,-0.00011253,-0.00013247,-0.00015049,-0.00017061,-0.00018515,-0.00019449,-0.00019585,-0.00019141,-0.00018372,-0.00017408,-0.00017222,-0.00017051,-0.00017857,-0.00019175,-0.00021448,-0.00023855,-0.00027069,-0.00030503,-0.00033266,-0.00035464,-0.00036659,-0.00036958,-0.00035795,-0.00034428,-0.0003187,-0.00029366,-0.00026999,-0.0002517,-0.00024264,-0.00024889,-0.0002686,-0.00028993,-0.00031714,-0.00033656,-0.00035292,-0.00036001,-0.00036806,-0.00037171,-0.00037438,-0.00036846,-0.00034662,-0.00031822,-0.00028262,-0.00024914,-0.00022229,-0.00021841,-0.00021626,-0.00022255,-0.00023506,-0.00024801,-0.00026335,-0.00028903,-0.0003235,-0.00035241,-0.00038384,-0.00040279,-0.00041791,-0.00042685,-0.00043895,-0.00044571,-0.00045214,-0.00045453,-0.00044122,-0.00042514,-0.00041244,-0.00041347,-0.00041856,-0.00043658,-0.00044409,-0.00044944,-0.000452,-0.00045103,-0.00046027,-0.00048115,-0.00049334,-0.00047146,-0.00043071,-0.00035467,-0.00026197,-0.00017728,-0.00012711,-9.637e-05,-8.539e-05,-9.217e-05,-9.275e-05,-9.964e-05,-0.00012207,-0.00016707,-0.00021986,-0.00028841,-0.00033116,-0.00035327,-0.00036446,-0.00035817,-0.00035132,-0.00035658,-0.0003634,-0.00035221,-0.00035192,-0.00035409,-0.00039022,-0.00046917,-0.00057864,-0.00068912,-0.00080252,-0.000902,-0.00095185,-0.0009959,-0.0010496,-0.0010819,-0.0010538,-0.00098998,-0.00084375,-0.00063348,-0.00042787,-0.00025672,-0.00014342,-9.259e-05,-7.918e-05,-6.358e-05,-7.878e-05,-0.00011361,-0.00020813,-0.0003906,-0.00064128,-0.00088764,-0.001106,-0.0012692,-0.0013002,-0.0012396,-0.0011181,-0.00092056,-0.00066932,-0.00045685,-0.0002388,-0.00011429,-0.00020336,-0.00040758,-0.00071659,-0.0011824,-0.0016773,-0.0020685,-0.002452,-0.0027891,-0.0030079,-0.0030574,-0.0028902,-0.002473,-0.0018693,-0.0011738,-0.00047242,2.996e-05,0.00029439,0.00041224,0.00037767,0.00014181,-6.1e-05,-0.00033943,-0.00090024,-0.0014637,-0.001969,-0.0024946,-0.0027053,-0.0024504,-0.0020413,-0.0013779,-0.000585,-0.0001798,-0.00023711,-0.00059329,-0.0015668,-0.0031685,-0.0046126,-0.0056787,-0.0065659,-0.0070236,-0.0071153,-0.0074194,-0.0078432,-0.0089579,-0.010573,-0.010965,-0.011251,-0.012254,-0.011489,-0.010265,-0.01109,-0.010859,-0.0095528,-0.0093862,-0.0077882,-0.0051202,-0.0035668,-0.0016915,1.28e-05,0.0045563,0.014225,0.019849,0.022623,0.026865,0.012992,-0.025901,-0.065355,-0.11009,-0.17221,-0.18046,-0.088145,0.019766,0.15068,0.39569,0.55474,0.39569,0.15068,0.019766,-0.088145,-0.18046,-0.17221,-0.11009,-0.065355,-0.025901,0.012992,0.026865,0.022623,0.019849,0.014225,0.0045563,1.28e-05,-0.0016915,-0.0035668,-0.0051202,-0.0077882,-0.0093862,-0.0095528,-0.010859,-0.01109,-0.010265,-0.011489,-0.012254,-0.011251,-0.010965,-0.010573,-0.0089579,-0.0078432,-0.0074194,-0.0071153,-0.0070236,-0.0065659,-0.0056787,-0.0046126,-0.0031685,-0.0015668,-0.00059329,-0.00023711,-0.0001798,-0.000585,-0.0013779,-0.0020413,-0.0024504,-0.0027053,-0.0024946,-0.001969,-0.0014637,-0.00090024,-0.00033943,-6.1e-05,0.00014181,0.00037767,0.00041224,0.00029439,2.996e-05,-0.00047242,-0.0011738,-0.0018693,-0.002473,-0.0028902,-0.0030574,-0.0030079,-0.0027891,-0.002452,-0.0020685,-0.0016773,-0.0011824,-0.00071659,-0.00040758,-0.00020336,-0.00011429,-0.0002388,-0.00045685,-0.00066932,-0.00092056,-0.0011181,-0.0012396,-0.0013002,-0.0012692,-0.001106,-0.00088764,-0.00064128,-0.0003906,-0.00020813,-0.00011361,-7.878e-05,-6.358e-05,-7.918e-05,-9.259e-05,-0.00014342,-0.00025672,-0.00042787,-0.00063348,-0.00084375,-0.00098998,-0.0010538,-0.0010819,-0.0010496,-0.0009959,-0.00095185,-0.000902,-0.00080252,-0.00068912,-0.00057864,-0.00046917,-0.00039022,-0.00035409,-0.00035192,-0.00035221,-0.0003634,-0.00035658,-0.00035132,-0.00035817,-0.00036446,-0.00035327,-0.00033116,-0.00028841,-0.00021986,-0.00016707,-0.00012207,-9.964e-05,-9.275e-05,-9.217e-05,-8.539e-05,-9.637e-05,-0.00012711,-0.00017728,-0.00026197,-0.00035467,-0.00043071,-0.00047146,-0.00049334,-0.00048115,-0.00046027,-0.00045103,-0.000452,-0.00044944,-0.00044409,-0.00043658,-0.00041856,-0.00041347,-0.00041244,-0.00042514,-0.00044122,-0.00045453,-0.00045214,-0.00044571,-0.00043895,-0.00042685,-0.00041791,-0.00040279,-0.00038384,-0.00035241,-0.0003235,-0.00028903,-0.00026335,-0.00024801,-0.00023506,-0.00022255,-0.00021626,-0.00021841,-0.00022229,-0.00024914,-0.00028262,-0.00031822,-0.00034662,-0.00036846,-0.00037438,-0.00037171,-0.00036806,-0.00036001,-0.00035292,-0.00033656,-0.00031714,-0.00028993,-0.0002686,-0.00024889,-0.00024264,-0.0002517,-0.00026999,-0.00029366,-0.0003187,-0.00034428,-0.00035795,-0.00036958,-0.00036659,-0.00035464,-0.00033266,-0.00030503,-0.00027069,-0.00023855,-0.00021448,-0.00019175,-0.00017857,-0.00017051,-0.00017222,-0.00017408,-0.00018372,-0.00019141,-0.00019585,-0.00019449,-0.00018515,-0.00017061,-0.00015049,-0.00013247,-0.00011253,-0.00010168,-8.977e-05,-8.242e-05,-7.827e-05,-7.839e-05,-7.971e-05,-8.387e-05,-9.302e-05,-9.946e-05,-0.00010951,-0.00011594,-0.00012317,-0.00012495,-0.00012795,-0.00012636,-0.00012456,-0.00012654,-0.00013023,-0.00013699,-0.00014371,-0.0001538,-0.00015638,-0.0001592,-0.00015744,-0.00015679,-0.00015575,-0.00015682,-0.00015926,-0.00016167,-0.00016654,-0.00016833,-0.0001742,-0.00017772,-0.0001828,-0.00018327,-0.00018357,-0.00017794,-0.00016821,-0.00015888,-0.00014879,-0.00014134,-0.00013448,-0.00013396,-0.00013254,-0.00013814,-0.00014493,-0.00015454,-0.00016404,-0.00017158,-0.00017369,-0.0001683,-0.00016092,-0.00014732,-0.00013501,-0.00012034,-0.00010881,-9.541e-05,-8.459e-05,-7.519e-05,-6.988e-05,-7.172e-05,-7.692e-05,-8.716e-05,-9.608e-05,-0.00010528,-0.00010671,-0.00010752,-0.00010404,-9.909e-05,-9.31e-05,-8.679e-05,-8.042e-05,-7.264e-05,-6.948e-05,-6.647e-05,-6.919e-05,-7.225e-05,-7.852e-05,-8.243e-05,-8.64e-05,-8.835e-05,-8.795e-05,-8.847e-05,-8.689e-05,-8.6e-05,-8.176e-05,-8.01e-05,-7.645e-05,-7.687e-05,-7.801e-05,-8.121e-05,-8.519e-05,-8.767e-05,-8.929e-05,-8.853e-05,-9.083e-05,-9.121e-05,-9.525e-05,-9.852e-05,-0.00010325,-0.00010532,-0.00010772,-0.00011015,-0.00011157,-0.00011509,-0.00011706,-0.00011984,-0.0001186,-0.00011802,-0.00011345,-0.0001099,-0.00010541,-0.00010132,-9.82e-05,-9.524e-05,-9.434e-05,-9.257e-05,-9.439e-05,-9.45e-05,-9.656e-05,-9.573e-05,-9.461e-05,-9.094e-05,-8.659e-05,-8.169e-05,-7.54e-05,-7.163e-05,-6.679e-05,-6.447e-05,-6.174e-05,-6.353e-05,-6.52e-05,-7.02e-05,-7.609e-05,-8.173e-05,-8.666e-05,-8.881e-05,-9.02e-05,-8.777e-05,-8.631e-05,-8.183e-05,-7.896e-05,-7.467e-05,-7.172e-05,-6.866e-05,-6.658e-05,-6.616e-05,-6.539e-05,-6.742e-05,-6.849e-05,-7.186e-05,-7.324e-05,-7.595e-05,-7.6e-05,-7.606e-05,-7.467e-05,-7.198e-05,-7e-05,-6.703e-05,-6.542e-05,-6.195e-05,-6.091e-05,-5.803e-05,-5.678e-05,-5.463e-05,-5.381e-05,-5.288e-05,-5.161e-05,-5.106e-05,-4.884e-05,-4.817e-05,-4.568e-05,-4.509e-05,-4.302e-05,-4.28e-05,-4.121e-05,-4.043e-05,-3.975e-05,-3.845e-05,-3.828e-05,-3.708e-05,-3.746e-05,-3.61e-05,-3.712e-05,-3.694e-05,-3.902e-05,-4.114e-05,-4.417e-05,-4.701e-05,-4.894e-05,-5.106e-05,-5.067e-05,-5.163e-05,-5.093e-05,-5.164e-05,-5.039e-05,-5.029e-05,-4.876e-05,-4.721e-05,-4.615e-05,-4.505e-05,-4.58e-05,-4.569e-05,-4.725e-05,-4.662e-05,-4.716e-05,-4.579e-05,-4.535e-05,-4.422e-05,-4.339e-05,-4.224e-05,-3.955e-05,-3.751e-05,-3.356e-05,-3.148e-05,-2.868e-05,-2.817e-05,-2.665e-05,-2.659e-05,-2.599e-05,-2.569e-05,-2.625e-05,-2.612e-05,-2.701e-05,-2.609e-05,-2.597e-05,-2.325e-05,-2.165e-05,-1.885e-05,-1.718e-05,-1.533e-05,-1.362e-05,-1.223e-05,-9.85e-06,-8.76e-06,-6.56e-06,-6.98e-06,-6.95e-06,-8.91e-06,-1.019e-05,-1.255e-05,-1.418e-05,-1.543e-05,-1.721e-05,-1.769e-05,-1.907e-05,-1.868e-05,-1.927e-05,-1.794e-05,-1.802e-05,-1.721e-05,-1.728e-05,-1.749e-05,-1.769e-05,-1.854e-05,-1.858e-05,-2.022e-05,-2.05e-05,-2.232e-05,-2.256e-05,-2.351e-05,-2.287e-05,-2.229e-05,-2.137e-05,-2.032e-05,-2.027e-05,-1.921e-05,-1.964e-05,-1.879e-05,-1.924e-05,-1.845e-05,-1.935e-05,-1.978e-05,-2.079e-05,-2.189e-05,-2.241e-05,-2.324e-05,-2.261e-05,-2.306e-05,-2.184e-05,-2.201e-05,-2.101e-05,-2.098e-05,-2.02e-05,-1.99e-05,-1.963e-05,-1.881e-05,-1.898e-05,-1.799e-05,-1.826e-05,-1.722e-05,-1.759e-05,-1.686e-05,-1.729e-05,-1.726e-05,-1.755e-05,-1.811e-05,-1.808e-05,-1.884e-05,-1.85e-05,-1.939e-05,-1.858e-05,-1.891e-05,-1.819e-05,-1.818e-05,-1.773e-05,-1.785e-05,-1.851e-05,-1.882e-05,-2.05e-05,-2.117e-05,-2.318e-05,-2.393e-05,-2.558e-05,-2.571e-05,-2.624e-05,-2.591e-05,-2.514e-05,-2.455e-05,-2.319e-05,-2.264e-05,-2.087e-05,-2.046e-05,-1.888e-05,-1.887e-05,-1.853e-05,-1.932e-05,-2.018e-05,-2.11e-05,-2.202e-05,-2.165e-05,-2.183e-05,-2.023e-05,-1.944e-05,-1.737e-05,-1.626e-05,-1.413e-05,-1.264e-05,-1.114e-05,-9.7e-06,-9.08e-06,-8.08e-06,-8.41e-06,-7.71e-06,-8.21e-06,-7.38e-06,-7.4e-06,-6.57e-06,-6.1e-06,-5.36e-06,-4.4e-06,-4e-06,-2.85e-06,-3.09e-06,-2.49e-06,-3.33e-06,-3.3e-06,-4.2e-06,-4.23e-06,-4.6e-06,-4.99e-06,-5.05e-06,-5.82e-06,-5.88e-06,-6.85e-06,-6.46e-06,-7.34e-06,-7.24e-06,-7.97e-06,-8.3e-06,-8.97e-06,-9.35e-06,-9.18e-06,-9.61e-06,-8.91e-06,-9.26e-06,-8.52e-06,-8.77e-06,-8.04e-06,-8.11e-06,-7.62e-06,-7.43e-06,-7.58e-06,-7.46e-06,-8.13e-06,-7.82e-06,-8.32e-06,-7.37e-06,-7.17e-06,-5.8e-06,-5.06e-06,-4.04e-06,-3.17e-06,-2.54e-06,-1.67e-06,-1.75e-06,-1.11e-06,-1.94e-06,-1.97e-06,-2.97e-06,-3.01e-06,-3.43e-06,-3.12e-06,-2.56e-06,-2.11e-06,-1.01e-06,-7e-07,5.3e-07,6.9e-07,1.7e-06,1.45e-06,1.77e-06,1.22e-06,5.5e-07,-1e-07,-8.7e-07,-1.06e-06,-1.96e-06,-1.73e-06,-2.63e-06,-2.4e-06,-2.66e-06,-2.07e-06,-1.8e-06,-1.17e-06,-7.5e-07,-1.07e-06,-8e-07,-1.42e-06,-1.19e-06,-1.84e-06,-1.38e-06,-1.79e-06,-1.54e-06,-1.53e-06,-1.35e-06,-9.3e-07,-8.3e-07,-8e-08,-2.1e-07,5.4e-07,1.8e-07,7.6e-07,6.7e-07,1.17e-06,1.45e-06,1.89e-06,2.48e-06,2.48e-06,3.07e-06,2.63e-06,2.99e-06,2.39e-06,2.65e-06,2.2e-06,2.33e-06,2.26e-06,2.12e-06,2.26e-06,1.95e-06,2.38e-06,2e-06,2.69e-06,2.58e-06,3.25e-06,3.16e-06,3.34e-06,3.09e-06,2.63e-06,2.47e-06,1.79e-06,1.97e-06,1.4e-06,1.77e-06,1.33e-06,1.77e-06,1.71e-06,2.1e-06,2.49e-06,2.7e-06,3.14e-06,2.86e-06,3.21e-06,2.57e-06,2.77e-06,2.09e-06,2.04e-06,1.47e-06,1.22e-06,1.01e-06,8.2e-07,1.3e-06,1.28e-06,2.15e-06,2.2e-06,3.06e-06,3.11e-06,3.8e-06,4.02e-06,4.48e-06,4.9e-06,4.92e-06,5.31e-06,4.94e-06,5.24e-06,4.72e-06,5.15e-06,4.86e-06,5.21e-06,5.26e-06,5.5e-06,5.85e-06,6.02e-06,6.74e-06,6.76e-06,7.46e-06,7.21e-06,7.65e-06,7.31e-06,7.46e-06,7.24e-06,7.09e-06,7e-06,6.51e-06,6.57e-06,5.98e-06,6.26e-06,5.85e-06,6.19e-06,5.81e-06,5.91e-06,5.71e-06,5.53e-06,5.59e-06,5.3e-06,5.45e-06,4.75e-06,4.7e-06,3.76e-06,3.53e-06,2.82e-06,2.72e-06,2.54e-06,2.46e-06,2.67e-06,2.41e-06,2.69e-06,2.29e-06,2.7e-06,2.41e-06,2.89e-06,2.83e-06,3.06e-06,3.11e-06,3.09e-06,3.31e-06,3.11e-06,3.6e-06,3.37e-06,3.89e-06,3.72e-06,4.2e-06,4.21e-06,4.56e-06,4.76e-06,4.9e-06,5.33e-06,5.2e-06,5.73e-06,5.6e-06,6.1e-06,5.92e-06,6.4e-06,6.29e-06,6.32e-06,6.31e-06,5.94e-06,5.68e-06,5.03e-06,5.13e-06,4.63e-06,5.16e-06,5.12e-06,5.43e-06,5.3e-06,5.29e-06,5.15e-06,4.96e-06,5.3e-06,5e-06,5.26e-06,4.81e-06,4.88e-06,4.19e-06,4.02e-06,3.52e-06,3.25e-06,3.2e-06,3.02e-06,3.32e-06,3.15e-06,3.61e-06,3.34e-06,3.73e-06,3.52e-06,3.72e-06,3.59e-06,3.54e-06,3.56e-06,3.35e-06,3.63e-06,3.38e-06,3.84e-06,3.71e-06,4.26e-06,4.32e-06,4.83e-06,5.07e-06,5.29e-06,5.56e-06,5.41e-06,5.64e-06,5.29e-06,5.55e-06,5.22e-06,5.62e-06,5.49e-06,5.64e-06,5.56e-06,5.37e-06,5.32e-06,5.08e-06,5.41e-06,5.2e-06,5.62e-06,5.29e-06,5.39e-06,5.02e-06,5.03e-06,4.9e-06,4.81e-06,5e-06,4.75e-06,4.95e-06,4.6e-06,4.85e-06,4.49e-06,4.68e-06,4.41e-06,4.37e-06,4.2e-06,3.99e-06,4.1e-06,3.9e-06,4.3e-06,4.17e-06,4.65e-06,4.52e-06,4.85e-06,4.73e-06,4.77e-06,4.68e-06,4.41e-06,4.39e-06,3.98e-06,4.1e-06,3.72e-06,4.02e-06,3.85e-06,4.17e-06,4.21e-06,4.46e-06,4.73e-06,4.92e-06,5.42e-06,5.45e-06,5.92e-06,5.64e-06,5.78e-06,5.37e-06,5.38e-06,5.11e-06,5.1e-06,5.16e-06,5.01e-06,5.24e-06,5.08e-06,5.45e-06,5.3e-06,5.74e-06,5.61e-06,5.79e-06,5.68e-06,5.61e-06,5.57e-06,5.37e-06,5.51e-06,5.16e-06,5.34e-06,4.95e-06,5.08e-06,4.81e-06,4.95e-06,4.91e-06,4.96e-06,5.07e-06,4.89e-06,5.04e-06,4.68e-06,4.84e-06,4.5e-06,4.71e-06,4.47e-06,4.53e-06,4.36e-06,4.16e-06,4.08e-06,3.74e-06,3.82e-06,3.46e-06,3.67e-06,3.41e-06,3.63e-06,3.5e-06,3.66e-06,3.68e-06,3.69e-06,3.89e-06,3.77e-06,4.04e-06,3.85e-06,4.12e-06,3.83e-06,3.98e-06,3.79e-06,3.81e-06,3.76e-06,3.71e-06,3.83e-06,3.63e-06,3.89e-06,3.7e-06,4.06e-06,4e-06,4.3e-06,4.19e-06,4.21e-06,4.06e-06,3.76e-06,3.71e-06,3.35e-06,3.45e-06,3.14e-06,3.35e-06,3.13e-06,3.32e-06,3.23e-06,3.29e-06,3.37e-06,3.34e-06,3.57e-06,3.47e-06,3.75e-06,3.5e-06,3.72e-06,3.43e-06,3.45e-06,3.25e-06,3.15e-06,3.06e-06,2.89e-06,3e-06,2.74e-06,2.96e-06,2.71e-06,2.93e-06,2.74e-06,2.84e-06,2.79e-06,2.86e-06,2.93e-06,2.94e-06,3.42e-06,3.47e-06,3.96e-06,4.06e-06,4.33e-06,3.83e-06,3.65e-06,3.37e-06,3.23e-06,3.58e-06,3.85e-06,4.09e-06,3.8e-06,3.76e-06,3.09e-06,3.07e-06,3e-06,3.23e-06,3.36e-06,3.59e-06,3.77e-06,3.55e-06,3.58e-06,3.2e-06,3.2e-06,2.85e-06,2.97e-06,2.79e-06,2.82e-06,2.68e-06,2.54e-06,2.53e-06,2.29e-06,2.4e-06,2.15e-06,2.28e-06,2e-06,2.11e-06,1.92e-06,1.94e-06,1.88e-06,1.8e-06,1.88e-06,1.73e-06,1.92e-06,1.76e-06,2.02e-06,1.87e-06,2.06e-06,1.96e-06,2e-06,1.97e-06,1.91e-06,2.1e-06,2.02e-06,2.26e-06,2.06e-06,2.15e-06,1.83e-06,1.93e-06,1.85e-06,1.98e-06,2.17e-06,2.22e-06,2.37e-06,2.24e-06,2.46e-06,2.28e-06,2.52e-06,2.43e-06,2.59e-06,2.48e-06,2.46e-06,2.41e-06,2.25e-06,2.32e-06,2.09e-06,2.2e-06,1.93e-06,2.04e-06,1.85e-06,1.97e-06,1.95e-06,2.06e-06,2.2e-06,2.17e-06,2.33e-06,2.14e-06,2.25e-06,1.97e-06,2.07e-06,1.85e-06,1.89e-06,1.79e-06,1.74e-06,1.74e-06,1.61e-06,1.74e-06,1.58e-06,1.79e-06,1.63e-06,1.86e-06,1.79e-06,1.92e-06,1.91e-06,1.88e-06,1.88e-06,1.71e-06,1.79e-06,1.58e-06,1.77e-06,1.63e-06,1.79e-06,1.71e-06,1.86e-06,1.89e-06,1.92e-06,2.09e-06,2.02e-06,2.18e-06,2.01e-06,2.18e-06,1.98e-06,2.12e-06,2.01e-06,2.04e-06,2e-06,1.91e-06,1.93e-06,1.77e-06,1.92e-06,1.77e-06,2.01e-06,1.95e-06,2.19e-06,2.19e-06,2.33e-06,2.39e-06,2.38e-06,2.5e-06,2.39e-06,2.52e-06,2.29e-06,2.35e-06,2.07e-06,2.07e-06,1.9e-06,1.88e-06,1.89e-06,1.91e-06,2.11e-06,2.11e-06,2.4e-06,2.37e-06,2.6e-06,2.51e-06,2.62e-06,2.5e-06,2.45e-06,2.36e-06,2.14e-06,2.11e-06,1.88e-06,1.94e-06,1.75e-06,1.92e-06,1.79e-06,1.9e-06,1.92e-06,2.02e-06,2.18e-06,2.27e-06,2.48e-06,2.34e-06,2.4e-06,2.06e-06,2.01e-06,1.77e-06,1.82e-06,1.83e-06,2.02e-06,2.28e-06,2.36e-06,2.61e-06,2.54e-06,2.71e-06,2.59e-06,2.77e-06,2.78e-06,3.03e-06,3.04e-06,3.03e-06,3.14e-06,2.97e-06,2.94e-06,2.82e-06,2.93e-06,2.68e-06,2.77e-06,2.57e-06,2.45e-06,2.3e-06,2.13e-06,2.08e-06,1.76e-06,1.38e-06,9e-07,8.3e-07,3.6e-07,6.9e-07,1.6e-06,2.62e-06,3.59e-06,4.85e-06,5.15e-06,3.74e-06,2.59e-06,1.47e-06,9e-07,1.69e-06,3.19e-06,3.23e-06,2.87e-06,1.8e-06,-1e-07,-9.4e-07,-7e-07,-9e-08,5.2e-07,1.81e-06,2.42e-06,2.66e-06,2.68e-06,2.62e-06,2.25e-06,1.95e-06,1.91e-06,1.7e-06,1.75e-06,1.44e-06,1.42e-06,1.25e-06,1.21e-06,1.09e-06,1.15e-06,1.07e-06,9e-07,1.01e-06,8.6e-07,9.1e-07,8.1e-07,9.4e-07,8e-07,8.6e-07,7.8e-07,8e-07,8.7e-07,8.8e-07,1.07e-06,1.11e-06,1.35e-06,1.28e-06,1.46e-06,1.41e-06,1.47e-06,1.4e-06,1.37e-06,1.31e-06,1.19e-06,1.32e-06,1.27e-06,1.5e-06,1.54e-06,1.76e-06,1.71e-06,1.84e-06,1.85e-06,1.85e-06,1.88e-06,1.79e-06,1.79e-06,1.56e-06,1.57e-06,1.36e-06,1.39e-06,1.28e-06,1.31e-06,1.28e-06,1.26e-06,1.29e-06,1.24e-06,1.4e-06,1.35e-06,1.53e-06,1.48e-06,1.6e-06,1.53e-06,1.57e-06,1.52e-06,1.46e-06,1.47e-06,1.36e-06,1.44e-06,1.34e-06,1.47e-06,1.37e-06,1.47e-06,1.4e-06,1.42e-06,1.4e-06,1.38e-06,1.47e-06,1.45e-06,1.6e-06,1.52e-06,1.6e-06,1.44e-06,1.46e-06,1.34e-06,1.32e-06,1.3e-06,1.23e-06,1.24e-06,1.12e-06,1.19e-06,1.08e-06,1.21e-06,1.18e-06,1.3e-06,1.28e-06,1.33e-06,1.37e-06,1.37e-06,1.51e-06,1.49e-06,1.62e-06,1.52e-06,1.59e-06,1.46e-06,1.5e-06,1.44e-06,1.47e-06,1.51e-06,1.49e-06,1.57e-06,1.49e-06,1.58e-06,1.48e-06,1.58e-06,1.52e-06,1.61e-06,1.59e-06,1.59e-06,1.59e-06,1.51e-06,1.53e-06,1.4e-06,1.45e-06,1.31e-06,1.36e-06,1.27e-06,1.31e-06,1.27e-06,1.26e-06,1.27e-06,1.21e-06,1.28e-06,1.19e-06,1.3e-06,1.24e-06,1.32e-06,1.26e-06,1.32e-06,1.3e-06,1.29e-06,1.34e-06,1.27e-06,1.28e-06,1.14e-06,1.2e-06,1.08e-06,1.18e-06,1.17e-06,1.23e-06,1.22e-06,1.19e-06,1.18e-06,1.09e-06,1.16e-06,1.06e-06,1.13e-06,1.05e-06,1.12e-06,1.05e-06,1.06e-06,1.03e-06,9.9e-07,1.03e-06,9.6e-07,1.02e-06,9.3e-07,1.01e-06,9e-07,9.5e-07,8.9e-07,8.9e-07,8.7e-07,8.5e-07,8.9e-07,8.3e-07,9.3e-07,8.4e-07,9.2e-07,8.5e-07,9.4e-07,9.9e-07,1.1e-06,1.18e-06,1.23e-06,1.26e-06,1.02e-06,9.1e-07,6.3e-07,4.5e-07,3.1e-07,6e-07,8.1e-07,1.01e-06,1.16e-06,9.4e-07,6.9e-07,5.7e-07,7.2e-07,8.5e-07,1.32e-06,1.49e-06,1.5e-06,1.42e-06,1.31e-06,1.12e-06,9.4e-07,9.6e-07,8.5e-07,9e-07,8.6e-07,9.5e-07,9e-07,9.7e-07,9.6e-07,9.9e-07,1.03e-06,9.8e-07,1.06e-06,1e-06,1.06e-06,1.01e-06,1.11e-06,1.06e-06,1.11e-06,1.09e-06,1.05e-06,1.04e-06,9.7e-07,1.01e-06,9.4e-07,1.02e-06,9.3e-07,9.7e-07,8.6e-07,8.2e-07,7.4e-07,6.7e-07,6.6e-07,6.3e-07,7.3e-07,7e-07,8e-07,7.3e-07,7.5e-07,6.8e-07,6.8e-07,6.7e-07,6.6e-07,6.9e-07,6.1e-07,6.4e-07,5.6e-07,6.1e-07,5.5e-07,6.3e-07,6.2e-07,6.6e-07,6.9e-07,7e-07,7.5e-07,7.2e-07,7.9e-07,7.1e-07,7.4e-07,6.3e-07,6.3e-07,5.6e-07,5.5e-07,5.5e-07,5.4e-07,6e-07,5.8e-07,6.6e-07,6.1e-07,6.9e-07,6.4e-07,6.9e-07,6.7e-07,6.7e-07,6.6e-07,5.9e-07,5.8e-07,4.8e-07,4.9e-07,3.9e-07,4.3e-07,3.8e-07,4.3e-07,4.2e-07,4.4e-07,4.6e-07,4.2e-07,4.6e-07,4e-07,4.4e-07,3.8e-07,4.3e-07,3.6e-07,3.8e-07,3.5e-07,3.4e-07,3.5e-07,3.2e-07,3.6e-07,2.9e-07,3.4e-07,2.9e-07,3.4e-07,3.2e-07,3.7e-07,3.6e-07,3.6e-07,3.6e-07,3e-07,3.3e-07,2.7e-07,3.2e-07,2.8e-07,3.3e-07,3.1e-07,3.3e-07,3.2e-07,3e-07,3.2e-07,2.8e-07,3.4e-07,3.1e-07,3.8e-07,3.3e-07,3.7e-07,3.2e-07,3.2e-07,2.9e-07,2.6e-07,2.7e-07,2.3e-07,2.7e-07,2.1e-07,2.5e-07,1.8e-07,2.2e-07,1.8e-07,1.9e-07,2e-07,2e-07,2.2e-07,1.8e-07,2.5e-07,2e-07,2.6e-07,2.3e-07,2.6e-07,1.8e-07,1.5e-07,1.1e-07,6e-08,1.1e-07,1e-07,1.6e-07,1e-07,1.3e-07,5e-08,6e-08,4e-08,6e-08,8e-08,9e-08,1.3e-07,9e-08,1.3e-07,7e-08,1e-07,5e-08,8e-08,6e-08,6e-08,6e-08,3e-08,5e-08,1e-08,5e-08,-0,5e-08,1e-08,5e-08,5e-08,5e-08,6e-08,3e-08,6e-08,4e-08,1e-07,7e-08,1.4e-07,1e-07,7e-08,0,-6e-08,-1.3e-07,-1.8e-07,-9e-08,-7e-08,2e-08,1e-08,-1e-08,-1.4e-07,-1.4e-07,-1.5e-07,-1.1e-07,1e-08,4e-08,6e-08,-0,1e-08,-9e-08,-9e-08,-1.2e-07,-1.2e-07,-1.4e-07,-1.4e-07,-1.2e-07,-1.5e-07,-1e-07,-1.3e-07,-8e-08,-1.2e-07,-9e-08,-1.1e-07,-1e-07,-1e-07,-9e-08,-4e-08,-6e-08,-0,-3e-08,0,-4e-08,-1e-08,-3e-08,-1e-08,-1e-08,-2e-08,-1e-08,-6e-08,-5e-08,-1.1e-07,-1e-07,-1.4e-07,-1e-07,-9e-08,-6e-08,-4e-08,-5e-08,-4e-08,-8e-08,-5e-08,-9e-08,-5e-08,-8e-08,-8e-08,-1.1e-07,-1.1e-07,-1.2e-07,-1.4e-07,-1.1e-07,-1.4e-07,-1e-07,-1.2e-07,-8e-08,-1e-07,-7e-08,-8e-08,-8e-08,-8e-08,-1.1e-07,-1.1e-07,-1.5e-07,-1.3e-07,-1.6e-07,-1.2e-07,-1.2e-07,-9e-08,-8e-08,-7e-08,-5e-08,-7e-08,-4e-08,-6e-08,-2e-08,-5e-08,-3e-08,-7e-08,-7e-08,-1e-07,-1.1e-07,-1.1e-07,-1.3e-07,-9e-08,-1.1e-07,-7e-08,-1e-07,-8e-08,-1.1e-07,-1e-07,-1.1e-07,-1.1e-07,-9e-08,-1.2e-07,-1.1e-07,-1.4e-07,-1.1e-07,-1.4e-07,-1.1e-07,-1.3e-07,-1.3e-07,-1.4e-07,-1.5e-07,-1.4e-07,-1.4e-07,-1e-07,-1.3e-07,-1e-07,-1.4e-07,-1.3e-07,-1.6e-07,-1.5e-07,-1.5e-07,-1.5e-07,-1.3e-07,-1.5e-07,-1.2e-07,-1.5e-07,-1.2e-07,-1.5e-07,-1.2e-07,-1.3e-07,-1e-07,-9e-08,-9e-08,-7e-08,-9e-08,-7e-08,-1e-07,-8e-08,-1e-07,-8e-08,-1e-07,-9e-08,-9e-08,-1.1e-07,-9e-08,-1.2e-07,-9e-08,-1.2e-07,-8e-08,-1.1e-07,-9e-08,-8e-08,-7e-08,-5e-08,-3e-08,-1e-08,-6e-08,-6e-08,-1e-07,-9e-08,-1e-07,-6e-08,-6e-08,-6e-08,-7e-08,-1.2e-07,-1.2e-07,-1.5e-07,-1.2e-07,-1.4e-07,-1e-07,-1e-07,-8e-08,-9e-08,-1e-07,-1e-07,-1.2e-07,-1e-07,-1.2e-07,-1e-07,-1.3e-07,-1.1e-07,-1.4e-07,-1.3e-07,-1.4e-07,-1.5e-07,-1.3e-07,-1.4e-07,-1.1e-07,-1.2e-07,-9e-08,-1.1e-07,-9e-08,-1e-07,-9e-08,-8e-08,-7e-08,-5e-08,-6e-08,-6e-08,-1e-07,-9e-08,-1.4e-07,-1.3e-07,-1.2e-07,-8e-08,-6e-08,-5e-08,-5e-08,-1e-07,-9e-08,-1.2e-07,-8e-08,-6e-08,-2e-08,-3e-08,-3e-08,-4e-08,-6e-08,-6e-08,-8e-08,-6e-08,-9e-08,-7e-08,-9e-08,-8e-08,-8e-08,-8e-08,-8e-08,-9e-08,-8e-08,-1e-07,-8e-08,-1.1e-07,-8e-08,-9e-08,-6e-08,-6e-08,-5e-08,-5e-08,-6e-08,-5e-08,-6e-08,-4e-08,-5e-08,-2e-08,-4e-08,-4e-08,-5e-08,-6e-08,-6e-08,-8e-08,-5e-08,-6e-08,-3e-08,-4e-08,-2e-08,-4e-08,-3e-08,-4e-08,-4e-08,-2e-08,-3e-08,-2e-08,-5e-08,-3e-08,-6e-08,-4e-08,-5e-08,-4e-08,-4e-08,-5e-08,-4e-08,-5e-08,-3e-08,-4e-08,-2e-08,-5e-08,-4e-08,-6e-08,-7e-08,-7e-08,-8e-08,-7e-08,-7e-08,-5e-08,-6e-08,-4e-08,-5e-08,-4e-08,-4e-08,-3e-08,-3e-08,-3e-08,-2e-08,-4e-08,-4e-08,-6e-08,-5e-08,-7e-08,-6e-08,-6e-08,-5e-08,-4e-08,-4e-08,-3e-08,-4e-08,-2e-08,-4e-08,-2e-08,-3e-08,-3e-08,-4e-08,-3e-08,-3e-08,-3e-08,-2e-08,-3e-08,-2e-08,-4e-08,-3e-08,-4e-08,-2e-08,-2e-08,-1e-08,-1e-08,-3e-08,-3e-08,-5e-08,-4e-08,-5e-08,-3e-08,-4e-08,-2e-08,-2e-08,-2e-08,-1e-08,-3e-08,-1e-08,-2e-08,0,-1e-08,1e-08,-0,0,-1e-08,-1e-08,-1e-08,-2e-08,-1e-08,-2e-08,-0,-2e-08,-1e-08,-3e-08,-2e-08,-3e-08,-3e-08,-3e-08,-4e-08,-3e-08,-3e-08,0,0,4e-08,4e-08,3e-08,1e-08,-1e-08,-2e-08,-2e-08,3e-08,2e-08,3e-08,-0,-2e-08,-6e-08,-5e-08,-5e-08,-4e-08,-1e-08,-1e-08,2e-08,0,2e-08,-0,0,-1e-08,-0,-1e-08,-2e-08,-1e-08,-3e-08,-3e-08,-5e-08,-3e-08,-5e-08,-3e-08,-4e-08,-3e-08,-2e-08,-3e-08,-2e-08,-3e-08,-1e-08,-3e-08,-0,-1e-08,-0,-1e-08,-2e-08,-3e-08,-5e-08,-4e-08,-5e-08
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tq.dat Sun Feb 02 22:35:48 2014 +0000 @@ -0,0 +1,1 @@ +37.038,26.436,17.727,12.824,9.8853,7.7397,6.1369,5.3208,4.712,4.0702,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73,3.73
--- a/utils.py Sat Jan 25 20:00:38 2014 +0000 +++ b/utils.py Sun Feb 02 22:35:48 2014 +0000 @@ -4,6 +4,7 @@ Packaged dependencies: * erb.dat * outMidFir.dat + * tq.dat External dependencies: * scipy @@ -32,7 +33,7 @@ Dependencies: * erb.dat (place in the same folder as utils.pyc) """ - # read our data from a text file + # read data from a text file data=np.loadtxt("erb.dat",delimiter=",") # load centre frequencies from the first column into fc @@ -57,21 +58,100 @@ * outMidFir.dat (place in the same folder as utils.pyc) """ - b=np.loadtxt("outMidFir.dat", delimiter=",") + b=np.array(np.loadtxt("outMidFir.dat", delimiter=",")) return b +def load_sl_parameters(): + """ + Loads the loudness parameters for each ERB fc into a tuple. A shortcut for load_tq_data(), load_A_data() and load_alpha_data(). + + Parameters: + NONE + + Returns: + * tq (type: numpy array of floats) - a vector of length 39 containing the threshold excitation + intensity in quietat each ERB centre frequency + * A (type: numpy array of floats) - a vector of length 39 containing the parameter A for each ERB fc + * alpha (type: numpy array of floats) - a vector of length 39 containing the parameter alpha for each ERB fc + + Dependencies: + * tq.dat (place in the same folder as utils.pyc) + * A.dat (place in the same folder as utils.pyc) + * alpha.dat (place in the same folder as utils.pyc) + """ + tq = load_tq_data() + A = load_A_data() + alpha = load_alpha_data() + + return tq, A, alpha + +def load_tq_data(): + """ + Loads and returns the excitation threshold of quiet for each ERB fc. + + Parameters: + NONE + + Returns: + * tq (type: numpy array of floats) - a vector of length 39 containing the threshold excitation + intensity in quietat each ERB centre frequency + + Dependencies: + * tq.dat (place in the same folder as utils.pyc) + """ + + tq = np.array(np.loadtxt("tq.dat",delimiter=",")) + + return tq + +def load_A_data(): + """ + Loads and returns the excitation A parameters for each ERB fc. + + Parameters: + NONE + + Returns: + * A (type: numpy array of floats) - a vector of length 39 containing the parameter A for each ERB fc + + Dependencies: + * A.dat (place in the same folder as utils.pyc) + """ + + A = np.array(np.loadtxt("A.dat",delimiter=",")) + + return A + +def load_alpha_data(): + """ + Loads and returns the excitation alpha parameters for each ERB fc. + + Parameters: + NONE + + Returns: + * alpha (type: numpy array of floats) - a vector of length 39 containing the parameter alpha for each ERB fc + + Dependencies: + * alpha.dat (place in the same folder as utils.pyc) + """ + + alpha = np.array(np.loadtxt("alpha.dat",delimiter=",")) + + return alpha + def exp_sequence(start, stop, n, base=2): """ Creates a linear sequence with n points starting from start and ending at stop. For each - element in the sequence, e, the output sequence is 2^e, generating an exponential sequence + element in the sequence, i, the output sequence is 2**i, generating an exponential sequence with base 2. Parameters: * start (type: numerical int) - determines the first element of the sequence, i.e., - base^start. (Required) + base**start. (Required) * stop (type: numerical int) - determines the last element of the sequence, i.e., - base^stop. (Required) + base**stop. (Required) * n (type = numerical int) - determines the number of elements in the sequence. (Required) * base (type: numerical) - determines the exponential base. (Optional; Default = 2) @@ -97,7 +177,7 @@ """ fs,data = wave.read(file) - data = np.array(int16_to_nfloat(data)) + data = np.array(int_to_nfloat(data)) return fs,data @@ -105,7 +185,7 @@ """ Unnormalises the audio data to a specified integer precision and converts to an int, then writes the audio data to a wav file. (E.g., if 16-bit precision, then highest amplitude - is equal to 2^16). + is equal to 2**16). Parameters: * file (type: string) - the name of the wav file to write to. (Required) @@ -154,8 +234,9 @@ """ if(xscale.lower() == "log"): plt.gca().set_xscale('log') - if(xscale.lower() == "log"): plt.gca().set_yscale('log') - + if(yscale.lower() == "log"): plt.gca().set_yscale('log') + + x = np.array(x) fftx = np.absolute(fft.fft(x)) plt.plot(range(np.shape(x)[0]),fftx) if(show): @@ -165,7 +246,29 @@ return -def int_to_nfloat(input, type=np.float32): +def plot_waveform(x, show = True): + """ + Plots the waveform of signal x. If the figure is not shown, the current plot is held to allow other plots to + be added to the same figure. + + Parameters: + * x (type: array-like matrix of floats) - the signal to be plotted. (Required) + * show (type: boolean) - specifies whether the figure should be shown. If False, the current plot will be held so + other plots can be added to the figure. (Optional; Default = True) + + Returns: + NONE + """ + + x = np.array(x) + plt.plot(x) + + if(show): plt.show() + else: plt.hold(True) + + return + +def int_to_nfloat(input, outputtype=np.float32): """ Convert integer with to floating point with a range from -1 to 1. @@ -180,9 +283,9 @@ input = np.array(input) assert input.dtype.kind == 'i', "'input' must be an array-like matrix of integers." - type = np.dtype(type); + outputtype = np.dtype(outputtype) inputdtype = np.dtype(type(input[0])) - input = input.astype(type) + input = input.astype(outputtype) input[input > 0] = input[input > 0] / np.iinfo(inputdtype).max input[input < 0] = input[input < 0] / -np.iinfo(inputdtype).min @@ -208,8 +311,8 @@ input = np.array(input) assert input.dtype.kind == 'f', "'input' must be an array of floats!" - input[input > 0] = input[ input > 0 ] * np.iinfo(np.int16).max - input[input < 0] = input[ input < 0 ] * -np.iinfo(np.int16).min + input[input > 0] = input[ input > 0 ] * np.iinfo(type).max + input[input < 0] = input[ input < 0 ] * -np.iinfo(type).min y = input.astype(type)