131 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			131 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import matplotlib.pyplot as plt
 | |
| import numpy as np
 | |
| import pylab
 | |
| from IPython import embed
 | |
| from scipy.optimize import curve_fit
 | |
| from scipy.optimize import curve_fit
 | |
| from matplotlib.mlab import specgram
 | |
| import os
 | |
| 
 | |
| from jar_functions import import_data
 | |
| from jar_functions import import_amfreq
 | |
| from jar_functions import sin_response
 | |
| from jar_functions import mean_noise_cut
 | |
| from jar_functions import gain_curve_fit
 | |
| 
 | |
| plt.rcParams.update({'font.size': 10})
 | |
| 
 | |
| def take_second(elem):      # function for taking the names out of files
 | |
|     return elem[1]
 | |
| 
 | |
| identifier = [#'2018lepto1',
 | |
|               #'2018lepto4',
 | |
|               #'2018lepto5',
 | |
|               #'2018lepto76',
 | |
|               '2018lepto98',
 | |
|               '2019lepto03',
 | |
|               #'2019lepto24',
 | |
|               #'2019lepto27',
 | |
|               #'2019lepto30',
 | |
|               #'2020lepto04',
 | |
|               #'2020lepto06',
 | |
|               '2020lepto16',
 | |
|               '2020lepto19',
 | |
|               '2020lepto20'
 | |
|               ]
 | |
| for ident in identifier:
 | |
| 
 | |
|     times = []
 | |
|     jars = []
 | |
|     jms = []
 | |
|     amfreq = []
 | |
| 
 | |
|     times1 = []
 | |
|     jars1 = []
 | |
|     jms1 = []
 | |
|     amfreq1 = []
 | |
| 
 | |
|     amf = [0.001, 0.002, 0.005, 0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1]
 | |
| 
 | |
|     data = sorted(np.load('%s files.npy' %ident), key = take_second)      # list with filenames in it
 | |
| 
 | |
|     for i, d in enumerate(data):
 | |
|         dd = list(d)
 | |
|         if dd[1] == '1' or dd[1] == '0.2' or dd[1] == '0.05' or dd[1] == '0.01' or dd[1] == '0.005' or dd[1] == '0.001':
 | |
|             jar = np.load('%s.npy' %dd)     # load data for every file name
 | |
|             jm = jar - np.mean(jar)         # low-pass filtering by subtracting mean
 | |
| 
 | |
|             time = np.load('%s time.npy' %dd)       # time file
 | |
|             dt = time[1] - time[0]
 | |
| 
 | |
|             n = int(1/float(d[1])/dt)
 | |
|             cutf = mean_noise_cut(jm, n = n)
 | |
|             cutt = time
 | |
|             if dd[1] == '0.001':
 | |
|                 amfreq1.append(dd[1])
 | |
|                 jars1.append(jm - cutf)
 | |
|                 jms1.append(jm)
 | |
|                 times1.append(time)
 | |
|             if dd[1] not in amfreq:
 | |
|                 print(dd)
 | |
|                 amfreq.append(dd[1])
 | |
|                 jars.append(jm - cutf)
 | |
|                 jms.append(jm)
 | |
|                 times.append(time)
 | |
|             else:
 | |
|                 print('1:', dd)
 | |
|                 amfreq1.append(dd[1])
 | |
|                 jars1.append(jm - cutf)
 | |
|                 jms1.append(jm)
 | |
|                 times1.append(time)
 | |
|     if len(jars) != 6:
 | |
|         continue
 | |
| 
 | |
|     fig = plt.figure(figsize=(8.27,11.69))
 | |
|     fig.suptitle('%s' %ident)
 | |
|     fig.text(0.06, 0.5, 'frequency [Hz]', ha='center', va='center', rotation='vertical')
 | |
|     fig.text(0.5, 0.04, 'time [s]', ha='center', va='center')
 | |
| 
 | |
|     ax0 = fig.add_subplot(611)
 | |
|     ax0.plot(times[0], jms[0])
 | |
|     #ax0.plot(times[0], jars[0])
 | |
|     ax0.set_ylim(-12, 12)
 | |
|     #plt.text(-0.1, 1.05, "A)", fontweight=550, transform=ax0.transAxes)
 | |
| 
 | |
|     ax1 = fig.add_subplot(612)
 | |
|     ax1.plot(times[1], jms[1])
 | |
|     #ax1.plot(times[1], jars[1])
 | |
|     ax1.set_ylim(-12, 12)
 | |
|     #plt.text(-0.1, 1.05, "B)", fontweight=550, transform=ax1.transAxes)
 | |
| 
 | |
|     ax2 = fig.add_subplot(613)
 | |
|     ax2.plot(times[2], jms[2])
 | |
|     #ax2.plot(times[2], jars[2])
 | |
|     ax2.set_ylim(-12, 12)
 | |
|     #plt.text(-0.1, 1.05, "C)", fontweight=550, transform=ax2.transAxes)
 | |
| 
 | |
|     ax3 = fig.add_subplot(614)
 | |
|     ax3.plot(times[3], jms[3])
 | |
|     #ax3.plot(times[3], jars[3])
 | |
|     ax3.set_ylim(-12, 12)
 | |
|     #plt.text(-0.1, 1.05, "D)", fontweight=550, transform=ax3.transAxes)
 | |
| 
 | |
|     ax4 = fig.add_subplot(615)
 | |
|     ax4.plot(times[4], jms[4])
 | |
|     #ax4.plot(times[4], jars[4])
 | |
|     ax4.set_ylim(-12, 12)
 | |
|    # plt.text(-0.1, 1.05, "E)", fontweight=550, transform=ax4.transAxes)
 | |
| 
 | |
|     ax5 = fig.add_subplot(616)
 | |
|     ax5.plot(times[5], jms[5])
 | |
|     #ax5.plot(times[5], jars[5])
 | |
|     ax5.set_ylim(-12, 12)
 | |
|     #plt.text(-0.1, 1.05, "F)", fontweight=550, transform=ax5.transAxes)
 | |
| 
 | |
|     plt.subplots_adjust(left=0.125,
 | |
|                         bottom=0.1,
 | |
|                         right=0.9,
 | |
|                         top=0.9,
 | |
|                         wspace=0.2,
 | |
|                         hspace=0.35)
 | |
|     plt.show() |