Академический Документы
Профессиональный Документы
Культура Документы
FIAG - ESIC
PRESENTACIN
En la prctica de la ingeniera y ciencias es frecuente tener la necesidad de resolver un sistema de ecuaciones lineales. Estos sistemas aparecen en muy diversos problemas, ya sea como la solucin completa de un problema al menos como parte de ella. Dada esta necesidad frecuente, se requiere resolverlos en forma eficiente. Los mtodos numricos que resuelven los sistemas se pueden clasificar en directos e indirectos. Los mtodos directos son aquellos que determinan la solucin en un nmero determinado de pasos. Los mtodos iterativos son aquellos que obtienen la solucin aproximndose a ella en un nmero finito, pero no definido de pasos. La siguiente entrega pretende encontrar la solucin de un sistema de ecuaciones lineales por los mtodos anteriormente mencionados. Como los algoritmos de los mtodos ya estn disponibles en la mayora de los libros de texto sobre la materia, se explicara en la medida de lo posible, detalles de implementacin(personales)de los mtodos directos(que son mas difciles de programar). El lenguaje de programacin idneo para tal fin ser Matlab 7.0
CLCULO NMERICO
FIAG - ESIC
PROCEDIMIENTO:
Elija valores Iniciales para a y b de forma tal que lea funcin cambie de signo sobre el intervalo. Esto se puede verificar asegurndose de que :
Realizar las siguientes evaluaciones para determinar en que subintervalo se encuentra la raz:
< 0 Entonces
Entonces Entonces Calcule la nueva aproximacin: Es la Raz
CLCULO NMERICO
FIAG - ESIC
Inicio
f(x), a, b, E
v
| b-a|>E
F(a)*f(b)<0
Xap=(a+b)/2
f(a)*f(Xap)=0
No existe la raz
a=b
f(a)*f(Xap)<0
b = Xap
a = Xap
Xap
FIN
FIAG - ESIC
f=get(handles.edit1,'string'); f=inline(f); a=str2double(get(handles.edit2,'string')); b=str2double(get(handles.edit3,'string')); E=str2double(get(handles.edit4,'string')); if f(a)*f(b)< 0 while abs(b-a)>E x=(a+b)/2; if f(a)*f(x)==0 a=b; else if f(a)*f(x)<0 b=x; else a=x; end end set(handles.edit5,'string',x); end else set(handles.edit5,'string','No existe la raiz en el intervalo'); end CDIGO EN EL BOTN GRAFICAR: function varargout = pushbutton2_Callback(h, eventdata, handles, varargin) f=get(handles.edit1,'string'); f=inline(f);
CLCULO NMERICO 1
FIAG - ESIC
ezplot(f), grid on CDIGO EN EL BOTN SALIR: function pushbutton6_Callback(hObject, eventdata, handles) close
CLCULO NMERICO
FIAG - ESIC
Este mtodo est definido por el denominador hace que geomtricamente se base en una aproximacin a una recta tangente a la curva trazada en el punto correspondiente a la aproximacin presente, esto puede observarse en la figura de al lado.
Inicio
f(x), f (x), X0, E
X1 = X0 - f(X0)/f (X0)
|X1-X0| >E
X0 = X1
X1 = X0 - f(X0) / f (X0)
X1
FIN
CLCULO NMERICO