You are on page 1of 10

DEPARTAMENTO DE ENERGA Y MECNICA

CARRERA DE INGENIERA AUTOMOTRIZ


PROYECTO UNIDAD I
ASIGNATURA:
CDIGO:
NRC:
EDO
11005
4195
DEPARTAMENTO:
CARRERA:
CIENCIAS EXACTAS
INGENIERA
AUTOMOTRIZ
DOCENTE:
DRA. JACKELINE POZO

ALUMNOS:
MOLINA PAUL
RECALDE GALO

NIVEL:

SEMANA CLASE:
DURACIN:
III
XIII
2 HORAS
REA DEL
TEMA:
CONOCIMIENTO:
ECUACIONES
ECUACIONES
DIFERENCIALES EN
DIFERENCIALES EN
MATLAB
MATLAB
FECHA REALIZACIN:
EJE DE FORMACIN:
27-MAYO-2015
PROFESIONAL
FECHA DE ENTREGA:
29-MAYO-2015

A. FUNDAMENTACIN:
APLICACIONES DE ECUACIONES DIFERNECIALES EN MATLAB
Matlab es un entorno computacional que permite realizar clculo simblico y
simulaciones numricas, entre otras cosas. Por ejemplo,
podemos resolver
simblica o numricamente ecuaciones diferenciales. Un modelo simplificado del
estudio del flujo atmosfrico llev a E. Lorenz a un sistema de tres ecuaciones
diferenciales de primer orden. Es a partir de este ejemplo que Lorenz Acu llam
el efecto mariposa.
La figura que observamos puede mirarse como las alas de una mariposa al volar.
Aqu veremos la forma como se resuelven de modo simblico ecuaciones
diferenciales de primer o segundo orden que tengan una presentacin simple. As
mismo, veremos la manera de graficar las soluciones halladas.
En muchas ocasiones resolver una ecuacin diferencial puede ser prcticamente
imposible, en este caso nos queda el recurso de los mtodos numricos para
aproximar soluciones de ecuaciones diferenciales. En esta situacin haremos uso
de una instruccin en Matlab: code45, que nos permitir resolver numricamente
una ecuacin diferencial de primer orden o sistemas de ecuaciones diferenciales de
primer orden.
Recordemos que una ecuacin de primer orden tiene la forma
Asociada a ella podemos tener una condicin inicial
Por ejemplo,
Con condicin inicial
Un sistema no autnomo de ecuaciones diferenciales en el plano tiene la forma
Donde las funciones:

Son funciones conocidas. Un ejemplo de un sistema de ecuaciones de primer orden


en el plano est dado por:
MODELOS DE CRECIMIENTO DE POBLACIN
MODELO MALTHUSIANO
En este modelo de crecimiento poblacional se supone que la tasa de variacin
instantnea de una poblacin es proporcional, en todo momento, a la poblacin
existente. Este tipo de modelo se usan para estudiar, por ejemplo, la forma como
cambia la poblacin de un cultivo de bacterias cuando estas se reproducen por
divisin celular. Se supone asimismo que las bacterias tienen condiciones
adecuadas para su reproduccin. La temperatura es apropiada, tienen espacio vital
y alimento suficiente.
Si

denota la cantidad de bacterias que hay en el cultivo en el instante

tiene que la variacin instantnea de esta, dada por


poblacin. Por lo que

Si la poblacin inicial de bacterias es

, se

, es proporcional a la

usando el mtodo de variables

separables, el lector puede mostrar que al tomar


entonces la solucin particular est dada por la funcin

como condicin inicial,

Es de notar que en este modelo no han sido tomados en cuenta muchos factores
que pueden afectar el crecimiento de una poblacin. Entre ellos podemos
mencionar una tasa de mortandad por causas naturales, enfermedades, falta de
alimento, sobrepoblacin, entre otros.
Una primera mejora en nuestro modelo, olvidando que en particular hemos
considerado una poblacin de bacterias. Es tomar en cuenta que adems de una
tasa de generacin de nuevos individuos por unidad de tiempo, tambin hay una
tasa de fallecimientos (por causas naturales) por unidad de tiempo.
Si la tasa de nacimientos por unidad de tiempo es proporcional a la poblacin, con
constante de proporcionalidad
y la tasa de muertes, en todo instante, tambin
es proporcional a la cantidad de individuos, con constante de proporcionalidad
,
entonces el modelo poblacional est dado por

