<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-BR">
	<id>http://fiscomp.if.ufrgs.br/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rodrigolss</id>
	<title>Física Computacional - Contribuições do usuário [pt-br]</title>
	<link rel="self" type="application/atom+xml" href="http://fiscomp.if.ufrgs.br/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rodrigolss"/>
	<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php/Especial:Contribui%C3%A7%C3%B5es/Rodrigolss"/>
	<updated>2026-04-20T00:48:57Z</updated>
	<subtitle>Contribuições do usuário</subtitle>
	<generator>MediaWiki 1.39.4</generator>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2244</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2244"/>
		<updated>2018-01-25T06:43:40Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema SnowDrift */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado a versão mais comum nas literaturas, onde  o dilema do prisioneiro é interpretado de forma diferente:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aqui veremos que com custo de 0.01 o equilibrio gira em torno de 45% de cooperadores para 65% de negadores, e é importante observar que os cooperadores de aglutinam com o decorrer do tempo, formando colônias dentro da população onde todos cooperam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio de mais ou menos 65% de cooperadores para 35% de negadores.&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
Neste problema analizamos duas situações diferentes, onte fixamos b = 2 e variamos c entre 1.5 e 0.00010, abaixo temos a frequência de cooperadores quando se muda o valor de c através da relação de busto benefício. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
Agora temos o gráfico da quantidade de cooperadores pela evolução temporal quando o custo = 1.5.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vemos que com o custo alto, os cooperadores são quase extintos predominando os negadores. Porém, quando temos o custo bem baixo, os negadores praticamente somem, como podemos ver os gráficos abaixo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2242</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2242"/>
		<updated>2018-01-25T06:38:01Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema do prisioneiro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado a versão mais comum nas literaturas, onde  o dilema do prisioneiro é interpretado de forma diferente:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aqui veremos que com custo de 0.01 o equilibrio gira em torno de 45% de cooperadores para 65% de negadores, e é importante observar que os cooperadores de aglutinam com o decorrer do tempo, formando colônias dentro da população onde todos cooperam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio de mais ou menos 65% de cooperadores para 35% de negadores.&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
Neste problema analizamos duas situações diferentes, onte fixamos b = 2 e variamos c entre 1.5 e 0.00010, abaixo temos a frequência de cooperadores quando se muda o valor de c através da relação de busto benefício. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
Agora temos veremos uma análise da quantidade de cooperadores pela evolução temporal quando o custo = 1.5.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2241</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2241"/>
		<updated>2018-01-25T06:36:35Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema do prisioneiro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado a versão mais comum nas literaturas, onde  o dilema do prisioneiro é interpretado de forma diferente:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aqui veremos que o equilibrio gira em torno de 60% de cooperadores para 40% de negadores, e é importante observar que os cooperadores de aglutinam com o decorrer do tempo, formando colônias dentro da população onde todos cooperam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio de mais ou menos 65% de cooperadores para 35% de negadores.&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
Neste problema analizamos duas situações diferentes, onte fixamos b = 2 e variamos c entre 1.5 e 0.00010, abaixo temos a frequência de cooperadores quando se muda o valor de c através da relação de busto benefício. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
Agora temos veremos uma análise da quantidade de cooperadores pela evolução temporal quando o custo = 1.5.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2240</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2240"/>
		<updated>2018-01-25T06:32:23Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema SnowDrift */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado a versão mais comum nas literaturas, onde  o dilema do prisioneiro é interpretado de forma diferente:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio de mais ou menos 65% de cooperadores para 35% de negadores.&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
Neste problema analizamos duas situações diferentes, onte fixamos b = 2 e variamos c entre 1.5 e 0.00010, abaixo temos a frequência de cooperadores quando se muda o valor de c através da relação de busto benefício. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
Agora temos veremos uma análise da quantidade de cooperadores pela evolução temporal quando o custo = 1.5.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2239</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2239"/>
		<updated>2018-01-25T06:23:52Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema do prisioneiro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado a versão mais comum nas literaturas, onde  o dilema do prisioneiro é interpretado de forma diferente:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio de mais ou menos 65% de cooperadores para 35% de negadores.&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_FreqXRaz%C3%A3o.jpg&amp;diff=2230</id>
		<title>Arquivo:SD FreqXRazão.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_FreqXRaz%C3%A3o.jpg&amp;diff=2230"/>
		<updated>2018-01-25T05:47:06Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2208</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2208"/>
		<updated>2018-01-25T05:16:07Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema Do Prisioneiro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado a versão mais comum nas literaturas, onde  o dilema do prisioneiro é interpretado de forma diferente:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio e passam um pouco dele por algum tempo&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2193</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2193"/>
		<updated>2018-01-25T03:37:28Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Dilema SnowDrift */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado uma versão com nomenclaturas diferentes:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
