Grupo3 - Ondas2: mudanças entre as edições

De Física Computacional
Ir para navegação Ir para pesquisar
 
(9 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 223: Linha 223:


== Análise e Discussão dos Resultados ==
== Análise e Discussão dos Resultados ==
Escolhemos para simular quatro diferentes cordas: as cordas C2, C4 e C7 de um piano <ref>Antoine Chaign, Anders Askenfelt, "Numerical simulations of piano strings. I. A physical model for a struck string using finite difference methods". Signal Department, Paris, France. Department of Speech Communication and Music Acoustics; Royal Institute of Technology, Stockholm, Sweden.</ref> e uma corda com dados pré-estabelecidos encontrados em <ref name=giordano/>. Os dados das cordas C2, C4 e C7 estão na tabela abaixo, onde iremos definir para cada corda o comprimento, a massa, a tensão aplicada elas, o número de divisões existentes, amostragem de sinal (que é um parâmetro obtido experimentalmente)e o parâmetro de fricção.
Escolhemos para simular quatro diferentes cordas: as cordas C2, C4 e C7, que são cordas dó de um piano <ref>Antoine Chaign, Anders Askenfelt, "Numerical simulations of piano strings. I. A physical model for a struck string using finite difference methods". Signal Department, Paris, France. Department of Speech Communication and Music Acoustics; Royal Institute of Technology, Stockholm, Sweden.</ref> e uma corda qualquer baseada nos dados encontrados no livro "''Computational Physics''" <ref name=giordano/>. Os dados das cordas C2, C4 e C7 estão na tabela abaixo, onde iremos definir para cada corda o comprimento, a massa, a tensão aplicada elas, o número de divisões existentes, amostragem de sinal (que é um parâmetro obtido experimentalmente)e o parâmetro de fricção.


{| class="wikitable"
{| class="wikitable"
Linha 283: Linha 283:
Os dados obtidos a partir de todas essas equações são calculados pelo programa com base dos dados da tabela.
Os dados obtidos a partir de todas essas equações são calculados pelo programa com base dos dados da tabela.


Para a corda com dados pré-estabelecidos, utilizamos uma corda com 2 metros de comprimento, com velocidade de propagação da onda sendo 300<math>m/s</math>, <math>\Delta x</math> de 0.01<math>m</math>, <math>\Delta t = \frac{\Delta x }{4v}</math> e parâmetro de fricção de <math>7.5\times10^{-6}</math>.
Para a simulação baseada nos dados retirados do livro ''"Computational Physics"''<ref name=giordano/>, utilizamos uma corda com 2 metros de comprimento, com velocidade de propagação transversal da onda sendo 300<math>m/s</math>, <math>\Delta x</math> de 0.01<math>m</math>, <math>\Delta t = \frac{\Delta x }{4v}</math> e parâmetro de fricção de <math>7.5\times10^{-6}</math>.
Supondo a corda inicialmente em repouso, temos que em <math>t = 0</math> a corda recebe em seu centro o equivalente à batida do martelo do piano. Supomos que esse estímulo possuía o formato aproximado de uma Gaussiana com amplitude de <math>\frac{1}{4}</math> do comprimento de cada corda. Então, com o estado inicial sendo um pulso com o formato de um pacote gaussiano e os dados da tabela, simulamos a propagação de ondas em cada uma das cordas.
 
Supondo uma corda inicialmente em repouso, temos que em <math>t = 0</math> a corda irá receber em seu centro o equivalente à batida do martelo de um piano. Supomos que esse estímulo da batida do martelo possuía o formato aproximado de uma Gaussiana com amplitude de <math>\frac{1}{4}</math> do comprimento de cada corda.  
 
Então, com o estado inicial da simulação sendo um pulso com o formato de um pacote gaussiano, utilizando condições de contorno fixas, ou seja, mantendo as extremidades da corda paradas e utilizando os dados da tabela para simularmos cada uma das cordas, começamos a simular a propagação de ondas.


Utilizando o método de Leapfrog, foi realizada uma primeira simulação para uma onda ideal em uma corda:
Utilizando o método de Leapfrog, foi realizada uma primeira simulação para uma onda ideal em uma corda:


[[File:ideal.gif|frame|none|alt=Alt text|Simulação de uma onda em uma corda ideal. A corda simulada possuía comprimento de 2 metros e a amplitude inicial do pulso gaussiano tinha amplitude de 0.5 metros. Foi utilizado uma velocidade de propagação de 300 m/s, <math>\Delta x = 0.01</math> e <math>\Delta t = \frac{\Delta x }{4v}</math>.]]
[[File:ideal.gif|frame|none|alt=Alt text|Simulação de uma onda em uma corda ideal com condições de contorno u(0,t) = 0 e u(L,t) = 0. A corda simulada possuía comprimento de 2 metros e a amplitude inicial do pulso gaussiano tinha amplitude de 0.5 metros. Foi utilizado uma velocidade de propagação de 300 m/s, <math>\Delta x = 0.01</math> e <math>\Delta t = \frac{\Delta x }{4v}</math>.]]


'''Corda C2:'''
'''Corda C2:'''
Linha 304: Linha 307:
[[Arquivo:C7foto.png|frame|none|alt=Alt text|Estado da corda C7 em diferentes instantes de tempo.]]
[[Arquivo:C7foto.png|frame|none|alt=Alt text|Estado da corda C7 em diferentes instantes de tempo.]]


'''Corda com as definições do Giordano:'''
'''Corda com as definições do livro "''Computational Physics''"<ref name=giordano/>:'''
 
[[Arquivo:Giordano.gif|frame|none|alt=Alt text|Simulação da corda exemplificada no livro ''Computational Physics'' <ref name=giordano/>. Os parâmetros utilizados estão descritos no texto.]]
[[Arquivo:Giordanofoto.png|frame|none|alt=Alt text|Estado da corda usada como exemplo pelo autor Giordano <ref name=giordano/> em diferentes instantes de tempo.]]
 
É possível observar que o tempo necessário para que, devido a fricção, os movimentos na corda diferenciem-se cada vez mais da solução para a corda ideal é menor para um tamanho de corda menor, ou seja, a fricção acaba sendo mais relevante mais rapidamente em cordas mais curtas. Isso significa que deixamos de ter apenas dois pulsos propagando-se em sentidos opostos para termos ou mais pulsos de amplitudes menores, ou a soma de pulsos de diferentes amplitudes.
 
=== Scripts para a simulação dos resultados apresentados: ===


[[Arquivo:Giordano.gif|frame|none|alt=Alt text|Simulação da corda exemplificada no livro ''Computational Physics'' [1]. Os parâmetros utilizados estão descritos no texto.]]
[[Programa baseado no método de Leapfrog para a simulação de uma corda ideal]]
[[Arquivo:Giordanofoto.png|frame|none|alt=Alt text|Estado da corda usada como exemplo pelo autor Giordano em diferentes instantes de tempo.]]


É possível observar que o tempo necessário para que, devido a fricção, os movimentos na corda diferenciem-se cada vez mais da solução para a corda ideal é menor para um tamanho de corda menor, ou seja, a fricção acaba sendo mais relevante mais rapidamente em cordas mais curtas.
[[Programa baseado no método de Leapfrog para a simulação de uma corda real]]


== Análise de Erro e Estabilidade dos Métodos ==
== Análise de Erro e Estabilidade dos Métodos ==
Linha 335: Linha 344:
</math>
</math>


O Teorema de Nyquist diz que a frequência superior no espectro deve ser menor do que <math>\frac{f_e}{2}</math> para evitar serrilhamento e para garantir uma reconstrução única e contínua. Logo, no caso ideal quando as autofrequências da corda são igualmente espaçadas (<math>\Delta f = f_1</math>), a condição de Nyquist indica que o número máximo de frequências no espectro é <math>K</math>. Isso significa que essa condição pode ser usada para selecionar o número apropriado de pontos espaciais <math>K</math> para a corda. Entretanto, como <math>K</math> é um inteiro, apenas valores discretos da frequência natural podem ser obtidos sem erros de trucamento, ou seja, usando <math>r = 1</math>. Como series discretas não costumam ser utilizadas, precisamos aceitar pequenos erros de truncamento para ajustar <math>f_1</math>, ou seja, utilizando <math>r < 1</math>. No caso de uma onda com fricção, temos que <math>r=\frac{1}{4}</math> é um valor de boa estabilidade.
O[https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem Teorema de Nyquist-Shannon] diz que a frequência superior no espectro deve ser menor do que <math>\frac{f_e}{2}</math> para evitar serrilhamento e para garantir uma reconstrução única e contínua. Logo, no caso ideal quando as autofrequências da corda são igualmente espaçadas (<math>\Delta f = f_1</math>), a condição de Nyquist indica que o número máximo de frequências no espectro é <math>K</math>. Isso significa que essa condição pode ser usada para selecionar o número apropriado de pontos espaciais <math>K</math> para a corda. Entretanto, como <math>K</math> é um inteiro, apenas valores discretos da frequência natural podem ser obtidos sem erros de trucamento, ou seja, usando <math>r = 1</math>. Como séries discretas não costumam ser utilizadas, precisamos aceitar pequenos erros de truncamento para ajustar <math>f_1</math>, ou seja, utilizando <math>r < 1</math>. No caso de uma onda com fricção, temos que <math>r=\frac{1}{4}</math> é um valor de boa estabilidade.


== Referências Bibliográficas==
== Referências Bibliográficas==
<references/>
<references/>

Edição atual tal como às 16h30min de 26 de janeiro de 2018

Grupo: Lucas Dória, Caetano Pires e Ânderson Rosa.

O objetivo deste trabalho é analisar três métodos diferentes de integração numérica para resolução de equações diferenciais parciais (EDP's). A equação aqui abordada é a equação da onda, a qual consiste em uma EDP hiperbólica de segunda ordem. Uma pequena noção dos métodos numéricos é dada, após a explicação do problema físico abordado. Os dados encontrados são comentados e comparados com os resultados esperados. Simulações também foram feitas para melhor visualização dos fenômenos. Por último, foi feita uma análise de erros e estabilidade para cada um dos métodos, assim como algumas conclusões foram inferidas.

Introdução

Equações diferenciais parciais hiperbólicas geralmente podem ser formuladas a partir de teoremas de conservação. Um exemplo é a equação do tipo:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial \vec{U}}{\partial t} + \nabla \cdot \vec{F}(U) = \vec{S}(U),}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{U}} é o vetor de densidades da quantidade conservada, i.e., Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{U} = (U_1,...,U_n),} Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{F}} é o fluxo de densidade e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{S}} é um termo genérico representando fontes e/ou sumidouros.

