You are on page 1of 45

ENG

G 17114 – M
Métodoos Nu
umériccos paara
EEngennhariaa Mecânica

http://carvalho.u
usuarios.rrdc.puc-rio.br/ENG
G1714/
ENG 1714 – Métodos Numéricos para
Engenharia Mecânica
http://lmmp.mec.puc-rio.br/eng1714/
Professor: Márcio Carvalho, Sala 153-L, Tel:3527-1174, email: msc@puc-rio.br

Monitoria:

Horário: 3a: 15:00 – 17:00 – Sala 258L


5a: 15:00 – 17:00 – Sala 258L

Atendimento: O aluno deve me procurar sempre que tiver alguma dúvida.

2  G1  3  G 2 G1  3  G 2
Critério de Aprovação: M   5. Se G 2  3, M   5 . G1 e G2 são
5 4
calculados da seguinte forma:

Media Listas  P
Se P  4, G 
2

Se P  4, G  P

Objetivo: Introduzir os conceitos básicos de métodos numéricos para solução de problemas em engenharia.

Ementa: Introdução; Integração numérica; Cálculo de raiz de equação transcendental; Interpolação e Ajuste
de Curvas; Solução de sistemas de equações algébricos; Sistemas não-lineares; Equações Diferenciais
Ordinárias; Problema de Valor Inicial; Problema de Valor de Contorno; Equações Diferenciais Parciais;
Otimização.

Bibliografia:

 Métodos Numéricos para Engenharia ,S. C. Chapra e R. P. Canale; McGraw Hill, 2002.
 Análise Numérica, R. L. Burden e J. Douglas Faires, Thomson, 2003.
 Numerical Recipies, W. H. Press, B. P. Flannery, S. A. Teukolsky e W. T. Vetterling; Cambridge
University Press, 1986.
 Numerical Methods, G. Dahlquist, A. Bjorck e N. Anderson; Prentice Hall, 1974.
 Manual do Scilab
Departamento de Engenharia Mecânica

ENG 1714- Métodos Numéricos para Eng. Mecânica

Prof. Marcio S. Carvalho

email: msc@puc-rio.br
Sala: 153-L
Tel: 3527-1174

INTRODUÇÃO
APLICAÇÕES DE MÉTODOS NUMÉRICOS
 Tratamento de Dados Estatísticos

Análise de sinais
Cálcular de média, desvio padrão, variância, etc…
Determinar equação da curva que melhor descreve os
resultados de um experimento

y  f (x) ?

 Simulação de sistemas

Previsão de comportamento de um sistema


Projeto mais barato e de melhor desempenho
Verificação
MODELAGEM E SIMULAÇÃO
PROBLEMA REAL

MODELO FÍSICO

MODELO MATEMÁTICO MODELO EXPERIMENTAL

MÉTODOS NUMÉRICOS TÉCNICAS EXPERIMENTAIS

PREVISÕES PREVISÕES

MODELO MATEMÁTICO
 Conjunto de equações que descrevem um determinado fenômeno físico

 Modelo é desenvolvido a partir de hipóteses simplificadoras

Hipóteses simplificadoras são importantes para facitilar a solução


Hipóteses devem ser coerentes com o fenômeno a ser descrito
Engenharia: Uso correto de hipóteses simplificadoras
Hipóteses erradas levarão a predições incorretas

 Qualidade das predições está diretamente ligada ao modelo usado

 Compromisso entre custo para solução das equações e qualidade dos resultados

 Modelo pode ser DIFERENCIAL ou INTEGRAL

 Modelos diferenciais geralmente levam a equações sem solução analítica

 Necessidade de desenvolvimento de ferramentas para resolver as equações


IMPORTÂNCIA DE PREDIÇÃO
 Projeto de engenharia mais econômico

 Otimização de projetos

 Análise de situações sem dados experimentais

 Determinação de desempenho em casos limites

MÉTODOS DE PREDIÇÃO
 Modelo Experimental

Em escala ou escala reduzida


Custo financeiro e de tempo elevado
Difícil de analisar efeitos de condições isoladas
Fundamental para validar modelos teóricos

 Modelo Matemático

Baixo custo
Possibilidade de analisar diversos casos e otimizar projeto
Velocidade de obter resposta
Habilidade de simular condições reais e ideais
Necessidade de validar modelos matemáticos

 Comentários

Ideal: Combinação de experimentos e modelos matemáticos


MÉTODOS NUMÉRICOS

PROBLEMA REAL: TRANSFERÊNCIA DE CALOR

MODELO: CONSERVAÇÃO DE ENERGIA + LEI DE FOURIER

d  dT 
EQUAÇÃO DIFERENCIAL  k (T )  G ( x) T ( x)  ?
dx  dx 

DETERMINAR TEMPERATURA APENAS EM ALGUNS PONTOS DO DOMÍNIO

DISCRETIZAR O PROBLEMA

EQUAÇÃO DIFERENCIAL  EQUAÇÃO ALGÉBRICA

DIFERENTES MÉTODOS NUMÉRICOS

 DIFERENÇAS FINITAS

 ELEMENTOS FINITOS

 VOLUMES FINITOS

 ELEMENTOS DE CONTORNO

 ELEMENTOS ESPECTRAIS

 OUTROS ...
ESCOLHA DE SOFTWARE

 Softwares comerciais para diferentes aplicações

Análise estrutural: ANSYS, ADINA, ...


