• Nenhum resultado encontrado

Implementação de método numérico para simulação de vibrações não lineares

N/A
N/A
Protected

Academic year: 2021

Share "Implementação de método numérico para simulação de vibrações não lineares"

Copied!
41
0
0

Texto

(1)

Escola de Engenharia

Curso de Gradua¸

ao em Engenharia Mecˆ

anica

Vitor Ferreira Serrano & Ciro de Hollanda Sodr´e

Ribeiro

Implementa¸c˜

ao de m´etodo num´erico para simula¸c˜

ao de

vibra¸c˜

oes n˜

ao lineares

Niter´

oi – RJ

2019

(2)

1 Vitor Ferreira Serrano & Ciro de Hollanda Sodr´e Ribeiro

Implementa¸c˜ao de m´etodo num´erico para simula¸c˜ao de vibra¸c˜oes n˜ao lineares

Trabalho de Conclus˜ao de Curso apresentado ao Curso de Gradua¸c˜ao em Engenharia Mecˆanica da Universidade Federal Fluminense, como requisito parcial para obten¸c˜ao do Grau de Engenheiro Me-cˆanico.

Orientador: Prof. Dr. Heraldo Silva da Costa Mattos

Niter´oi – RJ 2019

(3)

Bibliotecária responsável: Fabiana Menezes Santos da Silva - CRB7/5274

S487i Serrano, Vitor Ferreira

Implementação de Método Numérico para Simulação de Vibrações Não Lineares / Vitor Ferreira Serrano, Ciro de Hollanda Sodré Ribeiro ; Heraldo Silva da Costa Mattos, orientador. Niterói, 2019.

41 f. : il.

Trabalho de Conclusão de Curso (Graduação em Engenharia Mecânica)-Universidade Federal Fluminense, Escola de Engenharia, Niterói, 2019.

1. Método Runge Kutta de quarta ordem. 2. Amortecimento não linear. 3. Python. 4. Produção intelectual. I. Ribeiro, Ciro de Hollanda Sodré. II. Mattos, Heraldo Silva da Costa, orientador. III. Universidade Federal Fluminense. Escola de Engenharia. IV. Título.

(4)

-iii Vitor Ferreira Serrano & Ciro de Hollanda Sodr´e Ribeiro

Implementa¸c˜ao de m´etodo num´erico para simula¸c˜ao de vibra¸c˜oes n˜ao lineares

Trabalho de Conclus˜ao de Curso apresentado ao Curso de Gradua¸c˜ao em Engenharia Mecˆanica da Universidade Federal Fluminense, como requisito parcial para obten¸c˜ao do Grau de Engenheiro Me-cˆanico.

Aprovado em 06 de Dezembro de 2019.

BANCA EXAMINADORA

Prof. Dr. Heraldo Silva da Costa Mattos - Orientador Universidade Federal Fluminese - UFF

MSc. Camila Ranucci de Luca Universidade Federal Fluminense - UFF

MSc. Fernanda Felix Enne Universidade Federal Fluminese - UFF

Niter´oi – RJ 2019

(5)

Resumo

Esse trabalho tem trˆes objetivos b´asicos: (1) implementar um c´odigo na linguagem Python para aproximar a solu¸c˜ao de equa¸c˜oes diferenciais ordin´arias usando a t´ecnica de Runge-Kutta de quarta ordem; (2) Estudar numericamente as vibra¸c˜oes e o amorteci-mento de impacto de um ve´ıculo usando o modelo linear cl´assico massa-mola-amortecedor; (3) Propor e estudar numericamente um sistema de amortecimento n˜ao-linear elasto-viscopl´astico. O problema linear, por ter solu¸c˜ao anal´ıtica, permite comparar essa solu¸c˜ao com a aproxima¸c˜ao num´erica e estimar o erro envolvido, validando o c´odigo. O estudo de vibra¸c˜oes n˜ao lineares est´a se tornando cada vez mais importante devido aos novos materiais polim´ericos usados em diferentes aplica¸c˜oes, entre elas a absor¸c˜ao de energia e prote¸c˜ao contra impactos. A an´alise num´erica preliminar feita no caso n˜ao linear mostra o potencial dessas aplica¸c˜oes e estimula o prosseguimento de estudos experimentais.

Palavras-chave: M´etodo de Runge Kutta de quarta ordem, Amortecimento n˜ao linear, Python

(6)

v

Abstract

The present study had three basic goals: (1) to implement a code using the Python language to approximate the solution of ordinary differential equations using the Runge-Kutta 4th order method; (2) To perform the numerical analysis of vibrations and impact damping of a vehicle using the classic linear mass-spring-damper linear model; (3) To pro-pose and elasto-viscoplastic model for the damping system and to perform the numerical analysis of the system behavior. Since the linear problem has an analytical solution, it is possible to compare this solution with the numerical approximation and to estimate the error involved, validating the code. The study of nonlinear vibrations is becoming increasingly important due to the new polymeric materials used in different applications, including energy absorption and impact protection. The preliminary numerical analy-sis made in the nonlinear case shows the potential of these applications and encourages further experimental studies.

(7)

Dedicamos esse trabalho `a todos que nos aju-daram e nos apoiaram at´e aqui. `A todos que fazem parte de nossas vidas e que j´a passa-ram por ela, mas que nunca ser˜ao esquecidos.

(8)

vii

Agradecimentos

Agradecimento I:

Agrade¸co aos meus pais, Valmir e Angela, que sempre prezaram muito pela minha educa¸c˜ao e sempre me apoiaram em todos os momentos de minha vida. O que sou hoje ´e reflexo do carinho deles. `As demais pessoas que j´a passaram ou est˜ao na minha vida que apoiam e me aturam, muito obrigado por compartilhar essa jornada comigo.

Agradecimento II:

Gostaria de agradecer primeiro a Deus que tornou tudo poss´ıvel: `

