Integração Numérica – Áreas e Equações
Pedro Barahona
DI/FCT/UNL
Introdução aos Computadores e à Programação
2º Semestre 2005/2006
6 Abril 2006
Integração Numérica - Áreas e Equações
1
Áreas e Integração
• Como é sabido a superfície delimitada pelo gráfico de
uma função pode ser obtida através de uma integração.
f(x)
dA
A
x0
x
x+h
• Com efeito, denotando por A(x) a área da função f desde
o ponto x= x0 até ao ponto x temos
dA = A(x+h) – A(x)  f(x)  h
6 Abril 2006
Integração Numérica - Áreas e Equações
2
Áreas e Integração
• Naturalmente, o erro só é eliminado na passagem ao
limite, isto é, quando h  0.
• Assim de
A(x+h) – A(x)  f(x)  h
obtemos
f(x)
dA
A
x0
x
x+h
A( x  h)  A(h) dA
f ( x)  lim

h 0
h
dx
6 Abril 2006
Integração Numérica - Áreas e Equações
3
Áreas e Integração
• Ora se a função f é a derivada em ordem a x da função A
(área), temos inversamente que
a função A é a primitiva de f em ordem a x
• Desta forma, para determinar a área debaixo da função f,
basta-nos determinar a primitiva de f e subtrair os seus
valores nos limites de x, o que se denota habitualmente por
x b
Aab 

xa
x b
f ( x) dx  F ( x) x a
A
a
6 Abril 2006
Integração Numérica - Áreas e Equações
b
4
Áreas e Integração
Exemplo:
•
15
Para determinarmos
abaixo da curva
a
área
y = f(x) = 3x
3
entre x = 1 e x = 5,
1. obtemos primeiro
1
x2
F ( x)  3
2
3
5
A = 4*(3+15)/2 = 36
1. e portanto
x 5
2 x 5
x
5
A 1   f ( x) dx  3
2
x 1
6 Abril 2006
x 1
52
12
 3
 3   36
2
2
Integração Numérica - Áreas e Equações
5
Áreas e Integração
• Infelizmente, todo este processo depende de se
conseguir obter uma forma analítica para a função F(x),
primitiva de f(x).
• Num conjunto significativo de situações tal não é
possível, pelo que a integração se tem de fazer , não por
métodos analíticos, mas sim através de métodos
numéricos aproximados.
A
a
6 Abril 2006
b
Integração Numérica - Áreas e Equações
6
Áreas e Integração
• A integração pode ser pois aproximada por uma soma
(aliás o símbolo de integração corresponde ao S de soma
estilizado). Denotando por ai a área dos rectângulos,
com “canto inferior esquerdo” no ponto xi, temos
x0
x1
xn-2 xn-1 xn
A  lim
n
6 Abril 2006
i  n 1
a
i 0
i
Integração Numérica - Áreas e Equações
7
Áreas e Integração
• Mas ai  f(xi)  (xi+1-xi) = f(xi)  dx e portanto a soma
pode reescrever-se como
A
i  n 1
i  n 1
 a   f ( x )  dx
i 0
i
i 0
i
que no limite corresponde ao integral referido atrás
A 
x b
x a
f ( x)  dx  lim
dx  0
i  n 1
 f ( x )  dx
i 0
i
O cálculo da área “debaixo de uma função”, e portanto a
integração numérica dessa função podem ser
aproximados por uma soma.
6 Abril 2006
Integração Numérica - Áreas e Equações
8
Exemplo: Cálculo de p
• O valor de p pode ser obtido através da área de um
círculo de raio 1 (cujo valor é exactamente p).
• Na prática é preferível obter o valor de pi/4, área do
quarto de circulo, limitado pela função
y  f ( x)  1  x 2
no intervalo entre
x=0
p
4
e
x=1.
6 Abril 2006
Integração Numérica - Áreas e Equações
9
Exemplo: Cálculo de p
A
i  n 1
i  n 1
 a   f ( x )  dx
i 0
i
i 0
function p = pi_area(n)
a = 0;
x = 0;
dx = (1-0) / n;
for i = 0 : n-1
x = x + dx;
a = a + sqrt(1-x^2)*dx;
endfor
p = 4 * a;
endfunction
6 Abril 2006
i
p
4
Integração Numérica - Áreas e Equações
10
Integração de Equações Diferenciais
•
Apesar de ilustrado com o cálculo de áreas, o cálculo integral tem
uma utilidade muito mais geral, sendo por exemplo aplicável a
praticamente todos os domínios da Física.
•
Os exemplos atrás ilustrado correspondem de facto a um caso
particular de equações diferenciais, Estas são equações em que são
utilizadas não (apenas) as funções mas (também) as suas derivadas.
•
Por exemplo, a área do trapézio poderia ser obtida através da
equação
dA( x)
 3x