Escoamento de Fluidos: FLUENT, FIDAP, FLOW3D, ...
Fenômenos de Transferência: FLUENT, ...

 Softwares comerciais ou desenvolvidos

Versatilidade X desempenho
Desenvolvidos: Novos modelos
Comerciais: Mais “userfriendly”, interface gráfica

 Treinamento

Fundamentos físicos
Uso do software

EMENTA

 Cálculo de raiz de equação


 Interpolação e ajuste de curva
 Integração numérica
 Solução de sistema de equações algébricas
 Solução de sistema não-linear
 Descrição matemática de fenômenos físicos
 Equação diferencial ordinária - Problema de Valor de Contorno
Problema de Valor Inicial
 Equação diferencial parcial
 Método de diferenças finitas, elementos finitos e volumes finitos
 Otimização
INTRODUÇÃO ao SciLab

 Software e linguagem e ambiente de programação para cálculos matemáticos

 Possui diversas rotinas de cálculo matemático já programadas e testadas

 Possibilidade de criar programas e novas rotinas de acordo com


a necessidade do usuário

http://www.scilab.org/
http://www.scilab.org/resources/documentation/tutorials

Introscilab.pdf

Scilab_beginners.pdf

JANELA DE COMANDO - COMMAND WINDOW


Diretorio de trabalho

Janela de variaveis

Janela de comando
VARIÁVEL TIPO VETOR - ARRAY

Variável tipo vetor Variáveis criadas aparecem


na janela de variáveis.

Cria um vetor z(i) tal que z(i)=5*sin(u(i))

GRÁFICOS
JANELA DE PROGRAMAÇÃO / EDIÇÃO

 Criar uma nova janela de programação

 Edição do programa. O arquivo deve ser salvo como *.sce


 Para executar o programa, deve-se primeiro trocar o diretório de trabalho

 Para executar o programa:

clicar na própria janela de edição

na janela de comando: exec(‘nome do arquivo’,-1)


 Estruturas de programação

For

While

if / else
Exercícios
1) Escreva um programa em MatLab para efetuar a multiplicação entre duas matrizes.
O programa deve primeiro ler o número de linhas e colunas de cada matriz e o valor de cada
entrada das matrizes. Antes de efetuar a operação, o programa deve verificar se a mesma é possível,
i.e. se o número de colunas de uma matriz é igual ao número de linhas da outra.

2) Escreva um programa que calcule as raízes reais de um polinômio do 2o grau ax 2  bx  c  0 .


O programa deve seguir os seguintes passos: (i) ler os coeficientes do polinômio; (ii) Calcular as raízes,
tomando o cuidado para evitar divisão por zero e raízes complexas; (iii) Mostrar as soluções obtidas;
(iv) Perguntar ao usuário se ele quer voltar ao passo (i).

1)
2)
AJUSTE DE CURVAS E INTERPOLAÇÃO
OBJETIVO
Conhecendo-se os valores de uma função em pontos discretos de um intervalo,
deseja-se determinar uma curva que “represente” esta função neste intervalo.

f1*(x) f2*(x)

x x
APLICAÇÕES
Ajuste de dados experimentais - Estes carregam incertezas.
Ajuste dos dados de acordo com um modelo – Esta abordagem permite a
obtenção de parâmetros que possuam interpretação física. Ex. f1(x): .
Necessidade de integração da função em questão.
Desejo de se conhecer o valor da função em pontos específicos não dados.
Aproximar uma função por outra menos complexa, de fácil aplicação.

TIPOS DE PROCESSOS

AJUSTE DE CURVAS
Tem-se um conjunto de pontos e deseja-se uma f*AC(x)
curva que passe “próxima” destes pontos. A
equação da curva ajustada deve possuir um
número de parâmetros menor que o número de
pontos dados.
x
Dados n pontos xi, f(xi) no intervalo (a,b) obtém-se f*(x) tal que | f*(xi)-f(xi) |<

INTERPOLAÇÃO PADRÃO
Tem-se um conjunto de pontos e deseja-se f*IP(x)
obter uma curva que passe suavemente
através de todos os pontos. A equação da
curva interpoladora deve possuir o
mesmo número de parâmetros que o número
de pontos dados. x

Dados n pontos xi, f(xi) no intervalo (a,b) obtém-se f*(x) tal que f*(xi)=f(xi)
MÉTODO DOS MÍNIMOS QUADRADOS

É o método mais utilizado para ajuste de curvas.


A condição que determina a curva a ser obtida é a minimização da soma dos
quadrados das diferenças entre os valores da função a ser determinada e da
função original calculados nos pontos dados.

f*(x)
n pontos

QUANTIDADE MINIMIZADA
n
E=i=1 [f*(xi)-f(xi)]2 f*(xi)-f(xi)

EXEMPLO SIMPLES

Dada a tabela de pontos ao lado, x 1 3 4 6 7


determinar a reta que se ajusta a
estes pontos utilizando o método f(x) -2,1 -0,9 -0,6 0,6 0,9
de mínimos quadrados

SOLUÇÃO
1.5

Plotando-se os pontos dados, obtem-se o 1

gráfico discreto ao lado. 0.5

0
0 2 4 6 8
A função escolhida para representar -0.5

estes pontos é do primeiro grau, portanto -1

-1.5

f *  x   mx  k -2

-2.5

A aplicação do método, neste caso, resultará na determinação dos valores dos