Uma classe especial de equações hiperbólicas são as chamadas equações de adveção, na qual a derivada temporal da quantidade conservada Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{U}(\vec{x},t)} é proporcional à sua derivada espacial. Nesses casos, Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{F}(U)} é diagonal e dada por:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{F}(U) = v I \cdot \vec{U},}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle I} é a matriz identidade.

Considerando apenas uma dimensão e com Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{U} \equiv u} , temos a equação de adveção:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial u}{\partial t} + v \frac{\partial u}{\partial x} = 0,}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v} é a velocidade de propagação do pulso gerado. A equação admite uma solução analítica da forma Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u = f(x - vt),} representando um pulso se movendo na direção positiva de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x.}

A equação da onda em uma dimensão é uma EDP hiperbólica de segunda ordem dada por

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^2 u}{\partial t^2} = v^2 \frac{\partial^2 u}{\partial x^2}, }

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u = u(x,t)} é o deslocamento transversal à direção de propagação de uma posição Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x} no instante Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle t} e admite duas soluções, representadas por pulsos, na forma Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle f_1(x + vt)} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle f_2(x - vt).}

Assumindo que Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v} não depende da posição na equação da onda, nos restringimos a problemas lineares. Além disso, se escrevermos

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle k = v \frac{\partial u}{\partial x},\qquad s = \frac{\partial u}{\partial t}, }

