

Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
algortimo numerico matlab Método da Bissecção
Tipologia: Notas de estudo
1 / 3
Esta página não é visível na pré-visualização
Não perca as partes importantes!


Fundação Universidade Federal de Rondônia, Núcleo de Ciência e Tecnologia, Departamento de Engenharia e Física - DENFI Curso de Bacharelado em Engenharia Elétrica - 4 o^ Período - Matrícula: 200711809 − 200711773 - Disciplina de Cálculo Numérico
Resumo—Esse relatório é baseado em um método numérico para se calcular as raízes de uma equação polinomial, que consiste em encontrar, não só o intervalo que se encontram as raízes, mas também uma aproximação, de acordo com a necessidade.
Index Terms—raízes, bissecção, aproximação, etc...
Seja f(x) uma função contínua no intervalo [a,b] e f(a).f(b)<0.
Dividindo-se o intervalo [a,b] ao meio, obtém-se x 0 , havendo, pois, dois subintervalos, [a,x 0 ] e [x 0 ,b], a ser considerados.
Se f(x 0 )=0, então, ξ=x 0 ; caso contrário, a raiz estará no subintervalo onde a função tem sinais opostos nos pontos extremos, ou seja, se f(a).f(x 0 )<0, então, ξ∈(a,x 0 ); senão f(a).f(x 0 )>0 e ξ∈(x 0 ,b).
O novo intervalo [a 1 ,b 1 ] que contém ξ é dividido a meio e obtém-se o ponto x 1. O processo se repete até que se obtenha uma aproximação para a raiz exata ξ, com a tolerância desejada.
Objetivos Gerais
Tem-se como intuito a busca de uma valor mais aproximado para raízes de equações. Ou seja, a partir dos intervalos encontrados pelo método do isolamento, obter um valor mais próximo dos zeros da função trabalhada.
Objetivos Específicos
Tem-se como objetivo específico encontrar um valor bem aproximado das raízes da seguinte equação polinomial:
p = x^3 − 9 x + 3 (1)
Materiais
Foi necessário fazer uso de um notebook, com a seguinte configuração:
E ainda:
Métodos
No matlab, criou-se o seguinte programa, com a finalidade de se calcular as raízes do polinômio desejado:
%%%Dados iniciais%%% a=2; b=3; A(1)=a; B(1)=b; f=inline(’x^3-9x+3’) %%%condição de execução%%% if f(a)f(b)> Erro (’A função não muda de sinal’) break end %%%execução%%% precisao=10^(-3) Interacoes=norm((log(b-a)-log(precisao))/log(2)) %%%looping%%% for i=1:Interacoes %comando% X(i)=((A(i)+B(i))/2); Y(i)=f(X(i)); %condição dos intervalos% if(X(i)-A(i))<precisao disp (’Houve convergência’) %Se houve convergência o sistema para% end if Y(i)== disp(’Foi encontrada uma raiz exata’) break elseif f(A(i))*Y(i)<0 %bissecção% A(i+1)=A(i); B(i+1)=X(i); else A(i+1)=X(i); B(i+1)=B(i); end %informação% Inter=i; if Inter>=Interacoes disp(’Não foi encontrado um valor com a precisão desejada’) end end %%%contruindo gráfico%%% n=length(X); K=1:n; output=[K’ A(1:n)’ B(1:n)’ X’ Y’]; disp(’Inter a b xi yi’) disp(output)
Sabendo-se que as raízes procuradas estavam entre os senguintes intervalos:
Foi aplicado o algoritmo, usando cada intervalo e refinando a resposta de acordo com a precisão desejada.
E para plotar o gráfico referente a equação, foi usado o seguinte código:
x=-5:0.1:5; p=x.^3-9*x+3; plot(x,p)
Onde foi estabelecido um intervalo de -10 a 10, onde se sabe que estão as três raízes da equação, com um passo de 0.1.
Ao executar o programa, tem-se:
f = Inline function: f(x) = x^3-9*x+
precisao =
1.0000e-
Interacoes =
E a tabela com os resultados do refinamento do primeiro intervalo:
Inter a b xi yi 1.0000 -4.0000 -3.0000 -3.5000 -8. 2.0000 -3.5000 -3.0000 -3.2500 -2. 3.0000 -3.2500 -3.0000 -3.1250 0. 4.0000 -3.2500 -3.1250 -3.1875 -0. 5.0000 -3.1875 -3.1250 -3.1563 -0. 6.0000 -3.1563 -3.1250 -3.1406 0. 7.0000 -3.1563 -3.1406 -3.1484 0. 8.0000 -3.1563 -3.1484 -3.1523 0. 9.0000 -3.1563 -3.1523 -3.1543 0.
Tabela I TABELA DE INTERAÇÕES
f = Inline function: f(x) = x^3-9*x+
precisao =
1.0000e-
Interacoes =
E a tabela com os resultado do refinamento segundo intervalo:
Inter a b xi yi 1.0000 0 1.0000 0.5000 -1. 2.0000 0 0.5000 0.2500 0. 3.0000 0.2500 0.5000 0.3750 -0. 4.0000 0.2500 0.3750 0.3125 0. 5.0000 0.3125 0.3750 0.3438 -0. 6.0000 0.3125 0.3438 0.3281 0. 7.0000 0.3281 0.3438 0.3359 0. 8.0000 0.3359 0.3438 0.3398 -0. 9.0000 0.3359 0.3398 0.3379 -0.
Tabela II TABELA DE INTERAÇÕES
O programa obteve o seguinte resultado em: 0. segundos.
f = Inline function: f(x) = x^3-9*x+
precisao =
1.0000e-
Interacoes =
E a tabela com os resultados do refinamento do terceiro intervalo:
Inter a b xi yi 1.0000 2.0000 3.0000 2.5000 -3. 2.0000 2.5000 3.0000 2.7500 -0. 3.0000 2.7500 3.0000 2.8750 0. 4.0000 2.7500 2.8750 2.8125 -0. 5.0000 2.8125 2.8750 2.8438 0. 6.0000 2.8125 2.8438 2.8281 0. 7.0000 2.8125 2.8281 2.8203 0. 8.0000 2.8125 2.8203 2.8164 -0. 9.0000 2.8164 2.8203 2.8184 0.
Tabela III TABELA DE INTERAÇÕES
Tem-se o gráfico da função polinomial gerado no matlab:
Figura 1.
Como dito anteriormente, o objetivo do código era refinar o intervalo que se encontravam as raízes em análise.
Isso ocorreu com sucessivas divisões do intervalo que se encontravam as raízes ao meio.
Caso, buscasse valores ainda mais aproximados, era só aumen- tar a precisão do código, que nesse caso foi usada uma precisão de 0.001. A partir disso, encontraram-se os valores das raízes e o gráfico referente ao polinômio, neste podendo ser observado,