coeficientes angular e linear da reta que se ajusta a estes pontos, segundo o
critério da minimização da soma dos quadrados dos desvios.
CÁLCULO DA SOMA DO QUADRADO DOS DESVIOS

 
n 5
E   f * xi   f  xi    mxi  k  f xi 
2 2

i 1 i 1

Pode-se perceber que a grandeza a ser minimizada, com o


procedimento adotado, é escrita como uma função dos coeficientes.

E  E m, k 

A escolha dos coeficientes que minimizam E deve, portanto, ser tal que:

E 5 
 0  2 mxi  k  f  xi  xi  0
m  i 1 
E  5

 0  2  mxi  k  f  xi   0
k  i 1 

m e k são raizes do sistema de equações.

5 5 5
 m  xi2  k  xi   xi f  xi   0 i xi f(xi) xi2 xi*f(xi)
i 1 i 1 i 1 1 1 -2.1 1 -2.1
5 5 5 2 3 -0.9 9 -2.7
 m  xi  5  1   f  xi   0 3 4 -0.6 16 -2.4
i 1 1
i i 1
4 6 0.6 36 3.6
5
5 7 0.9 49 6.3
sum 21 -2.1 111 2.7
 5 5
   5

 xi x  xi f  xi 
2
i
m 
 i 51 i 1
     i 15  57.6 -290 0.505 -2.54
  xi 5   k    f  xi   114
 i 1   i 1 

111 21 m   2.7  m  1  5  21  2.7 


       2.1    
 21 5   k    k  111  5  212  21 111   2.1

m  0.505 
    
k   2.542
CÁLCULO DO ERRO
1.5

Erro absoluto 0.5

E A  f ( xi )  f ( xi ) *
-0.5
0 2 4 6 8

-1

-1.5

Erro relativo -2

-2.5

f ( xi )  f * ( xi )
ER 
1.5

f ( xi ) 1

0.5

0
0 2 4 6 8
Erro quadrático -0.5

-1

EQ   f ( xi )  f * ( xi )
2 -1.5

-2

-2.5

Erro Abs. Erro Rel. Erro Quad.

CASO MAIS GERAL


Para um caso mais geral, onde a função de ajuste é formada por uma combinação
linear de funções linearmente independentes, tem-se:
m
f * ( x)   c  ( x)
j 1
j j  c11 ( x)  c22 ( x)    cmm ( x)

E
  f  x   f  x 
n
2
E  *
m incógnitas
 0
i 1
i i
c j

Exemplos: m equações

(1) f * ( x)  ax

2

 bx
c Nestes problemas, recai-se em
E
0
E
0
E
0
um sistema de m equações
a b c (derivando-se E em relação a
cada coeficiente) e m
(2) f * ( x)  A sen x  B cos x incógnitas (os coeficientes)
 
E E
0 0
A B

(3) g * ( z )  Kz n  ln[ g * ( z )]  ln K  n ln z  f * ( x)  K  nx

E E
0 0
K n
  f  x   f  x 
m m
f ( x )   c j j ( x )   c k  k ( x )
n
2 *
E  *
i i
i 1 j 1 k 1

Coeficientes a serem determinados.


j e k são índices mudos.
Sistema de equações (m equações):

 
E  m  
 
n
0; j  1,..., m   2 ckk ( xi )  f ( xi ) f * ( xi )  0
c j i 1  k 1
  c j
 f * ( xi ) 

   m 
c j

f ( xi ) 
*
  ckk ( xi )    j ( xi )
c j  k 1 

Observe que...
  m  
  ckk ( xi )   c11 ( xi )  c22 ( xi )  c33 ( xi )  ...  cmm ( xi )   2 ( xi )
c2  k 1  c2

E m n

0    ckk ( xi )  f ( xi )  j ( xi )  0
c j i 1  k 1 

E n
 m  
    j ( xi )  ckk ( xi )  f  xi  j ( xi )  0
c j i 1   k 1  
n m n

 c  ( x ) ( x )   f x  ( x ) ;
i 1 k 1
k k i j i
i 1
i j i j  1,2,..., m

n m n

 c  ( x ) ( x )   f x  ( x ) ;
k 1 i 1
k k i j i
i 1
i j i

n m n

 c   ( x ) ( x )   f x  ( x ) ;
k 1
k
i 1
k i j i
i 1
i j i j  1,2,  , m
n m n

 c   ( x ) ( x )   f x  ( x ) ;
k 1
k
i 1
k i j i
i 1
i j i j  1,2,  , m

Para cada coeficiente existe uma equação correspondente, por exemplo, j=1:

E  n 2 n n n

 c1  1 ( xi )  c2  1 ( xi )2 ( xi )    cm  1 ( xi )m ( xi )   f ( xi )1 ( xi )  0
c1  i 1 i 1 i 1 i 1 

Colocando o sistema de equações na forma matricial tem-se:

 n n n
  n 
  1 ( xi )  1 ( xi )2 ( xi )   1 ( xi )m ( xi )   f ( xi )1 ( xi ) 
2

c  
 n i 1 i 1
n
i 1
n   1  i n1 
  1 ( xi )2 ( xi )  2 ( xi )
2
  2 ( xi )m ( xi )  2    f ( xi )2 ( xi ) 
 c 
 i 1 i 1 i 1    i 1 
          
 n   
m2 ( xi )   m   f ( xi )m ( xi )
n n c n

 1 ( xi )m ( xi )  2 ( xi )m ( xi )  
 i 1 i 1 i 1   i 1 