então a equação da onda pode ser escrita como um sistema de três equações diferenciais de primeira ordem:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{cases}\displaystyle \frac{\partial k}{\partial t} = v\frac{\partial s}{\partial x} \\\\ \displaystyle \frac{\partial s}{\partial t} = v\frac{\partial k}{\partial x} \\\\ \displaystyle \frac{\partial u}{\partial t} = s \end{cases} }

Em notação vetorial, o sistema acima pode ser reescrito na forma conservativa como: Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial U}{\partial t}+ \frac{\partial F(U)}{\partial x} = 0, }

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U = \begin{pmatrix}k\\s\end{pmatrix},\quad \textrm{e}\quad F(U) =\begin{pmatrix}0 & -v\\-v & 0\end{pmatrix}}

Condição CFL

Uma condição necessária mas nem sempre suficiente para a convergência de equações diferenciais parciais resolvidas a partir de métodos de diferença, conhecida como condição CFL [1], é formulada a partir do termo de “domínio de dependência”.

Considerando, por exemplo, a equação da advecção [1] em uma aproximação a partir de métodos de diferença em sua forma explícita

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{U^{n+1}_i-U^n_i}{\Delta t} + v\frac{U^n_{i}-U^n_{i-1}}{\Delta x}=0,}

diz-se que o valor de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U^{n+1}_i} depende dos valores anteriores de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U^n_i} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U^n_{i-1}} , e esses dois pontos dependem, novamente, de outros dois pontos em tempos anteriores. Todos esses pontos dependentes formam o domínio de dependência do valor Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U^{n+1}_i} , representado abaixo (botar figura do domínio de dependência).

