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 .
Resultados e Discussão
Na rede escolhendo e , podemos verificar se a desigualdade é respeitada.
A desigualdade é sim respeitada. Abaixo podemos ver a simulação das concentrações de e de .
Modelo Turing com e | |
---|---|
Quanto mais amarelo maior a densidade, assim como quanto mais roxo menor a densidade. Outra escolha de constantes é e . Verificando que a desigualdade é respeitada:
Novamente respeitamos a desigualdade. Na rede obtemos a seguinte simulação das concentrações de e de .
Modelo de Turing com e | |
---|---|
É 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 podemos rearranjar a desigualdade necessária para formar padrões da forma
Por exemplo, aplicando isso para um conjunto de constantes que simulamos chegaremos a
Isso significa que a difusão de deve ser quase cinco vezes maior que a difusão de para gerar os padrões. A difusão de age mais localmente enquanto a de age em áreas maiores. Uma transição de fase é observada perto de . 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