Sei sulla pagina 1di 3

USO DO PYTHON COMO LABORATRIO VIRTUAL NA FSICA

Carlos Alberto de Souza Filho1, Edneide Florivalda Ramos Ramalho2, Alexandre Oliveira Silva3, Jandrews Lins Gomes4 e Jairo Ricardo Rocha de Oliveira5

Introduo
Muitos experimentos que realizados nos laboratrios de fsica so de difcil controle. Alm disso, esto envolvidos os altos custos em adquiri-los. Durante a realizao de um dado experimento aparecem dificuldades como realizar medidas de algumas grandezas fsicas envolvidas naquele fenmeno. A simples visualizao de experimentos reais realizados em laboratrio, muitas vezes difcil por ocorrerem muito rpido, tempos curtos, e algumas vezes fora da percepo humana, da audio, viso, etc devido a nossa limitada capacidade sensorial, necessitando de auxlio de algum instrumento de medio mais sofisticado. O uso de simulao para mimetizar os fenmenos pode resolver este tipo de dificuldade. Lanamos mos das linguagens interativas Python e Visual Python (VPython) [1], para simular diversos experimentos fsicos de laboratrio.

pedaggico, que ajuda a substituir idias comuns por idias cientficas. No basta ter somente o aprendizado terico, isto , a prtica uma forma de melhoramento da compreenso do contedo que esta sendo assimilado pelos alunos, alm de funcionar como uma espcie de facilitador e motivador do estudo. O grupo PET-Fsica da UFRPE vem desenvolvendo, no contexto educacional, com o VPython, simulaes de fenmenos da mecnica clssica at o presente momento. Durante o processo de transformar as equaes dos fenmenos conhecidos em algoritmo computacional, nos deparamos com a dificuldade de converter as equaes em linha de cdigo em VPython, pois normalmente, temos que integrar numericamente equaes diferenciais matemticas. Inicialmente, adotamos o algoritmo de Euler por ser de fcil entendimento e implementao. Porm, nota-se uma ligeira discrepncia entre o resultado esperado e o simulado, pois o algoritmo de Euler no tem preciso suficiente para atender um tempo grande, alguns minutos, de simulao. Na tentativa de sanar este inconveniente adotamos o procedimento de ajustar o prprio algoritmo de Euler introduzindo um melhoramento na simulao com o uso do algoritmo de Euler modificado. Este inconveniente, tambm, pode ser tratado com o algoritmo que responde melhor preditor-corretor, que faz correo de ordem mais alta com ajuda do algoritmo de Euler modificado. O algoritmo de Euler usado como uma primeira avaliao (predio), para em seguida usar este resultado para fazer a correo com prprio algoritmo de Euler modificado. Os algoritmos so descritos [3] como segue: Algoritmo de Euler A soluo numrica da equao diferencial ordinria (EDO) : . (1)

Material e mtodos
Com o advento dos computadores modernos de mesa, o microcomputador pessoal passa ser um instrumento de uso importante tanto no contexto de ensino-aprendizagem quanto de pesquisa para investigar e simular diversas fenomenologias nas reas das cincias naturais e humanas. A utilizao da metodologia de ensino experimental, ou ensino prtico, realizado em laboratrios, com demonstrao de fenmenos, realizao de prticas que so relacionadas com os conceitos e leis, propicia a aproximao do ensino com a prpria estrutura da Fsica, que basicamente experimental, onde o experimento considerado como ferramenta para a compreenso de conceitos, princpios, etc. Pode-se inclusive afirmar que a experimentao desempenha um papel insubstituvel no ensino de Fsica [2], ou seja, experincias reais ou simulaes fornecem um ambiente particularmente rico do ponto de vista

________________ 1. Estudante do PET-Fsica do Curso de Licenciatura em Fsica do Departamento de Fsica, Universidade Federal Rural de Pernambuco, Rua Dom Manoel de Medeiros S/N, Dois Irmos, Recife, CEP 52171-900. E-mail: carloscasf@hotmail.com 2. Estudante do PET-Fsica do Curso de Licenciatura em Fsica do Departamento de Fsica, Universidade Federal Rural de Pernambuco, Rua Dom Manoel de Medeiros S/N, Dois Irmos, Recife, CEP 52171-900. 3. Estudante do PET-Fsica do Curso de Licenciatura em Fsica do Departamento de Fsica, Universidade Federal Rural de Pernambuco, Rua Dom Manoel de Medeiros S/N, Dois Irmos, Recife, CEP 52171-900. 4. Estudante do PET-Fsica do Curso de Licenciatura em Fsica do Departamento de Fsica, Universidade Federal Rural de Pernambuco, Rua Dom Manoel de Medeiros S/N, Dois Irmos, Recife, CEP 52171-900. 5. Professor Associado 2 e Tutor do Grupo PET-Fsica do Departamento de Fsica, Universidade Federal Rural de Pernambuco, Rua Dom Manoel de Medeiros S/N, Dois Irmos, Recife, CEP 52171-900. Apoio financeiro: MEC/SeSU.

Onde a forma discreta para v(t) dada por . , (2) (8) Usando a Eq.(1) para definir a EDO da posio, vem , e a Eq.(4) que o algoritmo de Euler modificado , (3) . (10) (9)

se a integral na Eq.(2) for trocada pela equao abaixo

