Commit bbe825e1 authored by Marcelo Luda's avatar Marcelo Luda

update

parent 6ccdeec4
......@@ -311,7 +311,7 @@ plt.title('Variando compesnacion dcA config desplazada OAM')
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#%% Version Luda de los expectros al desplazar ###############################
#%% Version Luda de los expectros al descompenzar ###############################
from scipy.signal import savgol_filter as savgol
# Grafico con subplots
......@@ -322,6 +322,7 @@ fig.set_constrained_layout_pads(w_pad=1/72, h_pad=0, hspace=0, wspace=0)
# En la fila de arriba los espectros ..........................................
####################################
print("Colineal")
ax = axx[0][0]
compcolmedvec = [5,0,1,2,3,4]
......@@ -373,6 +374,9 @@ for med in compcolmedvec:
base = np.polyval(mm,rango.mean())
val_pico = cuentas_suave[I].min()
picos[jj].append( (base-val_pico)/base )
print( (base-val_pico)/base , end="\t")
print('')
# ax.plot(cuentas)
......@@ -387,6 +391,7 @@ picos_col_dr2 = np.array(picos[1])
print("\n")
......@@ -395,9 +400,12 @@ picos_col_dr2 = np.array(picos[1])
####################################
# Desplazado
print("Despazado")
ax = axx[0][1]
compdespmedvec = [0,2,3,4,5,6]
# compdespmedvec = [0,2,3,4,5,6]
compdespmedvec = [0,1,2,3,4,5]
CompsDCA_desp = [-100, -150, -200, -250, -300, -350]
ftrap = 22.1
# DR1 = 435.8
......@@ -418,6 +426,16 @@ for med in compdespmedvec:
# FIX OUTLIER
cuentas[207] = cuentas[206:208:2].mean()
if med==1:
# raise ValueError('lolo')
cuentas = cuentas.tolist()
frecuencia = frecuencia.tolist()
for _ in range(4):
cuentas.pop(27)
frecuencia.pop(27)
cuentas = np.array(cuentas)
frecuencia = np.array(frecuencia)
cuentas_suave = savgol(cuentas,13,2)
......@@ -436,6 +454,228 @@ for med in compdespmedvec:
base = np.polyval(mm,rango.mean())
val_pico = cuentas_suave[I].min()
picos[jj].append( (base-val_pico)/base )
print( (base-val_pico)/base , end="\t")
print('')
# ax.plot(cuentas)
ax.grid(b=True,linestyle=':',color='lightgray')
ax.set_xlabel(r'frecuencia [kHz]')
# ax.set_ylabel(r'Cuentas')
ax.set_title("Desplazado")
picos_desp_dr1 = np.array(picos[0])
picos_desp_dr2 = np.array(picos[1])
ax.set_xlim(427,453)
# En la fila de abajo las profundidades .......................................
####################################
ax = axx[1][0]
ax.plot( CompsDCA_col , picos_col_dr1 , 'o--' , color='gray')
for comp,pic in zip(CompsDCA_col , picos_col_dr1):
ax.plot(comp,pic,'o')
ax.set_prop_cycle(None)
ax.plot( CompsDCA_col , picos_col_dr2 , 'o-' , color='gray')
for comp,pic in zip(CompsDCA_col , picos_col_dr2):
ax.plot(comp,pic,'o')
ax.grid(b=True,linestyle=':',color='lightgray')
ax.set_xlabel('Descompensación [mV]')
ax.set_ylabel('Profundidad relativa')
####################################
ax = axx[1][1]
ax.plot( CompsDCA_desp , picos_desp_dr1 , 'o--' , color='gray' )
for comp,pic in zip(CompsDCA_desp , picos_desp_dr1):
ax.plot(comp,pic,'o')
ax.set_prop_cycle(None)
ax.plot( CompsDCA_desp , picos_desp_dr2 , 'o-' , color='gray')
for comp,pic in zip(CompsDCA_desp , picos_desp_dr2):
ax.plot(comp,pic,'o')
ax.grid(b=True,linestyle=':',color='lightgray')
ax.set_xlabel('Descompensación [mV]')
ax.semilogy()
ax.set_ylim(0.09,1.05)
for ax in axx[1]:
ax.grid(b=True,linestyle=':',color='lightgray', which='minor', axis='y')
from matplotlib.ticker import FormatStrFormatter
ax.yaxis.set_minor_formatter(FormatStrFormatter("%.1f"))
for ax in axx[0]:
ax.axvline(DR1, ls='--', color='gray')
ax.axvline(DR2, ls='-', color='gray')
# fig.savefig('profundidad_vs_descompensacion_abs.png')
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#%% Rehago pero en picos normalizados ###############################
from scipy.signal import savgol_filter as savgol
# Grafico con subplots
fig,axx = plt.subplots(2,2,figsize=(12,8), constrained_layout=True , sharey='row', sharex='row' )
fig.set_constrained_layout_pads(w_pad=1/72, h_pad=0, hspace=0, wspace=0)
# En la fila de arriba los espectros ..........................................
####################################
print("Colineal")
ax = axx[0][0]
compcolmedvec = [5,0,1,2,3,4]
CompsDCA_col = [-100, -150, -200, -250, -300, -350]
ftrap = 22.1
DR1 = 435.8
DR2 = 444.2
freqDR=435.8
rango_dr1 = np.array([435,437])
rango_dr2 = np.array([443,445])
I_base_fit = np.arange(0,50).tolist()+np.arange(230,280).tolist()+np.arange(450,490).tolist()
I_base_fit = np.array(I_base_fit)
picos = {0:[], 1:[]}
for med in compcolmedvec:
frecuencia = CompColIR1_Freqs[med][1:]*2e-6
cuentas = CompColCounts[med][1:]
if med==4:
# FIX OUTLIER
cuentas = cuentas.tolist()
cuentas.pop(291); cuentas.pop(291); cuentas.pop(291);
cuentas = np.array(cuentas)
frecuencia = frecuencia.tolist()
frecuencia.pop(291); frecuencia.pop(291); frecuencia.pop(291);
frecuencia = np.array(frecuencia)
mm = np.polyfit(frecuencia[I_base_fit], cuentas[I_base_fit],1)
# ax.plot( [420,460], np.polyval(mm,[420,460]) , '-', color=ax.get_lines()[-1].get_color(), alpha=0.5)
cuentas = cuentas / np.polyval(mm,frecuencia)
cuentas_suave = savgol(cuentas,13,2)
ax.plot(frecuencia,cuentas, '.', alpha=0.1)
ax.plot(frecuencia,cuentas_suave, '-', alpha=0.9, color=ax.get_lines()[-1].get_color())
for jj,rango in enumerate([rango_dr1,rango_dr2]):
I = np.arange(len(frecuencia))[(frecuencia>rango.min())&(frecuencia<rango.max())]
idx = cuentas_suave[I].argmin() + I[0]
ax.plot(frecuencia[idx],cuentas_suave[idx], 'o', ms=12, color=ax.get_lines()[-1].get_color(),zorder=10)
base = 1
val_pico = cuentas_suave[I].min()
picos[jj].append( (base-val_pico)/base )
print( (base-val_pico)/base , end="\t")
print('')
# ax.plot(cuentas)
ax.grid(b=True,linestyle=':',color='lightgray')
ax.set_xlabel(r'frecuencia [kHz]')
ax.set_ylabel(r'Cuentas normalizadas')
ax.set_title("Colineal")
picos_col_dr1 = np.array(picos[0])
picos_col_dr2 = np.array(picos[1])
print("\n")
####################################
# Desplazado
print("Despazado")
ax = axx[0][1]
# compdespmedvec = [0,2,3,4,5,6]
compdespmedvec = [0,1,2,3,4,5]
CompsDCA_desp = [-100, -150, -200, -250, -300, -350]
ftrap = 22.1
# DR1 = 435.8
# DR2 = 444.2
rango_dr1 = np.array([435,437])
rango_dr2 = np.array([443,445])
picos = {0:[], 1:[]}
for med in compdespmedvec:
frecuencia = CompDespIR1_Freqs[med][1:]*2e-6
cuentas = CompDespCounts[med][1:]
if med==0:
# FIX OUTLIER
cuentas[207] = cuentas[206:208:2].mean()
if med==1:
# raise ValueError('lolo')
cuentas = cuentas.tolist()
frecuencia = frecuencia.tolist()
for _ in range(4):
cuentas.pop(27)
frecuencia.pop(27)
cuentas = np.array(cuentas)
frecuencia = np.array(frecuencia)
mm = np.polyfit(frecuencia[I_base_fit], cuentas[I_base_fit],1)
# ax.plot( [420,460], np.polyval(mm,[420,460]) , '-', color=ax.get_lines()[-1].get_color(), alpha=0.5)
cuentas = cuentas / np.polyval(mm,frecuencia)
cuentas_suave = savgol(cuentas,13,2)
ax.plot(frecuencia,cuentas, '.', alpha=0.1)
ax.plot(frecuencia,cuentas_suave, '-', alpha=0.9, color=ax.get_lines()[-1].get_color())
for jj,rango in enumerate([rango_dr1,rango_dr2]):
I = np.arange(len(frecuencia))[(frecuencia>rango.min())&(frecuencia<rango.max())]
idx = cuentas_suave[I].argmin() + I[0]
ax.plot(frecuencia[idx],cuentas_suave[idx], 'o', ms=12, color=ax.get_lines()[-1].get_color(),zorder=10)
base = 1
val_pico = cuentas_suave[I].min()
picos[jj].append( (base-val_pico)/base )
print( (base-val_pico)/base , end="\t")
print('')
# ax.plot(cuentas)
......@@ -501,6 +741,10 @@ for ax in axx[0]:
# fig.savefig('profundidad_vs_descompensacion_normalizado.png')
#%%
......
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