EXEMPLOS
x 1.1 2.3 3.0 4.3 5.1 6
Considere os dados:
F(x) 1.1 1.9 3.4 4.8 5.5 6.9
Determine a reta que melhor represente os dados usando o método dos
mínimos quadrados.

f *  x   mx  k
x F(x) X^2 xF
1 1.1 1.1 1.21 1.21
 6
 6
  6

 xi  xi  m  xi f xi 
2 2 2.3 1.9 5.29 4.37
3 3 3.4 9 10.2
 i 61 i 1
     i 16  4 4.3 4.8 18.49 20.64

 x   k 
f xi  
5 5.1 5.5 26.01 28.05

 i 1 i 6
 
 i 1 
6 6 6.9 36 41.4

   Soma = 21.8 23.6 96 105.87


A b

 96 21.8 m 105.87


21.8 6   k    23.6   m  1.1983 e k  0.4205
    
Determine a parábola que melhor represente os dados usando o método dos
mínimos quadrados.

f *  x   ax 2  bx  c

Sistema de equações:

E 6 
a
 
 0  2 axi2  bxi  c  f  xi   xi2  0 E 6 6 6 6
 0  a  xi4  b xi3  c  xi2   f  xi  xi2
 i 1  a i 1 i 1 i 1 i 1

E 6 
  E 6 6 6 6
 0  2 axi2  bxi  c  f  xi   xi  0  0  a  xi3  b xi2  c  xi   f  xi  xi
b  i 1  b i 1 i 1 i 1 i 1

E 6  E 6 6 6 6

c

 0  2 axi2  bxi  c  f  xi    0 c
 0  a  xi2  b xi  c 1   f  xi 
 i 1  i 1 i 1 i 1 i 1

 6 4 6 6
 6 2 
 xi x   xi f xi 
3 2
i x 
i
 i 61 i 1
6
i 1
6  a   i 61 
 x3  
xi  b     xi f  xi  
 x 
2

i 1
i
i 1
i
i 1
  i 1 
 6 6   c   6 
 xi2
 i 1
x
i 1
i 6 

  f xi  
 i 1

x F(x) x^4 x^3 X^2 x^2 F xF


1 1.1 1.1 1.46 1.33 1.21 1.33 1.21
2 2.3 1.9 27.98 12.17 5.29 10.05 4.37
3 3 3.4 81.00 27.00 9.00 30.60 10.20
4 4.3 4.8 341.88 79.51 18.49 88.75 20.64
5 5.1 5.5 676.52 132.65 26.01 143.06 28.05
6 6 6.9 1296.00 216.00 36.00 248.40 41.40

Soma = 21.8 23.6 2424.85 468.66 96.00 522.19 105.87

2424.85 468.66 96  a  522.19


 468.66 96 21 .8  b   105.87   a  0.0288 ; b  0.9924 ; c  0.1339
    
 96 21.8 6   c   23.6 
8

Dados
3
Ajuste Linear
2
Ajuste Quadratico
1

0
0 1 2 3 4 5 6 7

Linear Quadrático
x F(x) Ajuste Equad x F(x) Ajuste Equad
1.1 1.1 0.90 0.041 1.1 1.1 0.99 0.012
2.3 1.9 2.34 0.190 2.3 1.9 2.30 0.161
3 3.4 3.17 0.051 3 3.4 3.10 0.089
4.3 4.8 4.73 0.005 4.3 4.8 4.67 0.018
5.1 5.5 5.69 0.036 5.1 5.5 5.68 0.031
6 6.9 6.77 0.017 6 6.9 6.86 0.002

E= 0.340 E= 0.312

INTERPOLAÇÃO LAGRANGEANA

É um caso particular importante de interpolação, ou seja, de se obter uma curva


que passe pelos pontos dados.
Dados n pontos xi, f(xi) no intervalo (a,b) obtem-se f*(x) tal que f*(xi)=f(xi)

Algumas características da Interpolação Lagrangeana são listadas a seguir:


A função interpoladora é polinomial e de grau mínimo possível (n-1)

O polinômio interpolador de grau n-1 é formado por uma combinação


linear de n polinômios (polinômios-base) também de mesmo grau n-1.
o número de polinômios- Polinômios de graus n-1
base é igual ao de pontos
n
f ( x) 
*
 c P ( x)
j 1
j j

Os coeficientes da combinação linear são os próprios valores da


função original nos pontos dados e portanto os polinômios-base possuem
valor unitário em um ponto e se anulam nos outros:
c j  f * ( x j )  y j  Pj ( xi )   ij
EXEMPLO SIMPLES

Dados os pontos (2,2) e (3,3), determinar a reta que se ajusta a estes pontos
utilizando o método da Interpolação Lagrangeana.

SOLUÇÃO

O polinômio interpolador de grau n-1 é formado por uma combinação linear de n


polinômios (polinômios-base) também de mesmo grau n-1.
Como são dados dois pontos, (2,2) e (3,3), os n=2 polinômios-base são de grau
n-1=1. Além disso, P1(x)=1, para o ponto (2,2) e P1(x)=0, para o ponto (3,3).
Analogamente, P2(x)=0 para o ponto (2,2) e P2(x)=1, para o ponto (3,3).