chamamos de algoritmo de Euler. Se a integral for dada pela Eq.(4) o algoritmo dito ser Euler modificado

Substituindo a Eq. (8) em (10), obtemos a equao discreta para a posio . (11)

(4) Portanto, usaremos as Eqs.(8) e (11) para descrever o movimento da bola em queda livre no campo gravitacional da Terra. Segue, agora, o programa em cdigo VPython. #################################### # # # Esse programa descreve o movimento # # de uma bola em queda livre. # # # ################################### from visual import * scene.range= (10,10,10) scene.center= (0,0,0) scene.background= (0,0,0) scene.width= 500 scene.height= 500 # Cria objetos envolvidos bola e piso no fenmeno bola = sphere(pos=(x, y, z), radius = 0.5, color = color.red) piso = box(pos = (0, -6, 0), size=(12,0.2,12), color=color.cyan) dt = 0.01 g = 9.8 t=0 e = 1.0 # em segundos. # em m/s2 # tempo inicial # coeficiente de restituio

Enquanto, as Eqs.(5) e (6) conhecido como o mtodo preditor-corretor (5)

(6)

Neste trabalho iremos simular um corpo em queda livre na presena do campo gravitacional colidindo elasticamente com o solo, isto sem perda de energia, que ser escrito na linguagem Python. Antes de mostrar as linhas de programao, em um exemplo, exporemos a dificuldade de um estudante em mensurar grandeza fsica, como o tempo que um corpo leva para atingir o solo quando deixado cair de uma altura h = 1,0 metro ser t = (2h/g)1/2 = (2x1,0/10,0)1/2 = 0,4 de segundo com uma acelerao gravitacional de 10,0 m/s2. Este tempo curto para ser medido por uma pessoa com um cronmetro digital sendo acionada pela mo do experimentador, que seria introduzido grande quantidade de erro no processo de medio. Na simulao desse tipo de fenmeno podemos controlar a acelerao da gravidade local, altura de queda, velocidade inicial, bem como, a taxa de exibio de quadro de visualizao por segundo para melhor compreenso do fenmeno e as leis fsicas envolvidas. Ou mesmo simular um objeto caindo na gravidade da Lua, g = 1,6 m/s2, ou Jpiter, g = 26 m/s2, sem estarmos l. J que as Leis da Fsica valem em toda parte do Universo como afirma o primeiro postulado da Relatividade de Einstein. Utilizando as Eqs.(1) a (3) para encontrar o velocidade do corpo em queda livre, temos

(7)

h=5 bola.pos = (0, h, 0) bola.velocidade = vector(0,-1.5,0) bola.aceleracao = vector(0, -g, 0) y = bola.pos vy = bola.velocidade bv = arrow(pos=bola.pos, axis=bola.velocidade, color = color.yellow) bola.trail = curve(color = bola.color) while( 1==1): rate(100) bola.velocidade += bola.aceleracao*dt bola.pos += bola.velocidade*dt+ 0.5*bola.aceleracao*dt**2

if (bola.pos.y - 0.5) < piso.y: bola.velocidade.y = - e*bola.velocidade.y bv.pos = bola.pos bv.axis = 0.5*bola.velocidade bola.trail.append(pos = bola.pos) t = t + dt

Resultados, Discusso
A simulao realizada mesmo que seja de um exemplo simples da Fsica, pode resultar a melhoria da compreenso fenmeno pelo estudante e auxiliar no processo ensino-aprendizagem. A competncia para escrever programas uma habilidade til e desejada na rea da fsica. Em adio, a prtica de programao fornece ao estudante um pensamento algortmico, qual uma poderosa ferramenta intelectual [4]. Estudantes que so introduzidos a fsica computacional num curso mesmo que seja num nvel introdutrio ter uma boa fundamentao para construir o seu laboratrio virtual em fsica. Durante a simulao o estudante se depara com o fato ele deve construir todos os objetivos que configura na cena, Fig.1, para d existncia como se fosse real. O espao onde ocorre o evento, a bola, o piso, a seta que representa magnitude, direo e sentido da velocidade da bola, a linha vermelha que representa a altura de onde largada a bola. Temos na Fig.1 o resultado da simulao de uma bola em queda livre na presena do campo gravitacional usando as Eqs. (2), (3) e (11). Na construo da simulao do fenmeno que o estudante est em ateno, isto far que o mesmo saia procura de conhecimento para construir a sua simulao.

Figura 1. Temos o resultado da simulao de uma bola em queda livre na presena do campo gravitacional.

Agradecimentos
Agradecemos a UFRPE pela estrutura fsica e ao MEC/SeSU pelo suporte financeiro ao grupo PETFsica.

Referncias
[1] [2] O Python e VPython so softwares livres, podem ser abaixados diretamente do site http://www.python.org. FIOLHAS, C. & TRINDADE, J. 2002. Fsica para todos concepes erradas e estratgias computacionais. Disponvel em: http://nautilus/fis.uc.pt/softc/Read_c/RV/virtual water/article/art3/art3.html DUBIN, D. 2003. Numerical and analytical methods for scientists and engineers using Mathematica. New Jersey, USA, John Wiley & Sons Inc. CHABAY, R. & SHERWOOD, B. 2008. Computational physics in the introductory calculus-based course. American Journal of Physics, 76: 307-313.

[3] [4]