===Dilema do prisioneiro===&lt;br /&gt;
Analizando as diferentes possibilidades de razões custo/benefício obtemos o gráfico abaixo.&lt;br /&gt;
[[Arquivo:FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c)]]&lt;br /&gt;
Nele podemos verificar que quando o custo de cooperar chega a zero, hávará um equilíbrio de 40% de cooperadores e 60% de negadores. e quando a razão custo/beneficio começa a aumentar(aumento do custo) a porcentagem de cooperadores começa a declinar rapidamente e logo chega a zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Logo em seguida, temos os gráficos de partes específicas dos resultados obtidos no gráfico anterior. nele vemos que com custo = 1, beneficio = 2, os cooperadores são eliminados rapidamente.&lt;br /&gt;
[[Arquivo:CF01.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
A seguir temos uma imagem que mostraremos como auxílio visual representando o momento inicial do gráfico anterior e o momento final dele, onde em preto temos os negadores, e em branco os cooperadores.&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:IM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_1.jpg|B = 2 c = 1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos um exemplo no qual o benefício =2 e o custo = 0.01 geram um caso no qual há a possibilidade de equilibro após certo tempo.&lt;br /&gt;
[[Arquivo:CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
Arquivo:FM_0.01.jpg |B = 2 c = 0.01&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora temos o caso onde o custo é muito baixo e os cooperadores chegam ao equilíbrio e passam um pouco dele por algum tempo&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_FreqXRazão.jpg |frame|400x400px|center|Frequência Cooperadores X razão Custo/Beneficio - r = c/(b-c]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF1.5.jpg |frame|400x400px|center|B = 2 c = 1.5]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
Arquivo:SD_IM_1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_FM1.5.jpg|B = 2 c = 1.5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:SD_CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Arquivo:SD_IM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
Arquivo:SD_FM_0.0001.jpg |B = 2 c = 0.0001&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_IM_1.5.jpg&amp;diff=2187</id>
		<title>Arquivo:SD IM 1.5.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_IM_1.5.jpg&amp;diff=2187"/>
		<updated>2018-01-25T03:29:00Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_IM_0.0001.jpg&amp;diff=2186</id>
		<title>Arquivo:SD IM 0.0001.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_IM_0.0001.jpg&amp;diff=2186"/>
		<updated>2018-01-25T03:28:27Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_FM_0.0001.jpg&amp;diff=2185</id>
		<title>Arquivo:SD FM 0.0001.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_FM_0.0001.jpg&amp;diff=2185"/>
		<updated>2018-01-25T03:27:36Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_FM1.5.jpg&amp;diff=2184</id>
		<title>Arquivo:SD FM1.5.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_FM1.5.jpg&amp;diff=2184"/>
		<updated>2018-01-25T03:27:18Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_CF1.5.jpg&amp;diff=2183</id>
		<title>Arquivo:SD CF1.5.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_CF1.5.jpg&amp;diff=2183"/>
		<updated>2018-01-25T03:26:54Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_CF0.0001.jpg&amp;diff=2182</id>
		<title>Arquivo:SD CF0.0001.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:SD_CF0.0001.jpg&amp;diff=2182"/>
		<updated>2018-01-25T03:26:36Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF01.jpg&amp;diff=2156</id>
		<title>Arquivo:CF01.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF01.jpg&amp;diff=2156"/>
		<updated>2018-01-25T02:21:13Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2150</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2150"/>
		<updated>2018-01-25T01:58:10Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado uma versão com nomenclaturas diferentes:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = b-c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=400px heights=400px&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Arquivo:CF0.01.jpg|PlaceHolder]&lt;br /&gt;
Arquivo:CF0.01.jpg|PlaceHolder]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: CF0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_1.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_0.0001.jpg |frame|400x400px|center|B = 2 c = 0.0001]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_0.01.jpg |frame|400x400px|center|B = 2 c = 0.01]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_1.jpg |frame|400x400px|center|B = 2 c = 1.0]]&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2128</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2128"/>
		<updated>2018-01-25T00:28:49Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado uma versão com nomenclaturas diferentes:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b-c&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: CF0.01.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.0001.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.01.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_1.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_0.0001.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_0.01.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_1.jpg |frame|400x400px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2127</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2127"/>
		<updated>2018-01-24T23:56:26Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado uma versão com nomenclaturas diferentes:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b-c&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: CF0.01.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.0001.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.01.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_1.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_0.0001.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_0.01.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:IM_1.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2126</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2126"/>
		<updated>2018-01-24T23:54:04Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Resultados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado uma versão com nomenclaturas diferentes:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b-c&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: CF0.01.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:CF0.0001.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.0001.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_0.01.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:FM_1.jpg |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2125</id>
		<title>Grupo - Dilema Do Prisioneiro</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo_-_Dilema_Do_Prisioneiro&amp;diff=2125"/>
		<updated>2018-01-24T23:50:17Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* População Estruturada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Integrantes do grupo:''' Leonardo Xavier Rodrigues (262696) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
O dilema do prisioneiro junto com o dilema ''SnowDrift'' são problemas pertencentes a teoria dos jogos. Ambos funcionam de formas similares, baseando-se na interação entre duas pessoas(ou jogadores) e nas suas possíveis escolhas estratégicas para resolver seu problema. Esses dilemas são muito usados como metáforas para tentar explicar a evolução da cooperação através da seleção natural. O dilema do prisioneiro também poder ser usado para interpretar diversas outras formas de interação, desde biológicas até questões de economia.&lt;br /&gt;
&lt;br /&gt;
===Dilema Do Prisioneiro===&lt;br /&gt;
O dilema do prisioneiro clássico é descrito como uma mini história:&lt;br /&gt;
&lt;br /&gt;
''Dois suspeitos, A e B, são presos pela polícia. A polícia tem provas insuficientes para os condenar, mas, separando os prisioneiros, oferece a ambos o mesmo acordo: se um dos prisioneiros, confessando, testemunhar contra o outro e esse outro permanecer em silêncio, o que confessou sai livre enquanto o cúmplice silencioso cumpre 10 anos de sentença. Se ambos ficarem em silêncio, a polícia só pode condená-los a 6 meses de cadeia cada um. Se ambos traírem o comparsa, cada um leva 5 anos de cadeia. Cada prisioneiro faz a sua decisão sem saber que decisão o outro vai tomar, e nenhum tem certeza da decisão do outro. A questão que o dilema propõe é: o que vai acontecer? Como o prisioneiro vai reagir?''&lt;br /&gt;
[https://pt.wikipedia.org/wiki/Dilema_do_prisioneiro Ref]&lt;br /&gt;
&lt;br /&gt;
Existem diversas versões deste dilema, variando os anos de prisão, mas todas com a mesma estrutura simples:&lt;br /&gt;
&lt;br /&gt;
- dois jogadores&lt;br /&gt;
&lt;br /&gt;
- duas ações possíveis&lt;br /&gt;
&lt;br /&gt;
Nesta Wiki será utilizado uma versão com nomenclaturas diferentes:&lt;br /&gt;
&lt;br /&gt;
Ambos os presos são apresentados com a possibilidade de cooperar(assumir o crime que ele e seu comparsa cometeram) ou Não assumir o crime.&lt;br /&gt;
esse esquema pode ser visto visualmente com o auxilio de uma matriz chamada de matriz de ganhos&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | A, B !!Coopera!! Nega&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| Ganho,Perda&lt;br /&gt;
| Perda, Perda&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| Ganho Menor, Ganho Menor&lt;br /&gt;
| Perda, Ganho&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Onde ganho seria receber a liberdade imediata, perda a prisão por 10 anos e ganho menor a prisão por 5 anos.&lt;br /&gt;
Neste esquema de jogo, o melhor a se fazer para beneficio mútuo seria cooperar, para que nenhum dos dois passe 10 anos na cadeia. Porém, não há como saber como o outro jogador irá responder ao jogo, Pois se você cooperar e seu comparsa negar o crime, você passará 10 anos na prisão e ele sai livre.&lt;br /&gt;
Este problema é chamado também de jogo de soma não zero, onde não é possível unilateralmente mudar o resultado do jogo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dilema ''SnowDrift''===&lt;br /&gt;
Este dilema utiliza quase a mesma estrutura do anterior, porém com apenas alguns detalhes de diferença.&lt;br /&gt;
&lt;br /&gt;
Nesta metáfora, duas pessoas estão em um carro preso em uma nevasca, cada uma delas tem a opção de sair do carro e com uma pá cavar a neve ao redor do carro ou simplesmente não fazer nada. nesta situação, diferentemente do dilema anterior, a melhor opção a se tomar quando o outro jogador se nega a colaborar ainda é colaborar, caso contrário você continuará preso na neve.&lt;br /&gt;
&lt;br /&gt;
==Tipos de população==&lt;br /&gt;
As metáforas apresentadas acima são usadas para tentar explicar o aparecimento natural da cooperação através da seleção natural.&lt;br /&gt;
Foram utilizados dois tipos de modelo de populações neste estudo.&lt;br /&gt;
&lt;br /&gt;
O jogo é feito através da interação de um jogador com outro jogador, dependendo do algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
===População misturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário a ideia é reproduzir um modelo de uma população na qual o jogador pode interagir com qualquer outro membro da população, um exemplo desse tipo de estrutura seria uma colonia de bactérias vivendo em um meio líquido, no qual elas podem se mover.&lt;br /&gt;
&lt;br /&gt;
===População Estruturada===&lt;br /&gt;
&lt;br /&gt;
Neste cenário o modelo simulado seria um no qual um membro da população pode apenas interagir com seus vizinhos próximos, na biologia uma placa de Petri(dish) com colonias de bactérias na superfície seria um bom exemplo desse modelo, já que nele as bactérias não podem se locomover.&lt;br /&gt;
&lt;br /&gt;
==Conceitos do jogo==&lt;br /&gt;
Para implementar os dilemas em uma simulação e estudar seus resultados será analisado a matrix de ganhos para um jogador (p1) contra um segundo jogador (p2).&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;background: #f9f9f9;border: 1px #aaa solid; border-collapse: collapse; font-size: 95%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! align=&amp;quot;center&amp;quot; | P1, P2 !!Nega!!Coopera&lt;br /&gt;
|-&lt;br /&gt;
! Nega&lt;br /&gt;
| P&lt;br /&gt;
| T&lt;br /&gt;
|-&lt;br /&gt;
! Coopera&lt;br /&gt;
| S&lt;br /&gt;
| R&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
P - ''Punishment''&lt;br /&gt;
&lt;br /&gt;
T - ''Temptation''&lt;br /&gt;
&lt;br /&gt;
S - ''Sucker's Payoff''&lt;br /&gt;
&lt;br /&gt;
R - ''Reward''&lt;br /&gt;
&lt;br /&gt;
Quando ambos Cooperam, o player um recebe a recompensa(''Reward'' ), se ambos negam, o jogador 1 recebe punição(''Punishment''). Se o jogador um nega e o jogador 2 coopera, o primeiro receberá a tentação(''Temptation''), Caso contrário, o jogador um recebe ''Sucker's Payoff''.&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
Os jogos são feitos para estudar o comportamento de uma população e a sobrevivência da cooperação nela, para este fim é necessário dar valores a matriz de ganhos. Cada jogo é feito de diversas rodadas onde há a interação da população assincronamente. &lt;br /&gt;
Para cooperar existe um beneficio(b) e um custo(c), e a matriz de ganhos é baseada nesses valores.&lt;br /&gt;
&lt;br /&gt;
===Características dilema do prisioneiro===&lt;br /&gt;
R = b-c&lt;br /&gt;
&lt;br /&gt;
T = b&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
O dilema do prisioneiro, geralmente, segue a regra T &amp;gt; R &amp;gt; P &amp;gt; S. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Características Para dilema ''SnowDrift''===&lt;br /&gt;
R = b-c/2&lt;br /&gt;
&lt;br /&gt;
T = b-c&lt;br /&gt;
&lt;br /&gt;
S = -c&lt;br /&gt;
&lt;br /&gt;
P = 0&lt;br /&gt;
&lt;br /&gt;
Neste jogo há uma diferença crucial, na qual se ambos se negarem a ajudar, eles continuarão presos na neve.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===O jogo===&lt;br /&gt;
O jogo é feito de diversas maneiras, neste exemplo foram utilizadas dois tipos de estruturas de populações.&lt;br /&gt;
O foco do jogo é descobrir se o jogador um irá ou não adotar a estratégia do jogador dois, para isso eles competem, porém competem indiretamente. Eles competem com seus vizinhos e o resultado disso(score) é utilizado para computar a probabilidade do jogador 1 assumir a estratégia feita pelo jogador 2.&lt;br /&gt;
&lt;br /&gt;
==== População Misturada====&lt;br /&gt;
Neste esquema de jogo, a população é aleatoriamente composta por cooperadores e negadores (50/50) e é escolhido aleatoriamente dois membros da população para competir, cada um deles joga contra algum outro membro aleatório da população. os seus respectivos scores são comparados e assim é feita a probabilidade do jogador um copiar a estratégia do jogador 2(w).&lt;br /&gt;
&amp;lt;math&amp;gt;W = (P2 - P1)/alpha&amp;lt;/math&amp;gt;, onde alpha será a diferença máxima entre os valores da matriz de ganho, para garantir que W seja menor que 1.&lt;br /&gt;
&lt;br /&gt;
==== População Estruturada====&lt;br /&gt;
A população estruturada simula uma condição onde os membros não tem como interagir com qualquer outro membro da população, para isso é feito uma matriz n x n com a população de tamanho n. em cada rodada do jogo é escolhido algum membro aleatório da população nessa matriz e ele ira interagir com seus 4 mais próximos vizinhos, para comparar, sera utilizado um desses vizinhos e ele também irá competir com seus 4 vizinhos mais próximos.&lt;br /&gt;
com base nesse score acumulado das 4 interações é calculado a probabilidade do jogador 1 assumir a estratégia do seu competidor. A formulá utilizada foi a de fermi dirac:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Fermi_Dirac.jpg |frame|500px|center|Plot da função abaixo ( fazer)/ ]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;W = 1 / (1 + exp((P2-P1)/K))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Com essa fórmula é introduzida uma certa aleatoriedade na decisão do jogador 1, pois mesmo que seu score seja maior, há a chance dele adotar a estratégia de seu oponente. isto pode ser interpretado como uma mutação, dependendo da análise feita.&lt;br /&gt;
&lt;br /&gt;
==Resultados==&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:placeholder |frame|500px|center|PlaceHolder]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Implementação em C==&lt;br /&gt;
Link para Programas Usados[[https://fiscomp.if.ufrgs.br/index.php/Grupo_-_Dilema_Do_Prisioneiro/Programas]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
*Dusan Misevic,Sebastian Bonhoeffer, Spatial cooperation games&lt;br /&gt;
https://www.ethz.ch/content/dam/ethz/special-interest/usys/ibz/theoreticalbiology/education/learningmaterials/701-1424-00L/scg.pdf&lt;br /&gt;
*Game theory and physics, American Journal of Physics 73, 405 (2005)&lt;br /&gt;
http://dx.doi.org/10.1119/1.1848514&lt;br /&gt;
&lt;br /&gt;
*MARTIN A. NOWAK, SEBASTIAN BONHOEFFER, AND ROBERT M. MAY,Spatial games and the maintenance of cooperation&lt;br /&gt;
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC43892/pdf/pnas01133-0277.pdf&lt;br /&gt;
&lt;br /&gt;
*Behavioural evolution: Cooperate with thy neighbour?&lt;br /&gt;
https://www.nature.com/articles/428611a&lt;br /&gt;
&lt;br /&gt;
*Human cooperation in social dilemmas: comparing the Snowdrift game with the Prisoner's Dilemma&lt;br /&gt;
http://dx.doi.org/10.1098/rspb.2007.0793&lt;br /&gt;
&lt;br /&gt;
*Delação premiada e Teoria dos Jogos | Nerdologia 271&lt;br /&gt;
https://www.youtube.com/watch?v=EvjdS4vWdc8&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:IM_1.jpg&amp;diff=2124</id>
		<title>Arquivo:IM 1.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:IM_1.jpg&amp;diff=2124"/>
		<updated>2018-01-24T23:47:27Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:IM_0.0001.jpg&amp;diff=2123</id>
		<title>Arquivo:IM 0.0001.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:IM_0.0001.jpg&amp;diff=2123"/>
		<updated>2018-01-24T23:47:04Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:IM_0.01.jpg&amp;diff=2122</id>
		<title>Arquivo:IM 0.01.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:IM_0.01.jpg&amp;diff=2122"/>
		<updated>2018-01-24T23:46:41Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FreqXRaz%C3%A3o.jpg&amp;diff=2121</id>
		<title>Arquivo:FreqXRazão.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FreqXRaz%C3%A3o.jpg&amp;diff=2121"/>
		<updated>2018-01-24T23:46:19Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FM_1.jpg&amp;diff=2120</id>
		<title>Arquivo:FM 1.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FM_1.jpg&amp;diff=2120"/>
		<updated>2018-01-24T23:45:47Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FM_0.0001.jpg&amp;diff=2119</id>
		<title>Arquivo:FM 0.0001.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FM_0.0001.jpg&amp;diff=2119"/>
		<updated>2018-01-24T23:45:27Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FM_0.01.jpg&amp;diff=2118</id>
		<title>Arquivo:FM 0.01.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:FM_0.01.jpg&amp;diff=2118"/>
		<updated>2018-01-24T23:45:04Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:Fermi_Dirac.jpg&amp;diff=2117</id>
		<title>Arquivo:Fermi Dirac.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:Fermi_Dirac.jpg&amp;diff=2117"/>
		<updated>2018-01-24T23:44:40Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.0001.jpg&amp;diff=2112</id>
		<title>Arquivo:CF0.0001.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.0001.jpg&amp;diff=2112"/>
		<updated>2018-01-24T23:35:21Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.01.jpg&amp;diff=2111</id>
		<title>Arquivo:CF0.01.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.01.jpg&amp;diff=2111"/>
		<updated>2018-01-24T23:32:52Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: Rodrigolss enviou uma nova versão de &amp;amp;quot;Arquivo:CF0.01.jpg&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.01.jpg&amp;diff=2110</id>
		<title>Arquivo:CF0.01.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.01.jpg&amp;diff=2110"/>
		<updated>2018-01-24T23:31:33Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: Rodrigolss enviou uma nova versão de &amp;amp;quot;Arquivo:CF0.01.jpg&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.01.jpg&amp;diff=2109</id>
		<title>Arquivo:CF0.01.jpg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:CF0.01.jpg&amp;diff=2109"/>
		<updated>2018-01-24T23:29:57Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1131</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1131"/>
		<updated>2017-11-26T19:46:42Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Simulação de Propagação de Onda 2D no Mar Dependente de Topografia */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz (264889) e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
==Introdução==&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Inicialmente, para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda, &amp;lt;math&amp;gt;c&amp;lt;/math&amp;gt; é a velocidade de propagação da onda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, de forma que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno utilizadas aqui são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; \mathcal{O}(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável&amp;lt;ref name=recipes&amp;gt;Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&amp;lt;/ref&amp;gt; . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs &amp;lt;ref name=recipes/&amp;gt; . Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda), com constante de difusão &amp;lt;math&amp;gt;\frac{(\Delta x)^2}{2\Delta t}&amp;lt;/math&amp;gt; &amp;lt;ref name=recipes/&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; \mathcal{O}(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários na discretização das equações.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; \mathcal{O}(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Através do método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Solução e Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
Primeiramente, apresentamos abaixo as soluções geradas pelos programas, em comparação com a solução analítica, e, em seguida, será mostrada a análise de erros.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Output_comp.png|frame|100px|center|Comparação da solução analítica com as soluções numéricas]]&lt;br /&gt;
&lt;br /&gt;
Aqui já podemos observar o que foi comentado na seção sobre o método de Lax-Friedrichs: devido à dissipação numérica inerente ao método, há uma diminuição da amplitude da onda ao longo do tempo, embora ela mantenha sua forma. Isso interferirá na análise do erro deste método, o que será apresentado na sequência.&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro).&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt; &amp;lt;ref&amp;gt;&lt;br /&gt;
Weisstein, Eric W. &amp;quot;Wave Equation--1-Dimensional.&amp;quot; From MathWorld--A Wolfram Web Resource; disponível em: [http://mathworld.wolfram.com/WaveEquation1-Dimensional.html]; último acesso em 26/11/2017&amp;lt;/ref&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro foi obtido efetuando uma média espacial, ou seja, o programa foi evoluindo até um tempo final &amp;lt;math&amp;gt;t_f = 100&amp;lt;/math&amp;gt;, e, em &amp;lt;math&amp;gt;t=t_f&amp;lt;/math&amp;gt;, foi feita uma média sobre o valor absoluto da diferença entre a solução analítica e a numérica. Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;, de forma que &amp;lt;math&amp;gt;k=\Delta t&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados com escala logarítimica em ambos os eixos]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar que os erros crescem à medida que o parâmetro k se torna maior, como seria de se esperar. &lt;br /&gt;
&lt;br /&gt;
Além disso, sabendo a ordem do erro dos métodos, podemos determinar a inclinação da reta que melhor se ajusta aos pontos. Se um método tem erro de ordem &amp;lt;math&amp;gt;(\Delta t)^n&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\varepsilon _l = \alpha (\Delta t)^n&amp;lt;/math&amp;gt;&lt;br /&gt;
em que &amp;lt;math&amp;gt;\varepsilon _l&amp;lt;/math&amp;gt; é o erro local, ou seja, o erro de um passo do método, e &amp;lt;math&amp;gt;\alpha&amp;lt;/math&amp;gt; é uma constante. Assim, o erro global &amp;lt;math&amp;gt;\varepsilon _g&amp;lt;/math&amp;gt;, ou seja, o erro após N passos, é dado por &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\varepsilon _g = N\varepsilon _l= N\alpha (\Delta t)^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como &amp;lt;math&amp;gt;N = \frac{t_f}{\Delta t}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\varepsilon _g = \frac{t_f}{\Delta t}\alpha (\Delta t)^n = \alpha t_f (\Delta t)^{n-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
Logo, se o erro local é de ordem &amp;lt;math&amp;gt;(\Delta t)^n&amp;lt;/math&amp;gt;, o erro global (que é o que calculamos aqui) é de ordem &amp;lt;math&amp;gt;(\Delta t)^{n-1}&amp;lt;/math&amp;gt;. Além disso, como utilizamos escala logarítmica para representar os resultados, a função do erro global se torna&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;math&amp;gt;\log{\varepsilon _g} = \log{\alpha t_f (\Delta t)^{n-1}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\log{\varepsilon _g} = \log{\alpha t_f} + (n-1)\log{(\Delta t)}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ou seja, a inclinação do gráfico do erro global é &amp;lt;math&amp;gt;n-1&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximada de 1, já que os métodos são de ordem &amp;lt;math&amp;gt;(\Delta t)^2&amp;lt;/math&amp;gt;. Com relação ao gráfico do erro do método de Lax-Friedrichs, é mais complicado de fazer sua análise, uma vez que há o efeito de dissipação numérica, que se intensifica para valores menores de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;. Podemos observar nos dados que o  ponto de máximo na parte esquerda do gráfico corresponde a um erro de aproximadamente &amp;lt;math&amp;gt;0,63&amp;lt;/math&amp;gt;, que é a média da solução analítica no tempo &amp;lt;math&amp;gt;t = t_f&amp;lt;/math&amp;gt; (conforme solução analítica, a amplitude no tempo &amp;lt;math&amp;gt;t=100&amp;lt;/math&amp;gt; é &amp;lt;math&amp;gt;\cos{\Big(\frac{100\pi}{49}\Big)} \approx 1&amp;lt;/math&amp;gt;, e a média de &amp;lt;math&amp;gt;\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt; vale &amp;lt;math&amp;gt;\frac{2}{\pi} \approx 0.64&amp;lt;/math&amp;gt;). Isso significa que, devido à dissipação, a solução numérica é praticamente 0 frente à solução analítica na parte esquerda do gráfico.&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D no Mar Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples para a propagação de onda dependente da topografia parte da equação da onda [1], incluindo um termo da forma &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a medida que a profundidade diminui, a amplitude da onda e sua frequência crescem [5]. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante de valor igual a 1 e H não depende do tempo, por questão de simplicidade:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:02ss.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:01ss.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:02cs.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:01cs.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
Perfil da onda em sua diagonal:&lt;br /&gt;
[[Arquivo:perfil2d.png|frame|500px|center|Perfil da onda em sua diagonal no tempo de simulação igual a 300]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:02ss.gif&amp;diff=1130</id>
		<title>Arquivo:02ss.gif</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:02ss.gif&amp;diff=1130"/>
		<updated>2017-11-26T19:43:18Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:02cs.gif&amp;diff=1129</id>
		<title>Arquivo:02cs.gif</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:02cs.gif&amp;diff=1129"/>
		<updated>2017-11-26T19:42:40Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:01ss.gif&amp;diff=1128</id>
		<title>Arquivo:01ss.gif</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:01ss.gif&amp;diff=1128"/>
		<updated>2017-11-26T19:42:19Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:01cs.gif&amp;diff=1127</id>
		<title>Arquivo:01cs.gif</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:01cs.gif&amp;diff=1127"/>
		<updated>2017-11-26T19:41:47Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1049</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1049"/>
		<updated>2017-11-03T03:15:11Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Método de Leapfrog -  O(\Delta x^2, \Delta t^2 ) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários na discretização das equações.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro aqui foi obtido fazendo uma média, ou seja,a soma do erro de cada ponto discretizado sobre o total de pontos, no tempo final VALOR AQUI. &lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados com escala logarítimica em ambos os eixos]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1] é acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; da forma.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1048</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1048"/>
		<updated>2017-11-03T03:12:59Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Método de Leapfrog -  O(\Delta x^2, \Delta t^2 ) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários na discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro aqui foi obtido fazendo uma média, ou seja,a soma do erro de cada ponto discretizado sobre o total de pontos, no tempo final VALOR AQUI. &lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados com escala logarítimica em ambos os eixos]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1] é acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; da forma.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1047</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1047"/>
		<updated>2017-11-03T01:37:39Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Simulação de Propagação de Onda 2D Dependente de Topografia */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro aqui foi obtido fazendo uma média, ou seja,a soma do erro de cada ponto discretizado sobre o total de pontos, no tempo final VALOR AQUI. &lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados com escala logarítimica em ambos os eixos]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1] é acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; da forma.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1046</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1046"/>
		<updated>2017-11-03T01:36:11Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Análise de erros */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro aqui foi obtido fazendo uma média, ou seja,a soma do erro de cada ponto discretizado sobre o total de pontos, no tempo final VALOR AQUI. &lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados com escala logarítimica em ambos os eixos]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1045</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1045"/>
		<updated>2017-11-03T00:04:50Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Programas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro aqui foi obtido fazendo uma média, ou seja,a soma do erro de cada ponto discretizado sobre o total de pontos, no tempo final VALOR AQUI. &lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1044</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1044"/>
		<updated>2017-11-03T00:02:10Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Análise de erros */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\frac{\pi x}{L}} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
O erro aqui foi obtido fazendo uma média, ou seja,a soma do erro de cada ponto discretizado sobre o total de pontos, no tempo final VALOR AQUI. &lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1043</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1043"/>
		<updated>2017-11-02T23:34:24Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Introdução */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\Big(\frac{\pi x}{L}\Big)} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\frac{\pi x}{L}} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1042</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1042"/>
		<updated>2017-11-02T23:33:20Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Introdução */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{(\frac{\pi x}{L})} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(v_{j}^{n+1} - v_j^n) = \frac{1}{2\Delta x} (w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}(w_{j}^{n+1} - w_j^n) = \frac{1}{2\Delta x} (v_{j+1}^{n} - v_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável[3] . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs [3]. Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{1}{\Delta t} (u_{j}^{n+1} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{1}{2\Delta x} (u_{j+1}^{n} - u_{j-1}^{n})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização.&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{1}{\Delta t}\bigg( v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}\bigg) = \frac{1}{\Delta x}\Big(w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n}\bigg)  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} \bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;w&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{1}{\Delta x}\bigg(v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}\bigg) = \frac{1}{\Delta t}\bigg(w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} \bigg) \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \bigg|_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n) \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Utilizando o fato de que &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} = \frac{1}{\Delta t} (u_{j}^{n+1} - u_j^n)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w_{j+\frac{1}{2}}^{n} = \frac{1}{\Delta x} (u_{j+1}^{n} - u_{j}^{n})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
chegamos na equação para &amp;lt;math&amp;gt;u_{j}^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\bigg|_j = \frac{1}{(\Delta x)^2}(f_{j-1} - 2f_j + f_{j+1})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt;j&amp;lt;/math&amp;gt; a discretização em &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \bigg(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\bigg) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u, utilizando a expressão para &amp;lt;math&amp;gt;  v_{j}^{n+1} &amp;lt;/math&amp;gt; e as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, como obtidas na seção sobre o Método de Lax-Friedrichs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[ \frac{1}{2}u_{j+2}^{n-1} - \frac{1}{2}u_{j-2}^{n-1} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Programas ==&lt;br /&gt;
&lt;br /&gt;
Ao implementarmos o método, surgem dois problemas: o problema não é auto-inicializável, pois para calcularmos o valor de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, necessitamos de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; (além de &amp;lt;math&amp;gt;u_j^{0}&amp;lt;/math&amp;gt;). Entretanto, isto é rapidamente solucionado quando discretizamos a condição inicial de que &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{2\Delta t} (u_j^{1} - u_j^{-1}) = 0 \Rightarrow u_j^{1} = u_j^{-1}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
ou seja, para o cálculo de &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, utilizamos que &amp;lt;math&amp;gt; u_j^{1} = u_j^{-1} &amp;lt;/math&amp;gt;. Para o método de Leapfrog, dessa forma conseguimos isolar &amp;lt;math&amp;gt;u_j^{1}&amp;lt;/math&amp;gt;, não havendo nenhum outro termo no tempo &amp;lt;math&amp;gt;n=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = 2u_{j}^{0} - u_{j}^{-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{-1} = u_{j}^{0} + \frac{(\Delta t)^2}{2(\Delta x)^2}(u_{j+1}^{0} - 2u_{j}^{0} + u_{j-1}^{0})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Porém, isso não ocorre com os outros dois métodos, pois surgem termos em diferentes posições para o tempo &amp;lt;math&amp;gt;n=0&amp;lt;/math&amp;gt; (de &amp;lt;math&amp;gt;u_{-2}^{0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u_{-1}^{0}&amp;lt;/math&amp;gt;, até &amp;lt;math&amp;gt;u_{2}^{0}&amp;lt;/math&amp;gt;), sendo necessário resolvermos o sistema como um todo simultaneamente, ou seja, teríamos que inverter uma matriz. Por isso, foi utilizado o método de Leapfrog para o cálculo de &amp;lt;math&amp;gt;u_j^{-1}&amp;lt;/math&amp;gt; em todos os métodos, devido a sua simplicidade.&lt;br /&gt;
&lt;br /&gt;
Além disso, são necessários valores de &amp;lt;math&amp;gt;u_{-1}^n&amp;lt;/math&amp;gt; e de &amp;lt;math&amp;gt;u_{j_{max}+1}^n&amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt;j_{max}&amp;lt;/math&amp;gt; correspondendo a &amp;lt;math&amp;gt;x = L&amp;lt;/math&amp;gt;, para calcularmos &amp;lt;math&amp;gt;u_1^{n}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;u_{j_{max}}^{n}&amp;lt;/math&amp;gt;, para qualquer tempo, utilizando os métodos de Lax-Wendroff de dois passos e Lax-Friedrichs. A solução a este problema foi utilizarmos &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{-1}^n = -u_{1}^n &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_{j_{max}+1}^n = -u_{j_{max}-1}^n &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pensando na condição inicial &amp;lt;math&amp;gt; u(x,0) = \sin{\frac{\pi x}{L}} &amp;lt;/math&amp;gt;, e estendendo para além da corda (pensando no seno de &amp;lt;math&amp;gt; -\infty&amp;lt;x&amp;lt;\infty &amp;lt;/math&amp;gt;), observamos que ela respeita as equações acima.&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;u(x, t) = \cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1019</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=1019"/>
		<updated>2017-11-02T20:40:48Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Introdução */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
'''Integrantes do grupo:''' Rodrigo Zamin Ferreira (262692), Leonardo Xavier Rodrigues (262696), Maurício Gomes de Queiroz () e Rodrigo Lopes de Sousa Silva (262705)&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
\begin{cases}&lt;br /&gt;
\dfrac{\partial v}{\partial t}=\dfrac{\partial w}{\partial x} \\&lt;br /&gt;
&lt;br /&gt;
\\&lt;br /&gt;
&lt;br /&gt;
\dfrac{\partial v}{\partial x}=\dfrac{\partial w}{\partial t} \\&lt;br /&gt;
&lt;br /&gt;
\end{cases}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\frac{\pi x}{L}} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados. A respeito das discretizações, &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt; corresponde à posição, e &amp;lt;math&amp;gt; n &amp;lt;/math&amp;gt; representa o tempo.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t )&amp;lt;/math&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em inicialmente discretizar as equações no esquema FTCS (Forward Time Centered Space), ou seja, discretizando a derivada temporal utilizando os tempos n e n+1 e a derivada espacial através das posições j-1 e j+1: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{v_{j}^{n+1} - v_j^n}{\Delta t} = \frac{w_{j+1}^{n} - w_{j-1}^{n}}{2\Delta x} &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{w_{j}^{n+1} - w_j^n}{\Delta t} = \frac{v_{j+1}^{n} - v_{j-1}^{n}}{2\Delta x} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Resultando em&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Entretanto, ao se realizar uma análise de estabilidade de Von Neumann, conclui-se que esse método é instável ('''Ref. 3''') . Para torná-lo estável, é necessário trocarmos os termos &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w_j^n &amp;lt;/math&amp;gt; por suas médias espaciais, chegando, assim, na expressão do esquema de Lax-Friedrichs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Para obtermos o valor de &amp;lt;math&amp;gt; u_{j}^{n+1} &amp;lt;/math&amp;gt;, que é o nosso objetivo, discretizamos a equação &amp;lt;math&amp;gt; \frac{\partial u}{\partial t} = v&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Embora as médias espaciais sejam necessárias para a estabilidade do método, elas introduzem um problema: surge um efeito chamado de dissipação numérica, ou seja, a amplitude da solução diminui com o tempo. Isso pode ser observado através da análise de Von Neumann ou de uma investigação da equação do esquema Lax-Friedrichs ('''Ref. 3'''). Por este método, observa-se que ao inserirmos as médias, mudamos a equação original do problema, pois agora há também um termo do tipo difusivo (uma derivada segunda).&lt;br /&gt;
&lt;br /&gt;
Agora vamos unir todas as equações, utilizando, além da equação para &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; obtida acima, as discretizações de &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_j^n = \frac{u_{j}^{n+1} - u_{j}^{n}}{\Delta t}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_j^n = \frac{u_{j+1}^{n} - u_{j-1}^{n}}{2\Delta x}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Assim, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
Neste método utilizamos os pontos intermediários da discretização. Para v temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{ v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}}{\Delta t} = \frac{ w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n} }{\Delta x}  \Rightarrow v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} (w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} ) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Para w temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{ v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}}{\Delta x} = \frac{ w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} }{\Delta t} \Rightarrow w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \Big(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Para u temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \Big|_{j}^{n+\frac{1}{2}} = \frac{ u_{j}^{n+1} - u_j^n}{\Delta t} \Rightarrow  u_{j}^{n+1} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Juntando todas elas temos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
o que é equivalente a discretizarmos a equação da onda diretamente, utilizando que, para uma função f(x), &amp;lt;math&amp;gt; \frac{d^2f}{dx^2}\Big|_j = \frac{f_{j-1} - 2f_j + f_{j+1}}{(\Delta x)^2}&amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
sendo j a discretização em x.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos - &amp;lt;math&amp;gt; O(\Delta x^2, \Delta t^2 )&amp;lt;/math&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
O primeiro passo consiste em calcular o valor de &amp;lt;math&amp;gt;v^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+\frac{1}{2}}&amp;lt;/math&amp;gt; utilizando o método de Lax-Friedrichs, para posterior cálculo de &amp;lt;math&amp;gt;v^{n+1}&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;w^{n+1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
Agora, no tempo n+1:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \Big(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} =  w_{j}^{n} + \frac{\Delta t}{\Delta x} \Big(v_{j+\frac{1}{2}}^{n+\frac{1}{2}} - v_{j-\frac{1}{2}}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Agrupando as equações,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada em u:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[   \frac{ u_{j+2}^{n-1}}{2} - \frac{u_{j-2}^{n-1}}{2} + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
== Análise de erros ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{\Delta t}{\Delta x}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
Nesse caso, a solução é &amp;lt;math&amp;gt;\cos{\Big(\frac{\pi t}{L}\Big)}\sin{\Big(\frac{\pi x}{L}\Big)}&amp;lt;/math&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
Aqui variamos o valor de &amp;lt;math&amp;gt;\Delta t&amp;lt;/math&amp;gt;, fixando &amp;lt;math&amp;gt; \Delta x=1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Observamos que se determinarmos a reta que melhor se ajusta às curvas dos métodos de Leapfrog e Lax-Wendroff, ela tem inclinação aproximadamente 1, já que a inclinação dá a ordem do erro global (já que fizemos o cálculo do erro após muitos passos transcorridos), que é sempre uma ordem menor do que o erro local (erro de um passo).&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |frame|500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')[2] ]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|frame|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;3&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). '' Numerical Recipes: The Art of Scientific Computing '' (3rd ed.). New York: Cambridge University Press. ISBN 978-0-521-88068-8.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;4&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt; &amp;quot;Métodos Computacionais da Física C - Aula 2 - 2016/1&amp;quot; por ''Heitor C. M. Fernandes, Instituto de Física, UFRGS''; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=777</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=777"/>
		<updated>2017-10-24T03:25:11Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Método de Lax-Wendroff de Dois Passos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Para testarmos os diferentes métodos, utilizaremos a equação da onda em uma dimensão, que é uma equação diferencial parcial de segunda ordem, para modelarmos uma corda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
em que &amp;lt;math&amp;gt; u(x, t) &amp;lt;/math&amp;gt; é o deslocamento vertical da corda e &amp;lt;math&amp;gt; 0&amp;lt;x&amp;lt;L &amp;lt;/math&amp;gt;, com &amp;lt;math&amp;gt; L &amp;lt;/math&amp;gt; o comprimento da corda.&lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
\frac{\partial v}{\partial t}=\frac{\partial w}{\partial x} &lt;br /&gt;
\\&lt;br /&gt;
\\&lt;br /&gt;
\frac{\partial v}{\partial x}=\frac{\partial w}{\partial t}  \\&lt;br /&gt;
\end{array}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As condições de contorno são &amp;lt;math&amp;gt; u(0, t) = u(L, t) = 0 &amp;lt;/math&amp;gt; (pontas fixas), e as condições iniciais são &amp;lt;math&amp;gt; u(x,0) = \sin{\frac{\pi x}{L}} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; \frac{\partial u}{\partial t}(x, 0) = 0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em discretizar as equações no esquema FTCS, ou seja:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = v_j^n + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Entretanto, para tornarmos o método estável, é necessário trocarmos o termo &amp;lt;math&amp;gt; v_j^n &amp;lt;/math&amp;gt; por sua média espacial:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aqui agora vamos unir todas as  equações para que no programa possamos iterar apenas uma equação ao invés de 3.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{(\Delta t)^2}{4(\Delta x)^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Leapfrog===&lt;br /&gt;
Para v temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{ v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}}{\Delta t} = \frac{ w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n} }{\Delta x}   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} (w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} ) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para w temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{ v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}}{\Delta x} = \frac{ w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} }{\Delta t}   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \Big(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para u temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \Big|_{j}^{n+\frac{1}{2}} = \frac{ u_{j}^{n+\frac{1}{2}} - u_j^n}{\Delta t}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+\frac{1}{2}} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Juntando todas elas temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para w resulta em:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Agora encontraremos a equação para v:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \Big(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sendo que: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para v resulta em:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
E finalmente temos a equação unificada das outras em u:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{2(\Delta x)^2}\Bigg[   \Big(\frac{ u_{j+2}^{n-1} - u_{j}^{n-1}}{2} \Big) - \Big(\frac{u_{j}^{n-1} - u_{j-1}^{n-1}}{2} \Big) + u_{j+1}^{n} - u_{j+1}^{n-1} - 2u_{j}^{n} + 2u_{j}^{n-1} + u_{j-1}^{n} - u_{j-1}^{n-1}\Bigg]  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Análise de erros e estabilidade ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{dt}{dx}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
 &lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
*GRAFICO DAS ENERGIA X T*&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=764</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=764"/>
		<updated>2017-10-24T02:56:31Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Método de Lax-Wendroff de Dois Passos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Nos métodos a seguir faremos a seguinte separação na equação da onda, que é uma equação diferencial parcial de segunda ordem:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Uma vez que os métodos citados abaixo são para equações de primeira ordem, é necessário separarmos a equação em um sistema de equações, fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
\frac{\partial v}{\partial t}=\frac{\partial w}{\partial x} &lt;br /&gt;
\\&lt;br /&gt;
\\&lt;br /&gt;
\frac{\partial v}{\partial x}=\frac{\partial w}{\partial t}  \\&lt;br /&gt;
\end{array}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs===&lt;br /&gt;
&lt;br /&gt;
Esse método consiste em discretizar as equações no esquema FTCS, ou seja:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aqui agora vamos unir todas as  equações para que no programa possamos iterar apenas uma equação ao invés de 3.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{\Delta t ^2}{4\Delta x ^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Leap-Frog===&lt;br /&gt;
Para v temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{ v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}}{\Delta t} = \frac{ w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n} }{\Delta x}   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} (w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} ) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para w temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{ v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}}{\Delta x} = \frac{ w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} }{\Delta t}   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \Big(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para u temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \Big|_{j}^{n+\frac{1}{2}} = \frac{ u_{j}^{n+\frac{1}{2}} - u_j^n}{\Delta t}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+\frac{1}{2}} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Juntando todas elas temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para w resulta em:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(v_{j+1}^{n} -  v_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (w_{j+1}^{n} - 2 w_{j}^{n} + w_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Agora encontraremos a equação para v:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} =  v_{j}^{n} + \frac{\Delta t}{\Delta x} \Big(w_{j+\frac{1}{2}}^{n+\frac{1}{2}} - w_{j-\frac{1}{2}}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sendo que: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j+1}^{n} +  w_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j+1}^{n} -  v_{j}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  w_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( w_{j}^{n} +  w_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (v_{j}^{n} -  v_{j-1}^{n})  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para v resulta em:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+1} = v_j^n + \frac{\Delta t}{\Delta x} \Bigg[\frac{1}{2}(w_{j+1}^{n} -  w_{j-1}^{n}) + \frac{\Delta t}{2\Delta x} (v_{j+1}^{n} - 2 v_{j}^{n} + v_{j-1}^{n})\Bigg] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Análise de erros e estabilidade ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;k = \frac{dt}{dx}&amp;lt;/math&amp;gt;. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
 &lt;br /&gt;
[[Arquivo:erro_dt.jpeg|frame|400px|center|Comparação do erro global entre os três métodos estudados]]&lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
*GRAFICO DAS ENERGIA X T*&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = \Big( \frac{\partial}{\partial x} H(x,y,t) \frac{\partial u}{\partial x}\Big) + \Big( \frac{\partial}{\partial y} H(x,y,t) \frac{\partial u}{\partial y}\Big) - \frac{\partial^2 H}{\partial t^2} &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem visando uma análise em 2D, a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependência em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
Estendendo o algoritmo do Leap-Frog à situação 2D, obtemos, para uma dada condição inicial e &amp;lt;math&amp;gt;H(x,y,t) = C&amp;lt;/math&amp;gt;, onde &amp;lt;math&amp;gt;C&amp;lt;/math&amp;gt; é uma constante:&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview.gif |frame|500px|center|Simulação em 2D de ondas em águas com profundidade constante, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondanormal.gif|frame|500px|center|Simulação em 2D de onda em águas com profundidade constante, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos então, analisar como a mesma condição inicial se porta quando &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; descreve uma gaussiana na origem:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_ondaview_hsino.gif |frame|500px|center|Simulação em 2D de ondas em águas com gaussiana na origem, visão de cima]]&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_onda_hsino.gif|frame|500px|center|Simulação em 2D de onda em águas com gaussiana na origem, visão em ângulo]]&lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=741</id>
		<title>Grupo2 - Ondas1</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Grupo2_-_Ondas1&amp;diff=741"/>
		<updated>2017-10-24T02:23:20Z</updated>

		<summary type="html">&lt;p&gt;Rodrigolss: /* Leap-Frog */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introdução==&lt;br /&gt;
&lt;br /&gt;
A modelagem numérica vem se tornando cada vez mais uma ferramenta indispensável para um engenheiro. Tal modelagem pode trazer informações importantes para entender como melhor abordar o desenvolvimento de um projeto, neste caso, um que envolva ondas. Nós, como futuros engenheiros físicos, pensamos em trazer um problema mais &amp;quot;concreto&amp;quot;, de engenharia costeira e portuária, que pode ou não surgir em nossas vidas profissionais mas cujo método de solução certamente estará presente. &lt;br /&gt;
Aqui será apresentado um modelo baseado em uma condição inicial e um perfil topográfico do local estudado que descreve a evolução temporal de uma onda.&lt;br /&gt;
&lt;br /&gt;
Nos métodos a seguir faremos a seguinte separação na equação da onda, que é uma equação diferencial parcial de segunda ordem:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 u}{\partial t^2}  = c^2 \frac{\partial^{2} u}{\partial x^{2}} &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Admitindo &amp;lt;math&amp;gt;c=1&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial}{\partial t} \Big( \frac{\partial u}{\partial t} \Big)  =  \frac{\partial}{\partial x} \Big( \frac{\partial u}{\partial x} \Big)  &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Fazendo a substituição &amp;lt;math&amp;gt; v=\frac{\partial u}{\partial t} &amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt; w= \frac{\partial u}{\partial x} &amp;lt;/math&amp;gt;, podemos separar a equação em um sistema de equações de primeira ordem:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\left\{&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
\frac{\partial v}{\partial t}=\frac{\partial w}{\partial x} &lt;br /&gt;
\\&lt;br /&gt;
\\&lt;br /&gt;
\frac{\partial v}{\partial x}=\frac{\partial w}{\partial t}  \\&lt;br /&gt;
\end{array}\right.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algoritmos==&lt;br /&gt;
&lt;br /&gt;
Apresentaremos aqui três abordagens diferentes para a solução da equação diferencial parcial apresentada, e após, seus respectivos erros associados.&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Friedrichs===&lt;br /&gt;
&lt;br /&gt;
Temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+1} = \Big( \frac{ v_{j-1}^{n} + v_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(w_{j+1}^{n} - w_{j-1}^{n}) &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = \Big( \frac{ w_{j-1}^{n} + w_{j+1}^{n}}{2} \Big) + \frac{\Delta t}{2\Delta x}(v_{j+1}^{n} - v_{j-1}^{n}) &amp;lt;/math&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + v_{j}^{n}\Delta t &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aqui agora vamos unir todas as  equações para que no programa possamos iterar apenas uma equação ao invés de 3.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+1} = u_{j}^{n} + \Big( \frac{u_{j-1}^{n} + u_{j+1}^{n}}{2} \Big) - \Big( \frac{u_{j-1}^{n-1} + u_{j+1}^{n-1}}{2} \Big) + \frac{\Delta t ^2}{4\Delta x ^2} \Big( u_{j-2}^{n-1} -2u_{j}^{n-1} + u_{j+2}^{n-1}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Leap-Frog===&lt;br /&gt;
Para v temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{ v_{j}^{n+\frac{1}{2}} -  v_{j}^{n-\frac{1}{2}}}{\Delta t} = \frac{ w_{j+\frac{1}{2}}^{n} -  w_{j-\frac{1}{2}}^{n} }{\Delta x}   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j}^{n+\frac{1}{2}} =  v_{j}^{n-\frac{1}{2}} + \frac{\Delta t}{\Delta x} (w_{j+\frac{1}{2}}^{n} - w_{j-\frac{1}{2}}^{n} ) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para w temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  \frac{ v_{j+1}^{n+\frac{1}{2}} -  v_{j}^{n+\frac{1}{2}}}{\Delta x} = \frac{ w_{j+\frac{1}{2}}^{n+1} -  w_{j+\frac{1}{2}}^{n} }{\Delta t}   &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j+\frac{1}{2}}^{n+1} =  w_{j+\frac{1}{2}}^{n} + \frac{\Delta t}{\Delta x} \Big(v_{j+1}^{n+\frac{1}{2}} - v_{j}^{n+\frac{1}{2}}\Big) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para u temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  v_{j}^{n+\frac{1}{2}} = \frac{\partial u}{\partial t} \Big|_{j}^{n+\frac{1}{2}} = \frac{ u_{j}^{n+\frac{1}{2}} - u_j^n}{\Delta t}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_{j}^{n+\frac{1}{2}} = u_j^n + v_{j}^{n+\frac{1}{2}} \Delta t&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Juntando todas elas temos:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;  u_{j}^{n+1} = 2u_{j}^{n} - u_{j}^{n-1} + \frac{(\Delta t)^2}{(\Delta x)^2}(u_{j+1}^{n} - 2u_{j}^{n} + u_{j-1}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Método de Lax-Wendroff de Dois Passos===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j+\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j+1}^{n} +  v_{j}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j+1}^{n} -  w_{j}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; v_{j-\frac{1}{2}}^{n+\frac{1}{2}} = \frac{1}{2}( v_{j}^{n} +  v_{j-1}^{n} ) + \frac{\Delta t }{2\Delta x} (w_{j}^{n} -  w_{j-1}^{n}) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Juntando para w:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; w_{j}^{n+1} = w_j^n + \frac{\Delta t}{2\Delta x}  &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Análise de erros e estabilidade ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A análise de erros se torna mais evidente durante a escolha do parâmetro k, onde k = dt/dx. Valores grandes trazem pouca acurácia, e valores pequenos necessitam de muito poder de computação (tempo e dinheiro). Trazemos problemas mais simplificados como um &amp;quot;guia&amp;quot; de escolha do parâmetro.&lt;br /&gt;
&lt;br /&gt;
A partir do cálulo da solução analítica da equação da onda, podemos calcular quanto o valor obtido pelos métodos difere da solução real, o que leva a uma visualização do erro corrente em cada método de integração.&lt;br /&gt;
 &lt;br /&gt;
*GRAFICO ERROS X K*&lt;br /&gt;
&lt;br /&gt;
Podemos observar a ordem com que os erros crescem à medida que o parâmetro k se torna maior. Lembrando que os valores da constante são determinados pela discretização do espaço e do tempo.&lt;br /&gt;
&lt;br /&gt;
*GRAFICO DAS ENERGIA X T*&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Simulação de Propagação de Onda 2D Dependente de Topografia ==&lt;br /&gt;
&lt;br /&gt;
O modelo mais simples parte da equação da onda [1], acrescentando o termo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*EQUAÇÃO*,&lt;br /&gt;
&lt;br /&gt;
Sendo &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; uma representação da profundidade em águas calmas. Em uma situação real, pode-se obtê-la por mapeamento eletrônico do terreno por sistema de sonar.&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem1.png |500px|center| Exemplo de mapeamento de terreno sub - calota polar feito por AUV (''autonomous underwater vehicle'')]]&lt;br /&gt;
&lt;br /&gt;
Como primeira abordagem , a integração da equação em 1D (mesmo sendo uma situação muito idealizada) já traz resultados interessantes. Podemos observar, por exemplo, que a amplitude da onda cresce perto da costa. Esta informação por si só ajuda na construção de proteção contra quebra de ondas, pois é obtido o tamanho que as mesmas atingem. &lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Grupo2_ondas1_imagem2.gif ‎|500px|center| Simulação em 1D de ondas perto da margem ]]&lt;br /&gt;
&lt;br /&gt;
É importante notar o quão poderosa é a integração de equações parciais na vida de um engenheiro.&lt;br /&gt;
&lt;br /&gt;
A dependencia em &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; de &amp;lt;math&amp;gt;H(x,y,t)&amp;lt;/math&amp;gt; permite um modelo no qual o terreno se modifica com o tempo. Isto é, pode-se observar o efeito que o deslocamento de placas tectônicas, deslizamentos, e até explosões provocam no comportamento das ondas na costa de um país e o reconhecimento de áreas críticas. &lt;br /&gt;
&lt;br /&gt;
==Bibliografia==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;1&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;The Wave Equation in 1D and 2D,&amp;quot; por ''Knut–Andreas Lie, Dept. of Informatics, University of Oslo''; disponível em: [http://www.uio.no/studier/emner/matnat/ifi/INF2340/v05/foiler/sim04.pdf]; Último acesso em 23/10/2017.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;&amp;lt;small&amp;gt;2&amp;lt;/small&amp;gt;&amp;lt;/sup&amp;gt;&amp;quot;Digital terrain mapping of the underside of sea ice from a small AUV,&amp;quot; por ''Wadhams,&lt;br /&gt;
M. J. Doble''; disponível em: DOI: 10.1029/2007GL031921 ; Último acesso em 23/10/2017.&lt;/div&gt;</summary>
		<author><name>Rodrigolss</name></author>
	</entry>
</feed>