La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

CODIFICACIÓN EN MATLAB MÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓNMÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓN MÉTODOS NUMÉRICOS PARA.

Presentaciones similares


Presentación del tema: "CODIFICACIÓN EN MATLAB MÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓNMÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓN MÉTODOS NUMÉRICOS PARA."— Transcripción de la presentación:

1 CODIFICACIÓN EN MATLAB MÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓNMÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓN MÉTODOS NUMÉRICOS PARA SOLUCIONAR SISTEMAS DE ECUACIONESMÉTODOS NUMÉRICOS PARA SOLUCIONAR SISTEMAS DE ECUACIONES MÉTODOS NUMÉRICOS PARA SOLUCIONAR DERIVADASMÉTODOS NUMÉRICOS PARA SOLUCIONAR DERIVADAS MÉTODOS NUMÉRICOS PARA SOLCIONAR INTEGRALESMÉTODOS NUMÉRICOS PARA SOLCIONAR INTEGRALES MÉTODOS NUMÉRICOS PARA SOLUICONAR ECUACIONES DIFERENCIALES ORDINARIASMÉTODOS NUMÉRICOS PARA SOLUICONAR ECUACIONES DIFERENCIALES ORDINARIAS

2 Algoritmo método de Bisección Definir intervalos x1 y x2 mediante el método grafico Determinar la raíz aproximada X1/2=(x1+x2)/2 Evaluar las funciones F(x1/2)*f(x1) 0 X1/2=X2 SÍ NO X1/2=X1 Evaluar el error E= abs(Xnew –Xant)/Xnew*100 E 1x10 -4 Imprimir X1/2 como la raíz Final SI NO

3 Método de Bisección 'METODO DE BISECCION' x1 =12; x2 =16; error= ; iteracion=0; fxr=1; while abs(fxr)>error xr = (x1+x2)/2; fx1 = (667.38/x1)*(1-exp(-0.14*x1))-40; fxr = (667.38/xr)*(1-exp(-0.14*xr))-40; if (fxr*fx1) > 0; x1=xr; else x2=xr; end iteracion=iteracion+1; end syms x ezplot((667.38/x)*(1-exp(-0.14*x))-40,[10,20]) grid disp('la raíz es'), disp(xr) disp('el número de iteraciones es'), disp(iteracion)

4 Método Falsa Posición Definir intervalos x1 y x2 mediante el método grafico Evaluar f(x1) y f(x2) Determinar la raíz aproximada Xr = X2 Evaluar el error E= abs(Xnew –Xant)/Xnew*100 E 1x10 -4 Imprimir Xr como la raíz Final SI NO

5 Método de Falsa Posición 'METODO DE FALSA POSICION' x1=12; x2=16; error= ; iteracion=0; fxr=1; while abs(fxr)>error fx1=(667.38/x1)*(1-exp(-0.14*x1))-40; fx2=(667.38/x2)*(1-exp(-0.14*x2))-40; xr=x2-(fx2*(x1-x2)/(fx1-fx2)); fxr=(667.38/xr)*(1-exp(-0.14*xr))-40; x1=xr; x2=x2; iteracion=iteracion+1; end syms x ezplot((667.38/x)*(1-exp(-0.14*x))-40,[10,20]) grid disp('la raíz es'), disp(xr) disp('el número de iteraciones es'), disp(iteracion)

6 Método de la secante 'METODO DE LA SECANTE' x1=16; x2= x1-1; error= ; iteracion=0; fxr=1; while abs(fxr)>error fx1=(667.38/x1)*(1-exp(-0.14*x1))-40; fx2=(667.38/x2)*(1-exp(-0.14*x2))-40; xr=x1-(fx1*(x2-x1)/(fx2-fx1)); fxr=(667.38/xr)*(1-exp(-0.14*xr))-40; x2=x1; x1=xr; iteracion=iteracion+1; end syms x ezplot((667.38/x)*(1-exp(-0.14*x))-40,[10,20]) grid disp('la raíz es'), disp(xr) disp('el número de iteraciones es'), disp(iteracion)