A minha fam´ılia e aos meus pais, Jos´e e Rosalia, que foram minha primeira escola, ensinaram-me os bons valores, a pr´atica do bem, a ´etica de se fazer o que ´e certo e a buscar a igualdade e a justi¸ca. Eles n˜ao mediram esfor¸cos para me oferecer o melhor que puderam. Estendo esse agradecimento `a minha av´o, minha segunda m˜ae, e a todas as amigas que trabalharam em minha casa que com sua do¸cura e amor me ensinaram a viver. Aos meus melhores amigos, Raphael e Lu´ısa, que estiveram sempre comigo nos momentos alegres e tristes, passaram comigo por muitas fases da vida, mas nunca desisti-ram e me ajudadesisti-ram a atravessar todas as dificuldades. Ajudadesisti-ram-me tamb´em a conhecer a mim mesmo e a lutar pelos nossos direitos.

Aos meus amigos, com os quais partilho as mesmas bandeiras e esperan¸cas, agra-de¸co por todos momentos importantes que tivemos, todas as viagens e partilhas. Todas as vit´orias e tamb´em as derrotas. Obrigado a todos volunt´arios que acreditam, se somam aos projetos e ajudam a construir um mundo melhor.

`

As duas escolas que passei, gostaria de agradecer muito pela minha forma¸c˜ao, me tornaram um ser humano mais equilibrado e cr´ıtico. Centrinho e Gaylussac me concede-ram um amplo conhecimento geral, acadˆemico e de vida. Constru´ıram valores em mim que guardarei para sempre.

(9)

`

A Igreja e aos padres, gostaria de agradecer pelos amigos que s˜ao, pela forma¸c˜ao em busca da Equidade em favor dos menos favorecidos. Por todas oportunidades que tive de servir ao pr´oximo, aos que tinham fome ou quaisquer outras necessidades. Cada grupo, cada debate e cada evento me fizeram ser uma pessoa melhor.

`

A faculdade sem a qual n˜ao poderia ter essa forma¸c˜ao t˜ao ampla e ben´efica. E aos professores por partilharem seus conhecimentos comigo com tanto prazer e zelo. Obrigado por todas as horas gastas na dedica¸c˜ao `a docˆencia confeccionando e corrigindo provas, preparando materiais e aulas.

A todos os meus colegas de faculdade, que me apoiarem sempre nas dificuldades em todos os momentos de estudos antes das provas, mas tamb´em nos momentos de churrasco, Choppadas e cantareiras. Em especial gostaria de agradecer ao Vitor, por todo esfor¸co e dedica¸c˜ao na constru¸c˜ao desse projeto, sem vocˆe nada disso seria poss´ıvel.

(10)

ix

Lista de Figuras

2.1 Desenhos esquem´aticos de casos de vibra¸c˜oes simplificados . . . 5

2.2 Funcionamento do Metodo Runge Kutta 4 ordem [1] . . . 8

2.3 Comunidade online: stackoverflow . . . 9

3.1 Modelo Linear . . . 10

3.2 Solu¸c˜ao Anal´ıtica . . . 11

3.3 Anal´ıtico vs Num´erico com dt=0,02 . . . 13

3.4 Anal´ıtico vs Num´erico com dt=0,01 . . . 13

3.5 Anal´ıtico vs Num´erico com dt=0,005 . . . 14

3.6 Anal´ıtico vs Num´erico com dt=0,001 . . . 15

3.7 Anal´ıtico vs Num´erico com dt=0,02 (superamortecido) . . . 16

3.8 Anal´ıtico vs Num´erico com dt=0,01 (superamortecido) . . . 17

3.9 Anal´ıtico vs Num´erico com dt=0,001 (superamortecido) . . . 17

3.10 Anal´ıtico vs Num´erico com dt=0,0001 (superamortecido) . . . 18

3.11 Modelo N˜ao Linear . . . 19

3.12 Influˆencia do dt . . . 21

3.13 Velocidade x Tempo . . . 22

3.14 Acelera¸c˜ao x Tempo . . . 22

3.15 Posi¸c˜ao x Tempo . . . 23

3.16 Deforma¸c˜ao Pl´astica x Tempo . . . 23

5.1 Fun¸c˜ao Runge Kutta 4a Ordem em Python . . . 26

5.2 Fun¸c˜ao Runge Kutta 4a Ordem em Python com Stoperror . . . . 27

5.3 Implementa¸c˜ao do c´odigo para o caso linear . . . 27

(11)

Lista de Tabelas

3.1 Resultados Anal´ıtico vs Num´erico com dt=0,02 . . . 13

3.2 Resultados Anal´ıtico vs Num´erico com dt=0,01 . . . 14

3.3 Resultados Anal´ıtico vs Num´erico com dt=0,005 . . . 14

3.4 Resultados Anal´ıtico vs Num´erico com dt=0,001 . . . 15

3.5 Compara¸c˜ao do tempo de processamento em rela¸c˜ao ao dt . . . 16 3.6 Compara¸c˜ao do tempo de processamento em rela¸c˜ao ao dt (superamortecido) 18

(12)

Conte´

udo

Resumo iv Abstract v Agradecimentos vii Lista de Figuras ix Lista de Tabelas x 1 Introdu¸c˜ao 1 1.1 Motiva¸c˜ao . . . 2 1.2 Objetivo . . . 2 1.3 Metodologia . . . 2

2 Revis˜ao Bibliogr´afica 4 2.1 Vibra¸c˜oes Mecˆanicas . . . 4

2.1.1 Classifica¸c˜ao de Vibra¸c˜oes . . . 4

2.1.2 Componentes de Sistemas Discretos . . . 5

2.2 Vibra¸c˜oes N˜ao Lineares . . . 5

2.2.1 Fontes de n˜ao linearidade . . . 6

2.3 M´etodos Num´ericos . . . 6

2.3.1 Runge Kutta de 4a Ordem . . . . 6

2.4 Python . . . 8

3 Aplica¸c˜ao do M´etodo Num´erico 10 3.1 Caso Linear . . . 10

3.1.1 Resolu¸c˜ao Anal´ıtica . . . 11 xi

(13)

3.1.2 Runge-Kutta 4a para solu¸c˜ao linear . . . . 11

3.1.3 Solu¸c˜ao Num´erica . . . 12

3.2 Caso N˜ao-Linear . . . 18

3.2.1 Runge-Kutta 4a ordem para solu¸c˜ao n˜ao-linear . . . 20

3.3 Discuss˜ao de Resultados . . . 21

4 Conclus˜ao 24 4.0.1 Trabalhos Futuros . . . 24

Referˆencias Bibliogr´aficas 25 5 Appendix 26 5.1 C´odigo Fonte . . . 26

(14)

Cap´ıtulo 1

Introdu¸

ao

A an´alise matem´atica de vibra¸c˜ao de um modelo f´ısico pode ser dividida em 4 passos: Modelagem do sistema, formula¸c˜ao das equa¸c˜oes matem´aticas de governo, solu¸c˜ao destas equa¸c˜oes de governo e interpreta¸c˜ao f´ısica dos resultados.[3]

No primeiro passo de uma an´alise de vibra¸c˜oes, identifica-se a natureza do sistema e todas as vari´aveis f´ısicas relevantes que est˜ao envolvidas.

No segundo passo, aplica-se as leis conhecidas da f´ısica e os princ´ıpios de dinˆ a-mica para se obter as equa¸c˜oes que regem o comportamento do sistema. As restri¸c˜oes geom´etricas, tal qual as rela¸c˜oes cinem´aticas entre deslocamento, velocidade e acelera¸c˜ao, geralmente s˜ao necess´arias para completar a modelagem matem´atica do sistema e para formular as equa¸c˜oes iniciais e/ou de contorno.[3]

No terceiro passo, solu¸c˜oes anal´ıticas ou num´ericas s˜ao aplicadas para o desenvol-vimento de uma equa¸c˜ao ou modelo, que represente o movimento futuro do problema.

Por fim, o quarto passo ´e a interpreta¸c˜ao f´ısica dos resultados obtidos. Sendo isso, fundamental para a valida¸c˜ao do modelo matem´atico e confirma¸c˜ao de sua acuracidade.

Muitos problemas de engenharia podem ser modelados matematicamente, sendo uma representa¸c˜ao idealizada e simplificada de algum fenˆomeno natural. As solu¸c˜oes das equa¸c˜oes devem respeitar os aspectos mais relevantes no comportamento do problema modelado. No entanto, muitas vezes n˜ao ´e poss´ıvel justificar a utiliza¸c˜ao de hip´oteses simplificadoras que modificam a natureza do problema, tal como a linearidade. Isso quer dizer, n˜ao se pode for¸car um problema a satisfazer hip´oteses que permitiriam a obten¸c˜ao de uma solu¸c˜ao exata. Assim, se faz necess´ario a utiliza¸c˜ao de m´etodos num´ericos para a sua solu¸c˜ao.[2]

(15)

1.1

Motiva¸

ao

Quando se fala em vibra¸c˜oes, seu comportamento f´ısico s´o pode ser demonstrado, em sua maioria, atrav´es de modelos matem´aticos n˜ao-lineares devido `a sua alta comple-xidade e vari´aveis envolvidas no ambiente em quest˜ao.

Como esse modelos matem´aticos, em sua maioria, somente podem ser resolvidos atrav´es de m´etodos num´ericos, o tema desse trabalho foi escolhido visando obter um melhor entendimento da resolu¸c˜ao desse tipo de problema e a aquisi¸c˜ao de novos conhe-cimentos no processo de desenvolvimento desses modelos

Tendo a compreens˜ao de m´etodos num´ericos almejada e a domina¸c˜ao da linguagem de programa¸c˜ao escolhida nesse trabalho, acredita-se que abre-se um caminho n˜ao s´o para a resolu¸c˜ao de diversos outros problemas cl´assicos da engenharia, mas tamb´em para diversos problemas modernos que lidamos no mercado de trabalho na atualidade.

Assim, esse trabalho visa aplicar os conhecimentos adquiridos durante o curso com os fundamentos de uma ferramenta de programa¸c˜ao para que, a uni˜ao dessas informa¸c˜oes sirva de carga para o sucesso profissional.

1.2

Objetivo

O objetivo desse trabalho ´e expor o desenvolvimento e implementa¸c˜ao do m´etodo de Runge Kuta de 4a ordem para solu¸c˜ao de um modelo de vibra¸c˜ao n˜ao-linear, discorrer

erros envolvidos, sua constru¸c˜ao na linguagem de programa¸c˜ao e interpreta¸c˜ao f´ısica dos resultados.

O prop´osito ´e otimizar o modelo matem´atico de forma que possa ser utilizado para a solu¸c˜ao de problemas reais de vibra¸c˜ao n˜ao-lineares de materiais elasto-viscopl´asticos e ao fim do trabalho ter conhecimento suficientes de Python para realizar an´alises mais complexas e desenvolver o c´odigo mais r´apido

1.3

Metodologia

Estabelecido um problema simplificado de vibra¸c˜ao linear em que seja poss´ıvel realizar a sua solu¸c˜ao anal´ıtica, ser´a criado uma representa¸c˜ao em espa¸co de estados a ser resolvida a partir das equa¸c˜oes que o regem. Assim, o m´etodo num´erico de

(16)

Runge-3 Kutta de 4a ordem ser´a escrito em Python e implementado no problema para encontrar

sua solu¸c˜ao. Como nesse primeiro momento, o problema escolhido ´e linear, os resultados dos m´etodos de solu¸c˜ao anal´ıtico e num´erico ser˜ao amplamente discutidos. Varia¸c˜oes dos inputs, configura¸c˜oes do m´etodo e suas particularidades tamb´em ser˜ao discorridos visando a valida¸c˜ao da programa¸c˜ao realizada.

Tendo o c´odigo num´erico inicial validado, a segunda parte do trabalho ´e o estabele-cido um problema real de vibra¸c˜ao n˜ao-linear, ligeiramente parecido com inicial utilizado. Realizando modifica¸c˜oes no c´odigo prevenidos de assuntos discutidos no primeiro mo-mento visando sua otimiza¸c˜ao e melhor resolu¸c˜ao do novo problema, o segundo modelo ser´a resolvido e seus resultados f´ısicos discutidos.

Assim, ser´a poss´ıvel ter uma an´alise detalhada de uma simula¸c˜ao de impacto, obtendo resultados comportamentais do material escolhido e nuances do m´etodo num´erico escolhido.

(17)

Cap´ıtulo 2

Revis˜

ao Bibliogr´

afica

2.1

Vibra¸

oes Mecˆ

anicas

2.1.1

Classifica¸

ao de Vibra¸

oes

As vibra¸c˜oes mecˆanicas podem ser dividas nos seguintes crit´erios:

Quanto `a excita¸c˜ao: Livres (vibram sem sua frequˆencia natural e n˜ao h´a for¸ca de excita¸c˜ao externa) ou for¸cadas (vibra na frequˆencia de excita¸c˜ao).

Quanto ao amortecimento: Amortecidas ou n˜ao amortecidas.

Quanto ao deslocamento: Retil´ıneo, torsional, ou combina¸c˜ao de ambos. Quanto as propriedades f´ısicas: Discreto (n´umero finito de graus de liberdade) ou cont´ınuo (n´umero infinito de graus de liberdade).

Esse trabalho ser´a focado os casos de vibra¸c˜oes livres, amortecidas, retil´ıneas e discretas, onde pode-se fazer diretas referˆencias a casos do cotidiano, simplificadamente aplicadas.

(18)

5

Figura 2.1: Desenhos esquem´aticos de casos de vibra¸c˜oes simplificados [7]

2.1.2

Componentes de Sistemas Discretos

Sistemas Dinˆamicos s˜ao descritos por equa¸c˜oes diferenciais e, se diferenciam dos Est´aticos, devido `a sequˆencia de sa´ıda depender da sequˆencia de entrada.

Os sistemas n˜ao-lineares s˜ao aqueles que variam no tempo e tamb´em n˜ao atendem ao princ´ıpio da superposi¸c˜ao.

Eles podem ser distintos entre Cont´ınuos ou Discretos, caso as componentes dos vetores de estado pertencerem ao grupo dos n´umeros Reais ou Inteiros, respectivamente. Os sistemas Discretos, podem variar por causa do tempo ou por eventos pontuais e ainda variam caso as componentes dos vetores de estados forem definidas por tempos Reais quaisquer (Tempo Cont´ınuo) ou Naturais espec´ıficos (Tempo Discreto).

Nesse trabalho, ser´a focado casos de Sistemas Dinˆamicos, variantes no tempo, n˜ ao-lineares, de Estado Discreto, Dirigidos por Eventos e de Tempo Discreto.

2.2

Vibra¸

oes N˜

ao Lineares

A natureza ´e essencialmente n˜ao linear a sua descri¸c˜ao a partir de modelos n˜ao lineares ´e mais realista. Assim, os modelos de vibra¸c˜oes n˜ao lineares englobam uma variedade maior de fenˆomenos da natureza.

(19)

pois o princ´ıpio da superposi¸c˜ao linear n˜ao ´e v´alida [7], ou seja, a resposta do sistema para a soma de todos os seus est´ımulos n˜ao ´e igual a resposta se cada est´ımulo fosse aplicado separadamente.

2.2.1

Fontes de n˜

ao linearidade

Nota-se que se pode considerar n˜ao linearidades f´ısicas (ou materiais) ou geom´ etri-cas dos sistemas envolvidos. Do ponto de vista f´ısico, pode-se considerar n˜ao linearidades constitutivas como comportamento el´asticos n˜ao lineares, plasticidade ou outros fenˆ ome-nos correlatos. Do ponto de vista geom´etrico, podemos pensar em impactos ou grandes deslocamentos. [7]

2.3

etodos Num´

ericos

A utiliza¸c˜ao de m´etodos num´ericos para a solu¸c˜ao de equa¸c˜oes diferenciais ordin´ a-rias com problema de valor inicial ´e de fundamental importˆancia e ser´a resolvido atrav´es do m´etodo de diferen¸cas finitas. A ideia geral desses m´etodos ´e a discretiza¸c˜ao do dom´ınio e a substitui¸c˜ao das derivadas presentes no problema por aproxima¸c˜oes envolvendo o valor num´erico da fun¸c˜ao.[4]

Alguns exemplos desse tipo de m´etodo s˜ao: M´etodo de Euler, trap´ezio, Runge-Kutta e predictor corrector. Ap´os an´alise das particularidades de cada m´etodo, levando em conta o poder computacional exigido para se obter resultados satisfat´orios para o presente trabalho, foi escolhido o m´etodo de Runge Kutta de quarta ordem para ser trabalhado.

2.3.1

Runge Kutta de 4

a

Ordem

O m´etodo de Runge-Kutta ´e provavelmente um dos m´etodos mais populares e o de quarta ordem ´e um dos mais utilizados para obter solu¸c˜oes aproximadas de valor inicial. Cada m´etodo de Runge-Kutta consiste em comparar um polinˆomio de Taylor apropriado para eliminar o c´alculo das derivadas, fazendo-se v´arias avalia¸c˜oes da fun¸c˜ao a cada passo. O m´etodo de Runge-Kutta pode ser entendido como um aperfei¸coamento do m´etodo de Euler, com uma melhor estimativa da derivada da fun¸c˜ao.[1] No m´etodo

(20)

7 de Euler a estimativa do valor de yn+1 ´e realizado com o valor de yn com a derivada no

ponto xn No m´etodo de Runge-Kutta, busca-se uma melhor estimativa da derivada com a

avalia¸c˜ao da fun¸c˜ao em mais pontos no intervalo [xn,xn+1]. Um m´etodo de Runge-Kutta

de ordem n possui um erro da ordem de 0(hn+1).[4]

De modo geral, o m´etodo de Runge-Kutta ´e dado por

yi+1 = yi+ h(inclina¸c˜ao) (2.1)

onde inclina¸c˜ao ´e uma constante que ´e obtida atrav´es do c´alculo da inclina¸c˜ao em v´arios pontos no interior do subintervalo. A ordem do m´etodo indica o n´umero de pontos usado em um subintervalo para determinar o valor da inclina¸c˜ao, o m´etodo de Runge-Kutta de segunda ordem utiliza a inclina¸c˜ao em dois pontos, o m´etodo de terceira ordem utiliza trˆes pontos, e assim por diante.[3]

A equa¸c˜ao cl´assica para o m´etodo Runge Kutta de 4 ordem ´e

yi+1= yi+ 1 6(K1+ 2K2+ 2K3+ K4) (2.2) Onde: K1 = f (xi, yi)K2 = f (xi+ 1 2h, yi 1 2K1h)K3 = f (xi+ 1 2h, 1 2K2h)K4 = f (xi+ h, K3h) (2.3) O m´etodo cl´assico de Runge-Kutta e ilustrado esquematicamente na figura 2.2. Os gr´aficos a, b, c e d, mostram a determina¸c˜ao do passo. Dentro da figura 2.2 O gr´afico (a) mostra o passo k1 e como ele foi utilizado para o k2; O gr´afico (b) mostra como o passo k2 e utilizado para achar o k3; O gr´afico (c) mostra como k3 e utilizado para achar k4; O gr´afico (d) ilustra a aplica¸c˜ao da equa¸c˜ao tal, onde o passo e usado pra calcular y+1 utilizando a media dos passos k1,k2, k3 e k4.[1]

(21)

Figura 2.2: Funcionamento do Metodo Runge Kutta 4 ordem [1]

2.4

Python

Para este trabalho, a linguagem escolhida para se escrever e resolver o m´etodo num´erico foi a Python, criada e lan¸cada por Guido Van Rosum em 1991. Essa linguagem est´a se tornando cada vez mais comum na ind´ustria 4.0 com o crescimento de novas ´areas que trabalham com grandes dados, ciˆencia de dados e machine learning, al´em de ser comumente utilizada para fins acadˆemicos no ramo de engenharia.

