You are on page 1of 3

clear

clc
disp('ESTE PROGRAMA SIRVE PARA GRAFICAR LOS DIAGRAMAAS DE CORTANTE Y
MOMENTO DE UNA VIGA SIMPLEMENTE APOYADA O DOBLEMENTE EMPOTRADA');
OP=menu('TIPO DE VIGA','SIMPLEMENTE APOYADA (SA)','DOBLEMENTE EMPOTRADA
(DE)');
if OP==1
%VIGA SIMPLEMENTE APOYADA
op=menu('HIPOTESIS DE CARGA','CARGA PUNTUAL AL CL','CARGA UNIF.
DISTRIBUIDA');
switch op
case 1 %CARGA PUNTUAL AL CL.
prompt={'Valor de la carga Puntal W(kg)','Longitud de la viga
L(cm)','Incremento I(cm)'};
dat=inputdlg(prompt,'DATOS');
P=str2num(dat{1});
L=str2num(dat{2});
I=str2num(dat{3});
X1=0:I:L/2;
X2=L/2:I:L;
X=0:I:L;
%ECUACIONES DE FV Y MF

V1=P/2;
V2=-P/2;
M1=((P*X1/2)); M2=(P*L/2)-(P*X2/2);

subplot(2,1,1);
plot(X,V1,'r-',X,V2,'r-')
xlabel('Longitud de la viga (cm)');
ylabel('Fuerza Cortante (kg)');
title('Diagrama de Cortante');
grid;

subplot(2,1,2);
plot(X1,M1,'b-',X2,M2,'b-');
xlabel('Longitud de la viga (cm)');
ylabel('Momento Flexionante (kg*cm)');
title('Diagrama de Momento Flexionante');
grid;

case 2 %carga distribuida


prompt={'Valor de la carga W(kg/cm)','Longitud de la viga
L(cm)','Incremento I(cm)'};
dat=inputdlg(prompt,'DATOS');
W=str2num(dat{1});
L=str2num(dat{2});
I=str2num(dat{3});
X=0:I:L;
%ECUACIONES DE FV Y MF
V=((W*L)/2)-(W*X);
M=((W*X)/2)*(L-X);
subplot(2,1,1);
plot(X,V,'r-')
xlabel('Longitud de la viga (cm)');
ylabel('Fuerza Cortante (kg)');
title('Diagrama de Cortante');
grid;

subplot(2,1,2);
plot(X,M,'b-');
xlabel('Longitud de la viga (cm)');
ylabel('Momento Flexionante (kg*cm)');
title('Diagrama de Momento Flexionante');
grid;
end
elseif OP==2

%VIGA DOBLEMENTE EMPOTRADA


op=menu('HIPOTESIS DE CARGA','CARGA PUNTUAL AL CL','CARGA UNIF.
DISTRIBUIDA');
switch op
case 1 %CARGA PUNTUAL AL CL.
prompt={'Valor de la carga Puntal W(kg)','Longitud de la viga
L(cm)','Incremento I(cm)'};
dat=inputdlg(prompt,'DATOS');
P=str2num(dat{1});
L=str2num(dat{2});
I=str2num(dat{3});
X1=0:I:L/2;
X2=L/2:I:L;
X=0:I:L;
%ECUACIONES DE FV Y MF

V1=P/2;
V2=-P/2;
M1=((P/8)*(4*X1-L)); M2=((3*P*L)/8)-(P*X2/2);

subplot(2,1,1);
plot(X,V1,'r-',X,V2,'r-')
xlabel('Longitud de la viga (cm)');
ylabel('Fuerza Cortante (kg)');
title('Diagrama de Cortante');
grid;

subplot(2,1,2);
plot(X1,M1,'b-',X2,M2,'b-');
xlabel('Longitud de la viga (cm)');
ylabel('Momento Flexionante (kg*cm)');
title('Diagrama de Momento Flexionante');
grid;

case 2 %carga distribuida


prompt={'Valor de la carga W(kg/cm)','Longitud de la viga
L(cm)','Incremento I(cm)'};
dat=inputdlg(prompt,'DATOS');
W=str2double(dat(1));
L=str2double(dat(2));
I=str2double(dat(3));
X=0:I:L;
%ECUACIONES DE FV Y MF
V=((W*L)/2)-(W*X);
M=(W/12)*(6*L*X-(L^2)-6*(X.^2));
subplot(2,1,1);
plot(X,V,'r-')
xlabel('Longitud de la viga (cm)');
ylabel('Fuerza Cortante (kg)');
title('Diagrama de Cortante');
grid;

subplot(2,1,2);
plot(X,M,'b-');
xlabel('Longitud de la viga (cm)');
ylabel('Momento Flexionante (kg*cm)');
title('Diagrama de Momento Flexionante');
grid;
end
end

You might also like