# Drum (separator / recirculation drum)

Config type: `"Drum"`  
Source: `crates/components/src/drum.rs`

---

## EN

### Purpose & model

Liquid/vapor **separator** used in flooded recirculation architectures. Splits a two-phase feed into liquid and vapor outlets; may accept an evaporator return.

Thermodynamics: equilibrium separation at drum pressure (quality split toward x≈0 liquid / x≈1 vapor legs), mass and energy balances across ports.

### Residuals & `n_equations()`

Multi-port balance residuals (mass + energy + pressure consistency). Exact count depends on active ports and edge wiring; treat as a multi-equation node — see unit tests and `n_equations()` in source.

### Ports (4-port naming)

| Port | Role |
|------|------|
| `feed_inlet` | two-phase feed |
| `evaporator_return` | return from flooded evaporator |
| `liquid_outlet` | liquid to pump / recirculation |
| `vapor_outlet` | vapor to compressor suction |

### Calibration

No primary Z-factor set; geometry/level control may be added in specialized builds.

### JSON (main)

| Key | Meaning | Default |
|-----|---------|---------|
| `fluid` / refrigerant | working fluid | primary |
| level / volume options | if exposed | – |

### System note

A **flooded plate** topology is often Drum + recirculation + DX exchanger — not a mode of BPHX alone. Shell-and-tube flooded use `FloodedEvaporator`.

---

## FR

### But & modèle

**Ballon séparateur** liquide/vapeur pour architectures noyées / recirculation.

### Ports

Alimentation, retour évap, sortie liquide, sortie vapeur.

### DoF

Nœud multi-équations ; équilibrer avec le reste du circuit.

### JSON

Voir EN.