Em resumo, Python ´e uma linguagem funcional, ou seja, faz uso principalmente de fun¸c˜oes matem´aticas e o valor de retorno ´e o resultado das fun¸c˜oes de entrada; In-terpretada: significa que ela ´e executada por um interpretador para posteriormente ser executada pelo processador; Imperativa: descreve as a¸c˜oes por meio de comandos que variam o estado de um programa; Orientada para objetos (POO): cont´em dados na forma de campo e c´odigos na forma de procedimentos; De alto n´ıvel: significa ser pr´oxima `a lin-guagem humana, o que permite ser facilmente aprendida e n˜ao requere conhecimento em um n´ıvel elevado sobre o processamento de computadores para masteriz´a-la; De tipagem dinˆamica: n˜ao exige declara¸c˜ao de dados pois s˜ao capazes testar e escolher as vari´aveis durante a pr´opria execu¸c˜ao.

Os principais pontos para esse escolha s˜ao: (1) ter um gerenciamento de mem´oria autom´atico o que a torna automatizadamente eficiente; (2) ser orientada a objetos, o que

(22)

9 facilita a programa¸c˜ao; (3) vasta biblioteca de fun¸c˜oes prontas e otimizadas que se pode utilizar;(4) tipagem dinˆamica, diferente da linguagem aprendida no curso e (4) grande comunidade de usu´arios e f´oruns de discuss˜ao, o que facilita muito no suporte a eventuais problemas. Abaixo pode-se ver o f´orum pt.stackoverflow.com onde usu´ario de diversas linguagens se ajudam e discutem sobre sua utiliza¸c˜ao com o mundo. Uma das maiores comunidades de usu´arios ´e em rela¸c˜ao ao Python.

(23)

Cap´ıtulo 3

Aplica¸

ao do M´

etodo Num´

erico

3.1

Caso Linear

Para a valida¸c˜ao do m´etodo num´erico, em um caso linear, Foi escolhido um pro-blema em que seja conhecida sua solu¸c˜ao anal´ıtica para realizar a compara¸c˜ao dos re-sultados. Um caso cl´assico de vibra¸c˜ao, pr´oximo ao problema n˜ao linear desejado, ser´a representado a seguir.

O exemplo escolhido ´e uma representa¸c˜ao de um autom´ovel com sistema de amorte-cimento contra impactos. Esse sistemas, pode ser dimensionado nesse primeiro momento como um sistema massa-mola-amortecedor, conforme a figura abaixo.

(24)

11 Sendo corpo de massa m a uma velocidade V, possuindo um amortecedor de coe-ficiente de amortecimento c e uma mola de contante el´astica k acoplados. O objetivo, ´e escrever uma equa¸c˜ao que descreva o movimento do corpo.

3.1.1

Resolu¸

ao Anal´ıtica

Pode-se encontrar em diversas literaturas, sua solu¸c˜ao anal´ıtica: [7]

x(t) = e−2mc t  D1e √ (2mc )2k m  t + D2e √ −( c 2m)2− k m  t (3.1) Onde suas constante s˜ao definidas pelas condi¸c˜oes iniciais do problema.

Neste caso, vamos consider´a-lo como subamortecido, para que a sua visualiza¸c˜ao seja interessante. Assim, a rela¸c˜ao c2− 4mk 6 0 deve ser verdadeira [7].

Escolheu-se assim, as seguintes condi¸c˜oes iniciais:

v = 10m/s2; c = 800N s/m ; k = 50000N/m ; m = 250kg (3.2) Pode-se visualizar a solu¸c˜ao no gr´afico a seguir:

Figura 3.2: Solu¸c˜ao Anal´ıtica

3.1.2

Runge-Kutta 4

a

para solu¸

ao linear

A forma mais simpl´oria de se escrever a l´ogica do m´etodo de Runge Kutta descrito acima, ´e a representada abaixo em pseudo-c´odigo.

(25)

Input: Parˆametros do problema: Massa, velocidade inicial, coeficientes de mola e amortecimento, dt, no de passos

Output: Posi¸c˜ao e velocidade a cada instante

Receba os valores dos parˆametros e crie a matriz A e Z0 for i = 0 to n´umero de passos desejado do

Calcule o valor de K1, utilize o k anterior para calcular o k adjacente at´e o k4 calcule o z com os valores de k1, k2, k3 e k4

adicione os resultados no vetor de posi¸c˜ao e velocidade end

Plote velocidade e Posi¸c˜ao em rela¸c˜ao ao tempo

Algorithm 1: C´odigo Runge Kutta 4a ordem simples

Na pr´oxima sess˜ao, o c´odigo ser´a validado para um caso n˜ao linear, que possui uma solu¸c˜ao anal´ıtica conhecida. Haver´a uma discuss˜ao sobre os erros envolvidos, sua otimi-za¸c˜ao, e como ser´a adaptado para a finalidade desejada, que ´e a resolu¸c˜ao de um caso de vibra¸c˜ao n˜ao linear. Assim, tamb´em pode-se estudar a sua convergˆencia. Diferentemente de um caso linear, em que pode-se realizar a compara¸c˜ao entre os resultados num´ericos e anal´ıticos, na maioria dos casos n˜ao lineares isso n˜ao ´e poss´ıvel de ser realizado.

3.1.3

Solu¸

ao Num´

erica

Para comparar-se a efetividade do m´etodo num´erico aplicado. visualiza¸c˜oes e ta-belas foram montadas, variando-se o dt utilizado, isto ´e, o passo do m´etodo e plotando o resultado das duas solu¸c˜oes sobrepostos. O erro utilizado foi o erro relativo [4]

Erro(%) = |Ra− Rn Ra

| × 100% (3.3) Onde Ra e Rn representam, respectivamente, os resultados anal´ıticos e num´ericos.

Assim, dado o c´odigo descrito em 3.1, e a solu¸c˜ao anal´ıtica proposta em 3.2, pode-mos ver a evolu¸c˜ao da solu¸c˜ao conforme a escolha do valor de dt.

(26)

13

Figura 3.3: Anal´ıtico vs Num´erico com dt=0,02

Tempo (s) Xa (m) Xn (m) Erro (%)

1 0,03976 0,06879 58,33256 1,5 0,01420 0,02478 43,71289 2 0,00138 -0,00959 96,42742 2,5 -0,00197 -0,02323 177,939

Tabela 3.1: Resultados Anal´ıtico vs Num´erico com dt=0,02

(27)

Tempo (s) Xa (m) Xn (m) Erro (%)

1 0,03977 0,05091 22,39612 1,5 0,01420 0,01650 9,50232 2 0,00138 -0,00431 49,97257 2,5 -0,00196 -0,01051 71,50235

Tabela 3.2: Resultados Anal´ıtico vs Num´erico com dt=0,01

Figura 3.5: Anal´ıtico vs Num´erico com dt=0,005

Tempo (s) Xa (m) Xn (m) Erro (%)

1 0,03977 0,04462 9,76004 1,5 0,01420 0,01484 2,64133 2 0,00138 -0,00143 24,63457 2,5 -0,00196 -0,00586 32,67546 Tabela 3.3: Resultados Anal´ıtico vs Num´erico com dt=0,005

(28)

15

Figura 3.6: Anal´ıtico vs Num´erico com dt=0,001

Tempo (s) Xa (m) Xn (m) Erro (%)

1 0,03976 0,04063 1,74546 1,5 0,01420 0,01427 0,25787 2 0,00137 0,00083 4,84705 2,5 -0,00195 -0,00269 6,14527 Tabela 3.4: Resultados Anal´ıtico vs Num´erico com dt=0,001

Como se pode observar nos gr´aficos acima e mostrados nas tabelas, o m´etodo das diferen¸cas finitas Runge Kutta de 4a ordem torna-se preciso quanto menor for o intervalo de tempo dt escolhido. Pode-se verificar isso atrav´es dos erros relativos nas tabelas. Al´em disso, com o estudo feito baixo, rodou-se o mesmo c´odigo com o intuito de avaliar a a influˆencia da escolha do dt no tempo de processamento do programa. Assim, pode-se tomar crit´erios para escolher um dt adequado futuramente para a resolu¸c˜ao do c´odigo n˜ao linear.

(29)

dt no passos loop (ns) total (s) 0,02 250 41,9 0,016189 0,01 500 41,9 0,019234 0,005 1000 42,1 0,028955 0,0025 2000 57 0,056375 0,001 5000 71,8 0,155143 0,0001 50000 71,7 1,501796

Tabela 3.5: Compara¸c˜ao do tempo de processamento em rela¸c˜ao ao dt

Atento ao fato de que, o tempo de processamento necess´ario para a resolu¸c˜ao desse c´odigo ´e linearmente proporcional ao dt escolhido. Para as ordens de grandeza que o trabalho se prop˜oe a trabalhar, pode-se verificar que os estudos a prosseguir, n˜ao demandar˜ao uma preocupa¸c˜ao com o poder computacional dispon´ıvel para se obter uma an´alise com a acur´acia desejada.

Como o caso a ser resolvido a seguir ´e superamortecido, uma an´alise semelhante foi realizada nesse fase de valida¸c˜ao do c´odigo. Consegue-se observar uma evolu¸c˜ao seme-lhante de acordo com a escolha do dt, como representado abaixo:

(30)

17

Figura 3.8: Anal´ıtico vs Num´erico com dt=0,01 (superamortecido)

(31)

O mesmo estudo do tempo de processamento foi realizado, e suas conclus˜oes est˜ao alinhadas com o caso anterior pois os resultados foram semelhantes.

dt no passos loop (ns) total (s)

0,02 250 47,1 0,018198 0,01 500 47,1 0,021621 0,001 5000 80,7 0,174397 0,0001 50000 81,3 1,678957

Tabela 3.6: Compara¸c˜ao do tempo de processamento em rela¸c˜ao ao dt (superamortecido)

3.2

Caso N˜

ao-Linear

Os modelos de vibra¸c˜ao n˜ao lineares, raramente possuem solu¸c˜oes anal´ıticas, em m´etodos diretos apenas para casos extremamente espec´ıficos. Desta forma, t´ecnicas ro-bustas e universais precisam trabalhar com vers˜oes linearizadas dessas equa¸c˜oes, o que permite o uso dos m´etodo descrito anteriormente nesse trabalho.

Para a solu¸c˜ao do caso n˜ao linear proposto neste trabalho e exemplificado na fi-gura 3.1, pode-se utilizar o mesmo conceito discorrido na sess˜ao anterior. Por´em, iremos realizar modifica¸c˜oes no c´odigo para que seja poss´ıvel a sua resolu¸c˜ao e para garantirmos a convergˆencia nos resultados.

(32)

19

Figura 3.11: Modelo N˜ao Linear Para este caso de amortecimento, temos que:

m¨x = F (x, ˙x) (3.4) F = k(x − xp) (3.5) ˙xp = F c N ; xp = (t = 0) = 0 (3.6) ˙xp = F − F y c N ; F = Fy+ C( ˙xp)N1quandoF > Fy (3.7)

Onde k, c e N s˜ao constantes positivas que caracterizam o amortecedor e xp

re-presenta sua deforma¸c˜ao pl´astica. Para a resolu¸c˜ao do c´odigo, a seguinte mudan¸ca de vari´aveis deve ser realizada: z1 = x, z2 = ˙x, z3 = xp, tomando assim, a nota¸c˜ao vetorial

final em espa¸cos de estados dessa resolu¸c˜ao:

˙z =      ˙ z1 ˙ z2 ˙ z3      ; f (z, t) =      f1(z, t) f2(z, t) f3(z, t)      =      z2 −k m(z1 − z2) (k(z1−z3)c )N      ; z0 =      0 v 0      (3.8)

Diferentemente da solu¸c˜ao linear, aqui n˜ao temos um modelo para compararmos e vermos se a simula¸c˜ao est´a convergindo. Por´em, com as an´alises anteriores de dt e os erros relativos envolvidos, pode-se tirar conclus˜oes suficientes para modificar o c´odigo se iniciar o modelo com bons parˆametros que far˜ao com que seus resultados sejam aceit´aveis e pr´oximos `a realidade.

