Some checks failed
CI / check (push) Has been cancelled
Capture uncommitted solver robustness work (regularization, domain errors, linear solver lifecycle, tube DP/MSH), web workbench updates, and synced BMAD skills across IDE agent folders before starting BPHX pressure-drop. Co-authored-by: Cursor <cursoragent@cursor.com>
144 lines
6.1 KiB
Markdown
144 lines
6.1 KiB
Markdown
# Correlations & performance maps / Corrélations & cartes
|
||
|
||
Master inventory of **every performance map and heat-transfer / pressure-drop correlation** wired in Entropyk (as of 2026-07-17).
|
||
Inventaire de **toutes** les cartes et corrélations du code.
|
||
|
||
Sources principales :
|
||
|
||
- `crates/components/src/compressor.rs` — AHRI 540 + SST/SDT
|
||
- `crates/components/src/screw_economizer_compressor.rs` — polynômes 2D + presets
|
||
- `crates/components/src/isentropic_compressor.rs` — η_is + volumétrique
|
||
- `crates/components/src/polynomials.rs` — Polynomial1D / Polynomial2D
|
||
- `crates/components/src/heat_exchanger/bphx_correlation.rs` — formules h
|
||
- `crates/components/src/heat_exchanger/correlation_registry.rs` — catalogue + domaines
|
||
- `crates/components/src/heat_exchanger/eps_ntu.rs` / `lmtd.rs` — HX génériques
|
||
- `crates/components/src/heat_exchanger/two_phase_dp.rs` — ΔP biphasique
|
||
- `crates/components/src/fan.rs` / `pump.rs` — courbes 1D
|
||
|
||
---
|
||
|
||
## EN
|
||
|
||
### 1. Compressors — performance maps
|
||
|
||
| Component | Model ID | Formula (summary) | Inputs | Outputs | UI / JSON |
|
||
|-----------|----------|-------------------|--------|---------|-----------|
|
||
| **IsentropicCompressor** | Physics + η_is | `h_dis = h_suc + (h_is−h_suc)/η_is` ; emergent: `ṁ = ρ·V_d·N·η_vol·z_flow` | η_is, T guesses, V_d, N | ṁ, h_dis, W | η, emergent, displacement, speed |
|
||
| **Compressor** | **AHRI 540** (`model_type=Ahri540`) | `ṁ = M1·(1−(P_s/P_d)^{1/M2})·ρ·V·N/60` ; `Ẇ_cool = M3+M4·PR+M5·T_s+M6·T_d` (heating M7–M10) | M1…M10, V, N | ṁ, Ẇ | `m1`…`m10`, `speed_rpm`, `displacement_m3` |
|
||
| **Compressor** | **SST/SDT poly** (`model_type=SstSdt`) | `ṁ = a00+a10·SST+a01·SDT+a11·SST·SDT` ; same for Ẇ with `pw_b**` | bilinear coeffs | ṁ, Ẇ | `mf_a**`, `pw_b**` (CLI + UI) |
|
||
| **ScrewEconomizerCompressor** | **Bilinear SST/SDT** | `ṁ_suc = z_flow·(a00+a10·SST+a01·SDT+a11·SST·SDT)` ; same for Ẇ with b_ij ; eco fraction poly | presets + overrides | ṁ_suc, ṁ_eco, Ẇ | `preset`, `mf_a**`, `pw_b**` |
|
||
|
||
#### Screw presets (CLI)
|
||
|
||
| Preset | ṁ (a00,a10,a01,a11) | Power (b00,b10,b01,b11) | eco frac |
|
||
|--------|---------------------|-------------------------|----------|
|
||
| `bitzer_generic_200kw` | 1.35, 0.004, −0.0025, 1.2e−5 | 58000, 180, −280, 0.4 | 0.13 |
|
||
| `grasso_generic_200kw` | 1.30, 0.0035, −0.0022, 1e−5 | 60000, 190, −310, 0.45 | 0.11 |
|
||
| (none) | 1.2, 0.003, −0.002, 1e−5 | 55000, 200, −300, 0.5 | 0.12 |
|
||
|
||
Temps in polynomials: **SST / SDT** as used by the curve implementation (see source; typically °C in manufacturer fits — verify against `Polynomial2D` evaluation units in code).
|
||
|
||
#### Calibration Z on compressors
|
||
|
||
| Factor | Effect |
|
||
|--------|--------|
|
||
| `z_flow` | scales ṁ |
|
||
| `z_flow_eco` | scales economizer ṁ (screw) |
|
||
| `z_power` | scales shaft power |
|
||
| `z_etav` | volumetric efficiency correction |
|
||
|
||
Default all **1.0**.
|
||
|
||
---
|
||
|
||
### 2. Heat exchangers — heat transfer correlations
|
||
|
||
| Correlation ID | Year | Purpose | Geometry | Wired in BPHX UI? |
|
||
|----------------|------|---------|----------|-------------------|
|
||
| **Longo2004** | 2004 | Evap / cond HTC (plates) | Brazed plate | **Yes** (default) |
|
||
| **Shah1979** | 1979 | Condensation HTC | Tubes (also selectable) | **Yes** |
|
||
| **Shah2021** | 2021 | Plate condensation | Plates | **Yes** |
|
||
| Kandlikar1990 | 1990 | Evaporation HTC | Tubes | Registry / BPHX enum |
|
||
| GungorWinterton1986 | 1986 | Evaporation HTC | Tubes | Registry |
|
||
| Gnielinski1976 | 1976 | Single-phase turbulent Nu | Tubes | Registry |
|
||
| DittusBoelter1930 | 1930 | Single-phase Nu (simple) | Tubes | Registry |
|
||
| Ko2021 | 2021 | Low-GWP plates | Plates | Registry |
|
||
| Friedel1979 | 1979 | Two-phase ΔP | Tubes/plates | Registry (ΔP) |
|
||
|
||
**BPHX runtime path:** correlation → h → `UA ≈ h·A·z_ua` → **ε-NTU residuals** (not a full multi-zone MB model).
|
||
|
||
**Condenser / Evaporator / FloodedEvaporator:** **no** plate correlation — **lumped UA** + phase-change ε-NTU:
|
||
|
||
```
|
||
ε = 1 − exp(−UA/C_sec)
|
||
Q = ε · C_sec · ΔT_driving
|
||
```
|
||
|
||
**Generic HeatExchanger:** ε-NTU or LMTD (arrangement-dependent).
|
||
**Economizer (internal):** LMTD-style two-stream.
|
||
**MovingBoundaryHX:** multi-zone research path (not default production).
|
||
|
||
---
|
||
|
||
### 3. Pressure drop
|
||
|
||
| Model | Formula / role | Components |
|
||
|-------|----------------|------------|
|
||
| Quadratic refrigerant | `ΔP = k · ṁ · \|ṁ\|` | Condenser, Evaporator (optional) |
|
||
| BPHX friction | `ΔP = z_dp · 2·f·L·G²/(ρ·d_h)` (implementation path) | BPHX |
|
||
| Friedel 1979 | two-phase ΔP (registry) | selection stack |
|
||
| Pipe Darcy-style | f(L,D,ε,Re,ṁ) | Pipe |
|
||
| Valve orifice | `ṁ = Kv·opening·√(2·ρ·ΔP)` | EXV orifice, BypassValve |
|
||
|
||
---
|
||
|
||
### 4. Pumps & fans — 1D polynomials
|
||
|
||
```
|
||
y = c0 + c1·x + c2·x² + … (Polynomial1D)
|
||
```
|
||
|
||
- **Pump:** head H(Q), efficiency η(Q); affinity laws for speed.
|
||
- **Fan:** static pressure / power vs flow and speed.
|
||
|
||
---
|
||
|
||
### 5. Flow regularization (not a HTC correlation)
|
||
|
||
Smooth `|ṁ|`, activity α, duty blend — keeps Newton finite at zero flow. See [flow-regularization.md](./flow-regularization.md).
|
||
|
||
---
|
||
|
||
## FR
|
||
|
||
### Compresseurs
|
||
|
||
| Composant | Modèle | Formule clé |
|
||
|-----------|--------|-------------|
|
||
| Isentropic | Physique + η_is | h_dis isentropique corrigé ; ṁ = ρ V N η_vol |
|
||
| Compressor | **AHRI 540** M1–M10 | ṁ(P,ρ,V,N) ; Ẇ(PR, T) |
|
||
| Screw | **Polynôme bilinéaire SST/SDT** | ṁ, W = a00+a10·SST+a01·SDT+a11·SST·SDT |
|
||
|
||
Presets vis : Bitzer / Grasso génériques 200 kW (coeffs dans CLI).
|
||
|
||
### Échangeurs — corrélations h
|
||
|
||
| Corrélation | Usage |
|
||
|-------------|--------|
|
||
| Longo 2004 | BPHX défaut évap/cond plaques |
|
||
| Shah 1979 / 2021 | condensation (tubes / plaques) |
|
||
| Kandlikar, Gungor–Winterton | évaporation tubes (registre) |
|
||
| Gnielinski, Dittus–Boelter | monophasique |
|
||
| Ko 2021 | plaques low-GWP |
|
||
| Friedel 1979 | ΔP biphasique |
|
||
|
||
**Condenser / Evaporator / Flooded :** **UA global + ε-NTU** (pas Longo).
|
||
|
||
### Pompes / ventilateurs
|
||
|
||
Polynômes 1D Q–H / Q–η + lois d’affinité.
|
||
|
||
### Calibration
|
||
|
||
Tous les Z par défaut **1.0** (pas de correction).
|