Espectros de Respuesta

4
ESPECTROS DE RESPUESTA %EspectroDesVelAcel %Grafica %Se ingresan los valores de la matriz de aceleraciones descargada entre corchetes para que %se transforme en un vector y poder usarla. a= input('ingresa los valores descargados entre corchetes: '); %transponemos la matriz a= a'; %lo convertimos en un vector en columnas a= a(:); %volvemos a transponerlo para convertirlo en un vector de orden 1*n a=a'; %Se ingresa el intervalo de tiempo en el que fueron tomadas las %aceleraciones para poder formar el vector de tiempo dt= input('ingrese el intervalo de tiempo de las aceleraciones del suelo: '); %formamos el vector tiempo a partir del numero de elementos del vector %aceleracion y el intervalo de tiempo de aceleraciones t=[dt:dt:dt*length(a)]; %Iteramos la razón de amortiguamiento segun los valores de "k" for k=[0 0.02 0.03 0.05 0.07 0.10 0.20 0.25] %para evitar cambiar los valores le damos la siguiente igualdad xsi= k; %Creamos un vector cualesquiera para reemplazarlo poco a poco por elementos %que sean los maximos valores para amortiguamientos "k" y periodos %definidos "j" MaximosD=[0:0.05:3]; MaximosV=[0:0.05:3]; MaximosA=[0:0.05:3]; %Iteramos lo valores para el periodo "j" for j= [0.05:0.05:3]; %utilizamos la funcion dada "exacta" %cambiamos "T" por "j" w=2*pi/j; wd=w*sqrt(1-xsi^2); u=0; v=0; x=zeros(length(t),1); E=exp(-xsi*w*dt); S=sin(wd*dt); C=cos(wd*dt); % Parametros del metodo de integracion a11=E*(xsi*w*S/wd+C); a12=E*S/wd; a21=-w^2*E*S/wd; a22=E*(C-xsi*w*S/wd);

description

ingenieria sismicaespectros de respuesta codigo matlab para espectros de respuesta

Transcript of Espectros de Respuesta

Page 1: Espectros de Respuesta

ESPECTROS DE RESPUESTA

%EspectroDesVelAcel %Grafica %Se ingresan los valores de la matriz de aceleraciones descargada entre corchetes para que%se transforme en un vector y poder usarla.a= input('ingresa los valores descargados entre corchetes: ');%transponemos la matriza= a';%lo convertimos en un vector en columnasa= a(:);%volvemos a transponerlo para convertirlo en un vector de orden 1*na=a';%Se ingresa el intervalo de tiempo en el que fueron tomadas las%aceleraciones para poder formar el vector de tiempodt= input('ingrese el intervalo de tiempo de las aceleraciones del suelo: ');%formamos el vector tiempo a partir del numero de elementos del vector%aceleracion y el intervalo de tiempo de aceleracionest=[dt:dt:dt*length(a)];%Iteramos la razón de amortiguamiento segun los valores de "k"for k=[0 0.02 0.03 0.05 0.07 0.10 0.20 0.25]%para evitar cambiar los valores le damos la siguiente igualdad xsi= k;%Creamos un vector cualesquiera para reemplazarlo poco a poco por elementos%que sean los maximos valores para amortiguamientos "k" y periodos%definidos "j"MaximosD=[0:0.05:3];MaximosV=[0:0.05:3];MaximosA=[0:0.05:3];%Iteramos lo valores para el periodo "j"for j= [0.05:0.05:3];%utilizamos la funcion dada "exacta"%cambiamos "T" por "j"w=2*pi/j;wd=w*sqrt(1-xsi^2);u=0;v=0;x=zeros(length(t),1);E=exp(-xsi*w*dt);S=sin(wd*dt);C=cos(wd*dt);% Parametros del metodo de integraciona11=E*(xsi*w*S/wd+C);a12=E*S/wd;a21=-w^2*E*S/wd;a22=E*(C-xsi*w*S/wd);b11=E*(((2*xsi^2-1)/(w^2*dt)+xsi/w)*S/wd+(1/w^2+2*xsi/(w^3*dt))*C)-2*xsi/(w^3*dt);b12=-E*(((2*xsi^2-1)/(w^2*wd*dt))*S+2*xsi*C/(w^3*dt))+2*xsi/(w^3*dt)-1/w^2;b21=E/(w^2*dt)*(-C-(xsi/sqrt(1-xsi^2)+w*dt/sqrt(1-xsi^2))*S)+1/(w^2*dt);b22=E/(w^2*dt)*(C+xsi/sqrt(1-xsi^2)*S)-1/(w^2*dt);A=[a11 a12; a21 a22];B=[b11 b12; b21 b22];V=zeros(2,length(t));for i=1:length(t)-1

