Modelo de Turing
EM CONSTRUÇÃO
Equações de Turing
Simulações computacionais que envolvem equações diferenciais parciais (EDP's) são usualmente modeladas através da discretização das variáveis espaciais e temporais. Algumas dessas equações descrevem comportamentos difusivos no sistema, sendo chamadas de equações de difusão. Tais equações envolvem variáveis de estado que apresentam variações temporal e espacial e coeficientes de difusão no sistema, além de outros parâmetros que influenciam na evolução dos estados. Dentro desse ramo de equações, encontra-se o Modelo de Turing, desenvolvido por Alan Turing, que utiliza como base a concentração de espécies em um sistema, avaliando sua reação, difusão e variação espacial e temporal. São muitas as aplicações do modelo, principalmente em ramos como biologia e química, envolvendo problemas com formação de padrões[1]. A seguir, descrevemos sua formulação matemática.
Sejam e as concentrações das espécies que serão analisadas. Sejam e parâmetros e e constantes. Os coeficientes de difusão são e , cada um associado a uma das concentrações[2]. O Modelo de Turing é dado pelas EDP's
Note que certa parte de cada equação depende apenas dos parâmetros e das concentrações. Podemos, portanto, utilizar funções de variáveis e para descrever o sistema[3], de modo que
Estabilidade e Instabilidade no Modelo de Turing
Pontos de Equilíbrio
Vimos que o modelo de Turing depende de parâmetros , de constantes e e dos coeficientes de difusão.
Afirmação: Se , temos ( como o único ponto de equilíbrio.
Demonstração: Mostraremos que é ponto de equilíbrio. De fato, ao aplicarmos esse ponto na equação do modelo de Turing, temos
para mostrar que é único, suponha que existem dois pontos de equilíbrio, a saber, e . Vemos que, como as equações diferenciais em cada ponto fixo são iguais a zero, temos
Consequentemente, devemos ter
.
Do mesmo modo, . Portanto, o ponto de equilíbrio é único nessas circunstâncias.
Estabilidade de Sistemas Reativos-Difusivos
Para estudarmos a estabilidade dos sistemas reativos-difusivos precisamos encontrar os autovalores da matriz[2]
Onde é a matriz jacobiana dos termos de reação, é a matriz diagonal dos termos de difusão e é o parâmetro que determina a frequência espacial das perturbações. A prova dessa afirmação pode ser encontrada nas referências. Aplicando isso ao modelo de Turing obtemos
Para esta matriz ser estável precisamos que o determinante dessa matriz seja positivo e o traço seja negativo. Obtemos então
Podemos ver que em ambas desigualdades aparecerá o Determinante e o Traço da matriz dos coeficientes de reação. Reescrevendo então obtemos
Se o sistema fosse originalmente estável, isto é, e a segunda desigualdade é sempre verdade, mas a primeira não. Podemos ver que a desigualdade pode ser violada se
tomar valores positivos para algum (Onde ). Podemos reescrever da forma
Vamos então analisar duas opções onde podemos ter : (1) o ponto mais alto da função fica no lado positivo do eixo ou (2) o ponto mais alto da função fica no no lado negativo do eixo . Na primeira opção (1) a única condição é que o máximo da função seja acima do eixo , logo teremos
Se o máximo da função estiver no lado negativo de , opção (2), a condição é que o ponto que interceptar deve ser positivo, podemos escrever isso da forma
Podemos ver que a opção (2) nunca pode ser obtida, pois o modelo é inicialmente estável e , assim a única opção para que a difusão desestabilize o sistema é quando
e com essa desigualdade é fácil checar quais valores dos parâmetros , , e e dos coeficientes de difusão e formarão padrões de Turing.
Implementação
Para resolver numericamente as equações de Turing iremos utilizar o método FTCS (Forward Time Central Space). O método FTCS é o mais simples e consiste em discretizar a derivada em de forma não simetrizada. Obtemos as seguintes discretizações para uma função genérica
Onde é o vetor posição, que neste trabalho utilizamos apenas duas dimensões, .
Podemos discretizar as equações de Turing diretamente com o método FTCS. Talvez o único problema seja o laplaciano, porém basta escrever da forma
Assim podemos utilizar a discretização simetrizada e obter
Ao tomarmos , que faremos aqui, podemos simplificar a discretização do laplaciano para
Então obtemos que as equações de Turing discretizadas pelo método FTCS, em notação discreta, são dadas por
Onde e são os índices espaciais e é o índice temporal.
Utilizamos uma rede quadrada de tamanho com condições de contorno periódicas. O sistema inicia próximo do equilibrio e então é aplicado um pequeno ruído para começar a difusão. O ruído é muito importante, sem ele o sistema ficaria sempre no equilíbrio. O ruído também deve ser pequeno suficiente para quebrar o estado inicial, mas não grande suficiente para causar instabilidades numéricas na simulação. O ruído utilizado aqui consiste em números aleatórios no intervalo . Tomamos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle dh = 1/L} .
Resultados e Discussão
Na rede Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle 100 \times 100} escolhendo Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle (a, b, c, d) = (1, -1, 2, -1.5)} e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle (D_u, D_v) = (10^{-4}, 6 \times 10^{-4})} , podemos verificar se a desigualdade é respeitada.
Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle a D_v + d D_u = 4.5 \times 10^{-4}}
Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle 2\sqrt{D_u D_v \text{det}(J)} \approx 3.464 \times 10^{-4}}
Assim a desigualdade é sim respeitada. Abaixo podemos ver a simulação das concentrações de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u}
e de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v}
.
Quanto mais amarelo maior a densidade, assim como quanto mais roxo menor a densidade. Outra simulação das concentrações de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u}
e de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v}
na rede Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle 100 \times 100}
com Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle (a, b, c, d) = (0.5, -1, 0.75, -1;)}
e Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle (D_u, D_v) = (10^{-4} , 10^{-3})}
, que também respeita a desigualdade necessária para formar os padrões.
É possível ver que o sistema rapidamente forma um padrão, onde existem algum aglomerados com maior densidade e diversos pontos onde existe baixa densidade. Diferentes conjuntos das constantes e dos coeficientes de difusão formam diferentes padrões.
Podemos estudar também a estudar a razão crítica dos coeficientes de difusão, onde o sistema passa a formar padrões. Definindo um novo parâmetro Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \rho = D_v/D_u} podemos rearranjar a desigualdade necessária para formar padrões da forma
Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle a \rho D_u + d D_v > 2 \sqrt{\rho D_u^2 \text{det}(J)}}
Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle a \rho + d > 2 \sqrt{\rho \text{det}(J)}}
Por exemplo, aplicando isso para um conjunto de constantes que simulamos Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle (a, b, c, d) = (1, -1, 2, -1.5)}
chegaremos a
Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \rho - 1.5 > 2 \sqrt{0.5 \rho}}
Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \rho > 4.5}
Isso significa que a difusão de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v}
deve ser cinco vezes maior que a difusão de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u}
para gerar os padrões. A difusão de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle u}
age mais localmente enquanto a de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle v}
age em áreas maiores. Uma transição de fase é observada perto de Falhou ao verificar gramática (MathML com retorno SVG ou PNG (recomendado para navegadores modernos e ferramentas de acessibilidade): Resposta inválida ("Math extension cannot connect to Restbase.") do servidor "https://wikimedia.org/api/rest_v1/":): {\displaystyle \rho = 4.5}
. Essa transição de fase entre homogenização e formação de padrões é chamada de Bifurcação de Turing [4].
Programas Utilizados
Programas na linguagem C. Para utilizar os programas, abra o terminal e compile da forma
$ gcc prog.c -lm
Onde prog.c é o programa que deseja utilizar. E execute da seguinte maneira
$ ./a.out PARAMETROS
onde o segundo termo são os parâmetros do sistema, argumento dos programas. Dentro dos programas tem um exemplo de execução. O programa da simulação possuei uma diretiva de compilação para visualização do sistema ao decorrer da execução. Para utilizar é necessário ter o gnuplot [5] instalado e compilar da forma
$ gcc -DGNU prog.c -lm
e então executar da maneira
$ ./a.out PARAMETROS | gnuplot
Referências
- ↑ https://en.wikipedia.org/wiki/Turing_pattern
- ↑ 2,0 2,1 H. Sayama, "Introduction to the Modeling and Analysis of Complex Systems", p. 260. Open SUNY Textbooks, Geneseo, NY, 2015. Erro de citação: Etiqueta inválida
<ref>; Nome "Sayama260" definido várias vezes com conteúdo diferente - ↑ J. Jost, "Partial Differential Equations", 3ed, p.140. Springer Science+Business Media, New York, 2013.
- ↑ A. M. Turing, “The chemical basis of morphogenesis,”Philosophical Transactions ofthe Royal Society of London. Series B, Biological Sciences, vol. 237, no. 641, pp.37–72, 1952
- ↑ https://fiscomp.if.ufrgs.br/index.php/Gnuplot