Entropyk/_bmad-output/implementation-artifacts/11-9-moving-boundary-hx-zones.md

1.9 KiB
Raw Blame History

Story 11.9: MovingBoundaryHX - Zone Discretization

Epic: 11 - Advanced HVAC Components
Priorité: P1-HIGH
Estimation: 8h
Statut: backlog
Dépendances: Story 11.8 (CorrelationSelector)


Story

En tant qu'ingénieur de précision,
Je veux un MovingBoundaryHX avec discrétisation par zones de phase,
Afin de modéliser les échangeurs avec des calculs zone par zone précis.


Contexte

L'approche Moving Boundary divise l'échangeur en zones basées sur les changements de phase:

  • Zone superheated (SH): Vapeur surchauffée
  • Zone two-phase (TP): Mélange liquide-vapeur
  • Zone subcooled (SC): Liquide sous-refroidi

Chaque zone a son propre UA calculé avec la corrélation appropriée.


Algorithme de Discrétisation

1. Entrée: États (P, h) entrée/sortie côtés chaud et froid

2. Calculer T_sat pour chaque côté si fluide pur

3. Identifier les zones potentielles:
   - Superheated: h > h_sat_v
   - Two-Phase: h_sat_l < h < h_sat_v  
   - Subcooled: h < h_sat_l

4. Créer les sections entre les frontières de zone

5. Pour chaque section:
   - Déterminer phase_hot, phase_cold
   - Calculer ΔT_lm pour la section
   - Calculer UA_section = UA_total × (ΔT_lm_section / ΣΔT_lm)
   - Calculer Q_section = UA_section × ΔT_lm_section

6. Validation pinch: min(T_hot - T_cold) > T_pinch

Fichiers à Créer/Modifier

Fichier Action
crates/components/src/moving_boundary.rs Créer

Critères d'Acceptation

  • Zones identifiées: superheated/two-phase/subcooled
  • UA calculé par zone
  • UA_total = Σ UA_zone
  • Pinch calculé aux frontières
  • Support N points de discrétisation (défaut 51)
  • zone_boundaries vector disponible

Références