Pj ( xi )   ij P1 ( x)   x  3 P2 ( x)  x  2 Pj ( xi )   ij
n2
f * ( x)   y P ( x)
j 1
j j  2 P1 ( x)  3P2 ( x)

 f * ( x)  2(  x  3)  3( x  2)  x c j  f *(x j )  y j

Prova da ida (a volta é análoga) c j  f * ( x j )  y j  Pj ( xi )   ij

n
f ( x) 
*
 c P ( x)
j 1
j j Deve-se impor a condição f*(xi)=f(xi)
OBS 3:
n m
c j  f ( x j )  f ( xi ) 
*

j 1
*
f ( x j ) Pj ( xi ) 
k 1
 ( xi )   j ( xi )
jk k

i  1  f ( x1 )  f * ( x1 ) P1 ( x1 )  f * ( x2 ) P2 ( x1 )    f * ( xn ) Pn ( x1 )  f * ( x1 )
 P1 ( x1 )  1 P2 ( x1 )  0  Pn ( x1 )  0

i  2  f ( x2 )  f * ( x1 ) P1 ( x2 )  f * ( x2 ) P2 ( x2 )    f * ( xn ) Pn ( x2 )  f * ( x2 )
 P1 ( x2 )  0 P2 ( x2 )  1  Pn ( x2 )  0
Logo, percebe-se que a condição nos coeficientes é também uma condição no tipo
de polinômio que forma a base de funções ser satisfeita (de acordo com a OBS 3)

Pj ( xi )   ij
Exemplos de funções base polinomias que obedecem a condição: Pj ( xi )   ij
P1 P2

Linear 1.2

1
1.2

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0

Parabólica
P1 P2 P3

1.2 1.2 1.2

1 1 1

0.8 0.8
0.8
0.6 0.6
0.6
0.4 0.4
0.4
0.2 0.2
0.2
0 0

-0.2 0 -0.2

Cúbica
P1 P2 P3 P4

1.2 1.2 1.2 1.2

1 1 1
1
0.8 0.8 0.8
0.8
0.6 0.6
0.6 0.6
0.4 0.4
0.4 0.4
0.2 0.2
0.2 0.2
0 0
0 0
-0.2 -0.2

-0.2 -0.4 -0.4 -0.2

CÁCULO DOS POLINÔMIOS-BASE


Sabe-se que o polinômio base assume o valor unitário em um ponto e é
nulo nos demais. Logo, estes demais pontos são raízes do polinômio.
Portanto:

( x  x1 )( x  x2 )  ( x  x j 1 )( x  x j 1 )  ( x  xn )
Pj ( x) 
( x j  x1 )( x j  x2 )  ( x j  x j 1 )( x j  x j 1 )  ( x j  xn )
n

x x
i 1
i

i j
Pj ( x)  n

x
k 1
j  xk
k j

FUNÇÃO INTERPOLADORA
n
f ( x) 
*
 y P ( x)
j 1
j j
EXEMPLO

Considere a função f(x)=ex para 0<x<1. Utilize a interpolação Lagrangeana com


três pontos x1=0, x2=0.5 e x3=1 para representar esta curva.
SOLUÇÃO

Serão 3 polinômios-base do 2o. grau


n
f ( x) 
*
 y P ( x)
j 1
j j  y1P1 ( x)  y2 P2 ( x)  y3 P3 ( x)

( x  x2 )( x  x3 ) ( x  x1 )( x  x3 )
f * ( x)  f ( x1 )  f ( x2 ) 
( x1  x2 )( x1  x3 ) ( x2  x1 )( x2  x3 )
( x  x1 )( x  x2 )
 f ( x3 )
( x3  x1 )( x3  x2 )

f * ( x)  1(2 x 2  3x  1)  e0.5 (4 x 2  4 x)  e(2 x 2  x)


  
y1 P1 ( x ) y 2 P2 ( x ) y3 P3 ( x )

f * ( x)  0.84168 x 2  0.87660 x  1

RESULTADOS 3

2.5
f ( x)  e x 2
y=exp(x)
1.5
f ( x)  0.84168 x  0.87660 x  1
* 2
1
y=f*(x)

Erro absoluto 0.5

0
0 0.2 0.4 0.6 0.8 1 1.2
E A  f ( x)  f ( x) *

Erro relativo 0.015

0.01

f ( x)  f * ( x)
ER  0.005

f ( x) 0 Erro Abs.
0 0.2 0.4 0.6 0.8 1 1.2 Erro Rel.
-0.005 Erro Quad.

Erro quadrático
-0.01

-0.015

EQ   f ( x)  f * ( x)
2 -0.02
Exercício
O nível da água no Mar do Norte é determinado pelo movimento de maré conhecido como Maré M2,
com um período de 12 horas. A variação do nível com o tempo pode ser descrita pela seguinte fórmula:

 2t   2t 
H (t )  h0  A1 cos   A2 sin  , t em horas
 12   12 

t 0 2 4 6 8 10 Horas

H(t) 1.0 1.6 1.4 0.6 0.2 0.8 metros

Determine os parâmetros da curva de variação de H(t), isto é h0 , A1 e A2 , utilizando os dados


acima e o método dos mínimos quadrados.
INTEGRAÇÃO NUMÉRICA
 Frequentemente cálculos integrais são necessários em engenharia
b
I  f ( x)dx
a

 Na maioria dos casos, a integral não pode ser calculada analiticamente

y I = Área sob o gráfico

Primeira idéia

I  f (a )x  f (a  x)x  f (a  2x)x  f (a  3x)x


