Entropyk/bindings/python/test!entropyk.py

46 lines
1.3 KiB
Python

import entropyk
# === Types physiques ===
p = entropyk.Pressure(bar=10.0)
print(p) # Pressure(1000000.0 Pa)
print(p.to_bar()) # 10.0
print(float(p)) # 1000000.0 (en Pascals)
t = entropyk.Temperature(celsius=25.0)
print(t.to_celsius()) # 25.0
print(t.to_kelvin()) # 298.15
h = entropyk.Enthalpy(kj_per_kg=400.0)
m = entropyk.MassFlow(kg_per_s=0.5)
# === Composants ===
cond = entropyk.Condenser(ua=10000.0) # UA = 10 kW/K
evap = entropyk.Evaporator(ua=8000.0) # UA = 8 kW/K
comp = entropyk.Compressor(efficiency=0.85)
valve = entropyk.ExpansionValve(fluid="R134a")
pipe = entropyk.Pipe(length=5.0, diameter=0.025)
# === Système ===
system = entropyk.System()
c_idx = system.add_component(comp)
d_idx = system.add_component(cond)
v_idx = system.add_component(valve)
e_idx = system.add_component(evap)
system.add_edge(c_idx, d_idx) # compresseur → condenseur
system.add_edge(d_idx, v_idx) # condenseur → détendeur
system.add_edge(v_idx, e_idx) # détendeur → évaporateur
system.add_edge(e_idx, c_idx) # évaporateur → compresseur
system.finalize()
# === Solveur ===
config = entropyk.NewtonConfig(max_iterations=100, tolerance=1e-6)
# result = config.solve(system) # résoudre le système
# === Exceptions ===
try:
entropyk.Pressure(bar=-1.0) # ValueError
except ValueError as e:
print(f"Erreur: {e}")