MODELAMENTO S´ISMICO ASSINT ´
OTICO
UTILIZANDO DIFERENC
¸ AS FINITAS
Matheus Fabiano Pila
Aluno
Prof. Dr. L´ucio Tunes dos Santos
Orientador
Prof. Dra. Am´elia Novais
Co-orientadora
DMA – IMECC – UNICAMP Mar¸co de 2005
Agradecimentos
Agrade¸co primeiramente ao meu orientador Prof. L´ucio Tunes dos Santos, com o qual trabalho junto desde o primeiro ano de gradua¸c˜ao. Uma pessoa amiga e totalmente profissional, que ao longo destes anos me ajudou em tudo o que eu precisei. Outra pessoa muito importante na elabora¸c˜ao desta disserta¸c˜ao foi a Profa. Am´elia Novais, que ´e extremamente prestativa e atenciosa, sempre se mostrando empolgada diante de qualquer desafio.
N˜ao poderiam faltar agradecimentos `a minha fam´ılia, que acreditou no meu trabalho e sempre me incentivou a continuar meus estudos, e aos amigos, que sempre est˜ao presentes tornando nossos dias menos dif´ıceis.
Sum´
ario
Introdu¸c˜ao 1
1 M´etodos Assint´oticos 3
1.1 Equa¸c˜ao Iconal e Equa¸c˜ao de Transporte . . . 3
1.2 Raios S´ısmicos . . . 4
2 M´etodos de Diferen¸cas Finitas Usando Malha Fixa 7 2.1 Primeira Chegada do Tempo de Trˆansito . . . 8
2.2 Chegada Direta do Tempo de Trˆansito . . . 13
2.3 M´etodos de Ordem Superior para o C´alculo da Primeira Chegada do Tempo de Trˆansito . . . 14
2.3.1 Esquemas RK-ENO de Ordem Dois . . . 15
2.3.2 Esquemas RK-ENO de Ordem Trˆes . . . 17
2.3.3 Condi¸c˜ao de Estabilidade . . . 18
2.4 Implementa¸c˜ao Computacional dos Esquemas RK-ENO Usando a Expans˜ao DNO e Melhorias nos M´etodos . . . 20
2.4.1 Inicializa¸c˜ao Refinada . . . 22
2.4.2 Expans˜ao Dinˆamica DNO . . . 25
2.4.3 Varredura Posterior (PS) . . . 25
3 M´etodo de Diferen¸cas Finitas Adaptativo 29 3.1 Inicializa¸c˜ao no M´etodo Adaptativo . . . 31
3.1.1 Aproxima¸c˜ao por Taylor . . . 32
3.1.2 Aproxima¸c˜ao por Raios . . . 34
3.1.3 Testes Computacionais . . . 38
3.2 Interpola¸c˜ao no Refinamento . . . 39
3.3 Experimentos Num´ericos . . . 42
3.3.1 Meio Homogˆeneo (v(x, z) = v0) . . . 44
3.3.2 Meio com Velocidade Afim em z (v(x, z) = v0+ gz) . . . 45
3.3.3 Meios Homogˆeneos Separados por Interface Sinclinal . . . 47
3.3.4 Meios Homogˆeneos Separados por Interface Anticlinal . . . 50
3.3.5 Meios Homogˆeneos Separados por Interface com Quina . . . 50
3.3.6 Meio com Velocidade Exponencial em z (v(x, z) = v0egz) . . . 55
3.3.7 Meio com Velocidade N˜ao Linear em z . . . 55
3.4 Coment´arios Gerais . . . 60
4 Conclus˜ao 63
Lista de Figuras
2.1 Dom´ınio Discretizado . . . 8
2.2 Avan¸co do M´etodo no Dom´ınio Discretizado . . . 9
2.3 Raio Direto e Raio Refletido . . . 10
2.4 Geometrias de Blocos de N´os na Malha . . . 10
2.5 Modelo com um Campo de Velocidades Descont´ınuo . . . 12
2.6 Primeira Chegada do Tempo de Trˆansito (Vidale) . . . 12
2.7 Chegada direta do Tempo de Trˆansito (Mo & Harris) . . . 14
2.8 Dom´ıno Num´erico e Dom´ınio Anal´ıtico - Condi¸c˜ao CFL . . . 19
2.9 Erros Percentuais - Vidale e RK-ENO Ordem 2 . . . 21
2.10 Erros Percentuais - RK-ENO Ordem 2 Sem e Com o Refinamento . . . 23
2.11 Erros Percentuais - RK-ENO de Ordem 2 e 3 . . . 24
2.12 Modelo com um Campo de Velocidades Descont´ınuo . . . 27
2.13 Aproxima¸c˜ao Ap´os Corre¸c˜ao Usando o M´etodo PS . . . 28
3.1 Fun¸c˜ao smmax . . . 30
3.2 Erro na Inicializa¸c˜ao - Meio Afim em z . . . 39
3.3 Erro na Inicializa¸c˜ao - Meio com Velocidade Exponencial em z . . . 40
3.4 Erro na Inicializa¸c˜ao - Meio com Velocidade Decaindo em z . . . 40
3.5 Diferentes Interpola¸c˜oes . . . 41
3.6 Modelo e Tempo de Trˆansito para Testes . . . 43
3.7 Erros nas Diferentes Interpola¸c˜oes . . . 44
3.8 Tempo de Trˆasito em um Meio Homogˆeneo . . . 45
3.9 Erros Percentuais e Varia¸c˜ao de ∆z no Meio Homogˆeneo . . . 46
3.10 Meio com Velocidade Afim em z e o Tempo de Trˆansito Neste . . . 48
3.11 Erros Percentuais e Varia¸c˜ao de ∆z no Meio com Velocidade Afim em z . . 49 iii
3.12 Meio com um Refletor Sinclinal e o Tempo de Trˆansito Neste . . . 51 3.13 Erros Percentuais e Varia¸c˜ao de ∆z no Meio com um Refletor Sinclinal . . 52 3.14 Meio com um Refletor Antinclinal e o Tempo de Trˆansito Neste . . . 53 3.15 Erros Percentuais e Varia¸c˜ao de ∆z no Meio com um Refletor Anticlinal . 54 3.16 Meio com um Refletor com Quina e o Tempo de Trˆansito Neste . . . 56 3.17 Erros Percentuais e Varia¸c˜ao de ∆z no Meio com um Refletor com Quina . 57 3.18 Meio com Velocidade Exponencial em z e o Tempo de Trˆansito Neste . . . 58 3.19 Erros Percentuais e Varia¸c˜ao de ∆z no Meio com Velocidade Exponencial
em z . . . 59 3.20 Meio com Velocidade Decaindo em z e o Tempo de Trˆansito Neste . . . 61 3.21 Erros Percentuais e Varia¸c˜ao de ∆z no Meio com Velocidade Decaindo em z 62
Introdu¸c˜
ao
O modelamento s´ısmico ´e uma t´ecnica para simular a propaga¸c˜ao de ondas no subsolo terrestre. O objetivo ´e predizer o que um conjunto de sensores obteria, dada uma estrutura para a sub-superf´ıcie. Esta t´ecnica ´e uma ferramenta poderosa para interpreta¸c˜ao s´ısmica e uma parte essencial nos algoritmos de invers˜ao s´ısmica. Existem trˆes categorias nas quais podemos classificar esses m´etodos: m´etodos diretos, m´etodos integrais e m´etodos assint´oticos (Carcione et al. [4]).
Para resolver a equa¸c˜ao da onda por m´etodos diretos, o modelo geol´ogico ´e apro-ximado por uma malha num´erica, isto ´e, o modelo ´e discretizado em um n´umero finito de pontos e um m´etodo num´erico ´e utilizado para encontrar uma aproxima¸c˜ao para a solu¸c˜ao da equa¸c˜ao da onda completa. Podemos citar os m´etodos de Diferen¸cas Finitas, Pseudo-Espectrais e Elementos Finitos. Os m´etodos diretos n˜ao tˆem restri¸c˜oes quanto a variabilidade do meio e podem ser muito precisos quando uma malha suficientemente fina for usada, obedecendo as condi¸c˜oes para convergˆencia.
Os m´etodos integrais utilizam representa¸c˜oes integrais para o campo de ondas ger-ado por fontes pontuais (Princ´ıpio de Huygens). Estes m´etodos s˜ao mais restritos nas aplica¸c˜oes que os m´etodos diretos. No entanto, para geometrias espec´ıficas, os m´etodos integrais apresentam muita eficiˆencia e fornecem resultados precisos. Podemos citar as representa¸c˜oes integrais de Born e Kirchhoff.
J´a os m´etodos assint´oticos s˜ao frequentemente usados no modelamento s´ısmico. Esses m´etodos computam o campo de ondas por partes, decompondo a equa¸c˜ao da onda em duas outras equa¸c˜oes: Iconal e Transporte. Conforme v´arios textos da literatura, eles s˜ao os mais eficientes computacionalmente destas trˆes categorias apresentadas. Uma de suas grandes vantagens ´e o tempo computacional, mesmo para casos em trˆes dimens˜oes. Podemos citar o M´etodo dos Raios (caracter´ısticas) e Diferen¸cas Finitas, agora aplicadas `as equa¸c˜oes resultantes.
Neste trabalho, estudamos o modelamento s´ısmico assint´otico utilizando os esquemas de diferen¸cas finitas (DF) na equa¸c˜ao iconal, para calcularmos o tempo de trˆansito em uma malha fixa e posteriormente em uma adaptativa. No caso de esquemas usando malha fixa, o primeiro trabalho de maior importˆancia nesta ´area foi Vidale [16], onde esquemas de DF s˜ao aplicados de forma engenhosa por´em sem um bom embasamento te´orico. Depois disso, v´arios trabalhos foram publicados sem uma relevante mudan¸ca na eficiˆencia dos m´etodos. Um resultado importante foi apresentado em C. Belfi [1], pois os m´etodos de malha fixa, agora implementados com os esquemas Essencialmente N˜ao Oscilat´orio (ENO), s˜ao aplicados de forma que exista um limitante para a inclina¸c˜ao das frentes de onda, devido `a condi¸c˜ao CFL. Este resultado seria a base para os algoritmos adaptativos. Em Kim & Cook [9], os m´etodos de malha fixa associados aos esquemas ENO e `a inicializa¸c˜ao refinada mostraram ser uma ´otima ferramenta para o c´alculo do tempo de trˆansito, at´e mesmo em meios que contenham regi˜oes de alto contraste, aplicando uma corre¸c˜ao que usa os mesmos esquemas em outras dire¸c˜oes (corre¸c˜ao PS).
O maior problema dos m´etodos de malha fixa ´e o erro relativamente alto que aparece na regi˜ao pr´oxima `a fonte, devido `a alta curvatura da frente de onda nesta regi˜ao. Os m´etodos adaptativos surgem como uma ´otima op¸c˜ao para contornar este problema. Em Belfi & Symes [2], os m´etodos de DF associados aos esquemas ENO e Runge-Kutta (RK) conseguem contornar este problema, pois os espa¸camentos da malha se ajustam conforme o erro satisfaz ou n˜ao uma tolerˆancia fornecida pelo usu´ario. Por fim, em Qian & Symes [12], o m´etodo de DF adaptativo ´e exposto com todo o embasamento te´orico necess´ario para seu bom funcionamento. Sua alta eficiˆencia pode ter um alto custo, dependendo do alto contraste do meio fornecido.
Esta disserta¸c˜ao est´a organizada da seguinte forma. No Cap´ıtulo 1, apresentamos os m´etodos assint´oticos, explicando como obter a equa¸c˜ao iconal e as curvas caracter´ısticas desta. No Cap´ıtulo 2 discutimos os m´etodos de malha fixa, onde apresentamos desde os esquemas mais simples at´e os mais sofisticados, para resolver numericamente a equa¸c˜ao iconal. Tamb´em apresentamos neste cap´ıtulo as condi¸c˜oes para um bom funcionamento e os experimentos computacionais. No Cap´ıtulo 3 apresentamos o m´etodo adaptativo, onde os esquemas do cap´ıtulo anterior s˜ao aplicados em uma malha que varia, conforme uma tolerˆancia ´e satisfeita ou n˜ao em cada passo. Finalmente no Cap´ıtulo 4, apresentamos a conclus˜ao desta disserta¸c˜ao, discutindo as vantagens e desvantagens de usarmos ou n˜ao uma malha que se adapte ao problema.
Cap´ıtulo 1
M´
etodos Assint´
oticos
1.1
Equa¸c˜
ao Iconal e Equa¸c˜
ao de Transporte
Seja G a Fun¸c˜ao de Green para a Equa¸c˜ao da Onda Ac´ustica Homogˆenea com densidade constante no espa¸co da frequˆencia (Equa¸c˜ao de Helmholtz). Ent˜ao G satisfaz a seguinte
equa¸c˜ao "
∆ + ω2
v(x)2
#
G(x, xs, ω) = 0 , (1.1)
onde ∆ ´e o operador laplaciano, x ´e um ponto no dom´ınio, xs ´e a posi¸c˜ao da fonte, ω ´e
a frequˆencia e v(x) ´e o campo de velocidades. Pode ser mostrado que, para ω −→ ∞, a solu¸c˜ao tem o mesmo comportamento que a solu¸c˜ao do problema para um meio homogˆeneo (v(x) = v0 constante), cuja express˜ao ´e conhecida (Bleistein [3]). Na verdade, queremos
que
G(x, xs, ω) = A(x, xs)eiωτ (x,xs) , (1.2)
onde A ´e a fun¸c˜ao que fornece a amplitude e τ ´e a fun¸c˜ao que fornece o tempo de trˆansito. De maneira a encontrar A e τ , tomemos como tentativa de solu¸c˜ao para a fun¸c˜ao de Green, para um meio n˜ao homogˆeneo, uma s´erie de potˆencias de (−iω)−1, ou seja,
G(x, xs, ω) =
∞
X
k=0
(−iω)−kAk(x, xs)eiωτ (x,xs) , (1.3)
e, portanto, A = A0. Para obter as equa¸c˜oes que determinam as amplitudes Ak e o tempo de trˆansito τ , devemos substituir esta tentativa de solu¸c˜ao na equa¸c˜ao de Helmholtz e
agrupar os coeficientes, ou seja, ∞
X
k=0
{ (−iω)2−k[k∇τ k2−v−2]Ak−(−iω)1−k [2∇Ak·∇τ +Ak∆τ ]+(−iω)−k∆Ak } eiωτ = 0 . (1.4) Abrindo este somat´orio e atribuindo o valor zero para os coeficientes de cada potˆencia de (−iω)−1, obtemos, respectivamente, a equa¸c˜ao iconal, a equa¸c˜ao de transporte e a rela¸c˜ao de recorrˆencia:
k∇τ k2 = 1
v2 , (1.5)
2∇A0· ∇τ + A0∆τ = 0 , (1.6)
2∇Ak+1· ∇τ + Ak+1∆τ = ∆Ak , (1.7)
onde ||.|| denota a norma Euclidiana.
Assim, a nova solu¸c˜ao que atribu´ımos para a fun¸c˜ao de Green pode ser constru´ıda primeiro resolvendo a equa¸c˜ao iconal (determinando τ ), e em seguida a equa¸c˜ao de trans-porte (determinando A0), para posteriormente determinarmos os Ak, com k > 0.
1.2
Raios S´ısmicos
Uma maneira de encontrar a solu¸c˜ao da equa¸c˜ao iconal ´e aplicar o m´etodo das carac-ter´ısticas. Este ´e um m´etodo geral que encontra solu¸c˜oes para equa¸c˜oes diferenciais par-ciais de primeira ordem, que ´e o caso da equa¸c˜ao iconal. A id´eia ´e construir curvas x(σ) ao longo das quais a equa¸c˜ao diferencial parcial ´e reduzida a uma equa¸c˜ao diferencial ordin´aria (Carcione et al. [4]).
Para entendermos o conceito desta nova formula¸c˜ao no caso da equa¸c˜ao iconal, vamos primeiramente considerar o caso mais simples, onde o meio ´e homogˆeneo. As superf´ıcies de n´ıvel (considerando o caso tri-dimensional) da solu¸c˜ao da equa¸c˜ao iconal para este caso s˜ao esferas centrados na posi¸c˜ao da fonte pontual xs, que correspondem `as frentes de onda, com raio vt. Assim, escolhendo um ponto arbitr´ario x em nosso dom´ınio situado na frente de onda τ = t, a linha que liga os pontos xs e x ´e ortogonal `a essa frente de onda e assim, na dire¸c˜ao do gradiente ∇τ (x, xs). Portanto, podemos escrever esta linha
na forma parametrizada x(σ) = xs+ σ∇τ (x, xs) = xs+ σ v x − xs |x − xs| , (1.8)
onde escalamos o parˆametro σ de forma que
dx dσ = ∇τ = 1 v x − xs |x − xs| . (1.9)
Diferenciando o tempo de trˆansito τ com rela¸c˜ao a σ, obtemos
dτ dσ = ∇τ · dx dσ = k∇τ k 2 = 1 v2 , (1.10)
que ´e uma equa¸c˜ao diferencial ordin´aria para o tempo de trˆansito. Integrando com rela¸c˜ao a σ encontramos τ = σ/v2. Assim, para o caso onde temos um meio homogˆeneo, ´e
suficiente termos a fam´ılia de linhas partindo da posi¸c˜ao da fonte e a equa¸c˜ao diferencial ordin´aria (1.10) ao longo destas linhas para resolver a equa¸c˜ao iconal.
No caso geral, onde a velocidade do meio depende das vari´aveis espaciais, tamb´em queremos construir curvas x(σ) satisfazendo
dx
dσ = λ∇τ , (1.11)
isto ´e, queremos que as curvas procuradas sejam ortogonais `as frentes de onda, e assim estejam na dire¸c˜ao de ∇τ . Na equa¸c˜ao (1.11), λ ´e uma fun¸c˜ao das vari´aveis espaciais. Observemos que para encontrar estas curvas, precisamos conhecer τ . Para contornar este problema, diferenciamos (1.11) novamente com rela¸c˜ao a σ,
dx2 dσ2 = dλ dσ∇τ + λ∇ 2τdx dσ = dλ dσ∇τ + λ 2∇2τ ∇τ = dλ dσ∇τ + λ2 2 ∇(k∇τ k 2) = dλ dσ∇τ + λ2 2 ∇ · 1 v2 ¸ . (1.12)
Chamando p = ∇τ , temos dx dσ = λp , (1.13) e assim dx2 dσ2 = dλ dσp + λ dp dσ . (1.14)
Igualando este resuldado ao obtido em (1.12) temos
dp dσ = λ 2∇ · 1 v2 ¸ . (1.15)
Portanto, as equa¸c˜oes (1.13) e (1.15) mais a equa¸c˜ao
dτ dσ = ∇τ · dx dσ = λk∇τ k 2 = λ 1 v2 , (1.16)
formam um sistema que nos fornece as curvas caracter´ısticas x(σ), ou em nosso caso, simplesmente raios. Este resultado ´e muito importante e vai ser usado em nossos m´etodos num´ericos, visto que precisamos dizer ao algoritmo se ele est´a ou n˜ao usando pontos na malha de forma a respeitar a propaga¸c˜ao da onda.
Cap´ıtulo 2
M´
etodos de Diferen¸cas Finitas
Usando Malha Fixa
Os m´etodos de Diferen¸cas Finitas (DF) s˜ao bastante eficazes computacionalmente para resolver a equa¸c˜ao iconal, a partir da´ı podemos construir as curvas de n´ıvel (no caso bidimensional) da fun¸c˜ao τ , que correspondem `as frentes de onda que se propagam a partir da posi¸c˜ao da fonte. Os m´etodos de DF para a equa¸c˜ao iconal, por´em, n˜ao costumam obter a solu¸c˜ao correspondente ao problema de mais de uma frente de onda propagando. Os m´etodos aqui estudados (exceto o apresentado em Mo & Harris [10]) se referem ao problema que calcula a primeira onda vinda da fonte at´e um determinado ponto, chamada
primeira chegada do tempo de trˆansito.
Vamos estudar a equa¸c˜ao iconal no espa¸co bidimensional, ou seja,
à ∂τ ∂x !2 + à ∂τ ∂z !2 = 1 v(x)2 , (2.1)
onde x = (x, z) com a fonte localizada na superf´ıcie (z = 0). Dado o dom´ınio D = {(x, z)
| x ∈ [xmin, xmax] e z ∈ [0, zmax]} onde queremos resolver esta equa¸c˜ao, podemos
dis-cretiz´a-lo, criando assim uma malha com J + 1 n´os na vertical e I + 1 n´os na horizontal, correspondendo `as dire¸c˜oes z e x, respectivamente. Assim, zj = j∆z com j = 0, 1, ..., J e xi = xmin+ i∆x com i = 0, 1, ..., I, onde ∆z = zmax/J e ∆x = (xmax− xmin)/I. Dada
a posi¸c˜ao da fonte e o campo de velocidades nesta malha retangular, podemos dar in´ıcio ao processo. Primeiramente, precisamos aproximar o valor da solu¸c˜ao da equa¸c˜ao iconal numa regi˜ao pr´oxima `a fonte, representada pelos n´os pretos na Figura 2.1, para
Figura 2.1: Representa¸c˜ao de um dom´ınio discretizado. Os n´os pretos representam a malha inicializada ao redor da fonte (representada por S). J´a os n´os brancos representam os pontos onde devemos aproximar a solu¸c˜ao utilizando DF.
mos aplicar um esquema num´erico nesses. O tempo de trˆansito ´e determinado integrando
v−1 ao longo de um caminho que o torna m´ınimo. Os m´etodos estudados prop˜oem usar estes caminhos como sendo segmentos de retas, o que corresponde a supor que a ve-locidade ´e constante nesta regi˜ao, e ´e igual a veve-locidade na posi¸c˜ao da fonte. M´etodos mais avan¸cados, conforme veremos adiante, usam uma inicializa¸c˜ao refinada. Feito isso, podemos dar partida ao m´etodo e aplicar esquemas de DF nos pontos inicializados.
Esta ´e a id´eia geral de como atuam os m´etodos de diferen¸cas finitas. A seguir, temos dois m´etodos simples para resolver o problema. O objetivo de coloc´a-los na mesma se¸c˜ao ´e mostrar que pequenas mudan¸cas nos m´etodos podem fornecer solu¸c˜oes bem diferentes.
2.1
Primeira Chegada do Tempo de Trˆ
ansito
O m´etodo que segue foi apresentado em Vidale [16], e funciona bem para um grande n´umero de problemas. O espa¸camento ´e igual tanto na vertical quanto na horizontal, isto ´e, ∆z = ∆x = h. Considerando a velocidade constante, calculamos analiticamente o tempo de trˆansito numa regi˜ao de dois n´os ao redor da fonte (conforme Figura 2.1). Na Figura 2.2 temos a configura¸c˜ao da malha, dada uma regi˜ao onde a solu¸c˜ao j´a est´a calculada. Os n´os pretos indicam os pontos da malha onde o tempo j´a foi calculado e os n´os brancos os pontos onde o tempo ser´a calculado. Podemos ver esta regi˜ao formada pelos pontos calculados como um retˆangulo, e queremos que este retˆangulo se expanda
Figura 2.2: Os n´os pretos representam pontos onde a aproxima¸c˜ao j´a foi calculada, onde os maiores representam os m´ınimos locais em cada aresta. Os n´os brancos est˜ao sobre as pr´oximas trˆes arestas do retˆangulo em expans˜ao ao redor da fonte, onde o tempo de trˆansito deve ser aproximado.
at´e que o dom´ınio fornecido seja preenchido. Assim, cada passo deste algoritmo con-siste em calcularmos o tempo de trˆansito seq¨uencialmente em cada uma das trˆes arestas deste retˆangulo. Este modo de expans˜ao ´e conhecido como DNO (“Down0n0out”). Como queremos que os tempos sejam determinados de forma upwind (entre esquema atrasado e avan¸cado, o m´etodo escolhe aquele que respeita a propaga¸c˜ao da onda), o c´alculo dos n´os brancos deve ser feito de forma que seus vizinhos do passo anterior estejam organizados de forma crescente. Ou ainda, se pensarmos de uma forma mais engenhosa, devemos dar in´ıcio ao processo pelos m´ınimos locais da ´ultima aresta calculada, representados pelos pontos pretos maiores na borda do retˆangulo em expans˜ao, e calcular o tempo de trˆansito nos respectivos n´os vizinhos mais pr´oximos, representados pelos pontos brancos com con-torno maior. Em seguida, os n´os vizinhos s˜ao calculados de maneira consecutiva, at´e chegar nos m´aximos locais. Quando ocorrer de um m´aximo local ter duas maneiras de ser calculado (pela direita e pela esquerda), o valor assumido deve ser o tempo de trˆansito menor entre os dois valores, pois queremos a frente de onda que chega primeiro.
Esta forma de resolu¸c˜ao apresenta um problema. Como vamos sempre nos afastando da fonte, estamos considerando que ∂τ /∂z > 0 em cada aresta horizontal do retˆangulo em expans˜ao ao redor da fonte (considera¸c˜ao an´aloga com a derivada em x ocorre nas arestas verticais do mesmo retˆangulo). Logo, pode acontecer de calcularmos um tempo de trˆansito que necessita da resolu¸c˜ao em passos posteriores. Como ilustrado na Figura 2.3, o ponto
G sente a chegada da frente de onda por dois caminhos diferentes. Caso a velocidade v2
no meio de baixo seja maior que a velocidade v1 do meio de cima, dependendo da posi¸c˜ao
do ponto G a onda que atingiu a descontinuidade chega primeiro neste local. M´etodos corretivos, como o PS (“post sweeping”) apresentado mais adiante, tentam sanar este problema.
Figura 2.3: O raio que atinge a regi˜ao de descontinuidade pode chegar antes que o raio direto.
Uma vez visto como o algoritmo procede, falta apresentarmos os esquemas usados nestes c´alculos. Na Figura 2.4 temos as duas geometrias poss´ıveis usadas no m´etodo. Como anteriormente, os n´os pretos indicam onde o tempo de trˆansito j´a foi determinado e os brancos onde os tempos ser˜ao calculados. A primeira geometria refere-se ao c´alculo de tempos em e cujo vizinho do passo anterior ´e um m´ınimo local (m). J´a a segunda geometria refere-se a todos os outros pontos.
Primeiramente, vamos discretizar as derivadas parciais no ponto m usando as diferen¸cas
centrada e avan¸cada. Logo, µt r− tl 2h ¶2 + µt e− tm h ¶2 = 1 v2 m . (2.2)
Considerando que a onda est´a sempre se afastando da fonte, temos ent˜ao que
te= tm+ h v u u t 1 v2 m − µt r− tl 2h ¶2 . (2.3)
Para o caso da segunda geometria, vamos discretizar as derivadas parciais no ponto que est´a no meio do quadrado formado pelos quatro pontos. Assim, usando diferen¸cas cen-tradas nestes novos eixos ortogonais (representadas pelas linhas pontilhadas na Figura 2.4),
obtemos à td√− ta 2h !2 + à tc√− tb 2h !2 = 1 v2 , (2.4) ou ainda td= ta+ q 2(h/v)2− (t c− tb)2 , (2.5)
onde v = (va+ vb+ vc+ vd)/4. O esquema ´e aplicado de forma que ta < tb, pois assim
satisfaz o met´odo upwind descrito anteriormente. Isto ´e v´alido pois a equa¸c˜ao iconal n˜ao muda ap´os sofrer rota¸c˜oes. Para vermos isto, basta fazer u = (x+y)/√2 e v = (−x+y)/√2
e assim à ∂τ ∂x !2 + à ∂τ ∂z !2 = à ∂¯τ ∂u !2 + à ∂¯τ ∂v !2 = 1 v2 , (2.6) onde τ (x, z) = ¯τ (u, v).
Quando ocorrer de o argumento da raiz ser negativo, a alternativa proposta em Vidale [16] ´e substituir o valor do argumento por zero. Assim, passamos a ter que td = ta, o que
significa que estamos considerando que os pontos d e a est˜ao na mesma frente de onda. Para ilustrar o c´alculo da primeira chegada do tempo de trˆansito, aplicamos o m´etodo no modelo da Figura 2.5, que possui um campo de velocidades de 2000 m/s no dom´ınio fornecido, exceto na caixa que ultrapassa 500 m na profundidade e 2500 m na superf´ıcie, onde a velocidade ´e 5000 m/s. A fonte est´a posicionada em x = 2000 m na superf´ıcie. A aproxima¸c˜ao resultante est´a na Figura 2.6.
Figura 2.5: Modelo com um campo de velocidades descont´ınuo. 0 0.2 0.4 0.6 0.8 1 1.2 1.4 0 200 400 600 800 1000 1200 1400 1600 1800 2000 0 500 1000 1500 2000 2500 3000 3500 4000 profundidade (m) distancia (m)
Primeira Chegada do Tempo de Trânsito
Figura 2.6: Primeira chegada do tempo de trˆansito para o modelo apresentado na Figura 2.5, calculada usando o m´etodo apresentado por Vidale [16].
2.2
Chegada Direta do Tempo de Trˆ
ansito
Com pequenas mudan¸cas, ´e poss´ıvel criar um m´etodo que calcule a onda que propaga de maneira direta entre dois pontos, chamada chegada direta do tempo de trˆansito. Este m´etodo foi apresentado em Mo & Harris [10] e ´e muito parecido com o exposto anterior-mente.
A primeira mudan¸ca ´e quando um m´aximo local em uma das arestas do retˆangulo em expans˜ao tem duas formas de ser calculado. Desta vez, o valor assumido ´e aquele que usa informa¸c˜ao de pontos mais pr´oximos `a fonte. O motivo disto ´e porque estamos supondo que a onda direta est´a sempre se afastanto da fonte. A outra mudan¸ca ´e quando o argumento da raiz for negativo. Como queremos a onda que propaga direto, devemos supor que a onda foi transmitida sobre a aresta do bloco (referente a primeira ou segunda geometria da Figura 2.4) onde est´a sendo calculado o tempo de trˆansito. Assim, para o c´alculo de m´ınimos locais, conforme a primeira geometria da Figura 2.4 passamos a ter
te = tm+ h/ve. (2.7)
J´a no c´alculo dos outros tempos, conforme o segundo bloco da mesma figura, passamos a ter
td = min(tb, tc) + h/vd . (2.8)
No c´alculo da chegada direta do tempo de trˆansito, n˜ao temos problema ao estarmos sempre nos afastando da fonte. Diferentemente do problema anterior, aqui n˜ao nos inte-ressam ondas refletidas, que podem chegar antes da onda direta. Na Figura 2.7, temos a aproxima¸c˜ao obtida usando este m´etodo, para o mesmo campo de velocidades do ´ultimo exemplo (ver Figura 2.5). A principal diferen¸ca entre esta aproxima¸c˜ao e aquela obtida anteriormente (ver Figura 2.6) ´e que agora temos apenas as ondas diretas e n˜ao as refleti-das, que haviam sido geradas por causa da descontinuidade do campo de velocidades do modelo.
0 0.2 0.4 0.6 0.8 1 1.2 1.4 0 200 400 600 800 1000 1200 1400 1600 1800 2000 0 500 1000 1500 2000 2500 3000 3500 4000 profundidade (m) distancia (m)
Chegada Direta do Tempo de Trânsito
Figura 2.7: Chegada Direta do tempo de trˆansito para o modelo apresentado na Figura 2.5, calculada usando o m´etodo apresentado por Mo & Harris [10].
2.3
M´
etodos de Ordem Superior para o C´
alculo da
Primeira Chegada do Tempo de Trˆ
ansito
M´etodos como o apresentado na ´ultima se¸c˜ao n˜ao tornam poss´ıvel uma modifica¸c˜ao afim de aumentar sua efic´acia. Mas quando evolu´ımos em apenas uma vari´avel, passamos a ter uma equa¸c˜ao diferencial nesta. Assim, considerando ∂τ /∂z > 0, podemos reescrever a equa¸c˜ao iconal como uma equa¸c˜ao de evolu¸c˜ao em z, ou seja,
∂τ ∂z = v u u t 1 v2 − Ã ∂τ ∂x !2 = H Ã v,∂τ ∂x ! . (2.9)
Usamos a nota¸c˜ao H para o operador propositalmente, pois esta equa¸c˜ao ´e uma equa¸c˜ao Hamilton-Jacobi.
As solu¸c˜oes para este tipo de equa¸c˜ao foram bastante discutidas na literatura. Uma das primeiras id´eias ´e introduzir condi¸c˜oes de entropia e solu¸c˜oes com viscosidade, de-vido `a n˜ao unicidade das solu¸c˜oes (Crandall & Lions [5]). Outra classe importante de m´etodos num´ericos para resolver (2.9) ´e a classe de esquemas mon´otonos discutida em
Crandall & Lions [6]. No entanto, apenas esquemas mon´otonos de primeira ordem s˜ao adequados, pois os de alta ordem apresentam oscila¸c˜oes que geralmente ocorrem na pre-sen¸ca de derivadas descont´ınuas. Em nosso caso, as derivadas descont´ınuas aparecem frequentemente, principalmente quando o m´etodo passa por uma interface.
Os esquemas essencialmente n˜ao oscilat´orios (ENO) foram implementados com grande sucesso para resolver o problema hiperb´olico de leis de conserva¸c˜ao, conforme apresentado por v´arios autores (Harten & Osher [7], Harten et al. [8], Shu & Osher [13] e [14])). A id´eia chave do esquema ENO ´e usar uma interpola¸c˜ao local que escolhe a interpola¸c˜ao mais suave poss´ıvel. Em Osher & Shu [11], foi discutida a proximidade dos problemas hiperb´olicos de leis de conserva¸c˜ao e as equa¸c˜oes Hamilton-Jacobi, de onde concluiu-se que os esquemas ENO podem ser aplicados para encontrar aproxima¸c˜oes de alta ordem nas equa¸c˜oes Hamilton-Jacobi.
Seguindo esta mesma id´eia, Belfi [1] construiu os esquemas ENO agora aplicados `a equa¸c˜ao iconal evoluindo em apenas uma vari´avel. Assim, temos um m´etodo onde s˜ao aplicados esquemas Runge-Kutta (RK) na vari´avel z e esquemas ENO na vari´avel x. Neste m´etodo, a inicializa¸c˜ao tamb´em considera a velocidade constante em uma regi˜ao, e igual a velocidade na posi¸c˜ao da fonte. A diferen¸ca ´e que ao inv´es de a inicializa¸c˜ao ocorrer em um pequeno retˆangulo composto por n´os ao redor da fonte, ela ocorre em toda uma regi˜ao logo abaixo da superf´ıcie, em uma certa profundidade fornecida. A seguir, apresentamos como s˜ao constru´ıdos estes esquemas.
2.3.1
Esquemas RK-ENO de Ordem Dois
Aplicando o esquema Runge-Kutta de ordem dois na vari´avel z da equa¸c˜ao (2.9) temos ˜
τi,j+1= τi,j+ ∆zH(vi,j, ˆDi,j) , (2.10) τi,j+1=
1
2(τi,j+ ˜τi,j+1+ ∆zH(vi,j+1, ˆDi,j+1)) , (2.11) onde os ´ındices i e j correspondem a xi e zj, respectivamente. Vejamos como ´e constru´ıdo o operador ˆDi,j, que ´e o esquema upwind ENO de ordem dois que aproxima ∂τ /∂x.
Definindo os operadores de diferen¸cas avan¸cado e atrasado,
D±1τ = ±τ (x ± ∆x, z) − τ (x, z)
podemos escrever (usando a expans˜ao de Taylor), ∂τ ∂x = D ± 1τ ∓ ∆x 2 ∂2τ ∂x2 + O(∆x 2) . (2.13)
Queremos que a aproxima¸c˜ao da derivada primeira seja de ordem dois. Podemos ent˜ao, aproximar a derivada segunda acima por esquemas at´e de ordem um. Vamos usar o esquema ENO de segunda ordem:
∂2τ ∂x2 ≈ M(D − 1 D1+τ, D1±D1±τ ) , (2.14) onde, M(ξ, η) = 0, se ξη ≤ 0 ξ, se |ξ| ≤ |η| e ξη > 0 η, se |ξ| > |η| e ξη > 0 . (2.15)
Logo, a aproxima¸c˜ao ENO de segunda ordem ´e dada por
∂τ ∂x ≈ D ± 2τ = D±1τ ∓ ∆x 2 M(D − 1D+1τ, D±1D±1τ ) . (2.16) Notemos que D−
1D1+τ e D1±D1±τ s˜ao os esquemas de DF centrados em (x, z) e (x ± ∆x, z),
respectivamente, e eles fornecem a curvatura nestes pontos. Logo, a fun¸c˜ao M escolhe a componente menos oscilat´oria para realizar a aproxima¸c˜ao. Outra vantagem, ´e que caso estejamos em uma regi˜ao onde h´a mudan¸ca muito brusca na velocidade do meio, a fun¸c˜ao M calcula a aproxima¸c˜ao usando os pontos cujos tempos s˜ao menos oscilat´orios, permitindo assim que o m´etodo upwind funcione de maneira mais eficaz. Para finalizar, vamos definir o esquema upwind ENO de segunda ordem que aproxima ∂τ /∂x
∂τ
∂x ≈ ˆDτ = max{|max{D −
2τ, 0}|, |min{D2+τ, 0}|} , (2.17)
2.3.2
Esquemas RK-ENO de Ordem Trˆ
es
Analogamente ao que foi feito no caso anterior, vamos aplicar o esquema Runge-Kutta de ordem trˆes na vari´avel z. Logo,
˜
τi,j+1= τi,j+ ∆zH(vi,j, ˇDi,j) , (2.18) ˆ
τi,j+1/2= 1
4(3τi,j + ˜τi,j+1+ ∆zH(vi,j+1, ˇDi,j+1)) , (2.19)
τi,j+1 = 1
6(2τi,j + 4ˆτi,j+1/2+ 4∆zH(vi,j+1/2, ˇDi,j+1/2)) . (2.20) Vejamos agora como fica o operador ˇDi,j, que ´e o esquema upwind ENO de terceira ordem. Da expans˜ao de Taylor, temos
∂τ ∂x = D ± 1τ ∓ ∆x 2 ∂2τ ∂x2 − ∆x2 6 ∂3τ ∂x3 + O(∆x 3) . (2.21)
Agora, queremos que a aproxima¸c˜ao da derivada primeira seja de ordem trˆes. Podemos ent˜ao, aproximar a derivada segunda acima por esquemas de ordem dois, e a derivada terceira por esquemas de ordem um. Novamente, vamos usar os esquemas ENO para aproximar essas derivadas, ou seja,
∂2τ ∂x2 ≈ M(D ± 1D±1τ − ∆xD1±D1±D±1τ, D−1D+1τ ) , (2.22) ∂3τ ∂x3 ≈ M(D ± 1D1±D1±τ, M(D+1D+1D1−τ, D+1D1−D−1τ )) . (2.23)
Assim, a aproxima¸c˜ao ENO de terceira ordem ´e dada por
∂τ ∂x ≈ D ± 3 τ = D1±τ ∓ ∆x 2 M(D ± 1 D1±τ − ∆xD±1D±1D1±τ, D−1D1+τ ) −∆x2 6 M(D ± 1D±1D±1τ, M(D1+D1+D−1τ, D1+D−1D1−τ )) . (2.24)
Concluindo, vamos definir o esquema upwind ENO de terceira ordem que aproxima ∂τ /∂x
∂τ
∂x ≈ ˇDτ = max{|max{D −
3τ, 0}|, |min{D3+τ, 0}|} , (2.25)
2.3.3
Condi¸c˜
ao de Estabilidade
Podemos ver a estabilidade de um m´etodo da seguinte maneira: para um esquema de diferen¸cas est´avel, pequenos erros na condi¸c˜ao inicial causam pequenos erros na solu¸c˜ao. Para obter condi¸c˜oes de estabilidade para um esquema, podemos usar o crit´erio de von Neumann e obtermos uma condi¸c˜ao para o espa¸camento na malha.
Este crit´erio ´e usado apenas para problemas lineares. Em problemas n˜ao-lineares, uma condi¸c˜ao de estabilidade teria que ser feita para cada equa¸c˜ao diferente. Ou seja, ter´ıamos que estudar condi¸c˜oes para convergˆencia separadamente para cada equa¸c˜ao. Ent˜ao, vamos ao menos garantir uma condi¸c˜ao necess´aria para a estabilidade. Uma condi¸c˜ao necess´aria para que qualquer m´etodo num´erico seja est´avel ´e que o dom´ınio de dependˆencia num´erico deve incluir o dom´ınio de dependˆencia f´ısico, ao menos no limite ∆z, ∆x → 0. Esta condi¸c˜ao foi criada por Courant, Friedrichs e Lewy e ´e conhecida como condi¸c˜ao CFL (Thomas [15]). O dom´ınio de dependˆencia num´erica do ponto (xi, zj+1) em rela¸c˜ao aos pontos que est˜ao no j-´esimo n´ıvel ´e
Nj = {(x, zj) : |x − xi| ≤ ∆x} . (2.26)
O intervalo pode ser maior, como no caso em que as derivadas atrasada ou avan¸cada em
x usam mais de dois pontos, mas tomamos este intervalo pois ele ´e o menor poss´ıvel,
englobando assim todos os esquemas.
Quanto ao dom´ınio f´ısico, usamos o resultado que diz que as curvas caracter´ısticas da equa¸c˜ao iconal s˜ao formadas pela a fam´ılia de curvas ortogonais `as frentes de onda, de-nominadas raios (Bleistein [3]). Assim, dado um ponto sobre um raio, o tempo de trˆansito neste ponto depende do tempo de trˆansito em todos os pontos situados sobre o mesmo raio. Queremos ent˜ao que o raio que passa pelo ponto (xi, zj+1) intercepte o dom´ınio de dependˆencia num´erica (o segmento formado pelos trˆes pontos escuros na Figura 2.8). Supondo que os raios nesta regi˜ao discretizada s˜ao todos paralelos e aproximados por retas e sendo θ o ˆangulo que o vetor ~p = (∂τ /∂x, ∂τ /∂z) faz com a vertical, devemos ent˜ao impor que
Figura 2.8: O raio que passa pelo ponto a ser calculado deve interceptar o dom´ınio de depˆendˆencia num´erica.
O vetor ~p ´e normal a frente de onda, e portanto, podemos escrever tan θ = ∂τ /∂x
∂τ /∂z . (2.28)
Assim, a condi¸c˜ao CFL torna-se ∆zCFL <
∆xq(1/v)2− (∂τ /∂x)2
|∂τ /∂x| = ∆x
H(v, ∂τ /∂x)
|∂τ /∂x| . (2.29)
Como estamos expandindo na dire¸c˜ao z apenas, pode ocorrer de termos raios fazendo ˆangulos muito pr´oximos de 90o com a vertical e, assim, ∆z tendendo a zero. A solu¸c˜ao
para este problema ´e fixar um ˆangulo θmax, e assumir que nenhum raio fa¸ca um ˆangulo
maior que este com a vertical, isto ´e, calcular a aproxima¸c˜ao apenas numa regi˜ao onde os raios fazem um ˆangulo de no m´aximo θmax com a vertical, com 0 ≤ θmax≤ π/2. Uma
maneira de fazer isto ´e reescrever a equa¸c˜ao (2.9) na forma
∂τ ∂z = v u u u tmax 1 v2 − Ã ∂τ ∂x !2 ,cos2θmax v2 , (2.30)
com a condi¸c˜ao CFL escrita agora como
∆z < ∆x tan θmax
2.4
Implementa¸c˜
ao Computacional dos Esquemas
RK-ENO Usando a Expans˜
ao DNO e Melhorias nos
M´
etodos
Na se¸c˜ao anterior, vimos como escrever esquemas de alta ordem. Agora, vamos aplic´a-los em um m´etodo que usa a expans˜ao DNO, como apresentado em Kim & Cook [9], e compar´a-los com o m´etodo apresentado em Vidale [16].
A inicializa¸c˜ao ´e a mesma que a discutida no in´ıcio deste cap´ıtulo (ver Figura 2.1). O diferencial ´e que agora vamos aplicar os esquemas RK-ENO de ordem dois e trˆes, tanto na aresta horizontal quanto nas verticais, do retˆangulo que se expande ao redor da fonte. Logo, devemos tomar o cuidado de neste m´etodo a condi¸c˜ao CFL ser respeitada. Agora que estamos expandindo em trˆes dire¸c˜oes diferentes, n˜ao podemos simplesmente escrever a equa¸c˜ao iconal na forma (2.30), para cada dire¸c˜ao. A solu¸c˜ao proposta em Kim & Cook [9] ´e a de que devemos satisfazer a condi¸c˜ao CFL em cada passo da expans˜ao ao redor da fonte, onde podemos dar sub-passos de modo a garantir que a restri¸c˜ao seja satisfeita.
Vamos discutir o algoritmo apenas para o caso da aresta horizontal. No c´alculo de uma nova aresta, podemos estimar o valor de tan θ, usando a rela¸c˜ao (2.27), em cada ponto (xi, zj), aproximando as derivadas parciais usando DF. Em seguida, tomamos a maior tangente entre as encontradas, e pela condi¸c˜ao CFL encontramos o valor ∆zCFL.
Caso ∆z > ∆zCLF, devemos impor um sub-passo com espa¸camento ∆zCFL e calcular a
aproxima¸c˜ao nesta nova profundidade zj+∆zCFL, de modo a garantir que a condi¸c˜ao CFL
seja satisfeita. Devemos ent˜ao calcular outros sub-passos com o espa¸camento ∆zCLF, at´e
que o espa¸camento ∆z seja coberto pela soma destes espa¸camentos da condi¸c˜ao CFL. Em regi˜oes de alta mudan¸ca no campo de velocidades, podemos ter raios com in-clina¸c˜oes muito pr´oximas a 90o, o que implica na realiza¸c˜ao de v´arios desses sub-passos
para tentar garantir que a condi¸c˜ao CFL seja satisfeita. Em Kim & Cook [9], este pro-blema ´e simplesmente ignorado. O m´aximo que o autor comenta ´e que devemos ter um limitante para este sub-passo para evitarmos difus˜ao. Logo, devemos fornecer sim um espa¸camento m´ınimo ∆zmin, mas quando ocorrer o caso ∆zCFL < ∆zmin, simplesmente
damos um sub-passo do tamanho limitado e juntamente com isto, trabalhamos com a equa¸c˜ao na forma (2.30), onde o ˆangulo θmax´e claramente arctan(∆x/∆zmin).
0.2 0.4 0.6 0.8 erro percentual (%) distancia (m) profundidade (m) 0 500 1000 1500 2000 0 500 1000 0.2 0.4 0.6 0.8 erro percentual (%) distancia (m) profundidade (m) 0 500 1000 1500 2000 0 500 1000 0 200 400 600 800 1000 1200 1400 1600 1800 2000 0 0.1 0.2 0.3 0.4 0.5 Erro na profundidade z=500m distancia (m) erro percentual (%)
Figura 2.9: Na parte superior, temos a compara¸c˜ao entre os m´etodos: Vidale [16] (`a esquerda) e RK-ENO de ordem dois (`a direita). Na parte inferior, temos as curvas dos erros obtidos usando os m´etodos: Vidale [16] (linha pontilhada) e RK-ENO 2 (linha s´olida), na profundidade z = 500 m.
relativos do m´etodo apresentado em Vidale [16] e do esquema RK-ENO de ordem dois, respectivamente. Na parte inferior, temos o erro relativo na profundidade de 500 m. O modelo ´e de um meio homogˆeneo com velocidade constante v = 1000 m/s, com a fonte localizada em x = 1000 m na superf´ıcie. A solu¸c˜ao ´e conhecida e dada por
τ (x, z) =
q
(x − 1000)2+ z2
1000 . (2.32)
O espa¸camento ´e ∆x = ∆z = 50 m. A segunda aproxima¸c˜ao apresenta resultados mais satisfat´orios, visto que a curva do erro ´e menos oscilat´oria e atinge um m´aximo menor.
2.4.1
Inicializa¸c˜
ao Refinada
A inicializa¸c˜ao do tempo de trˆansito perto da fonte considerando uma pequena regi˜ao de velocidade constante (conforme visto na Se¸c˜ao 2), n˜ao produz um resultado satisfat´orio. Como a frente de onda tem uma grande curvatura nesta regi˜ao, o erro nos c´alculos tamb´em ´e grande. Sendo assim, os esquemas de DF necessitam de uma malha mais refinada neste local. Na literatura, este m´etodo ´e conhecido como Refinamento Uniforme da Malha Localmente (LUMR) e est´a bem descrito em Kim & Cook [9].
O m´etodo de refinamento que foi usado nos testes que seguem n˜ao ´e o LUMR citado na literatura. Aqui, apenas inicializamos o problema refinando cada espa¸camento ∆z e ∆x em outros oito, num raio de oito espa¸camentos ao redor da fonte, aplicando nesta nova malha o esquema RK-ENO de ordem dois apresentado anteriormente. Este n´umero de espa¸camentos ao redor da fonte, assim como apresentado no m´etodo LUMR, ´e escolhido pelo usu´ario e n˜ao tem rela¸c˜ao com o m´etodo.
Na Figura 2.10, temos no topo o gr´afico do erro relativo usando o esquema RK-ENO de ordem dois sem e com o refinamento, respectivamente. O modelo ´e o mesmo do caso anterior, v = 1000 m/s, e o espa¸camento ´e ∆x = ∆z = 50 m. A fonte est´a localizada em
x = 1000 m na superf´ıcie. O erro ´e muito menor no segundo caso, onde o refinamento
proporcionou uma inicializa¸c˜ao muito melhor.
Usando a inicializa¸c˜ao refinada, podemos testar o esquema RK-ENO de ordem trˆes, pois este necessita de uma malha com um n´umero maior de pontos ao redor da fonte. Na Figura 2.11, o modelo ´e de velocidade vari´avel, v(z) = z + 1000 m/s, novamente com a fonte localizada em x = 1000 m na superf´ıcie. A solu¸c˜ao tamb´em ´e conhecida e dada por
τ (x, z) = arccos " (x − 1000)2+ v(z)2+ v(0)2 2 v(z) v(0) # . (2.33)
O espa¸camento ∆x = ∆z = 25 m. Observemos que num raio de 200 m ao redor da fonte (oito vezes o espa¸camento), o erro ´e o mesmo em ambos os m´etodos, pois ambos usaram a mesma inicializa¸c˜ao refinada. Conforme a distˆancia em rela¸c˜ao a fonte aumenta, o esquema de ordem trˆes apresenta uma aproxima¸c˜ao melhor.
0.2 0.4 0.6 erro percentual (%) distancia (m) profundidade (m) 0 500 1000 1500 2000 0 500 1000 0.2 0.4 0.6 erro percentual (%) distancia (m) profundidade (m) 0 500 1000 1500 2000 0 500 1000 0 200 400 600 800 1000 1200 1400 1600 1800 2000 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 Erro na profundidade z=500m distancia (m) erro percentual (%)
Figura 2.10: Na parte superior, temos o erro do esquema RK-ENO de ordem dois sem e com o refinamento, respectivamente. Na parte inferior, temos o erro na profundidade de 500 m usando o esquema RK-ENO de ordem dois sem o refinamento (linha pontilhada) e com o refinamento (linha s´olida).
0.05 0.1 0.15 0.2 erro percentual (%) distancia (m) profundidade (m) 0 500 1000 1500 2000 0 500 1000 0.05 0.1 0.15 0.2 erro percentual (%) distancia (m) profundidade (m) 0 500 1000 1500 2000 0 500 1000 0 200 400 600 800 1000 1200 1400 1600 1800 2000 0 0.02 0.04 0.06 0.08 0.1 Erro na profundidade z=500m distancia (m) erro percentual (%)
Figura 2.11: Na parte superior, temos o erro dos esquemas RK-ENO de ordem dois e trˆes, respectivamente. Na parte inferior, temos o erro na profundidade de 500 m usando os esquemas RK-ENO de ordem dois (linha pontilhada) e trˆes (linha s´olida).
2.4.2
Expans˜
ao Dinˆ
amica DNO
Conforme foi visto at´e o momento, a solu¸c˜ao para o c´alculo do tempo de trˆansito mar-cha sequencialmente, calculando cada uma das trˆes arestas do retˆangulo em expans˜ao (expans˜ao DNO), at´e acabar o dom´ınio computacional. Mas dependendo do modelo de velocidades fornecido, os raios podem passar a curvarem-se para cima. Neste caso, mais passos na dire¸c˜ao de z que nas dire¸c˜oes horizontais s˜ao necess´arios, para termos um con-trole melhor do ˆangulo de propaga¸c˜ao. Assim, a expans˜ao DNO pode ser feita de forma dinˆamica, onde a nova dire¸c˜ao a ser calculada ´e encontrada checando o ˆangulo dos raios em cada aresta do retˆangulo em expans˜ao (m´etodo descrito em Kim & Cook [9]).
Para fazer esta checagem, basta calcularmos as derivadas com respeito a z e a x nos dois n´os que se encontram nos v´ertices inferiores (n˜ao os da superf´ıcie) do retˆangulo em expans˜ao. Estas derivadas podem ser calculadas usando esquemas (atrasados) de primeira ordem. Se em ambos os n´os, a derivada em z for menor que a em x (o que corresponde a dizer que o raio possui inclina¸c˜ao maior que π/4 em rela¸c˜ao `a vertical), ent˜ao devemos andar na dire¸c˜ao z e assim, expandir apenas a aresta horizontal do retˆangulo. Quando a derivada em z for maior que a em x em um desses dois n´os (direito ou esquerdo), devemos andar na dire¸c˜ao em que isso ocorrer e assim, calcular a respectiva nova aresta do retˆangulo. O processo se repete at´e acabar o dom´ınio computacional.
A principal motiva¸c˜ao da implementa¸c˜ao deste algoritmo no m´etodo, ´e que assim menos sub-passos da condi¸c˜ao CFL s˜ao realizados, ou seja, esta expans˜ao dinˆamica DNO tenta impedir que uma aresta do retˆangulo em expans˜ao contenha raios com ˆangulos muito altos em rela¸c˜ao `a normal da respectiva aresta.
2.4.3
Varredura Posterior (PS)
Conforme comentado anteriormente, como nossa expans˜ao DNO est´a sempre se afastando da fonte, pode ocorrer do c´alculo de um tempo de trˆansito necessitar da resolu¸c˜ao em passos posteriores. Para corrigir isto, podemos tomar nossa aproxima¸c˜ao, que foi obtida usando um esquema de DF, armazen´a-la em uma matriz e aplicar novamente o esquema, s´o que em outras dire¸c˜oes.
Esta ´e a id´eia b´asica do m´etodo PS (“post sweeping”) descrito em Kim & Cook [9]. Cada itera¸c˜ao deste consiste em aplicar um esquema de DF (RK-ENO de ordem dois ou trˆes) em cada uma destas quatro diferentes dire¸c˜oes: evolu¸c˜ao em x para a direita,
evolu¸c˜ao em x para a esquerda, evolu¸c˜ao em z para baixo e evolu¸c˜ao em z para cima. Tomemos, por exemplo, a primeira delas. Para inicializar a itera¸c˜ao, a primeira coluna da matriz armazenada da itera¸c˜ao anterior ´e assumida como condi¸c˜ao inicial. Ent˜ao, o esquema de DF ´e aplicado em toda a coluna, evoluindo para a direita, e o valor assumido como aproxima¸c˜ao ´e simplesmente o menor entre este calculado (usando a coluna da esquerda) e o da matriz armazenada, da itera¸c˜ao anterior. Isto ´e feito at´e acabar o dom´ınio computacional.
Ap´os esta dire¸c˜ao, as outras s˜ao aplicadas sucessivamente. Este ciclo de quatro dire¸c˜oes se repete, at´e que alguma condi¸c˜ao de convergˆencia seja satisfeita, como por exemplo, que a norma da diferen¸ca entre duas itera¸c˜oes seja menor que uma tolerˆancia ε.
A seguir, temos o exemplo de como o m´etodo PS corrige as superestima¸c˜oes no c´alculo do tempo de trˆansito. O modelo de velocidade (ver Figura 2.12) ´e constante com
v = 4500 m/s, exceto num retˆangulo inserido nele, onde a velocidade ´e de v = 2000 m/s.
A fonte est´a localizada em x = 500 m na superf´ıcie. Na Figura 2.13, a aproxima¸c˜ao da esquerda relata tempos muito maiores na regi˜ao logo abaixo do retˆangulo de baixa velocidade. Isto ocorre porque nesta regi˜ao, v´arios sub-passos s˜ao requeridos para tentar satisfazer a condi¸c˜ao CFL. O m´etodo, atrav´es de um custo computacional enorme, con-segue usar informa¸c˜oes que vinham, neste caso, da esquerda para a direita. No entanto, o m´etodo usa os tempos de trˆansito baixos, originados pela onda lenta que se propagou na caixa de baixa velocidade inserida no meio.
0 0.5 1 1.5 2 2.5 0 1000 2000 3000 4000 5000 6000 7000 8000 0 2000 4000 6000 8000 profundidade (m) distancia (m)
Primeira Chegada do Tempo de Trânsito
0.5 1 1.5 2 2.5 0 1000 2000 3000 4000 5000 6000 7000 8000 0 2000 4000 6000 8000 profundidade (m) distancia (m)
Primeira Chegada do Tempo de Trânsito
Figura 2.13: A esquerda, temos a aproxima¸c˜ao encontrada usando o esquema RK-ENO de ordem dois com expans˜ao dinˆamica DNO. A direita, temos o resultado de uma itera¸c˜ao PS aplicada nesta aproxima¸c˜ao.
Cap´ıtulo 3
M´
etodo de Diferen¸cas Finitas
Adaptativo
Os m´etodos de ordem superior da Se¸c˜ao 2.3 resolvem a equa¸c˜ao iconal numericamente com bastante eficiˆencia. No entanto, estes m´etodos n˜ao apresentam muita vantagem perto da fonte, onde a convergˆencia ocorre de maneira bastante lenta. Mesmo usando inicializa¸c˜oes refinadas, ficamos com parˆametros arbitr´arios, visto que os tamanhos dos espa¸camentos na malha refinada e o tamanho dela pr´opria s˜ao atribu´ıdos pelo usu´ario, sem nenhum crit´erio de sele¸c˜ao.
Uma maneira de corrigir este problema ´e usar uma malha adaptativa ao inv´es da fixa. A essˆencia deste m´etodo ´e usar dois esquemas de ordens diferentes para o c´alculo de um passo (descrito em Belfi & Symes [2]). Supondo que o esquema de ordem maior seja mais correto que o de menor ordem, o passo de ordem maior serve como solu¸c˜ao exata naquele passo, e assim, conseguimos estimar o erro. Logo, a malha pode aumentar ou diminuir, afim de que uma tolerˆancia para o erro seja permitida, logo, em locais onde o erro ´e grande, o m´etodo adaptativo permite que a malha se modifique a fim de melhorar a aproxima¸c˜ao. Em nosso caso, temos uma equa¸c˜ao diferencial parcial. Isto torna o c´alculo mais complicado, pois ´e necess´ario ajustar a malha na vari´avel que n˜ao est´a sendo evolu´ıda, ao longo do passo em que ocorre a evolu¸c˜ao.
O m´etodo de DF adaptativo aqui estudado n˜ao usa expans˜ao DNO. A expans˜ao e a inicializa¸c˜ao s˜ao as mesmas que as apresentadas na Se¸c˜ao 2.3. Novamente, para tornar poss´ıvel esta expans˜ao (devido a condi¸c˜ao CFL), devemos utilizar a forma dada em (2.30), lembrando que a condi¸c˜ao CFL ´e ∆z < ∆x/ tan θmax. A fun¸c˜ao max ´e a mais simples
−1 −0.5 0 0.5 1 1.5 2 2.5 3 x 10−7 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3x 10 −7
Figura 3.1: A curva s´olida representa a fun¸c˜ao smmax, j´a a curva pontilhada representa a fun¸c˜ao max. Os argumentos usados s˜ao como os apresentados na equa¸c˜ao (2.30). para tornar poss´ıvel esta restri¸c˜ao. No lugar desta, poderia estar qualquer outra fun¸c˜ao que desempenhasse o mesmo papel, mas que fosse diferenci´avel, por exemplo. Em Qian & Symes [12], no lugar da fun¸c˜ao max, foi usada uma fun¸c˜ao interpoladora dada por
smmax(a, b) = 1 2b, se a < 0 1 2b + 2 a4 b3 µ 1 − 4 5 a b ¶ , se 0 ≤ a < b 2 a + 2(a − b) 4 b3 Ã 1 + 4 5 a − b b ! , se b 2 ≤ a < b a, se a ≥ b , (3.1)
onde o ˆangulo m´aximo para este caso ´e um pouco maior que o ˆangulo θmax. Na Figura 3.1,
temos o gr´afico desta fun¸c˜ao (curva s´olida) e da fun¸c˜ao max (curva pontilhada), respec-tivamente, usando θmax= 63o.
Para inicializar o algoritmo adaptativo, o usu´ario precisa fornecer o valor de uma tolerˆancia ε para o erro e duas fun¸c˜oes definidas positivas σ1 e σ2 de ε (com σ1(ε) < σ2(ε)
para todo ε) para controlar o aumento e o refinamento dos espa¸camentos. Os esquemas usados s˜ao os RK-ENO de ordem dois e trˆes. Ap´os calcular um novo passo usando ambos esquemas, podemos estimar o erro de truncamento calculando o m´aximo entre a diferen¸ca das duas aproxima¸c˜oes para este passo, o qual denotamos por E. Caso σ1(ε) < E <
σ2(ε), damos continuidade e calculamos um novo passo. Quando E < σ1(ε), devemos
aumentar os espa¸camentos ∆z e ∆x. Similarmente, quando E > σ2(ε), devemos diminuir
os espa¸camentos ∆z e ∆x. A fun¸c˜ao σ2, pela pr´opria constru¸c˜ao do m´etodo, vale ε e a
fun¸c˜ao σ1, que ´e usada para aumentar o espa¸camento da malha, deve ter uma varia¸c˜ao de
pelo menos uma casa decimal em rela¸c˜ao a σ2 (Qian & Symes [12] usaram σ1(ε) = 0.1ε).
Um ponto muito importante, ´e que supomos como aproxima¸c˜ao o c´alculo feito usando o esquema de ordem trˆes, ou seja, a aproxima¸c˜ao calculada usando o esquema de ordem dois ´e descartada, sendo esta importante apenas para ter um controle no passo.
Estas mudan¸cas nos espa¸camentos devem ser feitas usando o mesmo fator em ambas as dire¸c˜oes. Assim, a condi¸c˜ao CFL para o problema continua sendo satisfeita. O fator usado em Qian & Symes [12] ´e dois, ou seja, os espa¸camentos ∆z e ∆x s˜ao multiplicados ou divi-didos por dois. O ajuste usual para problemas envolvendo equa¸c˜oes diferenciais ordin´arias depende do erro de truncamento. Isto ´e impratic´avel em nosso caso, pois passar´ıamos a ter uma malha arbitr´aria em x, e assim seria necess´aria muita interpola¸c˜ao. Assim, este fator dois apresenta muita vantagem, pois mesmo quanto for necess´aria a interpola¸c˜ao (quando devemos diminuir o espa¸camento), apenas alguns n´os s˜ao interpolados. Outro fato ´e que o tempo de trˆansito tende a ficar cada vez mais suave conforme se afasta da fonte. Logo, a maioria dos ajustes na malha refere-se ao aumento dos espa¸camentos, e sendo assim, pouca interpola¸c˜ao ´e necess´aria.
3.1
Inicializa¸c˜
ao no M´
etodo Adaptativo
Conforme vimos na Se¸c˜ao 2.4.1, podemos refinar a malha pr´oxima a fonte de modo a diminuir o erro dos m´etodos de malha fixa. No caso do m´etodo adaptativo, este erro inicial depende da profundidade zini, onde iniciamos o algoritmo. Ou seja, ao aproximarmos a
solu¸c˜ao em zini considerando que o meio ´e homogˆeneo, o erro nesta aproxima¸c˜ao deve ser
menor que a tolerˆancia ε fornecida ao algoritmo.
A seguir, apresentamos duas maneiras de fazer isto. Na primeira delas [2], usamos expans˜ao de Taylor para obter uma condi¸c˜ao sobre o valor de zini. Na segunda [12],
usamos as equa¸c˜oes dos raios para impor estas condi¸c˜oes. Por fim, apresentamos alguns testes computacionais afim de comparar estas duas inicializa¸c˜oes.
3.1.1
Aproxima¸c˜
ao por Taylor
Vamos considerar coordenadas polares no plano x = r sin θ e z = r cos θ, com r ≥ 0,
−π/2 ≤ θ ≤ π/2 e denotar T (r, θ) = τ (x, z). Ao aproximarmos a solu¸c˜ao pr´oxima a fonte
considerando que o meio ´e homogˆeneo, estamos usando a estimativa (fonte em r = 0)
T (r, θ) ' r
v(0, 0) . (3.2)
A solu¸c˜ao exata tem expans˜ao de Taylor em torno de r = 0
T (r, θ) = r∂T ∂r (0, θ) + r2 2 ∂2T ∂r2 (0, θ) + O(r 3) . (3.3)
Precisamos investigar a equa¸c˜ao iconal em coordenadas polares para estimar o valor da segunda derivada de T em rela¸c˜ao a r. Logo, escrevendo
∂T ∂r = ∂τ ∂xsin θ + ∂τ ∂z cos θ, (3.4) ∂T ∂θ = ∂τ ∂xr cos θ − ∂τ ∂zr sin θ, (3.5)
obtemos a equa¸c˜ao iconal em coordenadas polares
à ∂τ ∂x !2 + à ∂τ ∂z !2 = à ∂T ∂r !2 + 1 r2 à ∂T ∂θ !2 = s2 , (3.6)
onde s(r, θ) = 1/v(x, z). Derivando esta equa¸c˜ao com rela¸c˜ao a r obtemos 2∂T ∂r ∂2T ∂r2 − 2 r3 Ã ∂T ∂θ ! + 2 r2 ∂T ∂θ ∂2T ∂θ∂r = 2s ∂s ∂r . (3.7)
Supondo as derivadas primeiras de T em r = 0 iguais `as respectivas derivadas no caso homogˆeneo, ∂T ∂r(0, θ) = 1 v(0, 0) , ∂T ∂θ(0, θ) = 0 , (3.8)
podemos escrever da equa¸c˜ao (3.7)
∂2T
∂r2 (0, θ) =
∂s
∂r(0, θ) . (3.9)
Assim, da diferen¸ca entre as equa¸c˜oes(3.2) e (3.3), podemos escrever o erro cometido na inicializa¸c˜ao na forma Eini ' r2 2 ¯ ¯ ¯ ¯ ¯ ∂s ∂r(0, θ) ¯ ¯ ¯ ¯ ¯ . (3.10)
Como temos v em coordenadas cartesianas, vamos escrever a derivada de s neste sistema. Para isso, observemos que
s(x, z) = s(0, 0) + x∂s
∂x(ξ1, η1) + z ∂s
∂z(ξ2, η2) , (3.11)
onde (ξ1, η1) e (ξ2, η2) pertencem ao dom´ınio D = {(ξ, η) | |ξ| ≤ |x|, 0 ≤ η ≤ z}.
Mudando para coordenadas polares obtemos
s(r, θ) = s(0, 0) + r sin θ∂s ∂x(ξ1, η1) + r cos θ ∂s ∂z(ξ2, η2) , (3.12) de onde, ∂s ∂r(0, θ) = sin θ ∂s ∂x(ξ1, η1) + cos θ ∂s ∂z(ξ2, η2) . (3.13)
Olhando esta equa¸c˜ao como um produto escalar e utilizando a desigualdade de Cauchy-Schwartz, obtemos ¯ ¯ ¯ ¯ ¯ ∂s ∂r(0, θ) ¯ ¯ ¯ ¯ ¯ ≤ sup{k ∇s(ξ, η) k | |ξ| ≤ |x|, 0 ≤ η ≤ z}
≤ sup{k ∇s(ξ, η) k | |ξ| ≤ zLtan θmax, 0 ≤ η ≤ zL} = S , (3.14)
onde usamos os fatos de estarmos calculando a aproxima¸c˜ao apenas na abertura x ≤
z tan θmax, e estarmos impondo um limite zL para a profundidade de inicializa¸c˜ao. Enfim,
limitamos o erro por
Eini ' r2 2 ¯ ¯ ¯ ¯ ¯ ∂s ∂r(0, θ) ¯ ¯ ¯ ¯ ¯ ≤ 1 2 √ x2+ z2S
≤ 1 2(1 + tan 2θ max)z2S = 1 2 z2S cos2θ max . (3.15)
Por outro lado, queremos que Eini seja limitado pela tolerˆancia fornecida. Assim,
obtemos a profundidade inicial dada pela restri¸c˜ao
zini≤ zT =
s
2ε
S cos θmax , (3.16)
e usamos zini = min(zT, zL).
3.1.2
Aproxima¸c˜
ao por Raios
Supondo novamente que a fonte est´a na origem, vamos agora escrever as equa¸c˜oes dos raios (Se¸c˜ao 1) no caso bidimensional. Escolhendo λ = v2, pois assim σ ´e o pr´oprio tempo
t sobre um raio, temos
dx dt = v 2p 1 , (3.17) dz dt = v 2p 2 , (3.18) dp1 dt = − 1 v ∂v ∂x , (3.19) dp2 dt = − 1 v ∂v ∂z , (3.20)
onde p1 = ∂τ /∂x e p2 = ∂τ /∂z. Sejam θ e ψ os ˆangulos feitos com a vertical dos raios
exato e aproximado (considerando o meio sendo homogˆeneo), respectivamente, em um determinado ponto. Vamos encontrar rela¸c˜oes entre esses raios de modo a estimar o erro cometido na inicializa¸c˜ao. Lembrando que
p1 = sin θ v e p2 = cos θ v , (3.21) e assim, dx dt = v sin θ e dz dt = v cos θ . (3.22)
Introduzindo coordenadas polares
x = r sin ψ e z = r cos ψ , (3.23)
e diferenciando ambas com rela¸c˜ao a t, obtemos o sistema
dx dt = dr dt sin ψ + r cos ψ dψ dt dz dt = dr dt cos ψ − r sin ψ dψ dt . (3.24)
Usando as equa¸c˜oes em (3.22) e (3.24), temos a solu¸c˜ao
dr dt = v cos(θ − ψ) , (3.25) dψ dt = v r sin(θ − ψ) . (3.26)
Agora podemos ter uma aproxima¸c˜ao para o erro no tempo de trˆansito. Vamos denotar por τ0 a aproxima¸c˜ao para o tempo verdadeiro τ quando usamos a velocidade constante
v0 igual `a da origem. Como τ0 = v0−1r e usando o resultado em (3.25), podemos escrever
que dτ0 dt = 1 v0 dr dt = v v0 cos(θ − ψ) , (3.27) de onde, dτ0 dt − dτ dt = µv v0 − 1 ¶ cos(θ − ψ) + cos(θ − ψ) − 1 , (3.28) e, assim, ¯ ¯ ¯ ¯ ¯ dτ0 dt − dτ dt ¯ ¯ ¯ ¯ ¯≤ ¯ ¯ ¯ ¯vv 0 − 1 ¯ ¯ ¯ ¯+ | cos(θ − ψ) − 1| . (3.29)
Queremos limitar a diferen¸ca entre os tempos τ0 e τ , mas o que temos ´e uma rela¸c˜ao entre
a diferen¸ca de suas derivadas. Ent˜ao, observando que
¯ ¯ ¯ ¯ ¯ dτ0 dt − dτ dt ¯ ¯ ¯ ¯ ¯≤ ε ⇒ |τ0− τ | ≤ εt , (3.30)
vamos impor as restri¸c˜oes ¯
¯ ¯ ¯ v v0 − 1 ¯ ¯ ¯ ¯≤ ε 2 (3.31)
e
| cos(θ − ψ) − 1| ≤ ε
2 . (3.32)
Agora precisamos encontrar rela¸c˜oes que envolvam z nestas duas restri¸c˜oes. No caso da restri¸c˜ao em (3.31), o trabalho ´e mais f´acil. Como anteriormente, observando que
v(x, z) = v(0, 0) + x∂v
∂x(ξ1, η1) + z ∂v
∂z(ξ2, η2) , (3.33)
onde (ξ1, η1) e (ξ2, η2) pertencem ao dom´ınio D = {(ξ, η) | |ξ| ≤ |x|, 0 ≤ η ≤ z}, e usando
a desigualdade de Cauchy-Schwartz, obtemos
¯ ¯ ¯ ¯v − vv 0 0 ¯ ¯ ¯ ¯ ≤ vr 0 sup{k ∇v(ξ, η) k | |ξ| ≤ |x|, 0 ≤ η ≤ z} ≤ z v0cos θmax
sup{k ∇v(ξ, η) k | |ξ| ≤ zLtan θmax, 0 ≤ η ≤ zL}
= zV
v0cos θmax
, (3.34)
com V = sup{k ∇v(ξ, η) k | |ξ| ≤ zLtan θmax, 0 ≤ η ≤ zL}. Logo, para valer a restri¸c˜ao
(3.31), devemos escolher zini de modo que
zini ≤ z1 =
v0ε cos θmax
2V . (3.35)
Vamos trabalhar agora com a restri¸c˜ao (3.32). Para isso, precisamos de alguma rela¸c˜ao envolvendo θ − ψ. Vamos diferenciar e equa¸c˜ao envolvendo p1 em (3.21) com rela¸c˜ao a t.
Fazendo isto temos
dp1 dt = Ã vdθ dt cos θ − sin θ " ∂v ∂x dx dt + ∂v ∂z dz dt #! v−2. (3.36)
Usando os resultados em (3.22) e simplificando, obtemos
dθ dt = − cos θ ∂v ∂x + sinθ ∂v ∂z . (3.37)
Usando os resultados obtidos em (3.26) e (3.37), podemos escrever
dθ dt − dψ dt = a(t) − b(t) t (θ − ψ) , (3.38)
onde a(t) = dθ dt e b(t) = vt r sen(θ − ψ) θ − ψ . (3.39)
A equa¸c˜ao (3.38) ´e resolvida usando o fator integrande. Logo,
θ − ψ = Z t 0 a(τ )exp à − Z t τ b(σ) σ dσ ! dτ . (3.40)
Este resultado est´a na forma impl´ıcita, visto que b(t) cont´em a solu¸c˜ao. No entanto, como
b(t) ≥ 0, limitamos a exponencial no integrando por 1. A fun¸c˜ao a ´e limitada por amax,
o qual ´e igual ao supremo da norma do gradiente da velocidade v (ver equa¸c˜ao (3.37)). Obtemos ent˜ao a estimativa
|θ − ψ| ≤ amaxt . (3.41)
Antes de desenvolver a restri¸c˜ao (3.32), usando a desigualdade (3.41), vamos por fim escrever uma rela¸c˜ao entre t e r. O tempo de trˆansito ´e determinado integrando v−1 ao longo de um caminho s que o torna m´ınimo. Seja l um segmento de reta usado para aproximar s. Ent˜ao, pelo princ´ıpio de Fermat temos
t = Z s 1 vdσ ≤ Z l 1 vdσ ≤ Z l 1 vmin dσ = r vmin , (3.42) onde r =qx2(t) + z2(t) e v
min´e a velocidade m´ınima sobre o segmento do raio. Coletando
estes resultados temos que
| cos(θ − ψ) − 1| = ¯ ¯ ¯ ¯ ¯−2 sin 2 (θ − ψ) 2 ¯ ¯ ¯ ¯ ¯ ≤ ¯ ¯ ¯ ¯ ¯ (θ − ψ)2 2 ¯ ¯ ¯ ¯ ¯ ≤ ¯ ¯ ¯ ¯ ¯ a2 maxr2 2v2 min ¯ ¯ ¯ ¯ ¯ ≤ ¯ ¯ ¯ ¯ ¯ V2z2 2v2
mincos2θmax
¯ ¯ ¯ ¯
¯ , (3.43)
devemos escolher zini de modo que
zini ≤ z2 =
√
εvmincos θmax
V . (3.44)
Sendo zR = min(z1, z2) a escolha usando este m´etodo por raios, basta escolher zini =
min(zR, zL) para que a tolerˆancia em (3.30) seja satisfeita.
3.1.3
Testes Computacionais
Testamos os dois tipos de inicializa¸c˜ao desta se¸c˜ao em diferentes meios. Em todos os casos, o dom´ınio usado foi −1000 m ≤ x ≤ 1000 m e 0 ≤ z ≤ 1500 m, com θmax = 63o e a
fonte localizada na origem. O espa¸camento da malha ´e ∆x = 2000/27 ' 15.6 m, com ∆z
obtido pela condi¸c˜ao CFL. Usamos como tolerˆancia ε = 10−4 e z
L = 450 m. Em todos
os gr´aficos desta se¸c˜ao, analisamos o erro absoluto apenas na regi˜ao de abertura limitada por θmax.
No caso do meio homogˆeneo temos que os valores de S e V s˜ao nulos para qualquer zL, e
assim zini = zL. Para o meio com velocidade afim em z, conforme a Se¸c˜ao 3.3.2, obtivemos
zT = 11.75 m e zR = 0.075 m. Na Figura 3.2, temos o gr´afico dos erros cometidos
ao inicializarmos nestas profundidades. Outro caso testado ´e o meio com velocidade exponencial em z, conforme a Se¸c˜ao 3.3.6, onde obtivemos zT = 11.13 m e zR = 0.057 m.
Os gr´aficos dos erros cometidos est˜ao na Figura 3.3. J´a no caso do meio com velocidade decaindo em z, conforme a Se¸c˜ao 3.3.7, obtivemos zT = 9.1 m e zR = 0.046 m. Os
gr´aficos para este caso est˜ao na Figura 3.4. O erro muito menor representado pela curva pontilhada nestas figuras ´e devido ao fato dele estar limitado por εt. Assim, o passo inicial
zR obtido usando a inicializa¸c˜ao da Se¸c˜ao 3.1.2 subestima este, o que implica em maior
tempo computacional para o m´etodo adaptativo. Como o passo inicial zT produziu uma
aproxima¸c˜ao que respeitou a tolerˆancia ε e, al´em disso, tem um valor muito maior que
zR, vamos adot´a-lo como nosso zini nos experimentos num´ericos do m´etodo adaptativo da
Se¸c˜ao 3.3.
Em meios com velocidade variando continuamente, como os casos aqui testados, a escolha de zL praticamente n˜ao faz diferen¸ca. J´a no caso de meios homogˆeneos separados
por uma interface, a escolha de zL ´e muito importante. Para zL acima do refletor, temos
que zini = zL. Mas para zL abaixo do refletor, devido a varia¸c˜ao brusca na velocidade,