73 lines
2.2 KiB
Python
73 lines
2.2 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Script de test pour générer un diagramme PH R290
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
|
|
# Ajouter le répertoire courant pour importer les modules
|
|
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
try:
|
|
from app.core.refrigerant_loader import get_refrigerant
|
|
from app.services.diagram_generator import DiagramGenerator
|
|
|
|
print("=== GENERATION DIAGRAMME PH R290 ===")
|
|
|
|
# Test 1: Charger le réfrigérant R290
|
|
print("\n1. Chargement R290...")
|
|
refrigerant = get_refrigerant("R290")
|
|
if refrigerant:
|
|
print(f"R290 charge: {refrigerant.refrig_name}")
|
|
else:
|
|
print("Echec chargement R290")
|
|
sys.exit(1)
|
|
|
|
# Test 2: Créer le générateur de diagrammes
|
|
print("\n2. Creation generateur de diagrammes...")
|
|
diagram_gen = DiagramGenerator(refrigerant)
|
|
print("Generateur de diagrammes cree")
|
|
|
|
# Test 3: Générer le diagramme
|
|
print("\n3. Generation du diagramme...")
|
|
try:
|
|
fig = diagram_gen.plot_diagram(
|
|
p_min=0.1, # bar
|
|
p_max=20.0, # bar
|
|
h_min=-100, # kJ/kg
|
|
h_max=600, # kJ/kg
|
|
include_isotherms=True,
|
|
title="PH Diagram for R290 (Propane)"
|
|
)
|
|
print("Diagramme genere avec succes!")
|
|
|
|
# Test 4: Sauvegarder le diagramme
|
|
print("\n4. Sauvegarde du diagramme...")
|
|
fig.savefig("test_r290_diagram.png", dpi=100, bbox_inches='tight')
|
|
print("Diagramme sauvegarde dans: test_r290_diagram.png")
|
|
|
|
# Test 5: Exporter en base64
|
|
print("\n5. Export en base64...")
|
|
base64_image = diagram_gen.export_to_base64(fig)
|
|
print(f"Image base64 generee: {len(base64_image)} caracteres")
|
|
|
|
# Nettoyer
|
|
import matplotlib.pyplot as plt
|
|
plt.close(fig)
|
|
|
|
print("\n=== SUCCES ===")
|
|
print("Le diagramme R290 a ete genere avec succes!")
|
|
print("Fichier: test_r290_diagram.png")
|
|
|
|
except Exception as e:
|
|
print(f"ERREUR generation diagramme: {e}")
|
|
import traceback
|
|
traceback.print_exc()
|
|
sys.exit(1)
|
|
|
|
except Exception as e:
|
|
print(f"ERREUR generale: {e}")
|
|
import traceback
|
|
traceback.print_exc()
|
|
sys.exit(1) |