A condição CFL enuncia que a condição mínima para que haja estabilidade em métodos de diferenças o domínio de dependência da equação diferencia parcial, dado por sua equação característica, deve estar situado dentro do domínio de dependência do esquema numérico.

A partir dessa condição, define-se o número CFL como

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle r\equiv v\frac{\Delta t}{\Delta x}}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta t} é um passo na malha temporal e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta x} é um passo na malha espacial. Para casos unidimensionais, como o que será tratado aqui, a condição CFL é satisfeita se r

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left|r\right| \le 1 }

Um uso da condição CFL é determinar o tamanho do passo temporal, sabendo-se Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta x} :

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta t = c_{cfl}\frac{\Delta x}{\left|v\right|}}

onde o fator Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle c_{cfl}<1} .

O número CFL pode ser entendido como um fluxo numérico advectivo adimensionalisado pelas malhas espacial e temporal do problema. De um ponto de vista matemático, ele garante que o domínio numérico de dependência é sempre maior que o domínio físico. De um ponto de vista físico, é garantido que a velocidade de propagação de qualquer perturbação, como uma onda, seja menor ou ao menos igual que a velocidade de propagação numérica, fazendo com que a distância propagada pela perturbação não seja maior do que a divisão da malha espacial:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left|v\right|\Delta t \le \Delta x }

O Problema Físico

O Modelo de Corda Ideal

Para uma primeira abordagem da equação da onda, consideramos uma corda com suas extremidades fixas. Podemos dividir o comprimento Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle L} dessa corda em Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle K} intervalos de comprimentos iguais, dessa forma Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta x = \frac{L}{K}} . Cada intervalo é discretizado, representado por Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x_i} , Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle i=0,1,...,K} . Também podemos dividir o tempo em intervalos iguais Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta t} e denotá-los como Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle t_n} , Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle n =0,1,...,t_{max}} . Abaixo temos uma esquematização das informações que precisamos para cada ponto da corda:

