Table of Contents
Instruções
Os slides das aulas utilizam reveal.js. Por isso, eles podem não ser
muito intuitivos em seu uso. Sempre que utilizar, clique N para
avançar para o próximo slide, P para retornar ao slide anterior e
O para ver a estrutura de slides.
Para utilizar os códigos aqui presentes, preparei o ambiente virtual
com o pyproject.toml, presente no github da disciplina. Para
utilizá-lo, copie o arquivo para um diretório local, instale uv em
seu computador e execute uv sync. Isso criará um diretório local
.venv, com um ambiente virtual. Para ativá-lo, basta utilizar
source .venv/bin/activate. Pronto, lá teremos todas as ferramentas
presentes nos códigos apresentados.
Módulo 1 - Transformação e Conservação de Energia Mecânica
Nesta aula, estudamos o conceito de Energia Mecânica, soma da energia potencial com a energia cinética, bem como a transformação de uma em outra, e possíveis fontes de dissipação envolvidas num sistema de plano inclinado.
No caso ideal, temos uma transformação completa de energia potencial gravitacional em energia mecânica. Como vimos em aula,
\begin{align*} x &= x_0 + v_{0x} t + \frac{a_xt^2}{2}\\ y &= y_0 + v_{0y} t + \frac{a_yt^2}{2}. \end{align*}As acelerações em questão são dadas por
\begin{align*} a_x &= -g\sin\theta\cos\theta\\ a_y &= -g\sin^2\theta. \end{align*}(Demonstre!)
Podemos introduzir algumas medidas (sem suas incertezas) de massa, altura inicial e ângulo do plano inclinado, e ver a transformação de energia no sistema envolvido.
import numpy as np import plotly.express as px import plotly.graph_objects as go import plotly.io as pio ergs2J = 1e-7 # converte energia para o SI m = 407.2 # g g = 978.5 # cm/s^2 theta = np.pi/6 # 30° y0, v0y = 20, 0 # cm, cm/s x0, v0x = 20/np.tan(theta), 0 t = np.linspace(0, np.sqrt(2*y0/(g*np.sin(theta)**2)), 100) h = y0 + v0y*t - g*np.sin(theta)**2*t**2/2 x = h/np.tan(theta)
U = m*g*h*ergs2J vx = v0x - g*np.cos(theta)*np.sin(theta)*t vy = v0y - g*np.sin(theta)**2*t v2 = vx*vx + vy*vy K = m*v2*ergs2J/2
p = go.Figure() p.add_trace(go.Scatter(x=t, y=U, mode='lines', name='Energia Potencial Gravitacional')) p.add_trace(go.Scatter(x=t, y=K, mode='lines', name='Energia Cinética')) p.add_trace(go.Scatter(x=t, y=U+K, mode='lines', name='Energia Mecânica')) p.update_layout( title="Energias do sistema no caso ideal", xaxis_title="Tempo (s)", yaxis_title="Energia (J)", )
p.write_html("img/energia_mecanica_ideal.html")
No caso real, há uma perda de energia mecânica devido ao atrito cinético.
beta = 0.8 p = go.Figure() p.add_trace(go.Scatter(x=t, y=U, mode='lines', name='Energia Potencial Gravitacional')) p.add_trace(go.Scatter(x=t, y=beta*K, mode='lines', name='Energia Cinética')) p.add_trace(go.Scatter(x=t, y=U+beta*K, mode='lines', name='Energia Mecânica')) p.update_layout( title="Energias do sistema com atrito", xaxis_title="Tempo (s)", yaxis_title="Energia (J)", )
p.write_html("img/energia_mecanica_beta.html")
Módulo 2 - Conservação do Momentum Linear
Nesta aula, estudamos, com auxílio de uma FlatBall, a conservação do momentum linear durante uma colisão.
Módulo 3 - Momento de Inércia
Na prática, aproximamos a função horária proposta para
\begin{align*} \theta(t) = \theta(0) e^{-\frac{\gamma}{2}t}\cos(\omega_0t+\phi), \end{align*}válida para o regime de amortecimento subcrítico, em que \(\gamma \ll 2\omega_0\).
Extra: aula de oscilador harmônico
Nestes slides, temos uma aula sobre oscilação harmônica, caso tenha ficado alguma dúvida.