Você está na página 1de 41

UNIVERSIDADE DO ESTADO DO

RIO DE JANEIRO

INSTITUTO POLITÉCNICO

GRADUAÇÃO EM ENGENHARIA
MECÂNICA

Larissa Marqui Silva


Edigar Junior Schumacker Botelho

Resolução Numérica do Movimento do Pêndulo Duplo Utilizando o Método de


Runge-Kutta Clássico 3/8

Nova Friburgo

2021
UNIVERSIDADE DO ESTADO DO
RIO DE JANEIRO

INSTITUTO POLITÉCNICO

GRADUAÇÃO EM ENGENHARIA
MECÂNICA

Larissa Marqui Silva


Edigar Junior Schumacker Botelho

Resolução Numérica do Movimento do Pêndulo Duplo Utilizando o Método de


Runge-Kutta Clássico 3/8

Trabalho apresentado como forma de avalia-


ção da disciplina de Métodos Numéricos para
Equações Diferenciais, do Departamento de
Modelagem Computacional, do Instituto Poli-
técnico, da Universidade do Estado do Rio de
Janeiro.

Instrutores: Helio Pedro Amaral Souto

Grazione de Souza

Nova Friburgo

2021
RESUMO

SILVA, Larissa Marqui. BOTELHO, Edigar Junior Schumacker. Resolução Numérica


do Movimento do Pêndulo Duplo Utilizando o Método de Runge-Kutta Clássico 3/8.
2021. 33 f. Relatório (Graduação em Engenharia Mecânica) - Instituto Politécnico,
Universidade do Estado do Rio de Janeiro, Nova Friburgo, 2021.

Um pêndulo duplo apresenta um comportamento dinâmico que a depender das


condições as quais é submetido, pode apresentar comportamento caótico. Este tra-
balho visa estudar o movimento do pêndulo duplo utilizando-se do Método de Runge-
Kutta Clássico 3/8, uma vez que obter as soluções para as equações que governam
o movimento do pêndulo duplo de forma analítica é inviável. Inicialmente, é abordada
a solução analítica seguida da efetiva solução numérica aplicada ao objeto de estudo,
posteriormente o método de Runge-Kutta de quarta ordem 3/8 é introduzido e simu-
lações para condições pré-estabelecidades são realizadas. Por fim, diante do com-
portamento exibido nas simulações, é possível obter conclusões acerca do dispositivo
tratado no presente trabalho.

Palavras-chave: Pêndulo Duplo. Solução Analítica. Solução Numérica. Método de


Runge-Kutta Clássico.
LISTA DE FIGURAS

Figura 1 – Representação esquemática de um Pêndulo Duplo . . . . . . . . . 5


