Cálculo numérico - métodos numéricos em matlab

Disponível somente no TrabalhosFeitos
  • Páginas : 6 (1315 palavras )
  • Download(s) : 0
  • Publicado : 29 de setembro de 2011
Ler documento completo
Amostra do texto
bUniversidade Federal de Itajubá UNIFEI

Cálculo Numérico

Carlos Eduardo Teixeira
Acadêmico em Engenharia Elétrica – Ênfase em Eletrônica

2

SUMÁRIO
1. MÉTODOS NUMÉRICOS EM MATLAB .................................................................................... 3 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 1.7. 1.8. 1.9. Dicotomia ou Bisseção.................................................................................................. 3 Eliminação de Gauss...................................................................................................... 4 Falsa Posição ................................................................................................................. 6 Newton-Raphson:......................................................................................................... 8 Newton Modificado ...................................................................................................... 9 Newton Modificado para Sistemas ............................................................................. 10 Newton-Raphson para Sistemas ................................................................................. 12 Ponto Fixo Ou IteraçãoLinear ..................................................................................... 14 Método da Secante ..................................................................................................... 15

3

1. MÉTODOS NUMÉRICOS EM MATLAB 1.1.
clc

Dicotomia ou Bisseção
clear all

fprintf('%s\n','==============================='); fprintf('%s\n','Método de Dicotomia ouBisseção'); fprintf('%s\n','===============================');

fprintf('\nFunção:\n'); fx = input('f(x) = ', 's'); fprintf('\nLimite inferior do intervalo:\n'); a = input('a = ', 's'); fprintf('Limite superior do intervalo:\n'); b = input('b = ', 's'); fprintf('Tolerância:\n'); E = input('E = ', 's');

a=str2num(a); b=str2num(b); E=str2num(E);

k = ceil((log(b-a) - log(E))/log(2) - 1); j = k;y = zeros(j,1); k=0; fprintf('%s\n',' '); fprintf('%s\n','-----------------------------------------------------------------------'); fprintf('%s\n',' iteração a b x f(x) c ');

fprintf('%s\n','-----------------------------------------------------------------------'); c=(b-a)/2;

while c>=E c=(b-a)/2; y(k+1,1) = (a+b)/2; x = y(k+1,1); fx1 = eval (fx);

fprintf('

%2d

%10.8f %10.8f%10.8f %10.8f %10.8f\n',k,a,b,y(k+1,1),fx1,c);

x = a; fa = eval (fx); x = b; fb = eval (fx);

if (fa*fx1=E))

x = x1; fx1 = eval(fx); dx1 = eval (dx);

9

fprintf(' %2d

%10.8f

%10.8f

%10.8f

%10.8f \n',k,x,fx1,dx1,c);

x1 = x - fx1/dx1;

c = (x1 - x); k = k+1; end;

k = k-1; fprintf('\nRaíz aproximada => x(%d) = %10.8f\n', k, x);fprintf('%s\n','-------------------------------------------------------------------------');

end

1.5.
clc

Newton Modificado
clear all

fprintf('%s\n','==========================='); fprintf('%s\n','Método de Newton Modificado'); fprintf('%s\n','===========================');

fprintf('\nFunção:\n'); fx = input('f(x) = ', 's'); fprintf('Tolerância de |f(x)|:\n'); delta = input('d = ', 's'); fprintf('Tolerância de |x(k) -x(k-1)|:\n'); E = input('E = ', 's'); fprintf('Aproximação inicial:\n'); x0 = input('x(0) = ', 's');

delta=str2num(delta); x0=str2num(x0); E=str2num(E);

dx = diff(fx); k=0; x = x0; fx1 = eval (fx); dx0 = eval (dx);

if (abs(fx1)=delta) && (abs(c)>=E))

x = x1; fx1 = eval(fx);

fprintf(' %2d

%10.8f

%10.8f

%10.8f \n',k,x,fx1,abs(c));

x1 = x - fx1/dx0; c = (x1 - x); k = k+1;end;

k = k-1; fprintf('\nRaíz aproximada => x(%d) = %10.8f\n', k, x); fprintf('%s\n','---------------------------------------------------------');

end

1.6.
clc

Newton Modificado para Sistemas
clear all

fprintf('%s\n','========================================='); fprintf('%s\n','Método de Newton Modificado para Sistemas'); fprintf('%s\n','=========================================');...
tracking img