MAP0214 C´
alculo Num´
erico com
Aplica¸
c˜
oes em F´ısica
2o Semestre de 2006.
June 19, 2007
1
M´
etodo dos M´ınimos Quadrados em duas vari´
aveis
1.1
Introdu¸
c˜
ao.
O objetivo deste texto ´e apresentar aplica¸c˜oes do o M´etodo dos M´ınimos Quadra-dos para aproximar uma fun¸c˜ao F : [a, b] × [c, d] → R no caso discreto.
1.2
Aproxima¸
c˜
ao de F se conhecemos uma tabela de F
Suponha que queremos aproximar uma fun¸c˜ao F que est´a tabelada nos pontos (N1+ 1)(N2+ 1) pontos (xi, tj) ∈ [a, b] × [c, d] definidos por
xi = a + ih = a + i b − a N1 = a +i(b − a) N1 , i = 0, 1, . . . , N1, tj = c + jh = c + j d − c N = c + j(d − c) N2 , j = 0, 1, . . . , N2,
pelo M´etodo dos M´ınimos Quadrados por uma fun¸c˜ao da forma
G(x, t) =
K
X
`=1
c`G`(x, t)
onde G`(x, t), ` = 1, . . . , k s˜ao fun¸c˜oes dadas.
O produto escalar natural numa situa¸c˜ao destas ´e
hh H1| H2ii = X i = 0, . . . , N1, j = 0, . . . , N2 H1(xi, tj)H2(xi, tj) = N1 X i=0 N2 X j=0 H1(xi, tj)H2(xi, tj).
2
Nosso problema
Estamos interessados em aplicar essa teoria ao estudo do movimento de uma corda vibrante de comprimento L num plano xz com extremidades fixadas no eixo x em x = 0 e x = L, que vibra transversalmente ao eixo x.
Isto significa que z = u(x, t) d´a a posi¸c˜ao do ponto x da corda no instante t. Note que u(0, t) = 0, ∀t e u(L, t) = 0, ∀t.
Sob certas condi¸c˜oes, o movimento da corda pode ser modelado pela equa¸c˜ao ∂2u
∂t2 = c 2∂
2u
∂x2 (1)
onde c > 0, segue da teoria de EDP que ´e razo´avel buscar uma aproxima¸c˜ao da solu¸c˜ao da forma e u(x, t) = k X `=1 a`g`(x, t) + b`h`(x, t) (2) onde g`(x, t) = cos(` π Lct) sin(` π Lx) (3) h`(x, t) = sin(` π Lct) sin `( π Lx), ` = 1, . . . , k.
Se temos uma tabela da solu¸c˜ao u(x, t) em pontos (xi, tj) ∈ [0, L] × [0, T ] da
forma xi = iL N, i = 0, 1, . . . , N, (4) tj = jT M, j = 0, 1, . . . , M,
´e razo´avel (devido a considera¸c˜oes f´ısicas endo¸cadas pela teoria matem´atica) considerar uma tabela maior, obtida fazendo-se a reflex˜ao ´ımpar na vari´avel x.
Assim, passamos a ter pontos (xi, tj) da forma
xi = iL N, i = −N + 1, −N + 2, . . . , 0, 1, . . . , N, (5) tj = jT M, j = 0, 1, . . . , M.
(N˜ao usamos o valor i = −N porque a extens˜ao de u teria o mesmo valor em (−L, t) e em (L, t), e usar ambos seria privilegiar o valor de u na extremidade x = L.)
Note que para definir a extens˜ao ´ımpar de u na vari´avel x nos pontos da tabela basta tomar
u(xi, tj) := u(x−i, tj), i = −N + 1, −N + 2, . . . , −1,
e para os outros valores de i usar a tabela original.
Adaptando os ´ındices ao nosso caso, o produto escalar fica
hh H1| H2ii = N X i=−N +1 M X j=0 H1(xi, tj)H2(xi, tj).
Assim, usando os produtos escalares auxiliares h | i1 na vari´avel x e
h | i2 na vari´avel t definidos por
h v1 | v2i1 = N X i=−N +1 v1(xi)v2(xi) (6) h w1 | w2i2 = M X j=0 w1(tj)w2(tj), (7) temos hh gr | gsii = hh cos(r π Lct) sin(r π Lx) | cos(s π Lct) sin(s π Lx) ii = N X i=−N +1 M X j=0 cos(rπ Lctj) sin(r π Lxi) cos(s π Lctj) sin(s π Lxi) = N X i=−N +1 M X j=0 [cos(rπ Lctj) cos(s π cLtj)][sin(r π Lxi) sin(s π Lxi)] = N X i=−N +1 [sin(rπ Lxi) sin(s π Lxi)] M X j=0 [cos(rπ Lctj) cos(s π Lctj)] = h sin(rπ Lx) | sin(s π Lx) i1 h cos(r π Lct) | cos(s π Lct) i2. Logo, hh gr | gs ii = hh cos(r π Lct) sin(r π Lx) | cos(s π Lct) sin(s π Lx) ii (8) = h sin(rπ Lx) | sin(s π Lx) i1 h cos(r π Lct) | cos(s π Lct) i2. Analogamente, hh hr | hs ii = hh sin(r π Lct) sin(r π Lx) | sin(s π Lct) sin(s π Lx) ii (9) = h sin(rπ Lx) | sin(s π Lx) i1 h sin(r π Lct) | sin(s π Lct) i2,
e hh gr| hsii = hh cos(r π Lct) sin(r π Lx) | sin(s π Lct) sin(s π Lx) ii (10) = h sin(rπ Lx) | sin(s π Lx) i1h cos(r π Lct) | sin(s π Lct) i2. Da An´alise Harmˆonica Discreta sabemos que se k < N − 1 ent˜ao
h sin(rπ Lx) | sin(s π Lx) i1= N, se s = r = 1, . . . , k 0, se 1 ≤ r, s ≤ k, r 6= s. Em consequˆencia, hh gr| gsii = N h cos(rπ Lct) | cos(s π Lct) i2, se s = r = 1, . . . , k 0, se 1 ≤ r, s ≤ k, r 6= s. hh hr | hsii = N h sin(rπ Lct) | sin(s π Lct) i2, se s = r = 1, . . . , k 0, se 1 ≤ r, s ≤ k, r 6= s. hh gr | hsii = N h cos(rπ Lct) | sin(s π Lct) i2, se s = r = 1, . . . , k 0, se 1 ≤ r, s ≤ k, r 6= s. Assim, g1, . . . , gk, h1, . . . , hk s˜ao ortogonais e consequentemente os
coefi-cientes da fun¸c˜ao aproximadoraeu s˜ao dados por a`= hh u | g` ii hh g` | g` ii , b`= hh u | h`ii hh h` | h` ii . (11)
3
EXERC´
ICIO PROGRAMA
3.1
O que programar
Seu programa pode ser feito numa linguagem de programa¸c˜ao como “C”, “For-tran”, “Pascal”, ou ser desenvolvido usando um programa espec´ıfico para com-puta¸c˜ao cient´ıfica como “MAPLE”, “MATHEMATICA” ou “MATLAB”, e deve conter
(a) Leitura dos valores de c, do comprimento L da corda e do instante de tempo final T .
(b) Leitura dos n´umeros M e N que definem os pontos da malha em que a fun¸c˜ao u ´e conhecida.
(c) C´alculo ou Leitura dos valores uij = u(xi, tj), i = 0, 1, . . . , N, j = 0, 1, . . . , M
nos pontos (xi, yj) da malha.
(d) Leitura do valor k que deve ser usado ao procurar a fun¸c˜ao aproximadora e
u.
(e) Fun¸c˜oes g`, h`.
(g) Obten¸c˜ao dos coeficientes a`, b`, ` = 0, 1, . . . , k da fun¸c˜ao aproximadora eu.
(h) Gr´afico da fun¸c˜ao aproximadora obtida e da fun¸c˜ao tabelada que foi apro-ximada.
3.2
Dados para os testes
Vocˆe deve testar seu programa em dois casos, para valores dos parˆametros c, L, T, M e N dados, e para diversos valores do parˆametro k.
I. Primeiro teste: a tabela uij = u(xi, tj) deve ser gerada a partir de uma
solu¸c˜ao exata do problema da corda finita com extremidades fixas,
u(x, t) = 1 2(f (x + ct) + f (x − ct)) + 1 2c Z x+ct x−ct g(s)ds,
com f (x) = x(L − x) (posi¸c˜ao inicial) e g(x) = x(L − x) (velocidade inicial).
Tome c = 1, L = 2, T = 3, M = 30, N = 20 e fa¸ca aproxima¸c˜oes usando k = 1, k = 2, k = 3, k = 6, k = 9.
II. Segundo teste: A tabela uij = u(xi, tj), em arquivo, e os valores dos
4
Observa¸
c˜
ao
O Exerc´ıcio Programa pode ser feito individualmente ou em grupos de 2 alunos. Sobre o Exerc´ıcio Programa, devem ser entregues: disquete, impress˜ao da listagem e da sa´ıda.
5
Testes Complementares Interessantes
(a) f (x) = x(L − x), g(x) = 0. (b) f (x) = 0, g(x) = x(L − x). (c) g(x) = 0 e f (x) = − |x − | se x ∈ [0, 2], 0, se x ∈ [2, L] ou seja, f (x) = x, se x ∈ [0, 2], 2 − x, se x ∈ [, 2], 0, se x ∈ [2, L] onde 0 < << L.