from tkinter import *
def calcular():
# Llegir les dades de l'formulari
num_aerogeneradores = int(num_aerogeneradores_entry.get())
diametre = int(diametre_entry.get())
rendimiento_aerog = float(rendimiento_aerog_entry.get())
velocidad_viento = int(velocidad_viento_entry.get())
dias_funcionamiento = int(dias_funcionamiento_entry.get())
horas_diarias = int(horas_diarias_entry.get())
densidad_aire = int(densidad_aire_entry.get())
coef_aprovechamiento_viento = float(coef_aprovechamiento_viento_entry.get())
precio_venta = float(precio_venta_entry.get())
# Calcular la potència elèctrica útil
area_escombratge = ((diametre / 2) ** 2) * 3.1416
densidad = densidad_aire / 1000
potencia_especifica = 0.5 * densidad * coef_aprovechamiento_viento * (velocidad_viento ** 3)
potencia_eolica = potencia_especifica * area_escombratge
potencia_electrica = num_aerogeneradores * potencia_eolica * rendimiento_aerog * dias_funcionamiento * horas_diarias
# Mostrar el resultat
resultado_label.config(text="La potència elèctrica útil del parc eòlic és de {:.2f} kW.".format(potencia_electrica))
beneficio_label.config(text="El benefici anual del parc eòlic és de {:.2f} euros.".format((potencia_electrica * precio_venta * 365) / 100))
# Crear la finestra
window = Tk()
window.title("Càlcul de potència elèctrica útil de parc eòlic")
# Crear els widgets
num_aerogeneradores_label = Label(window, text="Nombre d'aerogeneradors:")
num_aerogeneradores_entry = Entry(window)
diametre_label = Label(window, text="Diàmetre de l'àrea d'escombratge de les pales en m:")
diametre_entry = Entry(window)
rendimiento_aerog_label = Label(window, text="Rendiment dels aerogeneradors:")
rendimiento_aerog_entry = Entry(window)
velocidad_viento_label = Label(window, text="Velocitat mitjana del vent en km/h:")
velocidad_viento_entry = Entry(window)
dias_funcionamiento_label = Label(window, text="Dies de funcionament del parc:")
dias_funcionamiento_entry = Entry(window)
horas_diarias_label = Label(window, text="Hores diàries de funcionament del parc:")
horas_diarias_entry = Entry(window)
densidad_aire_label = Label(window, text="Densitat de l'aire en g/m³:")
densidad_aire_entry = Entry(window)
coef_aprovechamiento_viento_label = Label(window, text="Coeficient d'aprofitament del vent:")
coef_aprovechamiento_viento_entry = Entry(window)
precio_venta_label = Label(window, text="Preu de venda de l'energia elèctrica en €/kWh:")
precio_venta_entry = Entry(window)
calcular_button = Button(window, text="Calcular", command=calcular)
resultado_label = Label(window, text="")
beneficio_label = Label(window, text="")
#Posicionar els widgets a la finestra
num_aerogeneradores_label.grid(row=0, column=0)
num_aerogeneradores_entry.grid(row=0, column=1)
diametre_label.grid(row=1, column=0)
diametre_entry.grid(row=1, column=1)
rendimiento_aerog_label.grid(row=2, column=0)
rendimiento_aerog_entry.grid(row=2, column=1)
velocidad_viento_label.grid(row=3, column=0)
velocidad_viento_entry.grid(row=3, column=1)
dias_funcionamiento_label.grid(row=4, column=0)
dias_funcionamiento_entry.grid(row=4, column=1)
horas_diarias_label.grid(row=5, column=0)
horas_diarias_entry.grid(row=5, column=1)
densidad_aire_label.grid(row=6, column=0)
densidad_aire_entry.grid(row=6, column=1)
coef_aprovechamiento_viento_label.grid(row=7, column=0)
coef_aprovechamiento_viento_entry.grid(row=7, column=1)
precio_venta_label.grid(row=8, column=0)
precio_venta_entry.grid(row=8, column=1)
calcular_button.grid(row=9, column=0, columnspan=2)
resultado_label.grid(row=10, column=0, columnspan=2)
beneficio_label.grid(row=11, column=0, columnspan=2)
#Iniciar la finestra
window.mainloop()