Un primer ejercicio consiste en mostrar que si


exponencialmente, mientras que en el caso
exponencial de la poblacin.

entonces la poblacin crecer


, tendremos una extincin

B. DESCRIPCIN:
ste Informe est formado por un ejercicio:
Aplicacin de un diseo mediante el uso de una herramienta Matlab, con el
consiguiente ahorro de tiempo y esfuerzo.

C. OBJETIVO:
Implementar los conocimientos adquiridos durante el periodo actual de Ecuaciones
Diferenciales Ordinarias para observar la aplicacin de la materia en la vida
cotidiana mediante la realizacin de un programa en donde se observe la aplicacin
de las ecuaciones diferenciales en el software Matlab.
D. OBJETIVOS ESPECIFICOS:

Aplicar los conocimientos impartidos en clase en un problema de la vida


cotidiana.
Investigar sobre el mtodo de implementacin de ecuaciones diferenciales
dentro del software Matlab.
Realizar un programa en Matlab aplicando el uso de ecuaciones
diferenciales.

E. TAREAS A REALIZAR:
Utilizar el programa Matlab para realizar un programa referente a las ecuaciones
diferenciales.
F. IMPLEMENTACIN:
function varargout = crecimiento_poblacion(varargin)
% CRECIMIENTO_POBLACION M-file for crecimiento_poblacion.fig
%
CRECIMIENTO_POBLACION, by itself, creates a new CRECIMIENTO_POBLACION
or raises the existing
%
singleton*.
%
%
H = CRECIMIENTO_POBLACION returns the handle to a new
CRECIMIENTO_POBLACION or the handle to
%
the existing singleton*.
%
%
CRECIMIENTO_POBLACION('CALLBACK',hObject,eventData,handles,...) calls the
local
%
function named CALLBACK in CRECIMIENTO_POBLACION.M with the given
input arguments.
%
%
CRECIMIENTO_POBLACION('Property','Value',...) creates a new
CRECIMIENTO_POBLACION or raises the
%
existing singleton*. Starting from the left, property value pairs are
%
applied to the GUI before crecimiento_poblacion_OpeningFcn gets called. An
%
unrecognized property name or invalid value makes property application
%
stop. All inputs are passed to crecimiento_poblacion_OpeningFcn via varargin.
%
%
*See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
%
instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help crecimiento_poblacion
% Last Modified by GUIDE v2.5 27-May-2015 04:02:13
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @crecimiento_poblacion_OpeningFcn, ...
'gui_OutputFcn', @crecimiento_poblacion_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 crecimiento_poblacion is made visible.
function crecimiento_poblacion_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to crecimiento_poblacion (see VARARGIN)
% Choose default command line output for crecimiento_poblacion
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
clc
axes(handles.axes1);
grid on
box on
axes(handles.axes2);
grid on
box on
% UIWAIT makes crecimiento_poblacion wait for user response (see UIRESUME)
% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = crecimiento_poblacion_OutputFcn(hObject, eventdata,
handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
function ano1_Callback(hObject, eventdata, handles)
% hObject handle to ano1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of ano1 as text
%
str2double(get(hObject,'String')) returns contents of ano1 as a double
% --- Executes during object creation, after setting all properties.
function ano1_CreateFcn(hObject, eventdata, handles)
% hObject handle to ano1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.


%
See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function ano2_Callback(hObject, eventdata, handles)
% hObject handle to ano2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of ano2 as text
%
str2double(get(hObject,'String')) returns contents of ano2 as a double
% --- Executes during object creation, after setting all properties.
function ano2_CreateFcn(hObject, eventdata, handles)
% hObject handle to ano2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function p1_Callback(hObject, eventdata, handles)
% hObject handle to p1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of p1 as text
%
str2double(get(hObject,'String')) returns contents of p1 as a double
% --- Executes during object creation, after setting all properties.
function p1_CreateFcn(hObject, eventdata, handles)
% hObject handle to p1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function p2_Callback(hObject, eventdata, handles)
% hObject handle to p2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of p2 as text
%
str2double(get(hObject,'String')) returns contents of p2 as a double
% --- Executes during object creation, after setting all properties.
function p2_CreateFcn(hObject, eventdata, handles)
% hObject handle to p2 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB


% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
A1 = str2num(get(handles.ano1, 'String'));
A2 = str2num(get(handles.ano2, 'String'));
A3 = str2num(get(handles.ano3, 'String'));
P1 = str2num(get(handles.p1, 'String'));
P2 = str2num(get(handles.p2, 'String'));
% Tiempo transcurrido
a = A2-A1;
% Ao 1
A = P1;
% Ao 2
B = P2;
axes(handles.axes1);
cla
axes(handles.axes2);
cla
% Tiempo, desde esl ao 1 hasta el ao 3
t1 = linspace(A1, A3, 16);
K = log(B/A)/a;
C = A;
% Crecimiento para cada ao trasncurido
P = C*exp(K*(t1-A1));
% Crecimiento total del ultimo ao
P3 = C*exp(K*(A3-A1));
set(handles.p3, 'String', P3);
for i=1:length(t1)
axes(handles.axes1);
bar(t1(1:i), P(1:i));
xlim([A1 A3])
grid on
xlim([A1 A3])
ylim([0 P3])
xlabel('\bfAO');
ylabel('\bfPOBLACION');
title('\bfCRECIMIENTO POBLACIONAL')
axes(handles.axes2);
plot(t1(1:i), P(1:i),'r', 'Linewidth', 4);
xlim([A1 A3])
grid on

xlim([A1 A3])
ylim([0 P3])
xlabel('\bfAO');
ylabel('\bfPOBLACION');
pause(0.2)
end
Texto = ['En el ao ', num2str(A3), ', existir un aproximado de ',
num2str(round(P3)), ' Personas'];
msgbox(Texto, 'Analisis de resultados', 'help')
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
set(handles.ano1, 'String', '');
set(handles.ano2, 'String', '');
set(handles.ano3, 'String', '');
set(handles.p1, 'String', '');
set(handles.p2, 'String', '');
set(handles.p3, 'String', '');
axes(handles.axes1);
cla
title('');
xlabel('');
ylabel('');
axes(handles.axes1);
cla
title('');
xlabel('');
ylabel('');
function ano3_Callback(hObject, eventdata, handles)
% hObject handle to ano3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of ano3 as text
%
str2double(get(hObject,'String')) returns contents of ano3 as a double
% --- Executes during object creation, after setting all properties.
function ano3_CreateFcn(hObject, eventdata, handles)
% hObject handle to ano3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes during object creation, after setting all properties.
function p3_CreateFcn(hObject, eventdata, handles)
% hObject handle to p3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB

% handles

empty - handles not created until after all CreateFcns called

% --- Executes on button press in pushbutton3.


function pushbutton3_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
set(handles.ano1, 'String', '2010');
set(handles.ano2, 'String', '2015');
set(handles.ano3, 'String', '2017');
set(handles.p1, 'String', '1024');
set(handles.p2, 'String', '1753');
G. PRUEBAS:

H. RESULTADOS Y CONCLUSIONES:

Se pudo comprobar que las ecuaciones diferenciales se encuentran


presentes en nuestro entorno con mucha frecuencia y en casi todas las
cosas.
Matlab es un software que nos permite visualizar un problema aplicado con
ecuaciones diferenciales de una manera sencilla.
Se realiz un programa aplicando una ecuacin diferencial.

I. RECOMENDACIONES

Antes de comenzar con el proyecto elegir con cuidado el software que va a


ser utilizado.
Aprender el uso correcto del software elegido ya que la aplicacin de
ecuaciones diferenciales requiere un proceso largo.
Buscar aplicaciones de las ecuaciones diferenciales en la vida cotidiana.

J. REFERENCIAS BIBLIOGRFICAS:
[online]:
Nombre de autor (es):
Tema:
[online]:
Nombre de autor (es):
Tema:
[online]:
Nombre de autor (es):
Tema:
[online]:
Nombre de autor (es):
Tema:

http://www.virtual.unal.edu.co/cursos/ingenieria/2001619/lecciones/descargas/senal.p
df
Bernardo A. Delicado
Manual Matlab
http://www.educ.ar/sitios/educar/recursos/ver?id=14515
Arturo Ricaurte
Manual Matlab
https://ceromascero.wordpress.com/2013/09/05/2/comment-page-1/Ing Jorge Sanches
Guillermo Endara
Ecuaciones Diferenciales En Mathlab
https://www.youtube.com/watch?v=RxtA4iVY-34
Jonnathan Mendoza
Manejo de Imgenes Matlab