x 4 4
I  i 1
f [a  (i  1)x]x   f ( x )x
i 1
i

a b x

Melhor aproximação y

Usar os pontos no meio do intervalo


4 intervalos
Regra do Retângulo 5 pontos
x

a b x

 (a )  (a  x)   (a  x)  (a  2x) 


I  f x  f  x 
 2   2 
 (a  2x)  (a  3x)   (a  3x)  (a  4x) 
f x  f  x
 2   2 
4 4
 (a  (i  1)x)  (a  ix) 
I 
i 1
f
 2  i 1

 x  f ( xi  1 2 )x
Melhor aproximação y

Intepolação linear em cada intervalo


4 intervalos
Regra do Trapézio 5 pontos
x

a b x

I
 f (a)  f (a  x) x   f (a  x)  f (a  2x) x 
2 2
 f (a  2x)  f (a  3x) x   f (a  3x)  f (a  4x) x
2 2
1 1 
I  x  f (a )  f (a  x)  f (a  2x)  f (a  3x)  f (a  4x)
2 2 
4
 f (a  (i  1)x)  f (a  ix) x
I 
i 1 2

y De uma forma geral, a integral é calculada por


uma soma ponderada dos valores do integrando
em pontos do intervalo de integração

x b n
I  f ( x)  w f ( x )
a i 1
i i

x2
xn+1=b x n : número de intervalos
x1=a
n+1: número de pontos

wi são chamados de PESO e os pontos


xi onde a função deve ser avaliada são chamados de ABSCISSA

 As diferentes fórmulas de integração numérica são


escolhas particulares dos pesos e abscissas

 Todo fórmula de quadratura deve tender a integral exata quando o


número de pontos torna-se muito grande
 Geralmente usa-se abscissas igualmente espaçadas e escolhe-se
pesos para obter a melhor aproximação

 O resultado pode ser sistematicamente melhorado dividindo o intervalo ao meio

 A precisão do método pode ser avaliada calculando-se a integral com n pontos


e repetindo-se o processo com 2n pontos. Se os resultados coincidirem
dentro de uma certa tolerância, aceita-se o resultado como preciso

 O erro na aproximação é sempre proporcional ao tamanho do intervalo


elevado a alguma potência inteira

erro  x m  h m m: ordem da aproximação

FÓRMULA DE NEWTON-COTES

 Divide-se o domínio em n intervalos com n+1 pontos


ba
h ; x j  a  ( j  1)h, para j  1,2,, n  1
n

 Define-se polinômio de interpolação de grau n pelos pontos (xj, f(xj))

n 1
P ( x)   f ( x ) L ( x)
k 1
k k

Polinômio interpolador de Lagrange

 A integral da função é aproximada pela integral do polinômio interpolador


b b
 n 1
b

I 
a
 
f ( x) dx  P ( x) dx   f ( xk ) Lk ( x) dx 
a a  k 1 
n 1 b n 1
  f ( x ) L ( x) dx   f ( x )w
k 1
k k
k 1
k k
a
EXEMPLOS DA FÓRMULA DE NEWTON-COTES
 n = 1 e n+1 = 2 y
2
P ( x)   f ( x ) L ( x)
k 1
k k
P(x)
( x  x2 ) ( x  x1 )
onde L1 ( x)  e L2 ( x) 
( x1  x2 ) ( x2  x1 )

1 L1 ( x) L2 ( x) a b x

a b a b

b b
( x  x2 ) x x ba

w1  L1 ( x) dx   ( x1  x2 )
dx  2 1 
2 2
b
 f (a)  f (b) (b  a)
a
b
a
b
( x  x1 ) x x ba
I  f ( x) dx 
2
a

w2  L2 ( x) dx 
a

( x2  x1 )
dx  2 1 
2 2
a

Regra do Trapézio para 1 intervalo

 De uma forma geral o método de Newton-Cotes pode ser escrito como:


b b n 1 b
I  f ( x) dx   P( x) dx   f ( x ) L ( x) dx 
a a k 1
k
a
k

n 1
(b  a ) C
k 1
n
k f ( xk )
b
1
coeficientes de Newton - Cotes Ckn  
(b  a ) a
Lk ( x) dx

Tabela de coeficientes de Newton-Cotes


n C1n C2n C3n C4n C5n
1 1/2 1/2
2 1/6 4/6 1/6
3 1/8 3/8 3/8 1/8
4 7/90 32/90 12/90 32/90 7/90
 n = 2 e n+1 = 3 y
b
1 4 ab 1  P(x)
I 
a
f ( x) dx   f (a )  f (
6 6 2
)  f (b) (b  a )
6 

Regra de Simpson para 1 intervalo a x


b

COMENTÁRIOS

 A fórmula de Newton-Cotes é raramente aplicada em todo intervalo.

 O intervalo é subdividido em subintervalos iguais ou não e a fórmula é


aplicada em cada subintervalo

 Divide-se o intervalo (a,b) em n subintervalos y


de largura x e a fórmula é aplicada em
cada intervalo

Exemplo: n = 1 x

 1 
b
1

I f ( x) dx  x  f (a )  f (a  x)   x2 x
a  2 2  x1=a xn+1=b
 1 1 
 x  f (a  x)  f (a  2x)   
 2 2 

n
 f (a  (i  1)x)  f (a  ix) x
I 
i 1 2
Regra do Trapézio
Exemplo: n = 2

O número de intervalos deve ser par.


A fórmula é aplicada a pares de intervalos

 
b
1 4 1
I
a
f ( x) dx  2x  f (a )  f (a  x)  f (a  2x)  
 6 6 6 
 1 4 1 
 2x  f (a  2x)  f (a  3x)  f (a  4x)   
 6 6 6 

n/2
1 4 1 
I   6 f a  2(i  1)x   6 f a  (2i  1)x   6 f a  2ix 2x
i 1

Regra de Simpson

n Delta X Exata Trapezio Erro%


4 2.5 1.5 3.8 1.53
8 1.25 1.5 2.21 0.47
20 0.5 1.5 1.62 0.08
80 0.125 1.5 1.51 0.008

10
y = 0.28889 * x^(1.923) R= 0.99844

1
Erro %

0.1

Erro  x 
2

0.01

0.001
0.1 1 10
Tam anho do Intevalo (  x)
QUADRATURA GAUSSIANA

 Máxima precisão para um dado número de funções

 Intervalo não uniforme

b n

 f ( x) dx   w f ( x )
a i 1
i i

Pontos de Gauss
Pesos de Gauss

 Os valores das coordenadas dos pontos de Gauss e os correpondentes


pesos são apresentados em tabelas padronizadas geralmente
para limites de integração de -1 a 1.

 Para utilizar estas tabelas, é necessário fazer uma mudança de variável

b 1 n

 f ( x) dx   g ( ) d   w g ( )
a 1 i 1
i i

n=2 n=4
 wi  wi
1 -0.57735 1.00 1 -0.86113 0.34785
2 +0.57735 1.00 2 -0.33998 0.65214
3 +0.33998 0.65214
4 +0.86113 0.34785
n=3
 wi
1 -0.77459 0.55555
2 0.00 0.88888
3 +0.77459 0.55555

 Para integrais em duas, três ou mais variáveis:


b d 1 1

  f ( x, y) dxdy    g ( , ) d d
a c 1 1
n n
  wi w j g ( i , j )
i 1 j 1
Exercício
1

Calcule a integral pelo Método do Trapézio:  3 exp(5x)dx


0

Determine no número de intervalos necessários para obter uma resposta com precisão de 3 casas decimais

N intervalos Integral
5 0.6448
10 0.6081
20 0.5990
40 0.5967
80 0.5961
CÁLCULO DE RAIZ DE EQUAÇÃO
 Necessidade de determinar a raiz de uma equação
em diversos problemas de engenharia, isto é, determinar x, tal que:

f ( x)  0

 Algumas equações mais simples possuem solução analítica, como

2 x  20  x  10
x 2  5x  6  0  x2 e x3

 Na maioria dos casos (equação não-linear), as raizes da equação


não podem ser determinadas analiticamente

 Deve-se utilizar procedimentos iterativos para determinar a(s) raiz(es)

MÉTODO DE PICARD

x* é raiz da equação f(x) = 0

f ( x* )  0  x*  g ( x* )  0  x*  g ( x* )

f ( x* )

PROCEDIMENTO ITERATIVO

x
Chute inicial : x( 0)
i 1 g (x)
x(i )  g ( x(i 1) ) g ( x(1) )
Enquanto x(i )  x(i 1)   , repetir g ( x( 0) )
i  i 1
x(i )  g ( x(i 1) ) RAIZ
x*
Raiz : x(i ) x( 0 ) x(1) x( 2) x

g ( x( 0) )
x n xn g(xn)
EXEMPLO 1: RESOLVER x  e  0 0 1 0.36788
1 0.36788 0.69220
x  ex  g ( x)  e  x 2
3
0.69220
0.50047
0.50047
0.60624
4 0.60624 0.54540
5 0.54540 0.57961
x( 0 )  1 6 0.57961 0.56012
7 0.56012 0.57114

x(1)  g ( x( 0) )  e 1  0.36788
8 0.57114 0.56488
9 0.56488 0.56843
10 0.56843 0.56641

x( 2)  g ( x(1) )  e 0.36788  0.69220


11 0.56641 0.56756
. . .
20 0.56714 0.56714

EXEMPLO 2: RESOLVER x 1  0
n x n g (x n)
x  2x 1  g ( x)  2 x  1 0
1
0
0
.9
.8
0 .8
0 .6
2 0 .6 0 .2
3 0 .2 -0 .6

x( 0)  0.9
Processo iterativo diverge
x(1)  g ( x( 0) )  2  0.9  1  0.8
x( 2)  g ( x(1) )  2  0.8  1  0.6 PORQUE ???

g (x) x x

g ( x( 0) )
g (x)
g ( x( 0) ) g ( x(1) )
g ( x(1) )
RAIZ RAIZ
x* x*
x( 2) x(1) x( 0) x x( 0 ) x( 2 ) x(1) x
 
g ( x( 0) ) g ( x( 0) )
DIVERGE CONVERVE OSCILANDO

g ( x)  1  DIVERGE
0  g ( x)  1  CONVERGE MONOTONICAMENTE
 1  g ( x)  0  CONVERGE OSCILANDO
MÉTODO DE BISSEÇÃO

 SE f(x) É UMA FUNÇÃO CONTÍNUA E f(a).f(b) < 0


A RAIZ DE f(x) PERTENCE AO INTERVALO (a,b)

 MÉTODO DE BISSEÇÃO CRIA UMA SEQUENCIA DE INTERVALOS