Grid.png

Tendo feita a discretização das variáveis, podemos aproximar a equação da onda por diferenciação finita, utilizando derivadas centradas da seguinte forma:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^2u}{\partial t^2}=\frac{U^{n+1}_{i}-2U^n_i+U^{n-1}_i}{\Delta t^2}}

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^2u}{\partial x^2}=\frac{U^{n}_{i+1}-2U^n_i+U^{n}_{i-1}}{\Delta x^2}}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_i^n} representa o valor discretizado de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u(x_i,t_n)} .

Assim, chegamos em uma equação discretizada:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{U_i^{n+1}-2U_i^n+U_i^{n-1}}{(\Delta t)^2} = v^2 \frac{U_{i+1}^n-2U_i^n+U_{i-1}^n}{(\Delta x)^2}} .

Sabendo que essa discretização da equação da onda pode ser verificada como sendo o método Leapfrog (ver seção do método de Leapfrog método de Leapfrog), podemos resolver a equação para Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_i^{n+1}} para sabermos o deslocamento vertical de uma partição da corda no momento de tempo seguinte, assim obtendo

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_i^{n+1} = 2(1-r^2)U_i^n + r^2[U_{i+1}^n+U_{i-1}^n]-U_i^{n-1}} ,

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle r = v \frac{\Delta t}{\Delta x}.}

Um Quadro Mais Realístico - O Modelo de Corda Rígida

Para nos aproximarmos de um modelo mais real, podemos adicionar um termo à equação original da onda que corresponde ao efeito de fricção em uma corda. A equação da onda mais geral com efeito de fricção pode ser escrita como: [2]

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^2 u}{\partial t^2} = v^2 \left( \frac{\partial^2 u}{\partial x^2} - \epsilon L^2 \frac{\partial^4 u}{\partial x^4} \right),}

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v} é a velocidade transversal de propagação do pulso na corda, dada pela relação Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v = \sqrt[]{\frac{T}{\rho}}} (sendo Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle T} a tensão na corda e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \rho} a densidade linear da mesma), Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \epsilon} é um parâmetro adimensional de fricção que representa a rigidez da corda e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle L} o comprimento da corda.

O parâmetro Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \epsilon} é dado por

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \epsilon = \kappa² \frac{E S}{T L^2}} ,

onde Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \kappa} é o raio de giro da corda, Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle E} é o Módulo de Young e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle S} a área da secção da corda.

Discretizamos a equação da seguinte maneira:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^2u}{\partial t^2}=\frac{U^{n+1}_{i}-2U^n_i+U^{n-1}_i}{\Delta t^2}}

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^2u}{\partial x^2}=\frac{U^{n}_{i+1}-2U^n_i+U^{n}_{i-1}}{\Delta x^2}}

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\partial^4u}{\partial x^4}=\frac{U^n_{i+2}-4U^n_{i+1}+6U^n_i-4U^n_{i-1}+U^n_{i-2}}{\Delta x^4} }

e resolvemos para Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_i^{n+1}} , obtendo:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_i^{n+1}=[2-2r^2-6\epsilon r^2K^2]U_i^n - U_i^{n-1} +r^2[1+4\epsilon K^2][U_{i+1}^n+U_{i-1}^n]-\epsilon r^2K^2[U_{i+2}^n + U_{i-2}^n].}

O fato de essa discretização depender do deslocamento da corda em posições Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle i-2} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle i+2} implica em precisarmos simular "pontos fantasmas" quando integramos os extremos das cordas. Para fazermos isso, podemos ou utilizar a aproximação Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_{-1}^n = -U_{+1}^n} ou podemos considerar esses "pontos fantasmas" como pontos presos e, portanto, sempre iguais a zero.

Os Métodos Utilizados

Foi realizada uma abordagem ao problema da corda real a partir de três métodos diferentes de integração numérica.

