Exercício 1.3

Anthônio Nunes Moreira Netto - anthonionetto@fisica.ufc.br
Departamento de Física, Centro de Ciências, Universidade Federal do Ceará

Módulos


In [7]:
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np

Variáveis

Supondo que o objeto parte do repouso...


In [8]:
a = 10.
b = 1.
dt = 0.5
n = 20
v0 = 0.
tmax = n*dt
v = [];
v.append(v0)

Cálculo

Analiticamente (cálculo preliminar):
$v(t)=\dfrac{a}{b}+\left(v_0-\dfrac{a}{b}\right)e^{-b t}$

Numericamente:
$v_i=v_{i-1}+(a-b\,v_{i-1})\,\Delta{t}$
$t_i=t_{i-1}+\Delta{t}$


In [9]:
t = np.linspace(0, tmax, n)  # Eixo-x (Tempo).
theory = (a/b)+(v0-a/b)*np.exp(-b*t)   # Solução analítica.

for i in range(1,n):
    v.append(v[i-1]+(a-b*v[i-1])*dt)

Resultados


In [10]:
plt.plot(t,theory,'b-',t,v,'ro')
plt.axis([0.,tmax,0.,v[n-1]+v[0]])
plt.legend(['Teórico','Numérico'],loc=4)
plt.title('Exercício 1.3')
plt.xlabel('Tempo (s)')
plt.ylabel('Velocidade (m/s)')
plt.show()



In [ ]: