Commit a02a40a3 authored by Nicolas Nunez Barreto's avatar Nicolas Nunez Barreto

todo

parent 9b944802
......@@ -152,7 +152,7 @@ T0 = -0.4e-6
#files = [20577,20578,20579,20580,20581] #el 19613 es el que muestra el pico en 48.5 Hz
files = [20587] #el 19613 es el que muestra el pico en 48.5 Hz
files = [20586] #el 19613 es el que muestra el pico en 48.5 Hz
def bin_time_arrivals(arrival_times, tau):
"""
......@@ -228,7 +228,7 @@ for i, fname in enumerate(files):
plt.xlabel('Frecuencia RF (MHz)')
plt.ylabel('Amplitud oscilacion')
#%%
"""
Grafico temporal replicado 3 veces a la frecuencia dada
"""
......@@ -252,19 +252,23 @@ y_extended = np.tile(hist, 3)
def sinusoidal(x, A, C, D):
return A * np.sin(2*np.pi*freqrf * x + C) + D
def sinusoidal2(x,A,b,C,D,E):
return A*((C**2)/(C**2 + (D-b*np.sin(2*np.pi*freqrf*x))**2))+E
def lorentzian(x,A,b,C,det,fase,cte):
det = -10e6*2*np.pi
return A*((C**2)/(C**2 + (det-b*2*np.pi*freqrf*np.sin(2*np.pi*freqrf*x+fase))**2))+cte
x_extended_dense = np.arange(np.min(x_extended),np.max(x_extended),0.1*(x_extended[1]-x_extended[0]))
params, _ = curve_fit(sinusoidal, x_extended, y_extended, p0=[max(y_extended), 0, np.mean(y_extended)])
#params, _ = curve_fit(sinusoidal, x_extended, y_extended, p0=[max(y_extended), 0, np.mean(y_extended)])
params, _ = curve_fit(lorentzian, x_extended, y_extended, p0=[1,1,1e7,1e7,1,1])
amps.append(np.abs(params[0]))
# Graficar los datos y el ajuste
plt.figure(figsize=(8, 4))
# plt.plot(x_extended, y_extended, marker='o', linestyle='-', label="Datos", color='gray')
plt.plot(x_extended_dense, sinusoidal(x_extended_dense, *params), linestyle='--', label="Ajuste sinusoidal", color='black',linewidth=3,zorder=2)
#plt.plot(x_extended_dense, sinusoidal(x_extended_dense, *params), linestyle='--', label="Ajuste sinusoidal", color='black',linewidth=3,zorder=2)
plt.plot(x_extended_dense, lorentzian(x_extended_dense, *params), linestyle='--', label="Ajuste completo", color='black',linewidth=3,zorder=2)
for i in range(3):
plt.plot(bin_edges[:-1] + i * taurf, hist, marker='o', linestyle='-', color=colors[i],markersize=3,zorder=1)
......@@ -278,3 +282,5 @@ plt.show()
print(f'Amplitud normalizada: {np.abs(round(100*params[0]/params[2],3))}%')
print(f'Beta: {np.abs(params[1])}')
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment