Está en la página 1de 8

1

ECUACION DIFERENCIAL DE UNA FAMILIA DE CURVAS

Ing. Jonny Bastidas


Estudiantes: Bryan Meza, Eduardo Delgado, Diego Borja, Sebastián Aleaga.

Universidad de las Fuerzas Armadas ESPE Extensión Latacunga


Latacunga, Ecuador

E-mail: mailto:jrbastidas@espe.edu.ec

(Recibido el 25 de Junio 2018; Entregado el 11 de Julio2018)

Abstract

We present the development of a program in which the Solution of a Non-homogeneous differential equation is
known, by the method of indeterminate coefficients. Through software called Matlab, which allows you to enter a
source code to solve mathematical problems of all kinds, as well as graphic functions. By using this software you
can solve the characteristic equation to obtain the values of each Edo Constant. It is concluded that said program
through the application of the two presented cases provides the result that is the sum of the particular solution plus
the general solution of the Differential Equation.

Keywords: Non-homogenous Edo, Differential equations, Real constants, Characteristic equation, Factorization,
Roots, multiplicity.

Resumen

Se presenta el desarrollo de un programa en el cual se conocerá la Solución de una Ecuación diferencial No


Homogénea, por el método de coeficientes indeterminados. Mediante el software llamado Matlab, el cual permite
introducir un código fuente para resolver problemas matemáticos de toda índole, así mismo como graficar
funciones, Mediante el uso de este software se logra resolver la ecuación característica para obtener los valores de
cada Constante de la Edo. Se concluye que dicho programa mediante la aplicación de los dos casos presentados
brinda el resultado que es la sumatoria de la solución particular más la solución general de la Ecuación Diferencial.

Palabras claves: Edo No Homogénea, Ecuaciones diferenciales, Constantes Reales, Ecuación característica,
Factorización, Raíces, multiplicidad.
2

1. OBJETIVO.
1.2.2 METODO DE COEFICIENTES
1.1 OBJETIVO GENERAL: INDETERMINADOS

Elaborar mediante el software Matlab un programa Estudiamos ahora el caso no homogéneo:


que resuelva ecuaciones diferenciales lineales no
homogéneas con coeficientes constantes mediante el 𝑥 " + 𝑝𝑥 , + 𝑞𝑥 = 𝑟(𝑡)
método de los coeficientes indeterminados.
Ya sabemos que la solución general de este sistema
1.2. OBJETIVOS ESPECÍFICOS: es

 Realizar el algoritmo respectivo que 𝑥(𝑡) = 𝑥𝑝 (𝑡) + 𝑥ℎ (𝑡)


permita la correcta resolución de la
ecuación diferencial no homogénea. Donde xh(t) es la solución general del sistema
homogéneo y xp(t) es una solución particular del no
 Verificar los resultados de ejercicios
resueltos en clase mediante el uso del homogéneo.
programa hecho en Matlab.
Debemos notar de nuevo que solo estamos
interesados en la primera componente del vector
 Socializa en el aula de clase sobre el
x(t); y por lo tanto solo nos interesa la primera
desarrollo de este programa, para de esta
componente del vector xp(t), que en realidad es una
manera contribuir con lo aprendido en clase
solución particular de la ecuación no homogénea.
y aumentar el conocimiento.

1.2.2.1 CASOS
FUNDAMENTACIÓN TEÓRICA.

Para lograr una correcta realización del tema Para la solución particular existen dos casos:
propuesto se debe de conocer la teoría básica que
defina el método de coeficientes indeterminados. Caso 1

1.2 CONCEPTUALIZACION DE TERMINOS Cuando se tiene una ecuación de la forma:


FUNDAMENTAL
𝑔(𝑥) = 𝑒 ∝𝑥 𝑃𝑛(𝑥)
1.2.1 ECUACION DIFERENCIAL
ORDINARIA Y la solución particular es:

Se llama ecuación diferencial ordinaria (E. D. O.) a 𝑦𝑝 = 𝑥 𝑠 𝑒 ∝𝑥 𝑃𝑛̃(𝑥)


una ecuación diferencial en la que aparecen
Donde “s” es la multiplicidad de la raíz m= ∝
derivadas ordinarias de una o más variables
dependientes respecto a una única variable Caso 2
independiente.
Cuando se tiene una ecuación de la forma:
Una ecuación diferencial ordinaria lineal de orden n
en la variable dependiente “y” y en la variable
independiente x es una ecuación que puede
𝑔(𝑥) = 𝑒 ∝𝑥 [𝑃𝑛(𝑥) cos(𝛽𝑥) + 𝑄𝑛(𝑥)(𝑠𝑒𝑛𝛽𝑥)]
expresarse de la forma:

𝑑𝑛 𝑦 𝑑 𝑛−1 𝑦 𝑑𝑦 Y la solución particular es:


𝑎0 (𝑥) 𝑛
+ 𝑎1 (𝑥) 𝑛−1
+ ⋯ + 𝑎𝑛−1 (𝑥)
𝑑𝑥 𝑑𝑥 𝑑𝑥
+ 𝑎𝑛 (𝑥)𝑦 = 𝑏(𝑥)
3

𝑦𝑝 = 𝑥 𝑠 𝑒 ∝𝑥 [𝑃𝑘̃(𝑥) cos(𝛽𝑥) + 𝑃𝑘̃ (𝑥)(𝑠𝑒𝑛𝛽𝑥)]

𝑘 = 𝑚𝑎𝑥{𝑚, 𝑛} 2. PROCEDIMIENTO:

Donde “s” es la multiplicidad de la raíz 𝑚 =∝ ± 𝛽 Generación del código.


La idea general para el desarrollo del código se basa
en encontrar la ecuación diferencial de una familia
de curvas a partir de sus soluciones generales. El
método matemático que se utilizara es el, el cual es
el determinante de la matriz que se forma a partir de
la ecuación general y las “n-ésimas” derivadas que
se requieran.

Existen líneas de código con aplicación directa para


el desarrollo de alguna matriz, como por ejemplo,
Ilustración 2.- Soluciones particulares
magic (n), crea una matriz cuadrada n x n de enteros
Autor: tecdigital.tec.ac.cr (2011)
que sumen lo mismo las filas y las columnas.

1.2.3 EJERCICIOS
CODIGO FUENTE

Hallar una solución particular de: function varargout = Deber4(varargin)