Figura 2 – Diagrama de corpo livre da massa m1. . . . . . . . . . . . . . . . . 8
Figura 3 – Diagrama de corpo livre da massa m2. . . . . . . . . . . . . . . . . 9
Figura 4 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 1. . . . . . . . . . 14
Figura 5 – Variação do ângulo teta 1 em função do tempo, Simulação 1. . . . 15
Figura 6 – Variação do ângulo teta 2 em função do tempo, Simulação 1. . . . 15
Figura 7 – Espaço de fase para haste 1, Simulação 1. . . . . . . . . . . . . . . 16
Figura 8 – Espaço de fase para haste 2, Simulação 1. . . . . . . . . . . . . . . 16
Figura 9 – Energia total, Simulação 1. . . . . . . . . . . . . . . . . . . . . . . . 17
Figura 10 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 2. . . . . . . . . . 17
Figura 11 – Variação do ângulo teta 1 em função do tempo, Simulação 2 . . . . 18
Figura 12 – Variação do ângulo teta 2 em função do tempo, Simulação 2 . . . . 18
Figura 13 – Espaço de fase para haste 1, Simulação 2 . . . . . . . . . . . . . . 19
Figura 14 – Espaço de fase para haste 2, Simulação 2 . . . . . . . . . . . . . . 19
Figura 15 – Energia total, Simulação 2 . . . . . . . . . . . . . . . . . . . . . . . 20
Figura 16 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 3. . . . . . . . . . 20
Figura 17 – Variação do ângulo teta 1 em função do tempo, Simulação 3. . . . 21
Figura 18 – Variação do ângulo teta 2 em função do tempo, Simulação 3. . . . 21
Figura 19 – Espaço de fase para haste 1, Simulação 3. . . . . . . . . . . . . . . 22
Figura 20 – Espaço de fase para haste 2, Simulação 3. . . . . . . . . . . . . . . 22
Figura 21 – Energia total, Simulação 3. . . . . . . . . . . . . . . . . . . . . . . . 23
Figura 22 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 4. . . . . . . . . . 23
Figura 23 – Variação do ângulo teta 1 em função do tempo, Simulação 4. . . . 24
Figura 24 – Variação do ângulo teta 2 em função do tempo, Simulação 4. . . . 24
Figura 25 – Espaço de fase para haste 1, Simulação 4. . . . . . . . . . . . . . . 25
Figura 26 – Espaço de fase para haste 2, Simulação 4. . . . . . . . . . . . . . . 25
Figura 27 – Energia total, Simulação 4. . . . . . . . . . . . . . . . . . . . . . . . 26
Figura 28 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 5. . . . . . . . . . 26
Figura 29 – Variação do ângulo teta 1 em função do tempo, Simulação 5. . . . 27
Figura 30 – Variação do ângulo teta 2 em função do tempo, Simulação 5. . . . 27
Figura 31 – Espaço de fase para haste 1, Simulação 5. . . . . . . . . . . . . . . 28
Figura 32 – Espaço de fase para haste 2, Simulação 5. . . . . . . . . . . . . . . 28
Figura 33 – Energia total, Simulação 5. . . . . . . . . . . . . . . . . . . . . . . . 29
Figura 34 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 5.1. . . . . . . . . 29
Figura 35 – Variação do ângulo teta 1 em função do tempo, Simulação 5.1. . . 30
Figura 36 – Variação do ângulo teta 2 em função do tempo, Simulação 5.1. . . 30
Figura 37 – Espaço de fase para haste 1, Simulação 5.1. . . . . . . . . . . . . . 31
Figura 38 – Espaço de fase para haste 2, Simulação 5.1. . . . . . . . . . . . . . 31
Figura 39 – Energia total, Simulação 5.1. . . . . . . . . . . . . . . . . . . . . . . 32
SUMÁRIO

INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1 FUNDAMENTAÇÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . . 6
1.1 Solução Analítica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.1 Energia no Pêndulo Duplo . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.2 Forças no Pêndulo Duplo . . . . . . . . . . . . . . . . . . . . . . . . . 8
2 SOLUÇÃO NUMÉRICA . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1 Método de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Simulação Numérica . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 RESULTADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
CONCLUSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5

INTRODUÇÃO

O pêndulo, objeto de estudo do presente trabalho, em sua forma mais sim-


ples é constituído por um corpo rígido preso em sua extremidade por um fio fixado
verticalmente. O astrônomo, matemático e físico italiano Galileu Galilei foi o primeiro
a observar que o período de oscilação de um pêndulo só depende de seu compri-
mento e é independente de sua massa. Foi Galileu que introduziu a ideia de utilizar a
oscilação do pêndulo para medir o tempo, porém, apenas 1656 o cientista holandês
Christian Huygens inventou e construiu o primeiro relógio de pêndulo. [1]
O pêndulo duplo, é um sistema composto por dois pêndulos sendo um deles
anexo no extremo do outro, conforme ilustrado na Figura 1.

Figura 1 – Representação esquemática de um Pêndulo Duplo

Fonte:https://es.abcdef.wiki/wiki/Double

Tratando-se de um pêndulo simples, para pequenos ângulos é observado um


comportamento linear do mesmo, porém para grandes ângulos se comporta de forma
não-linear. Já o pêndulo duplo, exibe um rico comportamento dinâmico quando é lan-
çado o pêndulo inferior. A depender da altura, pode-se observar um movimento pe-
riódico, não periódico ou ainda um movimento caótico que deve-se a transferência de
energia potencial gravitacional para energia cinética de rotação.
6

1 FUNDAMENTAÇÃO TEÓRICA

1.1 Solução Analítica

Um sistema de pêndulo duplo semelhante ao mostrado na Figura 1, é conside-


