Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


codigos de codigo codigos de codigo, Esquemas de Farmacologia

codigos de codigo codigos de codigo codigos de codigo codigos de codigo codigos de codigo codigos de codigo codigos de codigo codigos de codigo codigos de codigo

Tipologia: Esquemas

2021

Compartilhado em 27/08/2021

jhonathan-laurindo
jhonathan-laurindo 🇧🇷

7 documentos

1 / 1

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
% Dados de entrada
disp ('Este programa encontra uma raiz de uma equacao nao linear');
disp(' usando o Metodo da Falsa Posiçao Modificado');
tol = input('Digite a tolerancia: ');
a = input('Digite o limite inferior do intervalo a: ');
b = input('Digite o limite superior do intervalo b: ');
% Numero maximo de iteracoes permitido
nummax = 400;
% Atribuicoes Iniciais
x0 = a;
k = 1;
F = fun_01(a);
G = fun_01(b);
% Calculo da primeira aproximacao
x1 = (a * G - b * F) /(G - F);
% Calculo das aproximacoes
while abs(fun_01(x1)) > tol || abs((x1-x0) /x1) > tol || k >= nummax
if (fun_01(a)*fun_01(x1) < 0)
a = a;
b = x1;
G = fun_01(x1);
if ( fun_01(x0)*fun_01(x1) > 0.0)
F = (fun_01(a))/2;
end
else
a = x1;
b = b;
F = fun_01(x1);
if ( fun_01(x0)*fun_01(x1) > 0.0)
G = fun_01(b)/2;
end
end
k = k + 1;
x0 = x1;
x1 = (a * G - b * F) /(G - F);
end
fprintf('Raiz encontrada com tol= %f\n',tol)
fprintf('raiz = %f\n',x1)
fprintf('Numero de iteracoes = %i\n', k)

Pré-visualização parcial do texto

Baixe codigos de codigo codigos de codigo e outras Esquemas em PDF para Farmacologia, somente na Docsity!

% Dados de entrada disp ('Este programa encontra uma raiz de uma equacao nao linear'); disp(' usando o Metodo da Falsa Posiçao Modificado'); tol = input('Digite a tolerancia: '); a = input('Digite o limite inferior do intervalo a: '); b = input('Digite o limite superior do intervalo b: '); % Numero maximo de iteracoes permitido nummax = 400; % Atribuicoes Iniciais x0 = a; k = 1; F = fun_01(a); G = fun_01(b); % Calculo da primeira aproximacao x1 = (a * G - b * F) /(G - F); % Calculo das aproximacoes while abs(fun_01(x1)) > tol || abs((x1-x0) /x1) > tol || k >= nummax if (fun_01(a)fun_01(x1) < 0) a = a; b = x1; G = fun_01(x1); if ( fun_01(x0)fun_01(x1) > 0.0) F = (fun_01(a))/2; end else a = x1; b = b; F = fun_01(x1); if ( fun_01(x0)*fun_01(x1) > 0.0) G = fun_01(b)/2; end end k = k + 1; x0 = x1; x1 = (a * G - b * F) /(G - F); end fprintf('Raiz encontrada com tol= %f\n',tol) fprintf('raiz = %f\n',x1) fprintf('Numero de iteracoes = %i\n', k)