Está en la página 1de 6

UNIVERSIDAD NACIONAL DE SANCRISTOBAL DE HUAMANGA

FACULTAD DE INGENIERIA DE GEOLOGIA MINAS Y CIVIL

ESCUELA DE FORMACION DE INGENIERIA CIVIL

EXAMEN FINAL DE PROGRAMACION DIGITAL


(IC-246)

DOCENTE: Ing. LIZARBE ALARCON, Hemerson

ALUMNO: QUISPE TAYPE, Max Bryan

CODIGO: 16120241

AYACUCHO- PERU
DIAGRAMA DE FUERZA CORTANTE Y MOMENTO FLECTOR
 En el siguiente trabajo se expondrá cómo es posible realizar diagramas de fuerza
cortante y momento flector utilizando MatLab, dándose apoyo en sus distintos
comandos
 El ejemplo realizado en la presente es un ejemplo muy sencillo para dar una idea
clara de cómo se utiliza el MatLab para darle una solución para hallar graficas de
momentos y fuerzas cortantes.

DIAGRAMA DE FLUJO
SEUDOCÓDIGO
Se muestra todos los comandos utilizados para el programa realizado:

function varargout = programa(varargin)

% Begin initialization code - DO NOT EDIT


gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @programa_OpeningFcn, ...
'gui_OutputFcn', @programa_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before programa is made visible.


function programa_OpeningFcn(hObject, eventdata, handles, varargin)
movegui(hObject,'center')
% Leer imagen
esquema=imread('esquema.png');
% Graficar imagen
image(esquema,'Parent',handles.axes3)
% Quitar ejes de el axes de graficación

set(handles.axes3,'XTick',[],'YTick',[])
% Choose default command line output for programa
handles.output = hObject;

% Update handles structure


guidata(hObject, handles);

% --- Outputs from this function are returned to the command line.
function varargout = programa_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;

% --- FUNCIÓN DEL BOTÓN DE CÁLCULO Y GRAFICACIÓN.


function graficar_b_Callback(hObject, eventdata, handles)
% Tomar datos de los edit-text
L =str2double(get(handles.l_e,'String'));
Ma=str2double(get(handles.ma_e,'String'));
Mb=str2double(get(handles.mb_e,'String'));
w =str2double(get(handles.w_e,'String'));
a =str2double(get(handles.a_e,'String'));
b =str2double(get(handles.b_e,'String'));
dL =str2double(get(handles.dL_e,'String'));
% Cálculo de Ra y Rb
Rb=(1/L)*(Ma-Mb+0.5*w*(b^2-a^2));
Ra=w*(b-a)-Rb;
set(handles.ra_t,'String',[num2str(Ra),'kips'])
set(handles.rb_t,'String',[num2str(Rb),'kips'])
% Ejecución del algoritmo
n=L/dL;
X=[ ];
for i=0:n
x=dL*i;
X=[X x];
if x>=a
stpa=1;
else
stpa=0;
end
if x>=b
stpb=1;
else
stpb=0;
end
V(i+1)=Ra-w*(x-a)*stpa + w*(x-b)*stpb;
M(i+1)=Ma+(Ra*x)-(0.5*w*(x-a)^2*stpa)+(0.5*w*(x-b)^2*stpb);
end
% Graficación en los axes.
axes(handles.axes1);
plot(X,V,'LineWidth',2);
xlabel('x(m)')
ylabel('V(kN)')
grid on
axes(handles.axes2);
plot(X,M,'LineWidth',2);
xlabel('x(m)')
ylabel('M(kN*m)')
grid on

% Funciones de los Edit-Text (no se usan)


function dL_e_Callback(hObject, eventdata, handles)
function l_e_Callback(hObject, eventdata, handles)
function ma_e_Callback(hObject, eventdata, handles)
function mb_e_Callback(hObject, eventdata, handles)
function w_e_Callback(hObject, eventdata, handles)
function a_e_Callback(hObject, eventdata, handles)
function b_e_Callback(hObject, eventdata, handles)
UTILIZACION DEL PROGRAMA:

 Se inicia el programa, con todas las celdas vacías:

Dónde:

 L: longitud de la barra
 A: Punto de apoyo
 B: Punto de apoyo
 MA: Momento en A
 MB: Momento en B
 W: Valor de la carga distribuida
 a: Distancia del apoyo A hasta el inicio de la carga distribuida.
 b: Distancia del apoyo A hasta el final de la carga distribuida.
 dL: Delta de L, que es el grado de densidad de punto que se utilizará en el gráfico,
mientras menor sea dL más exacto será el dibujo.
 Ra: Reacción en A.
 Rb: Reacción en B.

 Introducimos los datos para hacer correr el programa:


 Probamos con otros datos para verificar:

También podría gustarte