O método mais básico é chamado de FTCS (Forward-Time-Centered-Space) e consiste em duas expansões de Taylor ao redor do ponto Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle x_j} :

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u(x_i + \Delta x,t^n) = u(x_i,t^n) + \frac{\partial u}{\partial x}(x_i,t^n)\Delta x + \frac{1}{2} \frac{\partial^2 u}{\partial x^2}(x_i,t^n)\Delta x^2 + \mathcal{O}(\Delta x^3),}

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u(x_i - \Delta x,t^n) = u(x_i,t^n) - \frac{\partial u}{\partial x}(x_i,t^n)\Delta x + \frac{1}{2} \frac{\partial^2 u}{\partial x^2}(x_i,t^n)\Delta x^2 + \mathcal{O}(\Delta x^3).}

Subtraindo as duas expressões, encontramos a expressão

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left.\frac{\partial u}{\partial x}\right|_i^n = \frac{u^n_{i+1} - u^n_{i-1}}{2 \Delta x} + \mathcal{O}(\Delta x^2)} ,

A qual podemos substituir na equação da onda, juntamente com a discretização da derivada parcial temporal. Temos então que, para um sistema linear de equações hiperbólicas:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \textbf{U}^{n+1}_i = \textbf{U}^n_i - \frac{\Delta t}{2 \Delta x} [\textbf{F}^n_{i+1} - \textbf{F}^n_{i-1}] + \mathcal{O}(\Delta t^2, \Delta x^2 \Delta t)}

Visto que essa última notação é mais genérica, ela será utilizada para a explicação dos métodos posteriores.

O Método de Lax-Friedrichs

O método de Lax-Friedrichs consiste em substituir o termo Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \textbf{U}^n_i} com sua respectiva média espacial, i.e., Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U^n_i = (U^n_{i+1} + U^n_{i-1})/2} . Logo, temos a seguinte equação de recorrência:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \textbf{U}^{n+1}_i = \frac{1}{2}(\textbf{U}^n_{i+1} + \textbf{U}^n_{i-1}) - \frac{\Delta t}{2 \Delta x} [\textbf{F}^n_{i+1} - \textbf{F}^n_{i-1}] + \mathcal{O}(\Delta x^2)}

O Método de Leapfrog

Tanto o método FTCS quanto o método de Lax-Friedrichs são métodos de primeira ordem para a derivada temporal. Nessas circunstâncias, Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v \Delta t} deve ser significantemente menor do que Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Delta x} , muito abaixo do limite imposto pela condição de Courant.

Uma nova expressão para a derivada temporal, com precisão de segunda ordem é dada por

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left.\frac{\partial u}{\partial t}\right|^n_i = \frac{U^{n+1}_i - U^{n-1}_i}{2 \Delta t} + \mathcal{O}(\Delta t^2).}

Substituindo a nova expressão acima no método de FTCS discutido anteriormente, encontramos o método de Leapfrog:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \textbf{U}^{n+1}_i = \textbf{U}^{n-1}_i - \frac{\Delta t}{\Delta x} [\textbf{F}^n_{i+1} - \textbf{F}^n_{i-1}] + \mathcal{O}(\Delta x^2).}

Como o método de Leapfrog será o mais aplicado na resolução do problema da onda, é interessante um aprofundamento maior do método. Podemos adaptar o método de Leapfrog para o sistema de equações definido para a equação da onda ao fazermos a discretização ao redor de um ponto qualquer Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle i} no instante de tempo Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle n} :

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle k_{i+\frac{1}{2}}^n \equiv v \left.\frac{\partial U}{\partial x}\right|_{i+\frac{1}{2}}^{n} = v \frac{U_{i+1}^n-U_i^n}{\Delta x} + \mathcal{O}(\Delta x) \qquad (1) }

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle s_{i}^{n+\frac{1}{2}} \equiv \left.\frac{\partial U}{\partial t}\right|_{i}^{n+\frac{1}{2}} = \frac{U_{i}^{n+1}-U_i^n}{\Delta t} + \mathcal{O}(\Delta t) \qquad (2) }

