In dit experiment is er een verwarmingselement in een met water gevulde maatbeker gestopt. Elke minuut is de temperatuur van het water gemeten. Deze metingen zijn opgeslagen in tempmetingen.csv.
Verder is gegeven dat:
Het moge duidelijk zijn dat er water is ‘verdwenen’. Ook is de eindtemperatuur van het water niet gelijk aan een proces waarbij verdamping en eventuele warmteverliezen niet meegenomen worden.
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from scipy.optimize import curve_fit
Cwater = 4186 #J/kgC
m_maatbeker_water_start = 1292.9 #g
m_maatbeker_water_einde = 1274.9 #g
m_maatbeker=820.8 #g
m_water=m_maatbeker_water_start - m_maatbeker #g
verschil_m_water=m_maatbeker_water_start - m_maatbeker_water_einde #g
m_water_kg=verschil_m_water/1000 #kg
E_waterdamp=2502.6 * m_water_kg * 1000 #J
# Data inlezen hier
data = pd.read_csv('tempmetingen.csv',delimiter = ";")
tijd = data["t (min)"].to_numpy()
temperatuur = data["t (oC)"].to_numpy()
def function(t,P):
return 21.2+(P*t*60)/(Cwater*m_water/1000)
popt, cov = curve_fit(function, tijd[:5], temperatuur[:5])
x_test = np.linspace(0, 60, 500)
y_test = function(x_test, *popt)
E_in = popt[0] * 3600 #J
E_gekregen = (temperatuur[-1] - temperatuur[0])/(max(y_test)-temperatuur[0]) * E_in
E_verschil = E_gekregen + E_waterdamp
print(E_in)
print(E_gekregen)
print("de energie die over is gegaan naar het water is:", E_verschil, "J")
# Plotttt
plt.figure(figsize=(10, 6))
plt.plot(tijd, temperatuur, 'bo-', label='Gemeten temperatuur')
plt.plot(x_test, y_test, 'r--', label='Fit: P = %.2f W' % popt[0])
plt.xlabel('Tijd (min)')
plt.ylabel('Temperatuur ( graden C)')
plt.title('Temp metingen water')
plt.grid(True)
plt.legend()
plt.show()160468.30072000125
109482.06724000002
de energie die over is gegaan naar het water is: 154528.86724000002 J
