You are on page 1of 2

clc

clear
n=2000;
a='Chimbote.txt';
fileID = fopen(a);
for i=1:n
C = textscan(fileID,'%s',1);
s(i)=str2double(string(C{1}));
end
fclose(fileID);
t=0:0.02:(n-1)*0.02;
% grafica el registro de aceleraciones
figure(1); plot(t,s)
% grafica la solucion para T = 0.6 seg
u=diferenciacentral(s,n,0.02,0.6,0.05);
figure(2); plot(t,u)
% Calcula para el espectro de desplazamiento
T=0.1:0.01:1;
size(T,2);
sd=zeros(1,size(T,2));
for i=1:size(T,2)
u=diferenciacentral(s,n,0.02,T(i),0.05);
sd(i)=max([abs(max(u)),abs(min(u))]);
end
figure(3); plot(T,sd)

function dc=diferenciacentral(X,n,At,T,ep)
u1=zeros(1,n);
w=2*pi/T;
m=1;
c=2*ep*w;
k=w^2;
uo=0;
vo=0;
ao=(X(1)-c*vo-k*uo)/m;
un=uo-vo*At+0.5*ao*At^2;
kr=m/At^2+c/2/At;
a=m/At^2-c/2/At;
b=k-2*m/At^2;
u1(1)=uo;
u1(2)=(X(1)-a*un-b*u1(1))/kr;
for i=2:n-1
u1(i+1)=(X(i)-a*u1(i-1)-b*u1(i))/kr;
end
dc=u1;
end
100

50

-50

-100

-150
0 5 10 15 20 25 30 35 40

1.5

0.5

-0.5

-1

-1.5
0 5 10 15 20 25 30 35 40

1.8

1.6

1.4

1.2

0.8

0.6

0.4

0.2

0
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

You might also like