rado para o subsequente desenvolvimento matemático. Foi definido dois pêndulos de
massas m1 e m2, acoplados a hastes de massas desprezíveis, de comprimentos l1 e
l2, submetidos à aceleração da gravidade g e com ângulos 𝜃1 𝑒𝜃2 .
Além disso, foi considerada a origem das coordenadas no ponto de pivô do pêndulo
superior.
Através das relações trigonométricas é possível definir equações para posição
de m1 e m2 em termos de 𝜃1 𝑒𝜃2 .

𝑥1 = 𝑙1 sin 𝜃1 (1)

𝑦1 = −𝑙1 cos 𝜃1 (2)

𝑥2 = 𝑙1 sin 𝜃1 + 𝑙2 sin 𝜃2 (3)

𝑦2 = −𝑙1 cos 𝜃1 − 𝑙2 cos 𝜃2 (4)

Derivando as expressões em relação ao tempo, se obtem a velocidade das


partículas.

𝑑𝑥1 𝑑𝜃1
= 𝑙1 cos 𝜃1 (5)
𝑑𝑡 𝑑𝑡

𝑑𝑦1 𝑑𝜃1
= 𝑙1 sin 𝜃1 (6)
𝑑𝑡 𝑑𝑡

𝑑𝑥2 𝑑𝑥1 𝑑𝜃2


= + 𝑙2 cos 𝜃2 (7)
𝑑𝑡 𝑑𝑡 𝑑𝑡
7

𝑑𝑦2 𝑑𝑦1 𝑑𝜃2


