ANEXO IV

Anuncio
ANEXO IV
ANEXO IV
Se presenta a continuación (fig. AIV.1) el diagrama de flujo del programa Matlab que permite
realizar un análisis preliminar de los períodos predominantes de los suelos mediante la técnica de
Nakamura, así como el listado del programa utilizado.
El programa Matlab se ha estructurado en tres pasos: obtención del movimiento de partícula,
obtención de los espectros de amplitudes de Fourier y finalmente obtención de las ratios
espectrales.
En primer lugar se realiza una lectura del archivo que contiene los datos de entrada. Dichos datos
son la componente Z, la componente NS y la componente EW de la señal registrada.
Posteriormente se calculan componentes adicionales combinación de las anteriores: la
componente h-aritmética y h-cuadrática. Se realiza un filtrado de todas las componentes
obtenidas mediante la función filtfilt. Dicha función deja pasar las altas frecuencias de la señal.
Para obtener el movimiento de partícula se grafica la componente NS versus la componente EW,
tanto de los datos brutos como de los datos filtrados.
El siguiente análisis realizado sobre la señal consiste en cálculo de los espectros de Fourier
mediante la aplicación de la transformada rápida de Fourier (fft) sobre cada una de las
componentes. Finalmente, se grafican los espectros de amplitudes de Fourier así obtenidos para
cada una de las componentes.
El siguiente paso realizado es la aplicación de la técnica de Nakamura. Para ello se calculan los
cocientes espectrales dividiendo el espectro de amplitudes de Fourier por el espectro de
amplitudes de Fourier de la componente Z. Posteriormente se grafican las ratios espectrales
calculadas que permiten obtener un análisis preliminar de los períodos predominantes del suelo.
143
ANEXO IV
Lectura señal
(Componentes Z, NS y EW)
Movimiento de
partícula bruto
Componente h-aritmética y
Componente h-cuadrática
Filtrado de
todas las
componentes
Transformada Rápida
de Fourier fft
Movimiento de
partícula filtrado
Espectro de
amplitudes de
Fourier
Cocientes espectrales
(Técnica de Nakamura)
ENTRADA
Ratios Espectrales. Período
Predominante del suelo.
ANÁLISIS
SALIDA
Figura AIV 1. Diagrama de flujo del programa Matlab. Véase explicación en el texto.
144
ANEXO IV
LISTADO DEL PROGRAMA MATLAB. ANALISIS DE RUIDO CON FILTRADO PASA ALTAS
Lectura del archivo
clear all
close all
clc
[cabecera,senyal]=hdrload('temporal.txt');
npt=length(senyal)
tiempo=senyal(:,2);
compz=senyal(:,3);
compnsi=senyal(:,4);
compewi=senyal(:,5);
compsa=compnsi+compewi;
for k=1:npt
comph(k)=sqrt(compnsi(k)*compnsi(k)+compewi(k)*compewi(k));
end
dt=tiempo(2)-tiempo(1)
df=1./(dt*npt)
fc=1./(2.*dt)
mensaje='pulsa tecla para continuar'
pause
clc
Filtrado de datos filtro pasa altas
norden=3;
fl=0.1;
fs=1/(2*dt);
wa1=fl/fs;
[b,a]=butter(norden,wa1,'high');
compz=filtfilt(b,a,senyal(:,3));
compns=filtfilt(b,a,senyal(:,4));
compew=filtfilt(b,a,senyal(:,5));
compsa=filtfilt(b,a,compsa);
comph=filtfilt(b,a,comph);
Movimiento de partícula
figure (1)
subplot(2,1,1), plot(compewi,compnsi,'k-')
title('Parque Cervantes. Datos brutos')
xlabel('EW')
ylabel('NS')
legend('Movimiento de particula',0)
subplot(2,1,2), plot(compew,compns,'k-')
title('Parque Cervantes. Datos filtrados')
xlabel('EW')
ylabel('NS')
legend('Movimiento de particula',0)
axis([-5*10^(-6),5*10^(-6),-5*10^(-6),5*10^(-6)])
mensaje='pulsa tecla para continuar'
pause
clc
Cálculo de espectros
freq=[0:npt-1]'*df;
per=freq;
145
ANEXO IV
np2=npt/2+1;
xper=per(2:np2);
Componente z
xfz=fft(compz);
xfzam=abs(xfz)*dt;
xzff=xfzam(2:np2);
Componente ns
xfns=fft(compns);
xfnsam=abs(xfns)*dt;
xnsff=xfnsam(2:np2);
Componente ew
xfew=fft(compew);
xfewam=abs(xfew)*dt;
xewff=xfewam(2:np2);
Componente hq
xfhq=fft(comph);
xfhqam=abs(xfhq)*dt;
xhqff=xfhqam(2:np2);
Componente sa
xfsa=fft(compsa);
xfsaam=abs(xfsa)*dt;
xsaff=xfsaam(2:np2);
Dibujo de trazas
figure (1)
subplot(5,2,1), plot(tiempo,compz,'k-')
title('Parque Cervantes. Filtrado pasa altas')
xlabel('tiempo (s)')
ylabel('Amplitud')
legend('Componente Z',0)
subplot(5,2,2), loglog(xper,xzff,'k-')
xlabel('freq (Hz)')
ylabel('Mod-FFT')
subplot(5,2,3), plot(tiempo,compns,'k-')
xlabel('tiempo (s)')
ylabel('Amplitud')
legend('Componente NS',0)
subplot(5,2,4), loglog(xper,xnsff,'r-')
xlabel('freq (Hz)')
ylabel('Mod-FFT')
subplot(5,2,5), plot(tiempo,compew,'k-')
xlabel('tiempo (s)')
ylabel('Amplitud')
legend('Componente EW',0)
subplot(5,2,6), loglog(xper,xewff,'r-')
xlabel('freq (Hz)')
ylabel('Mod-FFT')
146
ANEXO IV
subplot(5,2,7), plot(tiempo,comph,'k-')
xlabel('tiempo (s)')
ylabel('Amplitud')
legend('Componente H-quadratica',0)
subplot(5,2,8), loglog(xper,xhqff,'r-')
xlabel('freq (Hz)')
ylabel('Mod-FFT')
subplot(5,2,9), plot(tiempo,compsa,'k-')
xlabel('Tiempo (s)')
ylabel('Amplitud')
legend('Componente H-aritmetica',0)
subplot(5,2,10), loglog(xper,xsaff,'r-')
xlabel('Frec. (Hz)')
ylabel('Mod-FFT')
pause
close all
clc
mensaje='pulsa tecla para continuar'
pause
clc
Nakamura puro y duro
Cocientes espectrales
for i=1:np2-1
nsz(i)=xnsff(i)/xzff(i);
ewz(i)=xewff(i)/xzff(i);
hqz(i)=xhqff(i)/xzff(i);
saz(i)=xsaff(i)/xzff(i);
end
Dibujo de las ratios espectrales
figure (2)
subplot(4,2,1), plot(xper,nsz,'k-')
title('Parque Cervantes. Ratios espectrales-con filtro pasa altas')
xlabel('Frec. (Hz)')
ylabel('NS/V ratio')
legend('NS-Z spectral ratio',0)
subplot(4,2,2), loglog(xper,nsz,'k-')
xlabel('Frec. (Hz)')
ylabel('NS/V ratio')
subplot(4,2,3), plot(xper,ewz,'k-')
xlabel('Frec. (Hz)')
ylabel('EW/V ratio')
legend('EW-Z spectral ratio',0)
subplot(4,2,4), loglog(xper,ewz,'k-')
xlabel('Frec. (Hz)')
ylabel('EW/V ratio')
subplot(4,2,5), plot(xper,hqz,'k-')
xlabel('Frec. (Hz)')
ylabel('HQ/V ratio')
legend('HQ-Z spectral ratio',0)
subplot(4,2,6), loglog(xper,hqz,'k-')
xlabel('Frec. (Hz)')
ylabel('HQ/V ratio')
147
ANEXO IV
subplot(4,2,7), plot(xper,saz,'k-')
xlabel('Frec. (Hz)')
ylabel('SA/V ratio')
legend('SA-Z spectral ratio',0)
subplot(4,2,8), loglog(xper,saz,'k-')
xlabel('Frec. (Hz)')
ylabel('SA/V ratio')
pause
close all
clear all
mensaje='pulsa tecla para finalizar'
pause
clc
148
Descargar