0% encontró este documento útil (0 votos)
9 vistas4 páginas

Error Euler

Cargado por

Alexis Urcuango
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
9 vistas4 páginas

Error Euler

Cargado por

Alexis Urcuango
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

ESCUELA POLITÉCNICA

NACIONAL FACULTAD DE
INGENIERÍA MECÁNICA
CARRERA EN MECÁNICA
MÉTODOS NUMÉRICOS
(GR3)
2024B

Nombre: David Urcuango

DEBER Método Euler con error local:


Tabla 1. Valores para método de Euler, valor real, error global y local.
Figura 1. Gráfica del método de Euler y valor real.
Anexo: Implementación del código.
clc;clear;close all;

% Defino la función dy/dx:


f = @(x, y) -2*x.^3 + 12*x.^2 - 20*x + 8.5;

% Defino la función real (exacta) de y:


fr = @(x) -0.5*x.^4 + 4*x.^3 - 10*x.^2 + 8.5*x + 1;

% Condiciones iniciales:
xo = 0;
yo = 1;

h = 0.5; % Paso h
% Definir el intervalo de integración
x = xo:h:4;

% Calculo los valores reales de y (exactos)


yreal = fr(x);

% Prealoco el vector de soluciones y (método de Euler):


y = zeros(length(x), 1);
y(1) = yo;
yc=zeros(length(x), 1);

% Prealoco el vector de errores globales:


error_global = zeros(length(x), 1);
error_local = zeros(length(x), 1);
error_local(1)=100;
% Método de Euler:
for i = 1:length(x)-1
% Actualizo y(i+1) usando el método de Euler
phi = f(x(i), y(i));
y(i+1) = y(i) + h * phi;
% Valor corregido para error local:
yc(i+1)=yreal(i)+h*phi;
% Cálculo el error global:
error_global(i+1) = ((yreal(i+1) - y(i+1)) / yreal(i+1)) * 100;
%Calculo error local:
error_local(i+1) = ((yreal(i+1) - yc(i+1)) / yreal(i+1)) * 100;

end

% Crear la tabla con los valores de x, dy/dx, y_euler, y_real y el error


global
x = (xo:h:4)'; %Intervalo
dy_dx = f(x, y); % Valores de dy/dx
y_euler=y;
y_real = yreal'; %Valores reales
error_G = error_global; %Valores de error global
error_L=error_local; %Valores de error local

% Generar la tabla
T = table(x, dy_dx, y_euler, y_real, error_G, error_L, ...
'VariableNames', {'Intervalo', 'dy_dx', 'y_euler', 'y_real',
'Error_global', 'Error_local'});
disp(T);

% Gráfico de la solución numérica:


figure;
plot(x, y, 'o-', 'LineWidth', 2); % Método de Euler
hold on;
plot(x, yreal, 'r-', 'LineWidth', 2); % Solución real
xlabel('x');
ylabel('y');
title('Solución utilizando el método de Euler y la solución real');
legend('Euler', 'Solución Real');
grid on;

También podría gustarte