% Deber4 MATLAB code for Deber4.fig
y"+2 y'+3 y = 6 x + 1 . % Deber4, by itself, creates a new Deber4 or raises the
existing
𝑑2 𝑑 % singleton*.
Obsérvese que al aplicar 𝐿 = +2 +3 a %
𝑑𝑥 2 𝑑𝑥
cualquier polinomio de primer grado, se obtiene otro % H = Deber4 returns the handle to a new Deber4 or
the handle to
polinomio de 1er grado. % the existing singleton*.
%
Por tanto es lógico considerar una solución de la %
forma yp = Ax+B. Sustituyendo en la ecuación Deber4('CALLBACK',hObject,eventData,handles,...) calls
diferencial: the local
% function named CALLBACK in Deber4.M with the
given input arguments.
𝐿[𝑦𝑝 ] = 0 + 2𝐴 + 3(𝐴𝑥 + 𝐵) %
% Deber4('Property','Value',...) creates a new Deber4
or raises the
% existing singleton*. Starting from the left, property
= 3𝐴𝑥 + (2𝐴 + 3𝐵) value pairs are
% applied to the GUI before Deber4_OpeningFcn gets
called. An
% unrecognized property name or invalid value makes
property application
𝑦𝑝 𝑠𝑒𝑟á 𝑠𝑜𝑙𝑢𝑐𝑖ó𝑛 𝑠𝑖: 3𝐴𝑥 + (2𝐴𝑥 + 3𝐵) % stop. All inputs are passed to Deber4_OpeningFcn
= 6𝑥 + 1 ∀ 𝑥 ∈ ℜ via varargin.
%
% *See GUI Options on GUIDE's Tools menu.
Choose "GUI allows only one
% instance to run (singleton)".
3𝐴 = 6 𝐴=2 %
𝑃𝑜𝑟 𝑡𝑎𝑛𝑡𝑜: { ⇒ {
2𝐴 + 3𝐵 = 1 𝐵 = −1 % See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help
Deber4
% Last Modified by GUIDE v2.5 10-Jul-2018 19:43:25
𝑦𝑝= 2𝑥 − 1 % Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
4

gui_State = struct('gui_Name', mfilename, ... % Hint: edit controls usually have a white background on
'gui_Singleton', gui_Singleton, ... Windows.
'gui_OpeningFcn', @Deber4_OpeningFcn, ... % See ISPC and COMPUTER.
'gui_OutputFcn', @Deber4_OutputFcn, ... if ispc && isequal(get(hObject,'BackgroundColor'),
'gui_LayoutFcn', [] , ... get(0,'defaultUicontrolBackgroundColor'))
'gui_Callback', []); set(hObject,'BackgroundColor','white');
if nargin && ischar(varargin{1}) end
gui_State.gui_Callback = str2func(varargin{1}); % --- Executes during object creation, after setting all
end properties.
if nargout % --- Executes during object creation, after setting all
[varargout{1:nargout}] = gui_mainfcn(gui_State, properties.
varargin{:}); function cibox_CreateFcn(hObject, eventdata, handles)
else % hObject handle to cibox (see GCBO)
gui_mainfcn(gui_State, varargin{:}); % eventdata reserved - to be defined in a future version of
end MATLAB
% End initialization code - DO NOT EDIT % handles empty - handles not created until after all
% --- Executes just before Deber4 is made visible. CreateFcns called
function Deber4_OpeningFcn(hObject, eventdata, handles,
varargin) % Hint: edit controls usually have a white background on
% This function has no output args, see OutputFcn. Windows.
% hObject handle to figure % See ISPC and COMPUTER.
% eventdata reserved - to be defined in a future version of if ispc && isequal(get(hObject,'BackgroundColor'),
MATLAB get(0,'defaultUicontrolBackgroundColor'))
% handles structure with handles and user data (see set(hObject,'BackgroundColor','white');
GUIDATA) end
% varargin command line arguments to Deber4 (see % --- Executes on button press in checkbox1.
VARARGIN) function checkbox1_Callback(hObject, eventdata,
% Choose default command line output for Deber4 handles)
handles.output = hObject; if (get(handles.checkbox1,'Value') ==
% Update handles structure get(handles.checkbox1,'Max'))
% UIWAIT makes Deber4 wait for user response (see condn=get(handles.proceso,'value');
UIRESUME)% uiwait(handles.figure1); if(condn==1)
% --- Outputs from this function are returned to the set(handles.cibox,'Enable','on')
command line. set(handles.cibox2,'Enable','on')
function varargout = Deber4_OutputFcn(hObject, else
eventdata, handles) set(handles.cibox,'Enable','on')
% varargout cell array for returning output args (see set(handles.cibox2,'Enable','on')
VARARGOUT); set(handles.cibox3,'Enable','on')
% hObject handle to figure end
% eventdata reserved - to be defined in a future version of else
MATLAB set(handles.cibox,'Enable','off')
% handles structure with handles and user data (see set(handles.cibox2,'Enable','off')
GUIDATA) set(handles.cibox3,'Enable','off')
% Get default command line output from handles structure end
function eq_Callback(hObject, eventdata, handles) % hObject handle to checkbox1 (see GCBO)
% hObject handle to eq (see GCBO) % eventdata reserved - to be defined in a future version of
% eventdata reserved - to be defined in a future version of MATLAB
MATLAB % handles structure with handles and user data (see
% handles structure with handles and user data (see GUIDATA)
GUIDATA) % Hint: get(hObject,'Value') returns toggle state of
% Hints: get(hObject,'String') returns contents of eq as text checkbox1
% str2double(get(hObject,'String')) returns contents of % --- Executes on button press in pushbutton2.
eq as a double function pushbutton2_Callback(hObject, eventdata,
% --- Executes during object creation, after setting all handles)
properties. global dyexpression
function eq_CreateFcn(hObject, eventdata, handles) global ciexpression
% hObject handle to eq (see GCBO) global ci2expression
% eventdata reserved - to be defined in a future version of global ci3expression
MATLAB global eqsolvef
% handles empty - handles not created until after all dyexpression=get(handles.eq,'String');
CreateFcns called ciexpression=get(handles.cibox,'String');
ci2expression=get(handles.cibox2,'String');
5

ci3expression=get(handles.cibox3,'String'); % eventdata reserved - to be defined in a future version of


ftam=get(handles.tam,'String'); MATLAB
nftam=str2num(ftam); % handles structure with handles and user data (see
v = get(handles.proceso,'Value'); GUIDATA)
if v == 1 global dyexpression
if get(handles.checkbox1,'Value')==0 dyexpression=get(handles.eq,'String');
sol=dsolve(dyexpression,'x'); pref='Hola';
elseif get(handles.checkbox1,'Value')==1 hold off
sol=dsolve(dyexpression,ciexpression,ci2expression,'x'); axes(handles.axes9);
end cla
elseif v == 2 Preview = ['$',dyexpression '$'];
if get(handles.checkbox1,'Value')==0 text('Interpreter','latex',...
sol=dsolve(dyexpression,'x'); 'String',Preview,...
elseif get(handles.checkbox1,'Value')==1 'Position',[.0 .1],...
'FontSize',25)
sol=dsolve(dyexpression,ciexpression,ci2expression,ci3ex % --- Executes on selection change in proceso.
pression,'x'); function proceso_Callback(hObject, eventdata, handles)
end global val;
end % hObject handle to proceso (see GCBO)
solf = simplify(sol) % eventdata reserved - to be defined in a future version of
hold off MATLAB
axes(handles.axes6); % handles structure with handles and user data (see
cla GUIDATA)
Texto = ['$$ y = ', char(latex(solf)), '$$']; % Hints: contents = cellstr(get(hObject,'String')) returns
text('Interpreter','latex',... proceso contents as cell array
'String',Texto,... % contents{get(hObject,'Value')} returns selected
'Position',[.0 .1],... item from proceso
'FontSize',nftam) val=get(handles.proceso,'value');
function dy=yprime(x,y) switch val
global dyexpression case 1
dy=eval(dyexpression); guidata(hObject, handles);
global ciexpression axes(handles.axes4);
CI=eval(ciexpression); cla
global ci2expression Texto = ['$$
CI2=eval(ci2expression); \frac{d^2y}{dx^n}+\frac{dy}{dx}+y=f(x,y) ==>
global ci3expression d^2y/dx^n=D2y,dy/dx=Dy$$'];
CI2=eval(ci3expression); text('Interpreter','latex',...
global eqsolvef 'String',Texto,...
dt=eval(eqsolvef); 'Position',[.0 .5],...
% hObject handle to pushbutton2 (see GCBO) 'FontSize',22)
% eventdata reserved - to be defined in a future version of case 2
MATLAB guidata(hObject, handles);
% handles structure with handles and user data (see axes(handles.axes4);
GUIDATA) cla
% --- Executes on key press with focus on cibox and none Texto = ['$$
of its controls. \frac{d^ny}{dx^n}+...\frac{dy}{dx}+y=f(x,y)=>
function cibox_KeyPressFcn(hObject, eventdata, handles) d^ny/dx^n=Dny,dy/dx=Dy$$'];
% hObject handle to cibox (see GCBO) text('Interpreter','latex',...
% eventdata structure with the following fields (see 'String',Texto,...
UICONTROL) 'Position',[.0 .5],...
% Key: name of the key that was pressed, in lower 'FontSize',22)
case end
% Character: character interpretation of the key(s) % --- Executes during object creation, after setting all
that was pressed properties.
% Modifier: name(s) of the modifier key(s) (i.e., function proceso_CreateFcn(hObject, eventdata, handles)
control, shift) pressed % hObject handle to proceso (see GCBO)
% handles structure with handles and user data (see % eventdata reserved - to be defined in a future version of
GUIDATA) MATLAB
% --- Executes on button press in pushbutton3. % handles empty - handles not created until after all
function pushbutton3_Callback(hObject, eventdata, CreateFcns called
handles)
% hObject handle to pushbutton3 (see GCBO)
6

% Hint: popupmenu controls usually have a white % eventdata reserved - to be defined in a future version of
background on Windows. MATLAB
% See ISPC and COMPUTER. % handles empty - handles not created until after all
if ispc && isequal(get(hObject,'BackgroundColor'), CreateFcns called
get(0,'defaultUicontrolBackgroundColor')) % Hint: place code in OpeningFcn to populate axes12
set(hObject,'BackgroundColor','white'); im1=imread('IngElectromecanica.jpg');
function cibox2_Callback(hObject, eventdata, handles) imshow(im1);
% hObject handle to cibox2 (see GCBO) % --- Executes during object creation, after setting all
% eventdata reserved - to be defined in a future version of properties.
MATLAB function axes13_CreateFcn(hObject, eventdata, handles)
% handles structure with handles and user data (see % hObject handle to axes13 (see GCBO)
GUIDATA) % eventdata reserved - to be defined in a future version of
% Hints: get(hObject,'String') returns contents of cibox2 MATLAB
as text % handles empty - handles not created until after all
% str2double(get(hObject,'String')) returns contents of CreateFcns called
cibox2 as a double
% --- Executes during object creation, after setting all % Hint: place code in OpeningFcn to populate axes13
properties. im1=imread('IngElectromecanica.jpg');
function cibox2_CreateFcn(hObject, eventdata, handles) imshow(im1);
% hObject handle to cibox2 (see GCBO)
% eventdata reserved - to be defined in a future version of
MATLAB ANÁLISIS DE RESULTADOS
% handles empty - handles not created until after all
CreateFcns called
Mediante la ayuda del software y una vez
% Hint: edit controls usually have a white background on comprobado el correcto funcionamiento del código
Windows. fuente así mismo como realizadas muestras con
% See ISPC and COMPUTER. diferentes Soluciones Generales, se obtuvo
if ispc && isequal(get(hObject,'BackgroundColor'), satisfactoriamente los resultados esperados, los
get(0,'defaultUicontrolBackgroundColor')) cuales son la Ecuaciones Diferenciales.
set(hObject,'BackgroundColor','white');
end
function tam_Callback(hObject, eventdata, handles)
% hObject handle to tam (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 tam as
text
% str2double(get(hObject,'String')) returns contents of
tam as a double
% --- Executes during object creation, after setting all
properties.
function tam_CreateFcn(hObject, eventdata, handles)
Ilustración 2.- Código en Matlab
% hObject handle to tam (see GCBO) Autor: Bryan Meza
% 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 axes12_CreateFcn(hObject, eventdata, handles) Ilustración 3.- Interfaz
% hObject handle to axes12 (see GCBO) Autor: Bryan Meza
7

 Revisar si todo el programa se encuentra


correctamente ejecutado, si no presenta errores
con las variables o resultados diferentes.

 Uso adecuado de los códigos en el maneo de


Matlab, se recomienda ejecutar las librerías
correctas y recursos para la facilidad de
programación.

5. REFERENCIAS

[1] Alejandre , J. L. [2001] Sistema de Ecuaciones


Matemática . http://ocw.unizar .es/ciencias-
experimentales/bloques/bloque3/ejercicios/tema3

Ilustración 4.- Interfaz [2] Arvesú . [1999] . Álgebra lineal y aplicaciones .


Autor: Bryan Meza México : Síntesís .

[3] Fernandez Gallardo , P . [2004] . El secreto de


Google y el Algebra lineal . Madrid: Valladolid.
3. CONCLUSIONES
[4] Jr., F. [1991]. Teoría y problema de matrices.
 El programa de Matlab es de una gran Barcelona : McGraw-Hill.
utilidad ya que si se programa en el mismo,
cualquier tipo de operación a resolver es de [5] Nicholson , W. [1995]. Linear Algebra whith
gran ayuda, para saber si el problema está Aplications. New York : PublishingCo.
bien resuelto además de dar una respuesta
[6] Rivera Valladares , I. [2002]. Solución de
instantánea. Es de vital importancia conocer
Sistemas de Ecuaciones Lineales mediantes el
comandos claves en la programación de
Método de Gauss – Jordan . México : Problemario .
Matlab ya que para cada función es necesita
en algunos casos tener un amplio [7] Sanz, P. [1998] . Problemas de Álgebra Lineal.
conocimiento en librería de comandos para España: Prentice Hall.
usarlos en la programación que deseemos.
6. AUTORES
 El programa es de un alto porcentaje de
efectividad ya que de una muestra de 10 Bryan Meza
intentos realizadas con ejercicios del libro
de Análisis Matemático IV se comprobó Nacionalidad: Ecuatoriano, nacido
que tuvo una efectividad del 95 % cabe el 16 de septiembre de 1995,
recalcar que todo programa tiene margen de estudios primarios Tomas Romero
error y el programa solo se lo comprobó Gross, estudios secundarios Colegio
con una muestra. Pompeya, estudios de tercer nivel
cursando en la actualidad Universidad De Las
 En un sistema de ecuaciones de solución Fuerzas Armadas Espe.
única se observa que en la interfaz nos sale
una Ecuación Diferencial respuesta para Diego Borja
cada una de las variables y cada una de las
soluciones generales, mientras que cada Nacionalidad: Ecuatoriano, nacido
variable depende de otra para la resolución el 13 de Febrero de 1995, estudios
del sistema, y en el último mensaje nos primarios Escuela Luis Gonzalo,
muestra que no tiene solución ya que estudios secundarios Colegio
ningún número es capaz de dar solución a Técnico San Gabriel La Troncal.
sistema de ecuaciones planteadas. De tercer nivel cursando en la
actualidad Universidad De Las Fuerzas Armadas.
4. RECOMENDACIONES
8

Sebastián Aleaga

Nacionalidad: Ecuatoriano, nacido


el 01 de Junio 1993, estudios
primarios Escuela San Albuja
Ambato, Estudios secundarios
Colegio Técnico Ambato. Estudios
de tercer nivel cursando en la
actualidad Universidad De Las
Fuerzas Armadas Espe.

Eduardo Delgado

Nacionalidad: Peruano, nacido el


01 de Junio 1993, estudios
primarios Escuela San Albuja
Ambato, Estudios secundarios
Colegio Técnico Ambato. Estudios
de tercer nivel cursando en la
actualidad Universidad De Las Fuerzas Armadas
Espe.

También podría gustarte