Page 2: Espectros de Respuesta

V(:,i+1)=A*V(:,i)+B*[a(i); a(i+1)];end%valores de desplazamientox=V(1,:);%valores de pseudo velocidadespv=(w)*x;%valores de pseudo aceleracionespa=(w)*pv;%Hallamos el maximo desplazamiento y el maximo negativoxmax=max(x);xmin=min(x);%hallamos la maxima pseudo velocidad y la minimavmax=max(pv);vmin=min(pv);%halamos la maxima pseudo aceleracion y la minimaamax=max(pa);amin=min(pa);%Comparamos Los valores positivos de desplazamientos y escogemos el mayorif (xmax>(-xmin))else xmax=-xmin; end;%Comparamos Los valores positivos de pseudo velocidades y escogemos el mayorif (vmax>(-vmin))else vmax=-vmin; end;%Comparamos Los valores positivos de pseudo aceleraciones y escogemos el mayorif (amax>(-amin))else amax=-amin; end;%Segun el valor del periodo "j" reemplazamos en el vector "MaximosD"MaximosD(round(j/0.05)+1)=xmax;MaximosV(round(j/0.05)+1)=vmax;MaximosA(round(j/0.05)+1)=amax;end%Ponemos un nombre al vector "Maximo" segun el amortiguamiento "k" utilizadoif k==0MaximosD0= MaximosD;MaximosV0= MaximosV;MaximosA0= MaximosA;else if k==0.02 MaximosD02= MaximosD; MaximosV02= MaximosV; MaximosA02= MaximosA; else if k==0.03 MaximosD03= MaximosD; MaximosV03= MaximosV; MaximosA03= MaximosA; else if k==0.05 MaximosD05= MaximosD; MaximosV05= MaximosV; MaximosA05= MaximosA;

Page 3: Espectros de Respuesta

else if k==0.07 MaximosD07= MaximosD; MaximosV07= MaximosV; MaximosA07= MaximosA; else if k==0.10 MaximosD10= MaximosD; MaximosV10= MaximosV; MaximosA10= MaximosA; else if k==0.20 MaximosD20= MaximosD; MaximosV20= MaximosV; MaximosA20= MaximosA; else if k==0.25 MaximosD25= MaximosD; MaximosV25= MaximosV; MaximosA25= MaximosA; else end end end end end end endendend%Creamos un vector de periodos segun los valores de "j" para poder graficarT=[0:0.05:3];%Graficamos todos los valore Maximos de desplazamiento con respecto al%periodo y al amortiguamiento asi como los de pseudo velocidades y pseudo%aceleracionesplot(T,MaximosD0,T,MaximosD02,T,MaximosD03,T,MaximosD05,T,MaximosD07,T,MaximosD10,T,MaximosD20,T,MaximosD25);title('ESPECTRO DE DESPLAZAMIENTOS');xlabel('Periodos "T" del elemento de 1GDL(s)');ylabel('desplazamientos Maximos(cm)');legend(' 0%','2%','3%','5%','7%','10%','20%','25%');grid;figure;plot(T,MaximosV0,T,MaximosV02,T,MaximosV03,T,MaximosV05,T,MaximosV07,T,MaximosV10,T,MaximosV20,T,MaximosV25);title('ESPECTRO DE PSEUDO VELOCIDADES');xlabel('Periodos "T" del elemento de 1GDL(s)');ylabel('Pseudo velocidades maximas(cm/s)');legend(' 0%','2%','3%','5%','7%','10%','20%','25%');grid;figure;plot(T,MaximosA0,T,MaximosA02,T,MaximosA03,T,MaximosA05,T,MaximosA07,T,MaximosA10,T,MaximosA20,T,MaximosA25);title('ESPECTRO DE PSEUDO ACELERACIONES');xlabel('Periodos "T" del elemento de 1GDL(s)');ylabel('Pseudo aceleraciones maximas(cm/s^2)');legend(' 0%','2%','3%','5%','7%','10%','20%','25%');

Page 4: Espectros de Respuesta

grid;clear;