<?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=Thierrefc</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=Thierrefc"/>
	<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Especial:Contribui%C3%A7%C3%B5es/Thierrefc"/>
	<updated>2026-06-13T01:11:32Z</updated>
	<subtitle>Contribuições do usuário</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4198</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4198"/>
		<updated>2021-04-11T14:56:54Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
As eq.(3) e (4) são termos da eq.(1), onde foram feitas algumas aproximações, produzido pelo livro do J.A Bittencourt &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se os elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétrons e íons são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4197</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4197"/>
		<updated>2021-04-11T14:53:04Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
As eq.(3) e (4) são termos da eq.(1), onde foram feitas algumas aproximações, produzido pelo livro do J.A Bittencourt &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se os elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4196</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4196"/>
		<updated>2021-04-11T14:52:12Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
As eq.(3) e (4) são termos da eq.(1), onde foram feitas algumas aproximações, produzido pelo livro do J.A Bittencourt &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4195</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4195"/>
		<updated>2021-04-11T14:43:01Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Algumas aproximações da eq.(1), produzido pelo livro do J.A Bittencourt &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4194</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4194"/>
		<updated>2021-04-11T14:41:03Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Algumas aproximações da eq.(1),produzido pelo livro do J.A Bittencourt &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4193</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4193"/>
		<updated>2021-04-11T14:37:18Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Aproximações feitas pelo livro do &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4192</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4192"/>
		<updated>2021-04-11T14:33:46Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4191</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4191"/>
		<updated>2021-04-11T04:44:52Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel Azevedo,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
Email: l.massultra@gmail.com  , rafael.abel@ufrgs.br  e thierre.francisco@ufrgs.br&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4190</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4190"/>
		<updated>2021-04-11T04:41:13Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
&lt;br /&gt;
Email: l.massultra@gmail.com  , rafael.abel@ufrgs.br  e thierre.francisco@ufrgs.br&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4189</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4189"/>
		<updated>2021-04-11T04:40:40Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Grupo: Gabriel,Rafael Abel e Thierre F. Conceição.&lt;br /&gt;
Email: l.massultra@gmail.com  , rafael.abel@ufrgs.br  e thierre.francisco@ufrgs.br&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4188</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4188"/>
		<updated>2021-04-11T04:21:19Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4187</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4187"/>
		<updated>2021-04-11T04:19:50Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Observamos um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4186</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4186"/>
		<updated>2021-04-11T04:15:22Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatório.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. &lt;br /&gt;
&lt;br /&gt;
Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade e com frequências altas a densidade é uniforme.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4185</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4185"/>
		<updated>2021-04-11T04:09:14Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 7 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (8) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 7 e 8, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatória, como consta na eq.(1).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4184</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4184"/>
		<updated>2021-04-11T04:05:30Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (6) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 6, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (7) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatória, como consta na eq.(1).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4183</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4183"/>
		<updated>2021-04-11T04:01:23Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que as colisões dos elétrons-íons nas partículas neutras é pequeno, assim, a difusão tem um caráter oscilatória, como consta na eq.(1).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece está relacionado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4182</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4182"/>
		<updated>2021-04-11T03:53:30Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequências de colisão dos íons e elétrons nas patículas neutras, chamada frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4181</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4181"/>
		<updated>2021-04-11T03:37:40Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (3)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (4)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Comparando as eq.(3) e (4),obtemos: &amp;lt;math&amp;gt;\tau = 1/\nu_a&amp;lt;/math&amp;gt;. Observe que se &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, isto é, se o elétrons ou íons tem muitas colisões com partículas neutras durante o tempo característico para difusão &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;. Então o último termo na eq. (1) pode ser negligenciado. Como consequência durante todo tempo a concentração de elétron e íon são iguais: &amp;lt;math&amp;gt;n_e = n_i = n&amp;lt;/math&amp;gt;, assim, a eq.(1) se reduz a seguinte equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (5)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4180</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4180"/>
		<updated>2021-04-11T01:34:51Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Onde &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt; representa, respectivamente, um tempo característico no qual &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; varia significativamente.&lt;br /&gt;
&lt;br /&gt;
Usando a eq.() e (), obtemos&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4179</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4179"/>
		<updated>2021-04-11T01:34:29Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Aproximações */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
Podemos obter algumas estimativas aproximadas da eq.(1):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial n(\vec r,t)}{\partial t} \approx	 \frac{n(\vec r,t)}{\tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Onde &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt; representa, respectivamente, um tempo característico no qual &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; varia significativamente.&lt;br /&gt;
&lt;br /&gt;
Usando a eq.() e (), obtemos&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4178</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4178"/>
		<updated>2021-04-11T01:23:17Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== Aproximações ==&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4177</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4177"/>
		<updated>2021-04-11T00:02:50Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-nêutron é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4176</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4176"/>
		<updated>2021-04-10T23:42:31Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4175</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4175"/>
		<updated>2021-04-10T23:32:27Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade. Onde aparentemente está ligado a associação entre os elétrons e íons(partículas ligadas por uma mola).&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4174</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4174"/>
		<updated>2021-04-10T23:28:08Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =0.5 , 0.1 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Fixamos um valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento oscilatório. O que já é esperado, já que os elétrons/íons estão oscilando enquando se difundem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nesse segundo caso usamos condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4173</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4173"/>
		<updated>2021-04-10T23:01:04Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Resultados e Discussão */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; =10 e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; = 0.05 e 0.5&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Nos dois primeiros gráficos fixamos um valor de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt;, e variamos o valor de &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;.&lt;br /&gt;
Como é possível observar os gráficos acima tem um comportamento de acordo  com a eq.(3). O que já é esperado. Sabendo que por conta da frequência de colisão ser alta, o termo que carrega &amp;lt;math&amp;gt;u^2&amp;lt;/math&amp;gt; da eq.(1), pode ser ignorado.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4172</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4172"/>
		<updated>2021-04-10T22:18:27Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Programas Utilizados */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4171</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4171"/>
		<updated>2021-04-10T21:54:10Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.[https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4170</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4170"/>
		<updated>2021-04-10T21:51:59Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos obter uma estimativa aproximada da eq.(1), onde:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{1}{\nu_a} \frac{\partial^2 n(\vec r,t)}{\partial t^2} \approx	 \frac{n(\vec r,t)}{\nu_a \tau^2} \qquad (2)&amp;lt;/math&amp;gt; &amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a \tau&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (4)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4169</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4169"/>
		<updated>2021-04-10T21:03:51Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4168</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4168"/>
		<updated>2021-04-10T21:01:20Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4167</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4167"/>
		<updated>2021-04-10T21:00:42Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name=Simony+Cahn64&amp;gt; Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name= Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;gt; &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4166</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4166"/>
		<updated>2021-04-10T20:59:45Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name= Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;gt; &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4165</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4165"/>
		<updated>2021-04-10T20:56:23Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name= Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;gt; &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4164</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4164"/>
		<updated>2021-04-10T20:53:58Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ref name= Fundamentals of plama physics/J.A Bittencourt - 3rd ed. &amp;gt; &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4163</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4163"/>
		<updated>2021-04-10T20:47:20Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. [https://vixra.org/pdf/1601.0341v1.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4162</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4162"/>
		<updated>2021-04-10T20:45:14Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] [http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. &amp;lt;ref name=esquema&amp;gt;  https://vixra.org/pdf/1601.0341v1.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4161</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4161"/>
		<updated>2021-04-10T20:42:45Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
[[https://vixra.org/pdf/1601.0341v1.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. &amp;lt;ref name=esquema&amp;gt;  https://vixra.org/pdf/1601.0341v1.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4160</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4160"/>
		<updated>2021-04-10T20:35:36Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;. &amp;lt;ref name=esquema&amp;gt;  https://vixra.org/pdf/1601.0341v1.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4159</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4159"/>
		<updated>2021-04-10T19:51:18Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* O Método */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fizemos trocas de variáveis, para a melhor adaptação do método descrito no artigo. Assim chamamos, &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4158</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4158"/>
		<updated>2021-04-10T19:43:50Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média dos&lt;br /&gt;
números de colisões elétron-íons é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4157</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4157"/>
		<updated>2021-04-10T19:42:46Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média de&lt;br /&gt;
números de colisões elétron-neutras é grande durante o intervalo de tempo T,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4156</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4156"/>
		<updated>2021-04-10T19:40:09Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
Por inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta sequência de movimentos se repete periodicamente, resultando em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média de&lt;br /&gt;
números de colisões elétron-neutras é grande durante o intervalo de tempo t,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4155</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4155"/>
		<updated>2021-04-10T19:38:30Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
No entanto, por causa de sua inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta&lt;br /&gt;
sequência de movimentos se repete periodicamente, resultando&lt;br /&gt;
em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média de&lt;br /&gt;
números de colisões elétron-neutras é grande durante o intervalo de tempo t,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4154</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4154"/>
		<updated>2021-04-10T19:36:27Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio.Assim. ocorrendo uma expansão livre do plasma, os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio.&lt;br /&gt;
No entanto, por causa de sua inércia, os elétrons se movem além da posição de equilíbrio, e um campo elétrico é produzido na direção oposta. Esta&lt;br /&gt;
sequência de movimentos se repete periodicamente, com uma transformação contínua da energia cinética em energia potencial, e vice-versa, resultando&lt;br /&gt;
em rápidas oscilações coletivas dos elétrons sobre os íons. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&amp;lt;ref name=esquema&amp;gt; https://www.scielo.br/scielo.php?script=sci_arttext&amp;amp;pid=S1806-11172001000200011 &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar, que é calculado através de uma media dos coeficientes de difusão dos elétrons e íons.&lt;br /&gt;
&lt;br /&gt;
Observe que quando, &amp;lt;math&amp;gt;\nu_a D_a&amp;lt;/math&amp;gt; &amp;gt;&amp;gt; 1, ou seja, se a média de&lt;br /&gt;
números de colisões elétron-neutras é grande durante o intervalo de tempo t,&lt;br /&gt;
então, a equação (1) se reduz  a equação de difusão:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;D_a\nabla^2 n(\vec r,t) = \frac{\partial n(\vec r,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (3)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4153</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4153"/>
		<updated>2021-04-10T19:00:14Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da.jpeg|500 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio. Os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Da1.jpeg|450 px]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4152</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4152"/>
		<updated>2021-04-10T18:53:35Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
[[Arquivo:Da.jpeg]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio. Os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Arquivo:Da1.jpeg]] &amp;lt;ref name=esquema&amp;gt; http://www.das.inpe.br/~alex/Ensino/cursos/proc_radI/aula_PR1_plasmas.pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:Da1.jpeg&amp;diff=4151</id>
		<title>Arquivo:Da1.jpeg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:Da1.jpeg&amp;diff=4151"/>
		<updated>2021-04-10T18:44:45Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:Da.jpeg&amp;diff=4150</id>
		<title>Arquivo:Da.jpeg</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Arquivo:Da.jpeg&amp;diff=4150"/>
		<updated>2021-04-10T18:43:06Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4149</id>
		<title>Difusão ambipolar em plasmas</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=Difus%C3%A3o_ambipolar_em_plasmas&amp;diff=4149"/>
		<updated>2021-04-10T18:35:34Z</updated>

		<summary type="html">&lt;p&gt;Thierrefc: /* Equação da difusão ambipolar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Equação da difusão ambipolar ==&lt;br /&gt;
&lt;br /&gt;
Esse trabalho tem como objetivo demonstrar uma resolução numérica para o caso unidimensional da difusão ambipolar de um plasma(gás formado de elétrons e íons). A difusão é o modo como um fluido se dilui em um meio. Estudar as equações que governam esse fenômeno e as formas de resolvê-las é de extremo interesse para a física de fluidos e de plasmas, entre outras áreas.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Arquivo: Difusao_ambipolar.png|200 px]] &amp;lt;ref name=esquema&amp;gt; http://www.enigmatic-consulting.com/semiconductor_processing/CVD_Fundamentals/plasmas/ambipolar_diffusion.html &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Quando a partição é removida ha uma pertubação instantanea na condição de equilibrio. Os elétrons por ser mais leve difundem-se mais rápido que os íons devido a sua menor massa.&lt;br /&gt;
&lt;br /&gt;
Essa separação de cargas gera um campo elétrico de polarização que aumenta a taxa de difusão dos íons e diminui a dos elétrons até que ocorra um equilíbrio. &lt;br /&gt;
&lt;br /&gt;
Esses movimentos coletivos são caracterizados por uma frequência natural de oscilação(Oscilações de Langmuir).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
IMAGEM (2):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como mostrado por Shimony e Cahn&amp;lt;ref name=Simony+Cahn64&amp;gt; Z. Shimony and J. H. Cahn, &amp;quot;Time-dependent ambipolar diffusion waves&amp;quot;, The Physics of Fluids 8, 1704 (1965) &amp;lt;/ref&amp;gt;, esse problema é descrito por uma equação de onda amortecida para a função de densidade &amp;lt;math&amp;gt;n(\vec r, t)&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla^2 n(\vec r,t) = \frac{1}{u^2} \frac{\partial^2 n(\vec r,t)}{\partial t^2} + \alpha \frac{\partial n(\vec r,t)}{\partial t} \qquad (1)&amp;lt;/math&amp;gt; , &lt;br /&gt;
&lt;br /&gt;
onde &amp;lt;math&amp;gt;u^2 = \nu_a D_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\alpha = 1/D_a&amp;lt;/math&amp;gt;, sendo &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; a frequência de colisão ambipolar e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; o coeficiente de difusão ambipolar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como tratamos do caso unidimensional, a equação 1 torna-se&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\frac{\partial^2 n(x,t)}{\partial x^2} = \frac{1}{u^2} \frac{\partial^2 n(x,t)}{\partial t^2} + \alpha \frac{\partial n(x,t)}{\partial t} \qquad (2)&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
== O Método ==&lt;br /&gt;
&lt;br /&gt;
A resolução numérica do problema foi baseada no artigo de Najafi e Izadi &amp;lt;ref name=Najafi+Izadi16&amp;gt; H. Najafi and F. Izadi, &amp;quot;Comparison of two finite-difference methods for solving the&lt;br /&gt;
damped wave equation&amp;quot;, viXra, 2016 &amp;lt;/ref&amp;gt;. Começamos com a forma mais usual de escrever a equação da onda amortecida unidimencional&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n(x,t)}{\partial t^2} + 2h \frac{\partial n(x,t)}{\partial t} = c^2 \frac{\partial^2 n(x,t)}{\partial x^2} \qquad (3) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
No nosso caso &amp;lt;math&amp;gt;2h = \alpha u^2 = \nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;c^2 = u^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Discretizando as variáveis do problema, temos que&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_i = i\Delta x \qquad i = 0,1,2,...,I&amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;t_k = k\Delta t \qquad k = 0,1,2,...,K&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo as derivadas que aparecem na equação por diferenças finitas, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial t^2} |_i^k = \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^2 n}{\partial t^4}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial n}{\partial t} |_i^k = \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial^2 n}{\partial x^2} |_i^k = \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^2 n}{\partial x^4}|_i^k + O(\Delta x^4) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo essas relações na equação 3, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left[ \frac{n_i^{k+1} - 2n_i^k + n_i^{k-1}}{\Delta t^2} - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k + O(\Delta t^4)\right] + 2h\left[ \frac{n_i^{k+1} -n_i^{k-1}}{2\Delta t} - \frac{\Delta t^2}{6}\frac{\partial^3 n}{\partial t^3}|_i^k + O(\Delta t^4)\right] = c^2\left[ \frac{n_{i+1}^k - 2n_i^k + n_{i-1}^k}{\Delta x^2} - \frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O(\Delta x^4)\right]  &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Omitindo todos os temos de ordem &amp;lt;math&amp;gt;O\{\Delta t^2,\Delta x^2\}&amp;lt;/math&amp;gt; e isolando &amp;lt;math&amp;gt;u_i^{k_1}&amp;lt;/math&amp;gt;, obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_i^{k+1} = \frac{1}{1 + h\Delta t}[2(1-s)n_i^k - (1 - h\Delta t)n_i^{k-1} + s(n_{i+1}^k + n_{i-1}^k)] \qquad (4) &amp;lt;/math&amp;gt; ,&lt;br /&gt;
&lt;br /&gt;
sendo &amp;lt;math&amp;gt; s = (c^2\Delta t^2/\Delta x^2) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Essa é a equação para resolver o problema para &amp;lt;math&amp;gt;k \geq 1&amp;lt;/math&amp;gt;, porém o problema envolve uma derivada de segunda ordem no tempo, o que faz com que precisemos saber os dois passos anteriores para calcular o próximo. Então necessitamos ainda de uma maneira de determinar &amp;lt;math&amp;gt;u_i^1&amp;lt;/math&amp;gt; a paritr de &amp;lt;math&amp;gt;u_i^0&amp;lt;/math&amp;gt;, para então calcular os demais passos. Para isso assumimos que a função é inicialmente estacionária e fazemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;n_t(x,0) = 0 \Rightarrow \frac{n_i^1 - n_i^{-1}}{\Delta t} = 0 \Rightarrow n_i^1 = n_i^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Substituindo na equação 4 para &amp;lt;math&amp;gt;k = 0&amp;lt;/math&amp;gt; obtemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; n_i^1 = \frac{1}{2}[2(1-s)n_i^0 + s(n_{i+1}^0 + n_{i-1}^0)] \qquad (5) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Com as equações 4 e 5, e tomando as devidas condições de contorno nas bordas (no caso desse trabalho usamos bordas fixas em 0 e também condições periódicas de contorno), podemos calcular a evolução temporal da função de densidade. Esse método é estável para &amp;lt;math&amp;gt;0 \leq s \leq 1&amp;lt;/math&amp;gt; e seu erro é&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E\{n_i^k\} = - \frac{\Delta t^2}{12}\frac{\partial^4 n}{\partial t^4}|_i^k - \frac{h\Delta t^2}{3}\frac{\partial^3 n}{\partial t^3}|_i^k + c^2\frac{\Delta x^2}{12}\frac{\partial^4 n}{\partial x^4}|_i^k + O\{\Delta t^4, \Delta x^4\} &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Resultados e Discussão==&lt;br /&gt;
&lt;br /&gt;
Aplicamos o método descrito acima para simular a evolução da densidade de um plasma se difundindo em um tubo de largura &amp;lt;math&amp;gt;L=10&amp;lt;/math&amp;gt;. Fizemos o plasma inicialmente concentrado na região central do tubo: &amp;lt;math&amp;gt;n(x,0)=1&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;L/4 \leq x \leq 3L/4&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;n(x,0)=0&amp;lt;/math&amp;gt; para &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; fora dessa região. Usamos &amp;lt;math&amp;gt;\Delta x = 0.1&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;\Delta t = 0.01&amp;lt;/math&amp;gt;, que resulta em &amp;lt;math&amp;gt;s = 0.01\nu_aD_a&amp;lt;/math&amp;gt;, e criamos gifs mostrando a evlução temporal da função de densidade para diferentes valores de &amp;lt;math&amp;gt;\nu_i&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;. Para garantir a estabilidade do método, essas constantes devem ser tais que &amp;lt;math&amp;gt; 0 \leq \nu_iD_a \leq (\Delta x / \Delta t)^2&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Quanto à solução nas bordas, fizemos de duas manerias: A primeira foi com condições de contorno fixas em 0 (&amp;lt;math&amp;gt;n(0,t) = n(L,t) = 0&amp;lt;/math&amp;gt;) e represenda o caso em que as bordas são um sumidouro, como se fosse um tubo aberto. A segunda foi usando condições de contorno periódicas (&amp;lt;math&amp;gt;n_{I+1}^k = n_0^k&amp;lt;/math&amp;gt;) e representa o caso de um tubo fechado.&lt;br /&gt;
 &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|Evolução temporal da densidade do plasma para diferentes valores de &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.05PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_10_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.5_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|[[Arquivo:difusao_ambipolar_0.1_0.5PBC.gif|thumb|upright=4|none|alt=Alt text|400px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Podemos observar que &amp;lt;math&amp;gt;D_a&amp;lt;/math&amp;gt; é o parâmetro que domina a velocidade com que que a densidade decai, o que é esperado, uma vez que um coeficiente de difusão maior faz o plasma se difundir mais rápido. Já &amp;lt;math&amp;gt;\nu_a&amp;lt;/math&amp;gt; parece estar ligado à &amp;quot;suavidade&amp;quot; da distribuição, sendo que com frequências baixas começam a aparecer diversos picos de densidade.&lt;br /&gt;
&lt;br /&gt;
== Programas Utilizados ==&lt;br /&gt;
&lt;br /&gt;
Para implementar o método computacionalmente e criar os gifs foram usados códigos em python. O código abaixo é a solução para as bordas fixas em 0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1): #isso fixa os contornos em 0&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O código para as condições de contorno periódicas é levemente diferente, exigindo o acrécimo de duas duas linhas dentro do terceiro loop. Vale notar que aqui não nos preocupamos com o contorno no cáculo de &amp;lt;math&amp;gt;n_i^1&amp;lt;/math&amp;gt; porque a função nos contornos é 0 nos primeiros passos, independente de adotarmos ou não contornos periódicos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=sh&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
import matplotlib.pyplot as plt&lt;br /&gt;
import imageio&lt;br /&gt;
&lt;br /&gt;
dt = 0.01&lt;br /&gt;
dx = 0.1&lt;br /&gt;
L = 10&lt;br /&gt;
T = 50&lt;br /&gt;
&lt;br /&gt;
#constantes do plasma&lt;br /&gt;
nu_a = 0.1&lt;br /&gt;
Da = 0.5&lt;br /&gt;
&lt;br /&gt;
#constantes para a eq da onda&lt;br /&gt;
c = np.sqrt(nu_a*Da)&lt;br /&gt;
h = nu_a/2&lt;br /&gt;
s = (c*dt/dx)**2&lt;br /&gt;
&lt;br /&gt;
x = np.linspace(0, L, int(L/dx)) #array com as coordenadas espaciais&lt;br /&gt;
t = np.linspace(0, T, int(T/dt)) #array com as coordenadas temporais&lt;br /&gt;
n = np.zeros((len(t), len(x)))   #matriz com a densidade n(x,t)&lt;br /&gt;
&lt;br /&gt;
#fazemos o plasma inicialmente concentrado em uma regiao&lt;br /&gt;
for i in range(int(len(x)/4),int(3*len(x)/4)):&lt;br /&gt;
    n[0,i] = 1&lt;br /&gt;
plt.plot(x,n[0]) #plota estado inicial da funcao&lt;br /&gt;
plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
plt.xlabel(&#039;L&#039;)&lt;br /&gt;
plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
plt.ylim([0,1.1])&lt;br /&gt;
plt.xlim([0,L])&lt;br /&gt;
plt.text(8,0.9,&#039;T = 0.0&#039;)&lt;br /&gt;
plt.savefig(&#039;n_0.png&#039;)&lt;br /&gt;
plt.clf()&lt;br /&gt;
&lt;br /&gt;
#calculamos o próximo passo considerando dn/dt = 0 inicialmente    &lt;br /&gt;
for i in range(1,len(x)-1):&lt;br /&gt;
    n[1,i] = 0.5*(2*(1-s)*n[0,i] + s*(n[0,i+1] + n[0,i-1]))&lt;br /&gt;
&lt;br /&gt;
#calculamos a posterior evolucao&lt;br /&gt;
for k in range(1, len(t)-1):&lt;br /&gt;
    for i in range(1,len(x)-1):&lt;br /&gt;
        n[k+1,i] = (1/(1+h*dt))*(2*(1-s)*n[k,i] - (1-h*dt)*n[k-1,i] + s*(n[k,i+1] + n[k,i-1]))&lt;br /&gt;
    #condicoes de contorno periodicas&lt;br /&gt;
    n[k+1,0] = (1/(1+h*dt))*(2*(1-s)*n[k,0] - (1-h*dt)*n[k-1,0] + s*(n[k,1] + n[k,-1]))&lt;br /&gt;
    n[k+1,-1] = (1/(1+h*dt))*(2*(1-s)*n[k,-1] - (1-h*dt)*n[k-1,-1] + s*(n[k,0] + n[k,-2]))&lt;br /&gt;
    if k*dt - int(k*dt) == 0: #plota figuras para valores inteiros de t&lt;br /&gt;
       plt.plot(x,n[k])&lt;br /&gt;
       plt.title(r&#039;$\nu_a=$&#039;+str(nu_a)+&#039;   $D_a=$&#039;+str(Da))&lt;br /&gt;
       plt.xlabel(&#039;L&#039;)&lt;br /&gt;
       plt.ylabel(&#039;n(x)&#039;)&lt;br /&gt;
       plt.xlim([0,L])&lt;br /&gt;
       plt.ylim([0,1.1])&lt;br /&gt;
       plt.text(8,0.9,&#039;T = &#039;+str(k*dt))&lt;br /&gt;
       plt.savefig(&#039;n_&#039;+str(int(k*dt))+&#039;.png&#039;)&lt;br /&gt;
       plt.clf()&lt;br /&gt;
    &lt;br /&gt;
#criamos gifs usando os plots&lt;br /&gt;
images = []&lt;br /&gt;
for k in range(T):&lt;br /&gt;
    images.append(imageio.imread(&#039;n_&#039;+str(k)+&#039;.png&#039;))&lt;br /&gt;
imageio.mimsave(&#039;difusao_ambipolar_&#039;+str(nu_a)+&#039;_&#039;+str(Da)+&#039;PBC.gif&#039;, images, format=&#039;GIF&#039;, duration=1./10)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Thierrefc</name></author>
	</entry>
</feed>