Com essas discretizações, podemos utilizar as equações (1) e (2) para resolvermos para Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle k^{n+1}_{i+\frac{1}{2}}} apenas em termos de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle s} , Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle k} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle r} . Fazendo as substituições dessas duas equações uma na outra (ver passo a passo: Dedução Leapfrog), obtemos:

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \frac{\Delta x}{v}k^{n+1}_{i+\frac{1}{2}} = s^{n+\frac{1}{2}}_{i+1}\Delta t + \frac{\Delta x}{v}k^{n}_{i+\frac{1}{2}} + U^n_i - (s^{n+\frac{1}{2}}_i \Delta t + U^n_i)}

Dessa equação, chegamos a

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle k_{i+\frac{1}{2}}^{n+1} = k_{i+\frac{1}{2}}^n+r(s_{i+1}^{n+\frac{1}{2}}-s_{i}^{n+\frac{1}{2}}) \qquad (3) }

Utilizando o mesmo raciocínio, podemos também resolver para Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle s^{n+\frac{1}{2}}_i} e obter

Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle s_i^{n+\frac{1}{2}} = s_{i}^{n-\frac{1}{2}}+r(k_{i+\frac{1}{2}}^{n}-k_{i-\frac{1}{2}}^{n}) \qquad (4) }

Com essas duas equações, podemos fazer uma integração utilizando o método de Euler para obter Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_i^{n+1}} , ou seja, o deslocamento de um determinado ponto Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle i} da corda no próximo instante de tempo:

Contudo, podemos fazer uma simples substituição das equações e nas equações e e, assim, obtemos que a representação de Leapfrog da equação da onda é dada pela discretização de segunda ordem da própria equação da onda, com (ver passo a passo da comparação Discretização x Leapfrog. Isso nos dá uma solução de "um passo", onde só precisamos efetuar o cálculo da equação discretizada pelo método da derivação finita, ou seja, para o caso da corda ideal, a equação

O Método de Lax-Wendroff

O método de Lax-Wendroff é a extensão do método de Lax-Friedrichs de segunda ordem. Calculamos o vetor a partir de um passo médio de Lax-Friedrichs:

,

,

E encontramos os fluxos a partir dos valores de

Logo, com um meio passo de Leapfrog, temos a expressão final do método:

Análise e Discussão dos Resultados

Escolhemos para simular quatro diferentes cordas: as cordas C2, C4 e C7, que são cordas dó de um piano [3] e uma corda qualquer baseada nos dados encontrados no livro "Computational Physics" [2]. Os dados das cordas C2, C4 e C7 estão na tabela abaixo, onde iremos definir para cada corda o comprimento, a massa, a tensão aplicada elas, o número de divisões existentes, amostragem de sinal (que é um parâmetro obtido experimentalmente)e o parâmetro de fricção.

C2 C4 C7
Comprimento ()
Massa()
Tensão ()
Divisões
Amostragem de sinal
Parâmetro de fricção

Desses dados, temos que a densidade linear de massa das cordas é dada por

onde é a massa e o comprimento da corda,

onde é a tensão na corda,

e

Os dados obtidos a partir de todas essas equações são calculados pelo programa com base dos dados da tabela.

Para a simulação baseada nos dados retirados do livro "Computational Physics"[2], utilizamos uma corda com 2 metros de comprimento, com velocidade de propagação transversal da onda sendo 300, de 0.01, e parâmetro de fricção de .

Supondo uma corda inicialmente em repouso, temos que em a corda irá receber em seu centro o equivalente à batida do martelo de um piano. Supomos que esse estímulo da batida do martelo possuía o formato aproximado de uma Gaussiana com amplitude de do comprimento de cada corda.

Então, com o estado inicial da simulação sendo um pulso com o formato de um pacote gaussiano, utilizando condições de contorno fixas, ou seja, mantendo as extremidades da corda paradas e utilizando os dados da tabela para simularmos cada uma das cordas, começamos a simular a propagação de ondas.

Utilizando o método de Leapfrog, foi realizada uma primeira simulação para uma onda ideal em uma corda:

Alt text
Simulação de uma onda em uma corda ideal com condições de contorno u(0,t) = 0 e u(L,t) = 0. A corda simulada possuía comprimento de 2 metros e a amplitude inicial do pulso gaussiano tinha amplitude de 0.5 metros. Foi utilizado uma velocidade de propagação de 300 m/s, e .

Corda C2:

Alt text
Simulação de uma corda C2 de um piano com os parâmetros da tabela acima.
Alt text
Estado da corda C2 em diferentes instantes de tempo.

Corda C4:

Alt text
Simulação de uma corda C4 de um piano com os parâmetros da tabela acima.
Alt text
Estado da corda C4 em diferentes instantes de tempo.

Corda C7:

Alt text
Simulação de uma corda C7 de um piano com os parâmetros da tabela acima.
Alt text
Estado da corda C7 em diferentes instantes de tempo.

Corda com as definições do livro "Computational Physics"[2]:

Alt text
Simulação da corda exemplificada no livro Computational Physics [2]. Os parâmetros utilizados estão descritos no texto.
Alt text
Estado da corda usada como exemplo pelo autor Giordano [2] em diferentes instantes de tempo.

É possível observar que o tempo necessário para que, devido a fricção, os movimentos na corda diferenciem-se cada vez mais da solução para a corda ideal é menor para um tamanho de corda menor, ou seja, a fricção acaba sendo mais relevante mais rapidamente em cordas mais curtas. Isso significa que deixamos de ter apenas dois pulsos propagando-se em sentidos opostos para termos ou mais pulsos de amplitudes menores, ou a soma de pulsos de diferentes amplitudes.

Scripts para a simulação dos resultados apresentados:

Programa baseado no método de Leapfrog para a simulação de uma corda ideal

Programa baseado no método de Leapfrog para a simulação de uma corda real

Análise de Erro e Estabilidade dos Métodos

Estabilidade do método Leapfrog

Pela estabilidade de Von Neumann, podemos escrever que

Para , a equação da discretização da onda pode ser reescrita como

Essa escolha com

nos dá a solução exata sem dispersão numérica, como pode ser verificado pela condição CFL. Contudo, é válido somente no caso de uma corda ideal. É conveniente escrever a condição acima em termos da amostragem de sinal e a frequência fundamental da corda , o que nos leva a

OTeorema de Nyquist-Shannon diz que a frequência superior no espectro deve ser menor do que para evitar serrilhamento e para garantir uma reconstrução única e contínua. Logo, no caso ideal quando as autofrequências da corda são igualmente espaçadas (), a condição de Nyquist indica que o número máximo de frequências no espectro é . Isso significa que essa condição pode ser usada para selecionar o número apropriado de pontos espaciais para a corda. Entretanto, como é um inteiro, apenas valores discretos da frequência natural podem ser obtidos sem erros de trucamento, ou seja, usando . Como séries discretas não costumam ser utilizadas, precisamos aceitar pequenos erros de truncamento para ajustar , ou seja, utilizando . No caso de uma onda com fricção, temos que é um valor de boa estabilidade.

Referências Bibliográficas

  1. Luciano Rezzolla, "Numerical Methods for the Solution of Partial Differential Equations". Albert Einstein Institute, Max-Planck-Institute for Gravitational Physics, Potsdam, Germany.
  2. 2,0 2,1 2,2 2,3 2,4 2,5 N. J. Giordano, "Computational Physics". Department of Physics, Purdue University. Upper Saddle River, New Jersey. Prentice-Hall, 1997.
  3. Antoine Chaign, Anders Askenfelt, "Numerical simulations of piano strings. I. A physical model for a struck string using finite difference methods". Signal Department, Paris, France. Department of Speech Communication and Music Acoustics; Royal Institute of Technology, Stockholm, Sweden.