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

[slides]

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

[slides]​

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

[slides]​

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

[slides]​

Nestes slides, temos uma aula sobre oscilação harmônica, caso tenha ficado alguma dúvida.

Módulo 5 - Conservação do Momentum Angular

Created: 2025-11-25 Tue 16:59

Validate