=− − 𝑙2 sin 𝜃2 (8)
𝑑𝑡 𝑑𝑡 𝑑𝑡
Calculando novamente as derivadas da velocidade em relação ao tempo, se
obtem a aceleração das partículas.

)︂2
𝑑 2 𝑥1 𝑑2 𝜃1
(︂
𝑑𝜃1
= −𝑙1 sin 𝜃1 + 𝑙1 cos 𝜃1 (9)
𝑑𝑡2 𝑑𝑡 𝑑𝑡2

)︂2
𝑑2 𝑦 1 𝑑2 𝜃1
(︂
𝑑𝜃1
= 𝑙1 cos 𝜃1 + 𝑙1 sin 𝜃1 (10)
𝑑𝑡2 𝑑𝑡 𝑑𝑡2

)︂2
𝑑 2 𝑥2 𝑑2 𝑥1 𝑑2 𝜃2
(︂
𝑑𝜃2
= + 𝑙2 sin 𝜃2 + 𝑙2 cos 𝜃2 (11)
𝑑𝑡2 𝑑𝑡2 𝑑𝑡 𝑑𝑡2

)︂2
𝑑2 𝑦 2 𝑑2 𝑦 1 𝑑2 𝜃2
(︂
𝑑𝜃2
= + 𝑙2 cos 𝜃2 + 𝑙2 sin 𝜃2 (12)
𝑑𝑡2 𝑑𝑡2 𝑑𝑡 𝑑𝑡2

1.1.1 Energia no Pêndulo Duplo

Em termos de energia, as energias envolvidas no sistema dinâmico do pêndulo


duplo, são energia cinética e energia potencial gravitacional.
A energia potencial gravitacional P é dada por:

𝑃 = 𝑚1 𝑔𝑦1 + 𝑚2 𝑔𝑦2 (13)

𝑃 = −(𝑚1 + 𝑚2 )𝑔𝑙1 cos 𝜃1 − 𝑚2 𝑔𝑙2 cos 𝜃2 (14)

A energia cinética C é dada por:

1 1
𝐶 = 𝑚1 (𝑣1 )2 + 𝑚2 (𝑣2 )2 (15)
2 2
Logo:

(︂ )︂2 (︃ (︂ )︂2 (︂ )︂2 (︂ )︂ (︂ )︂ )︃


1 𝑑𝜃1 1 𝑑𝜃 1 𝑑𝜃 2 𝑑𝜃 1 𝑑𝜃 2
𝐶 = 𝑚1 (𝑙1 )2 + 𝑚2 (𝑙1 )2 + (𝑙2 )2 + 2𝑙1 𝑙2 cos(𝜃1 − 𝜃2 )
2 𝑑𝑡 2 𝑑𝑡 𝑑𝑡 𝑑𝑡 𝑑𝑡
8

(16)

E a energia total é dada pela soma das energias cinética e potencial gravitaci-
onal:

𝐸𝑡𝑜𝑡 = 𝐶 + 𝑃 (17)

1.1.2 Forças no Pêndulo Duplo

De forma a expressar as forças que atuam no sistema de pêndulo duplo, o dia-


grama de corpo livre de cada massa foi esboçado, conforme ilustrado abaixo, seguido
de seu desenvolvimento matemático.

Figura 2 – Diagrama de corpo livre da massa m1.

Fonte: Larissa Marqui, 2021.

Do somatório das forças atuantes na massa m1 na coordenada x, tem-se:

𝑑𝑥21
𝐹1 = 𝑚1 = −𝑇1 sin 𝜃1 + 𝑇2 sin 𝜃2 (18)
𝑑𝑡2
Do somatório das forças atuantes na massa m1 na coordenada y, tem-se:

𝑑𝑦12
𝐹1 = 𝑚1 = −𝑇1 cos 𝜃1 − 𝑚1 𝑔 − 𝑇2 cos 𝜃2 (19)
𝑑𝑡2
9

Figura 3 – Diagrama de corpo livre da massa m2.

Fonte: Larissa Marqui, 2021.

Do somatório das forças atuantes na massa m2 na coordenada x, tem-se:

𝑑𝑥22
𝐹2 = 𝑚2 2 = −𝑇2 sin 𝜃2 (20)
𝑑𝑡
Do somatório das forças atuantes na massa m2 na coordenada y, tem-se:

𝑑𝑦22
𝐹2 = 𝑚2 = 𝑇2 cos 𝜃2 − 𝑚2 𝑔 (21)
𝑑𝑡2
Conforme desenvolvido na prosposta do trabalho 1, a partir das Equações (18),
(19),(20) e (21), algumas manipulações algébricas são realizadas de modo a se obter
expressões para a aceleração das massas m1 e m2 em termos de suas respectivas
posição e velocidade. São estas equações:

)︂2
𝑑2 𝜃1
(︂ )︂ (︂ 2 )︂ (︂
𝑑 𝜃2 𝑑𝜃2
(𝑚1 +𝑚2 )𝑙1 +𝑚2 𝑙2 cos(𝜃1 −𝜃2 )+𝑚2 𝑙2 sin(𝜃1 −𝜃2 )+𝑔(𝑚1 +𝑚2 ) sin 𝜃1 = 0
𝑑𝑡 𝑑𝑡2 𝑑𝑡
(22)

)︂2
𝑑2 𝜃2
(︂ )︂ (︂ 2 )︂ (︂
𝑑 𝜃1 𝑑𝜃1
𝑚2 𝑙2 +𝑚2 𝑙1 cos(𝜃1 −𝜃2 )−𝑚2 𝑙1 sin(𝜃1 −𝜃2 )+𝑚2 𝑔 sin 𝜃2 = 0 (23)
𝑑𝑡2 𝑑𝑡2 𝑑𝑡
10

2 SOLUÇÃO NUMÉRICA

A partir das Equações (23) e (24), foram desenvolvidas expressões para as


acelerações, a saber:

𝑑2 𝜃1 𝑒𝑑 − 𝑏𝑓
2
= (24)
𝑑𝑡 𝑎𝑑 − 𝑐𝑏

𝑑2 𝜃2 𝑎𝑓 − 𝑐𝑒
= (25)
𝑑𝑡2 𝑎𝑑 − 𝑐𝑏
Onde:

𝑎 = (𝑚1 + 𝑚2 )𝑙1 (26)

𝑏 = 𝑚2 𝑙2 cos(𝜃1 − 𝜃2 ) (27)

𝑐 = 𝑚2 𝑙1 cos(𝜃1 − 𝜃2 ) (28)

𝑐 = 𝑚2 𝑙1 cos(𝜃1 − 𝜃2 ) (29)

𝑑 = 𝑚2 𝑙2 (30)

(︂ )︂2
𝑑𝜃2
𝑒 = −𝑚2 𝑙2 sin(𝜃1 − 𝜃2 ) − 𝑔(𝑚1 − 𝑚2 ) sin 𝜃1 (31)
𝑑𝑡

(︂ )︂2
𝑑𝜃1
𝑓 = 𝑚2 𝑙1 sin(𝜃1 − 𝜃2 ) − 𝑔(𝑚2 ) sin 𝜃1 (32)
𝑑𝑡

Como visto, as equações (23) e (24) constituem equações de segunda ordem


acopladas e resolvê-las analiticamente é inviável. Portanto, uma solução para este
11

caso é utilizar um método numérico.

O método aplicado neste trabalho para resolver o problema do pêndulo duplo,


será o método de Runge-Kutta. Porém, o método de Runge Kutta foi desenvolvido para
solucionar equações diferenciais de primeira ordem, e dessa forma é necessário que
seja feita uma adaptação das Equações (25) e (26), transformando-as em equações
ordinárias de primeira ordem.
Foram introduzidas então as seguintes variáveis auxiliares:

𝑑𝜃1
= 𝑤1 (33)
𝑑𝑡

𝑑𝜃2
= 𝑤2 (34)
𝑑𝑡
Com isso, as Equações (25) e (26), podem ser reescritas como:

𝑑𝑤1 𝑒𝑑 − 𝑏𝑓
= (35)
𝑑𝑡 𝑎𝑑 − 𝑐𝑏

𝑑𝑤2 𝑎𝑓 − 𝑐𝑒
= (36)
𝑑𝑡 𝑎𝑑 − 𝑐𝑏

2.1 Método de Runge-Kutta

Os métodos que formam um grupo importante de métodos iterativos implícitos


e explícitos e que leva o nome de seus desenvolvedores,C. Runge e M.W. Kutta, gene-
ralizam o esquema do método de Euler melhorado, inserindo mais estágios de cálculo
e buscando ordens de precisão mais altas. [2]
No presente trabalho, será empregado para a solução numérica das equações
diferenciais ordinárias de primeira ordem que governam o movimento do pêndulo du-
plo o Método de Runge-Kutta de Quarta Ordem 3/8.
O Método de Quarta Ordem de Runge-Kutta 3/8 é utilizado para aproximar a
solução do problema de valor inicial y’(t) = f(t,y); y(t0) = y0 que avalia o integrand,f(t,y),
quatro vezes por passo. [3]
O método é definido pela seguinte expressão:

[︂ ]︂
1
𝑦𝑖+1 = 𝑦1 + (𝑘1 + 3𝑘2 + 3𝑘3 + 𝑘4 ) ∆𝑡 (37)
8
12

Onde:

𝑘1 = 𝑓 (𝑡𝑖 , 𝑦𝑖 ) (38)

1 1
𝑘2 = 𝑓 (𝑡𝑖 + ∆𝑡, 𝑦𝑖 + 𝑘1 ∆𝑡) (39)
3 3

2 1
𝑘3 = 𝑓 (𝑡𝑖 + ∆𝑡, 𝑦𝑖 − 𝑘1 ∆𝑡 + 𝑘2 ∆𝑡) (40)
3 3

𝑘4 = 𝑓 (𝑡𝑖 + ∆𝑡, 𝑦𝑖 + 𝑘1 ∆𝑡 − 𝑘2 ∆𝑡 + 𝑘3 ∆𝑡) (41)

2.2 Simulação Numérica

Visando a solução numérica das equações diferenciais ordinárias de primeira


ordem que governam o movimento do pêndulo duplo, serão realizadas 5 simulações
(utilizando a linguagem de programação Phyton) com as seguintes particularidades:
Simulação 1
l1=l2= 1m
m1=m2= 1kg
𝜃1 = 𝜃2 = 60𝑔𝑟𝑎𝑢𝑠
𝑤1 = 𝑤2 = 0𝑟𝑎𝑑/𝑠

Simulação 2
l1=l2= 1m
m1= 2kg, m2= 1kg
𝜃1 = 𝜃2 = 60𝑔𝑟𝑎𝑢𝑠
𝑤1 = 𝑤2 = 0𝑟𝑎𝑑/𝑠

Simulação 3
l1=l2= 1m
m1= m2= 1kg
𝜃1 = 𝜃2 = 90𝑔𝑟𝑎𝑢𝑠
13

𝑤1 = 0𝑟𝑎𝑑/𝑠𝑤2 = 5.0𝑟𝑎𝑑/𝑠

Simulação 4
l1= 1m, l2= 2m
m1= m2= 1kg
𝜃1 = 𝜃2 = 60𝑔𝑟𝑎𝑢𝑠
𝑤1 = 𝑤2 = 0𝑟𝑎𝑑/𝑠

Simulação 5
l1= 1m, l2= 2m
m1= m2= 1kg
𝜃1 = 180𝑔𝑟𝑎𝑢𝑠, 𝜃2 = 160𝑔𝑟𝑎𝑢𝑠
𝑤1 = 𝑤2 = 0𝑟𝑎𝑑/𝑠

A Simulação 5, será repetida perturbando os ângulos iniciais acrescentando 0,5


graus a cada nova simulação.
14

3 RESULTADOS

A seguir, são apresentados os gráficos das curvas (x1,y1) e (x2,y2) no plano


xy, as variações dos ângulos em função do tempo, os espaços de fase para as duas
hastes e a energia total preservada para simulação.
Nos gráficos a seguir, a unidade de medida do tempo e das coordenadas x e y estão
respectivamente em segundos e metros.
A Simulação 5 foi repetida perturbando os ângulos iniciais acrescentando 0,5
graus, e os resultados obtidos constam nos gráficos intitulados "Simulação 5.1"

Figura 4 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


15

Figura 5 – Variação do ângulo teta 1 em função do tempo, Simulação 1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 6 – Variação do ângulo teta 2 em função do tempo, Simulação 1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


16

Figura 7 – Espaço de fase para haste 1, Simulação 1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 8 – Espaço de fase para haste 2, Simulação 1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


17

Figura 9 – Energia total, Simulação 1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 10 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 2.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


18

Figura 11 – Variação do ângulo teta 1 em função do tempo, Simulação 2

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 12 – Variação do ângulo teta 2 em função do tempo, Simulação 2

Fonte: Larissa Marqui e Edigar Botelho, 2021.


19

Figura 13 – Espaço de fase para haste 1, Simulação 2

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 14 – Espaço de fase para haste 2, Simulação 2

Fonte: Larissa Marqui e Edigar Botelho, 2021.


20

Figura 15 – Energia total, Simulação 2

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 16 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 3.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


21

Figura 17 – Variação do ângulo teta 1 em função do tempo, Simulação 3.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 18 – Variação do ângulo teta 2 em função do tempo, Simulação 3.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


22

Figura 19 – Espaço de fase para haste 1, Simulação 3.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 20 – Espaço de fase para haste 2, Simulação 3.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


23

Figura 21 – Energia total, Simulação 3.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 22 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 4.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


24

Figura 23 – Variação do ângulo teta 1 em função do tempo, Simulação 4.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 24 – Variação do ângulo teta 2 em função do tempo, Simulação 4.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


25

Figura 25 – Espaço de fase para haste 1, Simulação 4.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 26 – Espaço de fase para haste 2, Simulação 4.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


26

Figura 27 – Energia total, Simulação 4.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 28 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 5.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


27

Figura 29 – Variação do ângulo teta 1 em função do tempo, Simulação 5.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 30 – Variação do ângulo teta 2 em função do tempo, Simulação 5.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


28

Figura 31 – Espaço de fase para haste 1, Simulação 5.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 32 – Espaço de fase para haste 2, Simulação 5.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


29

Figura 33 – Energia total, Simulação 5.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 34 – Curvas (x1,y1) e (x2,y2) no plano xy, Simulação 5.1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


30

Figura 35 – Variação do ângulo teta 1 em função do tempo, Simulação 5.1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 36 – Variação do ângulo teta 2 em função do tempo, Simulação 5.1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


31

Figura 37 – Espaço de fase para haste 1, Simulação 5.1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.

Figura 38 – Espaço de fase para haste 2, Simulação 5.1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


32

Figura 39 – Energia total, Simulação 5.1.

Fonte: Larissa Marqui e Edigar Botelho, 2021.


33

CONCLUSÕES

∙ O pêndulo duplo é um sistema de grande interesse em nível caótico,


exibindo grande sensibilidade às condições iniciais.

∙ O código se mostrou preciso nas simulações 1,2 e 4, no entanto, para


o sistema 3 e 5, com ângulos maiores que 60 graus, por um motivo
que não foi possível identificar, o mesmo está divergindo, verificando
comportamentos gráficos tendendo a infinito. Uma das hipóteses que
foi levantada para justificar o comportamento diferente do esperado é
uma possível divisão por zero nas linhas de código, porém nada foi
encontrado.

∙ Através dos casos simulados e dos estudos realizados, foi possível


obter maior compreensão a respeito do método numérico abordado.
APÊNDICE A

Código
# Importando as bibliotecas

import matplotlib.pyplot as plt


import numpy as np

# Função principal do programa

def main():

# Parâmetros Físicos

g = 9.8
L1 = 1
L2 = 1
m1 = 1
m2 = 1

# Condições de tempo e numero de passos

t0 = 0
t_max = 50
passos = 5000

# Condições iniciais

theta1 = 30
theta2 = 0
w1 = 0
w2 = 0

# Converte dados para vetores

parametros_fisicos = [g, L1, L2, m1, m2]


y = [theta1, theta2, w1, w2]
tempos = t0, t_max, passos

# Define qual tarefa será executada

tarefa = "Exemplo"

# Executa simulação

simulacao(parametros_fisicos, tempos, y, tarefa)

def simulacao(parametros_fisicos, tempos, y, tarefa):

# Converte thetas para radianos


y[0] *= np.pi / 180
y[1] *= np.pi / 180

# Gera um vetor de não passos com valores de tempo entre t0 e t_max

tempo = np.linspace(*tempos)

# Define o incremento de tempo

delta_t = tempo[1] - tempo[0]

# Definição dos vetores que irão armazenar os resultados

E = [energia_total(parametros_fisicos, y)]
y = [np.array(y)]

for t in tempo[1:]:

# Para cada valor de tempo roda o Runge Kutta

y.append(RK38(pendulo, parametros_fisicos, t, y[-1], delta_t))

# A partir dos valores obtidos no Runge Kutta calcula a energia total

E.append(energia_total(parametros_fisicos, y[-1]))

# Gera os gráficos

gráficos(parametros_fisicos, tempo, y, E, tarefa)

def RK38(f, parametros_fisicos, t, y, delta_t):

# Método de Runge-Kutta de quarta ordem 3/8


# Recebe as funções, as dimensões do problema, o valor do tempo,
# y e o intervalo de tempo delta_t

k1 = f(parametros_fisicos, t, y)
k2 = f(parametros_fisicos, t + 1 / 3 * delta_t, y + 1 / 3 * k1 * delta_t)
k3 = f(
parametros_fisicos,
t + 2 / 3 * delta_t,
y - 1 / 3 * k1 * delta_t + k2 * delta_t,
)
k4 = f(
parametros_fisicos,
t + delta_t,
y + k1 * delta_t - k2 * delta_t + k3 * delta_t,
)
y_novo = y + (1 / 8 * (k1 + 3 * k2 + 3 * k3 + k4)) * delta_t
return y_novo

def pendulo(parametros_fisicos, t, y):


# Separa os parametros e condições em suas devidas variáveis

g, L1, L2, m1, m2 = parametros_fisicos


theta1, theta2, w1, w2 = y

# Definição das variáveis das equações

a = (m1 + m2) * L1
b = m2 * L2 * np.cos(theta1 - theta2)
c = m2 * L1 * np.cos(theta1 - theta2)
d = m2 * L2
e = -m2 * L2 * theta2 ** 2 * np.sin(theta1 - theta2) - g * (
m1 + m2
) * np.sin(theta1)
f = m2 * L1 * theta1 ** 2 * np.sin(theta1 - theta2) - m2 * g * np.sin(
theta2
)

# Equações diferenciais que definem o pendulo simples.

dtheta1 = w1
dtheta2 = w2
dw1 = (e * d - b * f) / (a * d - c * b)
dw2 = (a * f - c * e) / (a * d - c * b)
y = np.array([dtheta1, dtheta2, dw1, dw2])

return y

def energia_total(parametros_fisicos, y):

# Separa os parametros e condições em suas devidas variáveis

g, L1, L2, m1, m2 = parametros_fisicos


theta1, theta2, w1, w2 = y
# Calculo da Energia Potêncial
P = -(m1 + m2) * g * L1 * np.cos(theta1) - m2 * g * L2 * np.cos(theta2)

# Calculo da Energia Cinética

C = 1 / 2 * m1 * (L1 ** 2) * (theta1 ** 2) + 1 / 2 * m2 * (
(L1 ** 2) * (theta1 ** 2)
+ (L2 ** 2) * (theta2 ** 2)
+ 2 * L1 * L2 * w1 * w2 * np.cos(theta1 - theta2)
)

# Calculo da Energia Total do sistema

E=P+C
return E

def coordenadas(parametros_fisicos, theta1, theta2):


# Separa os parametros em suas devidas variáveis
_, L1, L2, _, _ = parametros_fisicos

# Equações para o calculos das coordenadas x1, y1, x2 e y2

x1 = L1 * np.sin(theta1)
y1 = -L1 * np.cos(theta1)
x2 = x1 + L2 * np.sin(theta2)
y2 = y1 - L2 * np.cos(theta2)

return x1, y1, x2, y2

def gráficos(parametros_fisicos, tempo, y, E, tarefa):


# Separa os resultados nas suas devidas variáveis
theta1, theta2, w1, w2 = np.stack(y).T
x1, y1, x2, y2 = coordenadas(parametros_fisicos, theta1, theta2)
t0 = tempo[0]
t_max = tempo[-1]

# Define a qualidade da imagem a ser salva

dpi = 600

# Gráfico: Movimento do pêndulo duplo


plt.figure(dpi=dpi)
plt.plot(x1, y1, label="1")
plt.plot(x2, y2, label="2")
plt.title("Movimento do Pêndulo Duplo")
plt.xlabel("X")
plt.ylabel("Y")
plt.legend(loc="best")
plt.axis((-1, 1, -2, -0.8))
plt.savefig("Movimento do Pêndulo Duplo.png", bbox_inches="tight")

# Gráfico: Ângulo θ1 em função do tempo

plt.figure(dpi=dpi)
plt.plot(tempo, theta1)
plt.title("\u03B8\u2081 em função do tempo")
plt.xlabel("Tempo")
plt.ylabel("\u03B8\u2081")
plt.axis((t0, t_max, -0.8, 0.8))
plt.savefig(
"\u03B8\u2081 em função do tempo.png",
bbox_inches="tight",
)

# Gráfico: Ângulo θ2 em função do tempo.

plt.figure(dpi=dpi)
plt.plot(tempo, theta2)
plt.title("\u03B8\u2082 em função do tempo")
plt.xlabel("Tempo")
plt.ylabel("\u03B8\u2082")
plt.axis((t0, t_max, -1, 1))
plt.savefig(
"\u03B8\u2082 em função do tempo.png",
bbox_inches="tight",
)

# Gráfico: Velocidade angular ω1 em função do ângulo θ1

plt.figure(dpi=dpi)
plt.plot(theta1, w1)
plt.title("Espaço de fase")
plt.xlabel("\u03C9\u2081")
plt.ylabel("\u03B8\u2081")
plt.axis((-0.8, 0.8, -3, 3))
plt.savefig("Espaço de fase 1.png", bbox_inches="tight")

# Gráfico: Velocidade angular ω2 em função do ângulo θ2.

plt.figure(dpi=dpi)
plt.plot(theta2, w2)
plt.title("Espaço de fase")
plt.xlabel("\u03C9\u2082")
plt.ylabel("\u03B8\u2082")
plt.axis((-1, 1, -4, 4))
plt.savefig("Espaço de fase 2.png", bbox_inches="tight")

# Gráfico: Variação da energia total do sistema E em função do tempo.

plt.figure(dpi=dpi)
plt.plot(tempo, E)
plt.title("Energia Total")
plt.xlabel("Tempo")
plt.ylabel("E")
plt.axis((t0, t_max, -60, 60))
plt.savefig("Energia Total.png", bbox_inches="tight")

# Roda o programa

if __name__ == "__main__":
main()
REFERÊNCIAS

[1] Porto Editora – pêndulo na Infopédia. Disponível em https://www.infopedia.pt/$pendulo. Acesso


em 11 de set. de 2021.

[2] REAMATE Cálculo Numérico – Métodos de Runge-Kutta. Disponível em Métodos de Runge-Kutta


explícitos (ufrgs.br). Acesso em 10 de setembro de 2021.

[3] Mathematics Source Library – Runge-Kutta 3/8 Method. Disponível em Método Runge-Kutta 3/8
(mymathlib.com). Acesso em 11 de set. de 2021.

Você também pode gostar