Post on 08-Feb-2019
Edgard Jamhour
Funções podem ser representadas como série de potências
Uma série de potências centrada em x0 tem a seguinte forma:
𝑓 𝑥, 𝑥0 = 𝑎𝑛 𝑥 − 𝑥0𝑛 ∞
𝑛=0
f(x,x0) = a0 + a1(x-x0) + a2(x-x0)2+...
Por que representar funções como séries de potências:
Cálculo de integrais que não possuam solução analítica
Resolução de equações diferenciais
Aproximação de funções por polinômios
Por que representar funções como séries de potências:
Cálculo de integrais que não possuam solução analítica conhecida
Resolução de equações diferenciais
Aproximação de funções por polinômios
𝑓 𝑥 = 𝑎𝑛 𝑥 − 𝑥0𝑛 ∞
𝑛=0
Derivada:
𝑓′ 𝑥 = 𝑛 𝑎𝑛 𝑥 − 𝑥0𝑛−1 ∞
𝑛=0
Integral:
𝑓 𝑥 𝑑𝑥 = c + 𝑎𝑛𝑥−𝑥0
𝑛+1
𝑛+1 ∞
𝑛=0
Aproxima funções na forma da seguinte série de potências:
𝑓 𝑥 = 𝑎𝑛 𝑥 − 𝑥0𝑛 ∞
𝑛=0
𝑎𝑛 =𝑓𝑛 𝑥0
𝑛!
para todo: |x – x0|<R (raio de convergência)
Se x0=0, a série é dita de Maclaurin
Polinômio de Taylor de grau n:
𝑇𝑛 𝑥 = 𝑓𝑛 𝑥0
𝑛!𝑥 − 𝑥0
𝑛 ∞𝑛=0
Convergência do Polinômio de Taylor:
𝑓 𝑥 = 𝑙𝑖𝑚𝑛→∞𝑇𝑛(𝑥)
Resto da Série de Taylor:
𝑓 𝑥 = 𝑇𝑛 𝑥 + 𝑅𝑛(𝑥)
Aproximação de Sin(x) no ponto x0=0
Aproximação de Sin(x) no ponto x0=Pi
Aproximação por série de Taylor pode ser muito custosa para funções periódicas
Por isso, muitos sistemas optam por usar CORDIC para calcular funções trigonométricas
CORDIC
COordinate Rotation DIgital Computer
Também conhecido como Algoritmo de Volder
Otimizado para operar em CPUs simples.
O erro introduzido pela limitação do número de termos depende da variabilidade da função.
Funções cujas derivadas superiores são pequenas ou nulas podem ser aproximadas com pouco ou nenhum erro.
Objetivo: obter os valores das derivadas de uma função sem recorrer a respectiva expressão analítica
Considerando um polinômio de Taylor de ordem 2 no ponto xi:
f(x) = f (xi) + f ‘(xi)(x-xi) + (½)f “(xi)(x-xi)2
𝑓′ 𝑥 =𝑓 𝑥 −𝑓 𝑥𝑖
𝑥−𝑥𝑖−
𝑥−𝑥𝑖
2𝑓′′ 𝑥𝑖
ERRO
𝑥𝑖
Progressiva: xi = x+h
𝑓′ 𝑥 =𝑓 𝑥 −𝑓 𝑥+ℎ
ℎ
Regressiva: xi = x+h
𝑓′ 𝑥 =𝑓 𝑥 −𝑓 𝑥−ℎ
ℎ
Centrada: xi = x+h
𝑓′ 𝑥 =𝑓 𝑥+ℎ −𝑓 𝑥−ℎ
2ℎ
Aproximação de Taylor:
𝑓 𝑥 + ℎ = 𝑓 𝑥 + 𝑓′ 𝑥 ℎ + 𝑓′′ 𝑥ℎ2
2+ 𝑓′′′ 𝑥
ℎ3
6
𝑓 𝑥 − ℎ = 𝑓 𝑥 − 𝑓′ 𝑥 ℎ + 𝑓′′ 𝑥ℎ2
2− 𝑓′′′ 𝑥
ℎ3
6
Combinando as expressões:
𝑓 𝑥 + ℎ + 𝑓 𝑥 − ℎ = 2𝑓 𝑥 + 2𝑓′′ 𝑥ℎ2
2
𝑓′′ 𝑥 =1
ℎ2𝑓 𝑥 + ℎ + 𝑓 𝑥 − ℎ − 2𝑓 𝑥
Integração Numérica:
𝐼 𝑓 = 𝑓 𝑥 𝑑𝑥𝑏
𝑎
Aplicações:
Estatística: cálculo da CDF
Controle de máquinas
Tratamento de informação
de sensores
Arquitetura
etc.
O método geral de integração numérica consiste em
aproximar a curva interpolando um conjunto de pontos com
um polinômio de baixa ordem, que são fáceis de integrar.
Escolhem-se n+1 pontos no intervalo [a,b]:
x0 x1 x2 ... Xn
onde: x0 = a e xn = b e xk = xk-1 + h
𝐼 𝑓 = 𝑓 𝑥 𝑑𝑥𝑏
𝑎 = 𝑓 𝑥 𝑑𝑥
𝑥𝑘
𝑥𝑘−1 𝑛
𝑘=1
O polinômio interpolador é uma constante
𝑓 𝑥 𝑑𝑥𝑥𝑘
𝑥𝑘−1= 𝑥𝑘 − 𝑥𝑘−1 ∙ 𝑓
𝑥𝑘−1+𝑥𝑘
2
O polinômio interpolador é uma reta
𝑓 𝑥 𝑑𝑥𝑥𝑘
𝑥𝑘−1= 𝑥𝑘 − 𝑥𝑘−1 ∙
𝑓 𝑥𝑘−1 +𝑓 𝑥𝑘
2
A interpolação é feita pela concatenação de parábolas, cada uma passando por três pontos.
𝑓 𝑥 𝑑𝑥𝑥𝑘+1𝑥𝑘−1
= ℎ
3𝑓 𝑥𝑘−1 + 4𝑓 𝑥𝑘 + 𝑓 𝑥𝑘+1 onde: h= xk+1 - xk
𝑓 𝑥 𝑑𝑥𝑏
𝑎=
ℎ
3𝑓 𝑥0 + 4𝑓 𝑥1 + 2𝑓 𝑥2 +⋯+ 2𝑓 𝑥𝑛−2 + 4𝑓 𝑥𝑛−1 + 𝑓 𝑥𝑛
Uma equação diferencial (E.D.) envolve uma função desconhecida e suas derivadas. EDO (E.D. Ordinária): a função depende de apenas
uma variável
EDP (E.D. Parcial): a função depende de mais de uma variável
Exemplo de EDO:
Seja y = f(x) e 𝑦 𝑛 =𝑑𝑛𝑓(𝑥)
𝑑𝑥𝑛
𝑒𝑦 𝑦′′ + 2 (𝑦′)2 = 1
É a ordem da sua derivada mais elevada: 1. y’=f(t,y) y(t) = y’(t) t+ y(t0)
2. y’’=f(t,y,y’) y(t) =y‘ t + y(t0) y'(t) = y''(t) t + y’(t0)
3. y’’’=f(t,y,y’,y’’) y(t) =y'*t + y(t0) y'(t) = y''(t) t + y’(t0) y’’(t) = y’’’(t) t + y’’(t0)
A população de bactérias cresce a uma taxa proporcional ao número de bactérias.
𝑑𝑝
𝑑𝑡= 𝑘 ∙ 𝑝 𝑡
𝑘 ∙ 𝑝 𝑡 - 𝑑𝑝
𝑑𝑡= 0
Construção do modelo a partir de medições:
População após 3 horas: 400 bactérias
População após 10 horas: 2000 bactérias
Determinar o comportamento de um circuito resistivo, indutivo e capacitivo.
𝐿 ∙𝑑2𝑞
𝑑𝑡2+ R
𝑑𝑞
𝑑𝑡+ 𝑞
𝐶= 𝐸 𝑡
𝑖= 𝑑𝑞
𝑑𝑡
Determinar o comportamento vibratório de sistemas mecânicos. 𝑚 𝑢′′ 𝑡 + 𝛾 𝑢′ 𝑡 + 𝑘 𝑢 𝑡 = 0
m: massa m: posição da massa em relação ao tempo k: constante da mola : coeficiente de amortecimento
𝛾
Tipo: Problema de valor inicial (PVI)
Determinar a função y=y(t) que satisfaz simultaneamente a equação diferencial e a condição inicial:
y’(t) = f(t,y(t)) e a < x < b
y(t0) = y0 e a < x0 < b
Se a função y for aproximada pela fórmula de Taylor:
y(t0+h) = y(t0) + h y’(t0) + 0.5 h2 y’’(t0) + O(h3) ▪ Se h for pequeno os teremos h2 e superiores podem ser desprezados
y(t0+h) = y(t0) + h y’(t0)
Se y’(t) = f(t,y(t)), y(tn) pode ser calculado
iterativamente:
y(t0) = y0
y(tn+1) = y(tn) + h f(tn,y(tn))
Achar a aproximação para função y(t), válida para 0<t<1 com h=0.2
y’(t) = t – y + 2
y(0) = 2
Solução:
t0 = 0 y0=2
t1=0.2 y1=y0+h (t0 – y0+2)=2+0.2(0-2+2)=2
t2=0.4 y2=y1+h (t1 – y1+2)=2+0.2(0.2-2+2)=2.04
t3=0.6 y3=y3+h (t3 – y3+2)=2.04+0.2 (0.4-2.04+2)=2.112
t4=0.8 y4=y4+h (t4 – y4+2)=2.2096
t5=1 y5=y5+h (t5 – y5+2)=2.3277
Solução analítica: e-t (1+et+et t)
y(t0+h) = y(t0) + h y’(t0) + 0.5 h2 y’’(t0) + O(h3)
y(t0+h) = y(t0) + h y’(t0) + 0.5 h2 y’’(t0)
Se y’(t) = f(t,y(t)), e y’’(t) = f’(t,y(t)), y(tn) pode ser calculado iterativamente:
y(t0) = y0
y(tn+1) = y(tn) + h f(xn,y(tn)) + 0.5 h2 f’(tn,y(tn))
Onde 𝑓′ 𝑡, 𝑦 =𝛿𝑓(𝑡,𝑦)
𝛿𝑡+
𝛿𝑓(𝑡,𝑦)
𝛿𝑦𝑓(𝑡, 𝑦)
O método de Runge-Kutta produzem resultados com a mesma precisão de Taylor, mas sem calcular derivadas. 𝑦𝑛+1 = 𝑦𝑛 + ℎ 𝑘1 + 𝑘2
𝑘1 = 1 − 𝑏 𝑓 𝑥𝑛, 𝑦𝑛
𝑘2 = 𝑏𝑓 𝑥𝑛 +1
2𝑏ℎ, 𝑦𝑛 +
1
2𝑏ℎ𝑓 𝑥𝑛, 𝑦𝑛
Onde b é uma constante Método de Euler melhorado( Heun): b=0.5
Método de Euler modificado: b=1
O método de Runge-Kutta obtém resultados melhores que o método de Euler mesmo com passos maiores.