CADE VEZ MENOR QUE CONTENHA A RAIZ

Escolher a0 e b0 tal que f (a0 )  f (b0 )  0


i 1
mi  1 2 a0  b0 
f (x)
While f (mi )   , do
if f (mi )  f (bi 1 )  0 then
ai  mi
m1 x* m2 bi  bi 1
a0 b0 x end
if f (ai 1 )  f (mi )  0 then
(a1 , b1 ) ai  ai 1
bi  mi
end
(a0 , b0 ) i  i 1
mi  1 2 ai 1  bi 1 
Raiz : mi

2
 x
EXEMPLO 3: RESOLVER    sin x  0
2

i ai-1 f(ai-1) bi-1 f(bi-1) mi f(mi)


1 1.5 <0 2 >0 1.75 <0
2 1.75 2 1.875 <0
3 1.875 2 1.9375 >0
4 1.875 1.9375 1.90625 <0
5 1.90625 1.9375 1.9219

 CONVERGÊNCIA EXTREMAMENTE LENTA

 CONVERGÊNCIA MELHORA USANDO VALORES DE f(x)


NO CÁLCULO DE mi

bi 1 f (ai 1 )  ai 1 f (bi 1 )
mi 
f (ai 1 )  f (bi 1 )
MÉTODO DE NEWTON-RAPHSON (DE NEWTON)
f (x) f ( xi )
tan    f ( xi ) 
xi  xi 1
f ( xi )
xi 1  xi 
f ( xi )

x* x
x( 2) x(1) x( 0)

Chute inicial : x( 0)
PROCEDIMENTO ITERATIVO i0
While f ( x(i ) )   , do
f ( x( i ) )
x  
f ( x(i ) )
x(i 1)  x(i )  x
i  i 1
Raiz : x(i 1)

2
 x
EXEMPLO 4: RESOLVER    sin x  0
2

i xi f(xi) f’(bi) x
0 1.5 0.434995 -0.67926 0.64039
1 2.14039 -0.30319 -1.60948 -0.18838
2 1.95201 -0.02437 -1.34805 -0.01808
3 1.93393 -0.00023 -1.32217 -0.00018
4 1.93375 0.000005 -1.32191

 CONVERGÊNCIA RÁPIDA

 O TAMANHO DO PASSO DIMINUI A CADA ITERAÇÃO


DE UM FATOR DE 10
x
EXEMPLO 5: RESOLVER x  e  0

i xi f(xi) f’(bi) x
0 0.0
1
2
3
4

PROPRIEDADE DE CONVERGÊNCIA

Vamos supor que  é uma raiz simples de f(x): f ( )  0 e f ( )  0

Obter uma estimativa de erro para a aproximação xn do Método de Newton


 n  xn  
Expandindo f(x) em série de Taylor em x=xn com um passo - xn

f xn  (  xn )   f ( )  0 
1
0  f ( xn )  (  xn ) f ( xn )  (  xn ) 2 f ( );   ( xn , )
2
1
(  xn ) 2 f ( )
f ( xn ) 2
  (  xn )  
f ( xn ) f ( xn )
1
 (  xn ) 2 f ( )
f ( xn )  2
    xn     n 1  
 f ( x )
n  f ( xn )
 
xn1

1 f ( )  n 1 11 f2 (f() )
 n 1   n2  lim  n
2 f ( xn ) xn   2
n 22 f (f() )
 Quando perto da solução, o erro cai quadraticamente:

 3  10 2   4  10 4   5  10 8 

PROBLEMAS COM O MÉTODO DE NEWTON

 O chute inicial deve estar  O processo iterativo passa por um


suficientemente próximo da solução ponto de máximo ou mínimo local

f (x)
f (x)

x* x x* x
x(0) x(1) x(1) x(0)

 O processo iterativo pode entrar em um ciclo que não converge

f (x)

x(1) x* x
x(0)

 Os problemas com o Método de Newton podem ser resolvidos com


um chute inicial perto da solução

 Combinar um método com convergência global boa (mas lenta) com


o método de Newton (convergência global ruim, mas extremamente
rápido quando perto da solução)
MÉTODO DA SECANTE

 O cálculo da derivada f’(x) pode ser


muito complicado ou caro computacionalmente

 Aproximar a derivada por:


f ( xi )  f ( xi 1 )
f ( x) 
xi  xi 1

PROCEDIMENTO ITERATIVO Chute inicial : x( 0) e x(1)


i 1
While f ( x(i ) )   , do
x(i )  x(i 1)
x   f ( x(i ) )
f ( x(i ) )  f ( x(i 1) )
x(i 1)  x(i )  x
i  i 1
Raiz : x(i 1)

INTERPRETAÇÃO GEOMÉTRICA

 Necessita de 2 chutes iniciais

 Convergência não é quadrática


x* x
x( 2 ) x(1) x( 0 )
f (x )
2
 x
EXEMPLO 6: RESOLVER    sin x  0
2

i xi f(xi) x
0 1.0 -0.59147
1 2.0 0.09070
2
3
4
5
Exercício

Escreva uma rotina no SciLab para cálculo de raiz de funções usando os métodos de Bisseção e Newton.
O programa principal deve fazer as seguintes tarefas:

Utilize o programa desenvolvido para determinar a raiz das equações abaixo.

(a) f ( x)  x 2  1 (b) f ( x)  1  x  e 2 x

Método de Newton
Método da Bisseção

You might also like