TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

TRABALHO PRÁTICO CALCULO NUME RICO

Por:   •  24/10/2019  •  Trabalho acadêmico  •  2.714 Palavras (11 Páginas)  •  459 Visualizações

Página 1 de 11

TRABALHO PRÁTICO

CLENILTON DE SOUSA ALVES

Introdução

Nas mais diversas áreas da ciência ocorrem, frequentemente, situações envolvendo a resolução de uma equação do tipo f(x)=0. Se a função for igual a zero, os valores de x que tornam essa equação verdadeira são chamados de raízes da função. Para isto utilizaremos os métodos citados abaixo.

O Método da Bisseção, escolhemos dois pontos  de modo que  tenha sinais contrários, se  for igual a 0, a raiz já foi encontrada. Caso contrário a raiz está entre os dois pontos. Em cada iteração é feita a média aritmética dos extremos desse intervalo. [pic 3][pic 4][pic 5]

No Método ponto fixo, observamos que sempre podemos reescrever uma equação da forma  em uma equação equivalente na forma  (problema de ponto fixo). Geometricamente, um ponto fixo de uma função é um ponto de interseção entre a reta .[pic 6][pic 7][pic 8]

O método de Newton é uma tentativa de garantir e acelerar a convergência, ele consiste de a partir de um número Pn inicial, arbitrariamente escolhido, traçar a reta tangente da derivada da função no ponto Pn e achar Pn+1 da seguinte maneira:

[pic 9]

A sua velocidade de convergência é quadrática.

Enquanto, o método de Newton está relacionado às retas tangentes ao gráfico da função objetivo f(x), o método das secantes, como o próprio nome indica, está relacionado às retas secantes. Dessa forma o método das secantes é uma variação do método de Newton, evitando a necessidade de conhecer-se a derivada analítica de f(x).

Com isso, utilizaremos os métodos numéricos para resolver computacionalmente com o compilador Dev-C++ o exercício: f(x)=, em um intervalo de [0,1], com erro absoluto inferior a . [pic 10][pic 11]

Objetivo

O objetivo deste exercício é achar a raiz da função, ou seja, um valor de no qual a função vale zero. Para isto utilizaremos quatro métodos, o método da bissecção, o método do ponto fixo, o método da secante e o método de newton-raphson.

Códigos e Resultados

Método da bissecção

Para escrever o algoritmo seguir os seguintes passos:

Passo 1.

  1. Intervalor inicial [0,1]

1.2 Precisão do resultado [pic 12]

Posso 2. Definir um contador de iterações k=0 (nesse caso usando a formula)

Passo 3. Se , então o intervalo já está ótimo. Se não continua para o Passo 4.[pic 13]

Paso 4. K=k+1, aumentando uma iteração no contador.

Passo 5. [pic 14]

Passo 6. fazemos b=m, caso contrário a=m.[pic 15]

Passo 7. Voltamos para o passo 3. Ficamos nesse ciclo até o programa fique com a precisão de . [pic 16]

#include

#include

#include

#include

double funcao (double x){ ///função para cálculo da 'função'(que se quer descobrir o zero da função) no ponto

return (pow(x,3)-9*x+3);

}

int  main(){

double m, erro=0.0001, erro2, k, a=0, b=1, f1,i=0, f2,f3;

printf("\t\t\tALGORITMO DA BISSECCAO\n\n");

printf("\t\t\tAluno: Clenilton Alves\t\t\t\t\t\t\n\n");

f3=funcao(b);

f1=funcao(a);

k= (log(b-a)-log(erro))/log(2);  

        if(f1*f3<0){

                m=(a+b)/2;

                printf("\t---------------------------------------------------------------------\n");

                printf("K            a           b            x0        f(x0)            erro\n");        

        for(i=0;i<=k;i=i+1){ //loop

                m=(a+b)/2;        

                f1=funcao(a);

                 f2=funcao(m);

         if(f1*f2<0){

                a=a;

                b=m        ;

                erro2=(b-a);

}

         else{

                a=m;

                 b=b;

                 erro2=fabs(b-a);

}

                 printf ("\n%.0f\t %.8f  %.8f  %.8f  %.8f \t%.8f",  i, a, b, m, f2, erro2);

}

                printf ("\n\n\n\tRaiz = %.8f ", m);

                printf ("\n\n\n\tErro eh = %.8f < 0.0001", erro2);

}

else {

                printf ("\n\n\nIntervalo incorreto ");

}

}        

Obtive a seguinte resposta:

[pic 17]

Método do ponto fixo

Passo 1.

  1. Aproximação inicial do  nesse caso usei o próprio b do intervalo.[pic 18]
  2. Utilizei dois erros .[pic 19]

Passo 2. Definir um contador de iterações.

Passo 3.  [pic 20]

Passo 5. Se   continue para o passo 6.[pic 21]

Passo 6= k=k+1.

Passo 7. .[pic 22]

Passo 8. Volta ao passo 3.

#include

#include

#include

#include

double funcao (double x){

return ( -3/(x*x -9));

}

double funcao2 (double x){

return (pow(x,3)-9*x+3);

}

main(){

printf("\t\t\tALGORITMO DO PONTO FIXO\n\n");

printf("\t\t\tAluno: Clenilton Alves\t\t\t\t\t\t\n\n");

printf("\t----------------------------------------\n");

...

Baixar como (para membros premium)  txt (10.1 Kb)   pdf (441.2 Kb)   docx (798.8 Kb)  
Continuar por mais 10 páginas »
Disponível apenas no TrabalhosGratuitos.com