7 Método de Gauss Simple 'METODO DE GAUSS-SIMPLE' A=[-1.5,8,5,65;1,0.40,-3,-55;-8/3,5,-4,22]; B=A(1,:); C=A(2,:)-((A(2,1)/A(1,1))*B); D=A(3,:)-((A(3,1)/A(1,1))*B); A=[B;C;D] B=A(1,:); C=A(2,:); D=A(3,:)-((A(3,2)/A(2,2))*C); A=[B;C;D] Z=A(3,4)/A(3,3); Y=(A(2,4)-(A(2,3)*Z))/A(2,2); X=(A(1,4)-(A(1,3)*Z)-(A(1,2)*Y))/A(1,1); disp('la solucion del problema es:'),X,Y,Z

8 Método de Gauss Simple 'METODO DE GAUSS-JORDAN' A=[-1.5,8,5,65;1,0.40,-3,-55;-8/3,5,-4,22]; B=A(1,:)*1/A(1,1); C=A(2,:)-(A(2,1)*B); D=A(3,:)-(A(3,1)*B); A=[B;C;D]; C=A(2,:)*1/A(2,2); B=A(1,:)-(A(1,2)*C); D=A(3,:)-(A(3,2)*C); A=[B;C;D]; D=A(3,:)*1/A(3,3); B=A(1,:)-(A(1,3)*D); C=A(2,:)-(A(2,3)*D); A=[B;C;D]; X=A(1,4); Y=A(2,4); Z= A(3,4); disp('la solucion del problema es:'),X,Y,Z

9 Derivadas e Integrales Analíticas DERIVADAS diff('3*(x*y)^3') calcula la 1ra derivada analítica con respecto a x diff('3*(x*y)^3',y) calcula la 1ra derivada analítica con respecto a y diff('3*(x*y)^3',y,2) calcula la 2da derivada analítica con respecto a y pretty(diff('3*(x*y)^3',x)) escribe la derivada analítica en forma de caligrafíaINTEGRALES int('3*(x*y)^3') calcula la integral analítica pretty(int('3*(x*y)^3')) escribe la integral analítica en forma de caligrafía

10 Integral Definidas int('3*(x)^3',2,5) Derivadas en un punto x = 2 eval(diff('3*(x)^3'))

11 Graficar derivadas e integrales ezplot(diff('sin(y)'),[pi,2*pi]) ezplot(int('sin(y)'),[pi,2*pi]) ezplot(diff('3*x^3'),[2,22]) ezplot(int('3*x^3'),[2,22])

12 Ajuste de Datos e Interpolación Graficar los datos originales y fijar los coeficientes del polinomio x=[0,1,2,3,4,5,6]valores de x y=[0,1,3.3,2.2,5.6,4.4,5.6] valores de y plot(x,y,'*') grafica los datos originales a=polyfit(x,y,3) fija los coef. del polinomios de 3orden Graficar el polinomio junto a los datos originales x1=linspace(0,7,100);distribuye nuevos x1 p1=polyval(a,x1);evalúa el polinomio de grado 3 plot(x,y,-,x1,p1) grafica el polinomio junto a los datos originales

13 SOLUCION RAPIDA DE UN SISTEMA DE ECUACIONES 1. Introducir la matriz solo de coeficientes de las variable A=[1,2,3,4,5,6;7,8,9,12,2,3;4,5,6,7,8,9;0,15,3,4,5,6;7,8,9,1,3,23;2,4,5,7,8,9] A = Introducir la matriz de los terminos dependientes C=[34;23;45;35;26;89] C = Calcular la matriz inverza de A con el producto del vector C d=inv(A)*(C) 4. Obtención del vector resultante con x,y,z,w… d =

14 Solución analitica de ecuaciones diferenciales ordinarias ECDO dsolve('D2y + y =4,x) calcula la solución analítica de la ECDO Respuesta/4+C1*sin(x)+C2*cos(x) solve('D2y + y =4','y(0)=1','Dy(0)=0,x) solución de ECDO con valores iniciales Respuesta/4-3*cos(x)

15 Solución numérica de ECDO 1.Archivo.m en donde se introduce la ecuacion ECDO % archivo dy.m para solucionar una ECDO function yderivada = dy(t,y) yderivada = -2*y*t; 2. En la plataforma de inicio de matlab yinicial=2; [t,y]=ode45('dy',[0,2],yinicial); plot(t,y) grid


Descargar ppt "CODIFICACIÓN EN MATLAB MÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓNMÉTODOS NUMÉRICOS PARA HALLAR LA RAÍZ DE UNA FUNCIÓN MÉTODOS NUMÉRICOS PARA."

Presentaciones similares


Anuncios Google