(33)

3.2.1

Runge-Kutta 4

a

ordem para solu¸

ao n˜

ao-linear

At´e o momento, tem-se escolhido a quantidade de passos do c´odigo como ”input”, ou seja, quantas vezes nosso m´etodo num´erico ir´a calcular o pr´oximo valor da vari´avel desejada ´e escolhido manualmente. Com uma ligeira modifica¸c˜ao no c´odigo, pode-se otimiz´a-lo, para que seja poss´ıvel realizar um estudo de convergˆencia do modelo.

O novo c´odigo ´e descrito a seguir:

Input: Parˆametros do problema: Massa, velocidade inicial, coeficientes de mola e amortecimento, dt, erro, no m´aximo de passos

Output: Posi¸c˜ao, velocidade e deforma¸c˜ao pl´astica a cada instante

Receba os valores dos parˆametros e crie a matriz A e Z0 e inicie o valor de i como 0 while i < nomaximodepassos to and Z[i + 1] − Z[1] < erro do

Calcule o valor de K1, utilize o k anterior para calcular o k adjacente at´e o k4 calcule o z com os valores de k1,k2,k3, k4 e dt

adicione os resultados no vetor de posi¸c˜ao, velocidade e deforma¸c˜ao Adicione 1 `a vari´avel i

end

Plote velocidade, Posi¸c˜ao e deforma¸c˜ao em rela¸c˜ao ao tempo

Algorithm 2: C´odigo Runge Kutta 4a ordem com crit´erio de parada

Utilizando crit´erios de erro absoluto, baseados nos estudos anteriores para o caso linear, levando em considera¸c˜ao conceitos como underflow explicados anteriormente na linguagem escolhida podemos saber o n´umero de passos exatos em que a condi¸c˜ao do erro ´e satis-feita, assim, descobrindo a quantidade de passos necess´arios para o programa representar adequadamente o problema proposto.

Consegue-se mostrar de uma forma simples, que o dt escolhido, ainda influencia em muito no resultado obtido para o caso linear, Como mostrado abaixo.

(34)

21

Figura 3.12: Influˆencia do dt

3.3

Discuss˜

ao de Resultados

Tendo o c´odigo completo do jeito planejado, simula¸c˜oes do comportamento do impacto foram realizadas. O material escolhido para o teste ´e um Pol´ımero Nylon com as seguintes propriedades:

c = 500N s/m ; k = 4000N/m (3.9) Este material foi escolhido devido a ampla aplica¸c˜ao de pol´ımeros dessa natureza vem sendo cada vez mais comumente utilizado em toda a ind´ustria. As condi¸c˜oes de contorno escolhidas para a simula¸c˜ao de impacto est˜ao descritas a seguir:

v = 2, 7m/s2; m = 50kg (3.10) Os inputs do m´etodo num´erico fora deliberados como abaixo, levando em conta a acur´acia do resultado desejada e o poder computacional desejado para atingir tal. Assim, tando o dt quando o stoperror escolhidos foram baseados nos resultados do cap´ıtulo do anterior:

dt = 10 × 10−5; stoperror = 10 × 10−9 (3.11) E ent˜ao, resolvendo o c´odigo como proposto em algorithm2 com as proprieda-des mencionadas acima, consegue-se expressar os resultados da equa¸c˜ao de estado 3.8,

(35)

tornando poss´ıvel uma an´alise do comportamento do material em seu impacto. Abaixo, observado como a velocidade decai no tempo, pode-se obter o tempo de dura¸c˜ao do im-pacto, isto ´e, da velocidade inicial at´e o momento em que o carro para completamente.

Figura 3.13: Velocidade x Tempo

Obtendo esse estudo da solu¸c˜ao da equa¸c˜ao 3.8, pode-se ir al´em e verificar o com-portamento da acelera¸c˜ao no teste. Representado abaixo na figura 3.14, pode observar um m´aximo de desacelera¸c˜ao de 1.2g. Levando em conta estudos que mostram que a partir de 7g, j´a come¸ca a ser mal´efico para o ser humano, o material escolhido obteve um bom resultado ao teste submetido.

Figura 3.14: Acelera¸c˜ao x Tempo

(36)

23 at´e a sua total parada, e o efeito sofrido pelo material, isto ´e, a deforma¸c˜ao pl´astica que o mesmo foi submetido. Ambos tamb´em resultados da solu¸c˜ao da equa¸c˜ao 3.8

Figura 3.15: Posi¸c˜ao x Tempo

(37)

Cap´ıtulo 4

Conclus˜

ao

Nesse trabalho, foi implementado um c´odigo na linguagem Python em busca de solu¸c˜ao de equa¸c˜oes diferenciais ordin´arias; analisar as vibra¸c˜oes e impacto de um ve´ıculo e propor o estudo de um sistema de amortecimento n˜ao-linear elasto-viscopl´astico.

Quanto o m´etodo Runge Kutta de 4a ordem, para a solu¸c˜ao das equa¸c˜oes o mesmo

se mostrou bastante eficiente quanto comparado `a solu¸c˜oes anal´ıticas, sem demandar tamanho gasto computacional. A linguagem escolhida se demonstrou extremante eficiente e de f´acil utiliza¸c˜ao. Todo e qualquer problema com sua tipografia e peculiaridades, foram facilmente resolvidos devido devido `a comunidade que utiliza o Python para diversas ´areas da engenharia, e computa¸c˜ao.

Na simula¸c˜ao do impacto do caso n˜ao linear, obteve-se resultados esperados devido ao material escolhido. E o trabalho em si permitiu uma boa an´alise do seu comportamento. Como o objetivo proposto do material era servir de amortecedor em um impacto, obteve-se bons resultados de desacelera¸c˜ao e coerentes para uma frenagem segura para o ser-humano.

4.0.1

Trabalhos Futuros

O trabalho mostrou o grande potencial de aplica¸c˜ao desse tipo de material no uso da absor¸c˜ao de energia de impacto, estimulando o prosseguimento para novos estudos ex-perimentais. Assim como a an´alise te´orica de outros materiais envolvidos para averiguar o seu comportamento. Tamb´em, como trabalhos futuros, pode-se destacar altera¸c˜ao do sistema a ser estudado, com o objetivo de realizar diversas outras simula¸c˜oes de compor-tamento n˜ao lineares e se aprofundar no assunto e influˆencia das propriedades do material.

(38)

25

Bibliografia

[1] VALLE, K. N. F. , M´etodos num´ericos de Euler e Runge-Kutta, Monografia (Especi-aliza¸c˜ao), Programa de P´os-gradua¸c˜ao em Matem´atica Para Professores Com ˆEnfase em C´alculo, Universidade Federal de Minas Gerais, Belo Horizonte, 2012.

[2] CUMINATO, J. A.MENEGUETTE JUNIOR, M. , Discretiza¸c˜ao de equa¸c˜oes dife-renciais parciais: t´ecnicas de diferen¸cas finitas, Rio de Janeiro: SBM, 2013.

[3] AMMOS, VISH S. , NUMERICAL METHODS FOR ENGINEERS AND SCIEN-TISTS, An Introdution with applications using MATLAB, Third Edition, 2014. [4] STERZA, R. L.; BRANDI, A. C. , Compara¸c˜ao entre m´etodos num´ericos:

Runge-Kutta de quarta ordem e previsor-corretor, Revista Eletrˆonica Paulista de Matem´ a-tica, Bauru, v. 7, p. 12-22, dez. 2016. Edi¸c˜ao ERMAC.

[5] BARATTO, G. , Solu¸c˜ao de equa¸c˜oes diferenciais ordin´arias usando m´etodos num´ e-ricos, Solu¸c˜ao de equa¸c˜oes diferenciais ordin´arias usando m´etodos num´ericos.

[6] SAVI, M. A.;PAULA, A. S. , Vibra¸c˜oes Mecˆanicas, 1. e.d. - Rio de Janeiro. LTC, 2017

[7] GRHAM, S. KELLY, MECHANICAL VIBRATIONS, Theory and Applications, SI Edition,The University of akron, 2012

[8] MARC, S. W.;DAVID, L. M.;STEPHEN, V. M.,GUIDELINE FOR SAFETY HU-MAN EXPOSURE TO IMPACT ACCELERATION, Naval Biodynamics Labora-tory, 2004

(39)

Cap´ıtulo 5

Appendix

5.1

odigo Fonte

Figura 5.1: Fun¸c˜ao Runge Kutta 4a Ordem em Python

(40)

27

Figura 5.2: Fun¸c˜ao Runge Kutta 4a Ordem em Python com Stoperror

(41)

Referências

Documentos relacionados

Address GPS Coordinates Zona Industrial Pintéus Manjoeira..

Fazendo uma correspondência funcional, os granulócitos tipo I seriam os neutrófilos (núcleo riniforme e geralmente bi ou trilobulado, com grânulos esparsos homogeneamente

a) mudança do objeto social, salvo quando o patrimônio cindido for vertido para sociedade cuja atividade preponderante coincida com a decorrente do objeto social da

Dispondo o tribunal de Soure de sala de audiências com condições para a realização das diligências, com cumprimento das orientações das autoridades de saúde, e

o vendedor de sonhos e a revolu o dos an nimos A Paz meu querido parabéns pelo ótimo trabalho do seu Blog em divulgar seus abençoados livros em PDF tenho o link de seu Blog

Convencional Marcha Picada.. Classificação

O produto não deve ser usado por pacientes alérgicos a medicamentos à base de ferro, bem como por aqueles que apresentem hipersensibilidade aos componentes da fórmula. Não deve

Paranoicos comportam-se como se o ar estivesse repleto de mensagens codificadas ridicularizando- -os ou conspirando sua destruição. Por décadas o Estado da África do Sul viveu em