dx
através de um processo de integração, ou seja, determinação da
função A(x), e subtraindo os seus valores nos pontos x = 1 e x = 5.
6 Abril 2006
Integração Numérica - Áreas e Equações
11
Integração de Equações Diferenciais
• Em Física é muito frequente defrinirem-se grandezas como
função não de outras grandezas mas também da sua variação.
• Por exemplo,
– a velocidade é a variação da posição em ordem ao tempo
d x (t )
v (t ) 
dt
– a aceleração é a variação da velocidade em ordem ao tempo
d v (t )
a (t ) 
dt
• Tendo em conta que a força é proporcional à aceleração, o
movimento de um corpo (isto é, a função de posição ao longo do
tempo x(t) ) pode ser determinado a partir das forças que actuam
sobre um corpo.
6 Abril 2006
Integração Numérica - Áreas e Equações
12
Integração de Equações Diferenciais
• Por exemplo, no caso da queda de um grave (por acção da
gravidade), a única força que actua é a força da gravidade, que se
pode considerar constante para um determinado à superfície da
Terra.
F=mg
• Sendo a força e a aceleração (g) constantes, pode-se determinar
facilmente a velocidade de um corpo através de
d v(t )
d v(t )
a(t ) 
 v(t )  
dt   a(t ) dt
dt
dt
6 Abril 2006
Integração Numérica - Áreas e Equações
13
Integração de Equações Diferenciais
• Neste caso, sendo a aceleração é constante a(t) = g, pelo que a sua
primitiva pode ser determinada analiticamente
v(t )   g dt  g  t  v0
em que v0 é a velocidade inicial (no instante t = 0).
• Da mesma forma se pode obter a posição do ponto, através da
integração da função velocidade
1 2
x(t )   v(t ) dt   g  t  v0 dt  gt  v0t  x0
2
sendo x0 a posição inicial (no instante t = 0).
6 Abril 2006
Integração Numérica - Áreas e Equações
14
Integração de Equações Diferenciais
• Esta integração pode naturalmente ser feita através dos métodos
numéricos discutidos anteriormente.
d v(t )
v(t )  
dt   g dt  g  t  v0
dt
function v = velocidade(t, v0, n)
t = 0;
v = v0;
dt = t/n;
for i = 1 : n
v = v + g * dt
% g = dv/dt
endfor
endfunction
6 Abril 2006
Integração Numérica - Áreas e Equações
15
Integração de Equações Diferenciais
• A posição do grave é obtida identicamente.
d x(t )
x(t )  
dt   v(t ) dt
dt
function x = posicao(tf, x0, v0, n)
x = x0;
dt = tf/n;
for i = 1 : n
x = x + velocidade(t,v0,i)* dt
t = t + dt;
endfor
endfunction
6 Abril 2006
Integração Numérica - Áreas e Equações
16
Integração de Equações Diferenciais
• A eficiência desta função é muito baixa. Com efeito, para se obter
a posição xi é necessário determinar a velocidade vi que se
determina com i somas (a0 dt+ a1dt + a2 dt + ... + ai dt).
for i = 1 : i
v = v + g * dt
endfor
% ai = g
• Para calcular a posição xi+1 é necessário determinar a velocidade
em xi+1. Mas em vez de reaproveitar a soma anterior, adicionando
um termo ai+1 dt, o programa vai calcular novamente a soma
desde o início, isto é, soma de i+1 termos.
• Obviamente, a eficiência aumentará bastante se combinarmos os
dois ciclos num só.
6 Abril 2006
Integração Numérica - Áreas e Equações
17
Integração de Equações Diferenciais
• O programa abaixo faz essa combinação
function x = posicao_2(tf, x0, v0, n)
g = 9.8
v = v0;
x = x0;
dt = tf/n;
for i = 1 : n
v = v + g * dt;
x = x + v * dt;
% t = t + dt;
% velocidade(t,v0,n)* dt
t não é usado !
endfor
endfunction
6 Abril 2006
Integração Numérica - Áreas e Equações
18
Integração de Equações Diferenciais
• A integração numérica, tem naturalmente a desvantagem de não
ser exacta, sendo necessário algum cuidado para garantir que a
aproximação obtida é “conveniente”.
• Por outro lado, ela é muito mais flexível que a integração
analítica, já que não requer a obtenção de “primitivas” ou
métodos analíticos de resolução de equações diferenciais.
• Por exemplo, assumamos que com a resistência do ar, existe uma
força contrária à queda, proporcional à velocidade, ou seja
f = mg – rv
6 Abril 2006
Integração Numérica - Áreas e Equações
19
Integração de Equações Diferenciais
• Como, pelas leis de Newton, f = m a teríamos
ma = mg - rv
e portanto
a = g – kv
% com k = r /m
o que poderia ser escrito como
d 2x
dx
 g k
2
dt
dt
podendo x(t) ser obtido por integração desta equação diferencial.
• Por métodos numéricos, basta substituir a fórmula da aceleração
no programa anterior!
6 Abril 2006
Integração Numérica - Áreas e Equações
20
Integração de Equações Diferenciais
• O programa abaixo faz essa alteração, acrescentando o
coeficiente de atrito k, como parâmetro de entrada
function x = posicao_3(tf, x0, v0, k, n)
g = 9.8
v = v0;
x = x0;
dt = tf/n;
for i = 1 : n
v = v + (g - k*v) * dt
% a = g – k*v
x = x + v * dt
endfor
endfunction
6 Abril 2006
Integração Numérica - Áreas e Equações
21
Download

Integração Numérica – Áreas e Equações