Escolar Documentos
Profissional Documentos
Cultura Documentos
CAMPUS DE ARAPIRACA
MATEMÁTICA - LICENCIATURA
ARAPIRACA
2019
Milena Barbosa Gama
Arapiraca
2019
À minha família.
AGRADECIMENTOS
"Tudo no seu tempo...", eis a frase que permaneceu em minha mente nestes últimos
anos de graduação, e é indescrítivel o sentimento que se tem ao se concluir mais uma etapa de
nossas vidas e, que também é indispensável o agradecimento por aqueles que foram nossa base e
apoio para enfrentar os momentos que se mostraram difíceis durante a trajetória, pois jamais eu
conseguiria enfrentar sozinha.
Agradeço a minha família que sempre permaneceu comigo, nos momentos em que
me abalei com o acúmulo de tarefas da universidade, nos momentos que vibrei de alegria, e
principalmente me estimulando a não só chegar até aqui, mas ir mais longe. Amo Vocês!
É claro que em nossas trajetórias, a união de uma turma muda o caminhar dela, para
coisas boas, é claro! Agradeço vocês, pelos momentos de acolhimento e preocupação, pelos
momentos de descontração nos laboratórios reunidos para falar sobre vídeos no youtube, sobre
aquele série favorita ou até mesmo os livros de Dan Brown. Obrigada a todos pela preocupação
que tiveram comigo e pela amizade.
Agradeço aos membros do PIBIC 18/19 e ao meu Orientador, Rinaldo, pelas discussões
e orientações que tivemos muitas vezes nas manhãs de quartas-feiras, que me incentivaram a
pesquisar e me mostraram cada um com sua particularidades as coisas lindas que a matemática
tem.
Não deixando de agradecer a todos os meus professores, aos meus amigos do ensino
médio e as pessoas que desde 2015 são luz em minha vida, nada teria sido igual se eu não tivesse
conhecido vocês, cada sábado que permaneci junto com vocês fez de mim uma pessoa melhor,
aquelas pessoas que me ensinaram a lidar com minha sensibilidade e de quem eu sou fã, agradeço
muito pela irmandade. Amo vocês!
RESUMO
At Ordinary Differential Equations have great importance in others knowledge areas, because
they model real situations. In this equations is possible comprehend, anticipate and reproduce
certain situations. In this work will be presented two mathematicians models with application
in biology, the first is the model with tumor growth saturation, or logistic model, possessing
analytical solution and the second is the model in competition, represented per one system of
Ordinary Differential Equations, this has no analytical solution. For the getting of solutions was
used the python computing environment for implementation. The work has the objective of inves-
tigate and analyze the efficiency of method of Runge-Kutta of 4a Order in Ordinary Differential
Equations. The work is of qualitative-quantitative nature, bibliographic and explanatory, aiming
unite the results obtained computationally with the theory.
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3 MÉTODOS NUMÉRICOS . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1 MÉTODO DE RUNGE-KUTTA DE 4a ORDEM . . . . . . . . . . . . . . . 14
3.2 ANÁLISE DE ESTABILIDADE DOS PONTOS DE EQUILÍBRIO . . . . . 15
7 CONCLUSÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9
1 INTRODUÇÃO
A matemática sempre foi peça chave de diversas outras áreas de conhecimento, como
na Engenharia, Biologia, Administração, e essa inserção em outras áreas acarretou o estudo
da linguagem de equações diferenciais ordinárias, apresentando-se como principal linguagem
na modelagem de situações reais. Alguns métodos fazem-se necessários nas soluções dessas
equações, como os métodos numéricos, Nadson (SOUSA et al., 2019) comenta que O uso
de métodos numéricos torna-se uma alternativa na busca de aproximações dessas soluções. E
segundo Cristina (CUNHA, 2003) A essência dos métodos numéricos está na discretização do
contínuo. É esta discretização que torna “finito” o problema e, portanto, viabiliza sua “solução”
através de computadores.
Ao obter uma solução aproximada da realidade a partir de uma equação diferencial
ordinária, se está modelando um fenômeno para uma linguagem matemática, a fim de simular e
prever o que acontece com determinado fenômeno, desta forma é a partir das soluções numéricas
que se pode investigar a aplicabilidade dos modelos propostos, com o intuito de buscar o método
que melhor se aproxima da realidade.
Esta pesquisa surgiu no Programa Institucional de Bolsas de Iniciação Científica (PIBIC),
com o intuito de investigar as soluções numéricas para Equações diferenciais. O texto divide-se
em cinco capítulos, no primeiro capítulo são descritos os principais conceitos de equações
diferenciais ordinárias e soluções analíticas de algumas equações. No segundo capítulo é descrito
o método utilizado na pesquisa, sendo este o de Runge-Kutta de 4a Ordem, assim como equilíbrio
e estabilidade de um sistema de EDO. O terceiro capítulo defini os conceitos biológicos e os mo-
delos que serão investigados. O quarto capítulo descreve a história da linguagem computacional
python e as bibliotecas utilizadas na interface do programa e o quinto capítulo a aplicação da
discretização dos modelos biológicos.
10
Neste capítulo veremos um breve histórico sobre equações diferenciais tendo como
referencial (BASSANEZI; JUNIOR, 1988) e algumas definições, exemplos de aplicações de
equações diferencias ordinárias e soluções analíticas utilizando as principais definições de uma
EDO, tendo embasamento nas demonstrações de (OLIVEIRA, 2007) e nos livros (ZILL, 2003),
(BOYCE; DIPRIMA, 1985), (MINHÓS, 2009).
ii) Existe um aberto contendo o ponto (a.b) e um raio ρ > 0 tais que para todo ponto (α, β)
neste aberto, existe uma e somente uma solução de
y 0 = F (x, y)
y(α) = β
iii) Dado um compacto K ⊂ Ω, existe um raio ρ > 0 tal que para todo ponto (α, β) neste
compacto, existe uma e somente uma solução de
y 0 = F (x, y)
y(α) = β
2.3 DEFINIÇÕES
Definição 2.1. Uma equação diferencial ordinária (EDO) é uma equação da forma:
envolvendo uma função icógnita y = y(x) e suas derivadas ou suas diferenciais, x é a variável
independente, y é a variável dependente e o símbolo y k denota a derivada de ordem k da função
y = y(x).
Observação 2.1. As Equações Diferenciais Ordinárias abrangem uma área muito vasta, podendo
ser analisada ou apresentada por diferentes conceitos, privilegiando esta ou aquela área específica
da Matemática, e atribuindo ao seu conteúdo uma abordagem de acordo com os objetivos
pretendidos para a especialização a atingir.
Exemplo 2.1. Podemos verificar que (x2 + y 2 )dx + (x2 − xy)dy = 0 é uma ED0 homogênea.
Pois, a seguinte propriedade é satisfeita
com n ∈ R.
Consideremos M (x, y) = x2 +y 2 e N (x, y) = x2 −xy, assim M (tx, ty) = t2 x2 +t2 y 2 =
t2 (x2 + y 2 ) e N (tx, ty) = t2 x2 − txty = t2 (x2 − xy). Como M e N são funções de mesmo
grau com n = 2, temos que a EDO é homogênea.
dy g(x)
Um equação diferencial da forma = , é chamada separável ou tem variáveis
dx h(y)
separáveis. Podemos reencrever da seguinte fora:
Z Z
h(y)dy = g(x)dx
Exemplo 2.2. Parece plausível esperar que a taxa de crescimento de uma população P seja
proporcional à população presente naquele instante. Grosso modo, quanto maior for a população
presente, maior ela será no futuro. Logo, o modelo para o crescimento populacional é dado pela
equação diferencial
dP
= kP
dt
em que K é uma constante de proporcionalidade e, como esperamos que a população cresça,
devemos ter dP/dt > 0, e assim k > 0. Considerando P (0) = P0 , temos a seguinte equação
dP 1
diferencial = kP , pelo método de separação de variáveis, dP = kdt, aplicando a integral
dt P
em ambos os lados,
Z Z
1
dP = kdt + c
P
ln|P | = kt + c
eln|P | = ekt+c
P (t) = ekt+c
P (t) = P0 ekt
em que aij são reais e xi são funções deriváveis. Podemos escrever o sistema na forma matricial:
x01 (t) a11 a12 ... a1n x1 (t)
0
x2 (t) a21 a22 ... a2n x2 (t)
... = ... ... (2.3)
... ...
...
0
xn (t) an1 an2 ... ann xn (t)
O sistema (1.3) pode ser escrito da seguinte forma:
X 0 (t) = AX(t)
3 MÉTODOS NUMÉRICOS
yn+1 = yn + h(inclinação)
onde a inclinação é obtida através do cálculo da inclinação em vários pontos no interior do
subintervalo. O número de pontos usados em um subintervalo determinará a ordem do método,
ou seja, o método de Runge-Kutta de 2a Ordem utiliza a inclinação em dois pontos, o método
de Runge-Kutta de 3a Ordem utiliza a inclinação em três pontos e o método de Runge-Kutta de
4a ordem utiliza a inclinação em quatro pontos, e assim por diante. Desta forma, temos que o
método de Runge-Kutta de ordem 4 é dado por:
yn+1 = yn + h(c1 k1 + c2 k2 + c3 k3 + c4 k4 )
em que
c1 + c2 + c3 + c4 = 1
k1 = f (xn , yn )
k2 = f (xn + ha2 , yn + h(b21 K1 ))
k3 = f (xn + ha3 , yn + h(b31 K1 + b32 k2 ))
k4 = f (xn + ha4 , yn + h(b41 K1 + b42 k2 + b43 k3 ))
a2 = b21
a3 = b31 + b32
a4 = b41 + b42 + b43
Para determinar os parâmetros c1 , c2 , c3 , c4 , a1 , a2 , a3 , a4 , b21 , b31 , b32 , b41 , b42 , b43 , pode-
mos desenvolver k2 , k3 e k4 por Taylor, em torno do ponto (xn , yn ) até ordem 4, de modo a
expressar o método na seguinte forma:
15
1 2 2 1
c1 = , c2 = , c3 = , c4 =
6 6 6 6
1 1
a2 = , b21 =
2 2
1 1
a3 = , b32 =
2 2
a4 = 1, b41 = 0, b42 = 0, b43 = 1
Um equilíbrio x é dito estável se para todo > 0, existe δ > 0 tal que, |x0 − x| < δ, a
solução, x(t, x0 ) obedece |x(t, x0 ) − x| < para todo t ≥ t0 , caso contrário, x é chamado de
instável.
x é assintoticamente estável se for estável e limx→∞ |x(t, x0 ) − x| = 0 se |x0 − x| < δ.
dy 0 dy dx
portanto = f 0 (x)y ⇒ y(t) = Aef (x)t como = = f (x) se fizermos x = y + x temos
dt 0
dt dt
que o equilíbrio de f (x + y) é também de f (x)y.
dy
= ay(K − y)
dt
os pontos de quilíbrio são y = 0 ou y = K ⇒ f (x) = ayK − ay 2 , onde a e K são positivos
logo temos que:
f 0 (y) = aK − 2ay = 0 e f 0 (0) = aK > 0 logo, y = 0 é um ponto instável e para
f 0 (K) = aK − 2aK = −aK < 0 assim, y = K é assintoticamente estável.
17
• Câncer: caracterizado por crescimento celular descontrolado, cuja causa está relacionada
ao genótipo do indivíduo e/ou ao meio.
• Tumor: aumento de volume dos tecidos que pode ou não ser provocado por uma prolifera-
ção neoplásica verdadeira.
• Tumor maligno: nesse tipo de tumor, as células mutantes se misturam com as células
normais. Este tipo constitui o câncer.
As células tumorais competem entre si por recursos vitais e oxigênio. E segundo (RODRI-
GUES, 2011) Verhulst e Lokta propuseram um modelo de dinâmica populacional que contempla
tal interação, dado por
dN N
= rN 1− (4.1)
dt K
N
em que K > 0 é a capacidade suporte da população tumoral e 1 − representa a competição
K
intraespecífica. A solução de (4.1) é dada por
K
N (t) = (4.2)
K
1+ − 1 e−rt
N0
em que limt→+∞ N (t) = K, indicando saturação de crescimento.
ii) Equilíbrio estável em que células transformadas coexistem com células normais.
1. Tumor coexiste com o tecido normal, o que corresponde ao crescimento não agressivo do
tumor que pode arbitrariamente ser classificado como benigno (se uma grande população
normal persistir) ou câncer “potencialmente maligno” (se somente uma pequena população
normal persistir).
N1 N2
Temos então que se N1 é pequeno e N2 próximo a k2 , então k1
≈0e k2
≈ 1, ficando as
equações da seguinte forma
dN1 α12
dt
= r1 N1 1 − k1
N2
(4.5)
dN2
= r2 N2 − αk21
dt 2
N1
dN1 dN2
A pequena população de células tumorais evoluirá somente se >0e 60
dt dt
para N1 pequeno e N2 próximo de k2 , o que significa que a população tumoral apresentará um
crescimento e a população normal diminuirá ou se manterá constante.
Para analisarmos a estabilidade do sistema, deve ser encontrado os pontos de equilíbrio
das equações. Pois, através destes pontos poderemos inferir o comportamento das células normais
e tumorais em diversas situações. Para encontrá-los, igualamos as equações a zero. Então,
dN1 N1 α12
= 0 =⇒ r1 N1 1 − − N2 =0
dt k1 k1
dN2 N2 α21
= 0 =⇒ r2 N2 1 − − N1 =0
dt k2 k2
As soluções são
• N1 = 0, N2 = 0
• N1 = 0, N2 = k2
• N1 = k1 , N2 = 0
−k2 + α21 k1
N2 =
−1 + α21 α12
•
−k1 + α12 k2
N1 =
−1 + α21 α12
−k2 + α21 k1 k2
N2 = = 0 =⇒ α21 k1 = k2 =⇒ k1 =
−1 + α21 α12 α21
e
−k1 + α21 k2 k1
N1 = = 0 =⇒ α12 k2 = k1 =⇒ k2 =
−1 + α21 α12 α12
20
K
N (t) = (6.2)
K
1+ − 1 e−rt
N0
Assim a solução para a EDO (6.1) é a função (6.2), que ao calcularmos o limite quando t
tender ao ∞, a função irá ficar bem próxima da sua capacidade suporte, ou seja se aproximará
do valor de K.
A implementação da equação (6.1) no python, foi realizada no sistema operacional
Windows 10 com o programa python 3.5 com a utilização das bibliotecas numpy para a plotagem
da solução numérica e matplotlib para a construção do gráfico. No modelo foram utilizados os
seguintes valores para as variáveis: o tempo (t) variando entre 0 e 1500 dias, a taxa intríseca (r)
de 0.01, o número inicial de células tumorais (N) de 4 ∗ 109 e a capacidade suporte (K) de 1012 .
É importante ressaltar que a EDO foi adequada ao Método de Runge-Kutta de 4a Ordem:
h
Ni+1 = Ni + (m1 + 2m2 + 2m3 + m4 ) (6.3)
6
e devido ao fato de estarmos implementando em um programa que trabalha com números
discretos, haverá um erro, ou seja uma diferença entre a solução real e a solução aproximada.
Inicialmente na interface do programa, importamos as bibliotecas necessárias e depois as
variáveis e seus respectivos valores.
import numpy as np
import matplotlib.pyplot as plt
r = 0.01
23
O arquivo de texto criado serve para plotagem de gráficos e para que fique armazenado
os valores da quantidade de células em cada tempo determinado, e o termo ’w’ é um tipo de
acesso, definido como escrita, apagando (truncando) o conteúdo existente no arquivo. A cada
modificação no código, o arquivo é apagado e gerado novamente com os novos dados (devido a
grande quantidade de números existentes neste arquivo texto, ficou inviável sua apresentação
neste trabalho).
Definidas as variáveis, utilizaremos a estrutura de repetição While, onde solicitamos que
enquanto t for menor que 1500, deve calcular o número de células, neste momento definimos N
como a função pelo método de RK 4a Ordem.
# Runge-Kutta 1a Ordem:
m1 = r * N * (1 - N / K)
# Runge-Kutta 2a Ordem:
ft2 = t + (h / 2)
fx2 = N + (h / 2) * m1
m2 = r * fx2 * (1 - fx2 / K)
# Runge-Kutta 3a Ordem:
ft3 = t + (h / 2)
fx3 = N + (h / 2) * m2
m3 = r * fx3 * (1 - fx3 / K)
# Runge-Kutta 4a Ordem:
ft4 = t + h
fx4 = N + h * m3
m4 = r * fx4 * (1 - fx4 / K)
t = t + h
N = N + (h / 6) * (m1 + 2 * m2 + 2 * m3 + m4)
Para ser realizada a plotagem do gráfico, devemos definir a legenda do mesmo, assim
24
como a legenda dos eixos x e y, utilizando plt.xlabel para a legenda do eixo x e plt.ylabel para
o eixo y. Realizado estes passos, para a plotagem deve ser digitado o comando plt.show(), o
comando plt.grid() é apenas para apresentar as grades no gráfico. E devemos finalizar o arquivo
de texto com o comando arquivo.close().
plt.xlabel(’t(em dias)’)
plt.ylabel(’Quantidade de células’)
plt.title(’Saturação de crescimento tumoral’)
plt.plot(t, N, ’b.’, markeredgewidth=0.1)
plt.grid()
plt.show()
arquivo.close()
import numpy as np
import matplotlib.pyplot as plt
# Constantes do sistema
r1 = 2.2 # Taxa de crescimento tumoral
r2 = 1.1 # Taxa de crescimento das células normais
L1 = 60 # Capacidade suporte das células tumorais
L2 = 10 # Capacidade suporte das células normais
p12 = 0.005 # Coeficiente de competição medindo os efeitos em P
causados pela presença de Q
26
# Runge-Kutta 2a Ordem:
ft2 = t + (h / 2)
fx2 = P + (h / 2) * m1
fy2 = Q + (h / 2) * k1
m2 = r1 * fx2 - (r1 * fx2 ** 2 + r1 * p12 * fx2 * fy2) / L1
gt2 = t + (h / 2)
gx2 = P + (h / 2) * m1
gy2 = Q + (h / 2) * k1
k2 = r2 * gy2 - (r2 * gy2 ** 2 + r2 * p21 * gy2 * gx2) / L2
# Runge-Kutta 3a Ordem:
ft3 = t + (h / 2)
fx3 = P + (h / 2) * m2
fy3 = Q + (h / 2) * k2
m3 = r1 * fx3 - (r1 * fx3 ** 2 + r1 * p12 * fx3 * fy3) / L1
gt3 = t + (h / 2)
gx3 = P + (h / 2) * m2
gy3 = Q + (h / 2) * k2
k3 = r2 * gy3 - (r2 * gy3 ** 2 + r2 * p21 * gy3 * gx3) / L2
# Runge-Kutta 4a Ordem:
ft4 = t + h
fx4 = P + h * m3
fy4 = Q + h * k3
m4 = r1 * fx4 - (r1 * fx4 ** 2 + r1 * p12 * fx4 * fy4) / L1
gt4 = t + h
gx4 = P + h * m3
gy4 = Q + h * k3
27
t = t + h
P = P + (h / 6) * (m1 + 2 * m2 + 2 * m3 + m4)
Q = Q + (h / 6) * (k1 + 2 * k2 + 2 * k3 + k4)
print(t, ’\t’, ’\t’, P, ’\t’, Q)
plt.xlabel(’t(em dias)’)
plt.ylabel(’Quantidade de células’)
plt.plot(t, P, ’b.’, markeredgewidth=1.0)
plt.plot(t, Q, ’m.’, markeredgewidth=1.0)
plt.legend([’Células tumorais’, ’Células normais’], loc=2)
plt.grid()
plt.show()
Desta forma, com a visualização do gráfico e a tabela 2 podemos notar que como
dN1 dN2
admitimos que > 0e 6 0, a população tumoral cresceu, e a população normal
dt dt
inicialmente diminuíu e depois se estabilizou.
Tendo em vista os pontos de equilíbrio do sistema (6.4) descrito no Capítulo 4, vamos
analisar se os mesmos são estáveis ou instáveis de acordo com o Terorema 3.1.
• N1 = 0 e N2 = 0
• N1 = 0 e N2 = k2
• N1 = k1 e N2 = 0
−k2 + α21 k1
N2 =
−1 + α21 α12
•
−k1 + α12 k2
N1 =
−1 + α21 α12
7 CONCLUSÃO
O método numérico utilizado neste trabalho, pôde evidenciar o quanto é eficaz sua
utilização em EDO’s e Sistemas de EDO’s. Pois vimos que no primeiro modelo, o qual apresentou-
se sua solução analítica, houve uma pequena diferença entre a solução aproximada e a solução
exata, e que esta diferença ocorre devido a mudança que é feita, modificando algo contínuo em
algo discreto. No sistema de EDO podemos notar que a reresentação gráfica foi de encontro com
o que havia sido dito na teoria, ou seja, o método de Runge-Kutta também se aproximou da sua
solução exata.
Vale ressaltar a importância de se utilizar uma ambiente computacional, pois sem o
mesmo, encontrar soluções de Equações diferenciais que não possuem soluções analíticas, ou
que sua solução seja extensa, dificultaria analisar sua aplicabilidade em situações reais.
31
REFERÊNCIAS