Source: https://guthlabs.ai/docs/instruments/ntu-effectiveness-heat-exchanger-calculator/mechanism/

instrument mechanism / verified-with-binding-errata

# NTU-Effectiveness Heat Exchanger Calculator mechanism

The inspectable method record for NTU-Effectiveness Heat Exchanger Calculator, kept separate from implementation and qualification.

Status: **VERIFIED_WITH_ERRATA**Lifecycle: **verified-with-binding-errata**

## Model scope

The NTU and capacity-ratio definitions and the supplied counterflow correlation are standard under the stated assumptions. The specification needs explicit inlet-temperature inputs, outlet equations, a complete configuration-to-correlation mapping, the Cr=1 limit, unit validation, and positive-capacity constraints before it can be labeled as a complete calculator.

- NTU=UA/Cmin is standard when U is an overall heat-transfer coefficient in W/(m²·K), A is in m², and Cmin is in W/K.

- Cr=Cmin/Cmax is standard, but Cmin and Cmax must be computed as m_dot·cp using consistent units.

- The counterflow effectiveness formula is correct for Cr≠1: ε=(1−exp(−NTU·(1−Cr)))/(1−Cr·exp(−NTU·(1−Cr))).

- For counterflow Cr=1, the displayed formula becomes 0/0 and must be replaced by its limiting form ε=NTU/(1+NTU).

- Configuration-specific correlations are not provided for parallel flow, crossflow, multipass, or other configurations; the calculator cannot safely accept a generic configuration without those formulas.

- Outlet temperatures require inlet hot and cold temperatures, which are absent from the declared inputs.

## Units and conventions

- U is in W/(m²·K).

- A is in m².

- Mass flow rates are in kg/s.

- Specific heat capacities are in J/(kg·K), so each capacity rate C=m_dot·cp is in W/K.

- Temperatures used in temperature differences may be in °C or K; absolute temperatures are not needed for these formulas, but both inlet temperatures must use the same scale.

- q is reported in W and outlet temperatures in °C in the test vectors.

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "configuration": "counterflow",
    "U_W_m2K": 500,
    "A_m2": 10,
    "m_hot_kg_s": 0.5,
    "cp_hot_J_kgK": 4180,
    "m_cold_kg_s": 0.8,
    "cp_cold_J_kgK": 4180,
    "T_hot_in_C": 180,
    "T_cold_in_C": 20
  },
  "expected_outputs": {
    "epsilon": 0.7948075,
    "q_W": 132891.81,
    "T_hot_out_C": 116.4154,
    "T_cold_out_C": 59.7404
  },
  "working": "Ch=0.5·4180=2090 W/K; Cc=0.8·4180=3344 W/K; Cmin=2090; Cmax=3344; Cr=2090/3344=0.625. UA=500·10=5000 W/K. NTU=5000/2090=2.3923445. x=NTU·(1−Cr)=2.3923445·0.375=0.8971292. exp(−x)=exp(−0.8971292)=0.4077385. ε=(1−0.4077385)/(1−0.625·0.4077385)=0.5922615/0.7451634=0.7948075. ΔTin=180−20=160 K. q=0.7948075·2090·160=132891.81 W. Th,out=180−132891.81/2090=180−63.5846=116.4154 °C. Tc,out=20+132891.81/3344=20+39.7404=59.7404 °C."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

The raw counterflow formula is undefined at Cr=1 because it becomes 0/0, requiring the limiting expression epsilon=NTU/(1+NTU). A zero capacity rate makes NTU divide by zero and should be rejected. These are concrete failure points unless explicit boundary and input validation branches are implemented.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/ntu-effectiveness-heat-exchanger-calculator/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/ntu-effectiveness-heat-exchanger-calculator/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/ntu-effectiveness-heat-exchanger-calculator/qualification/>)

## Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

- `VERIFIED_LEDGER.json`

- `evidence-tranche4/tranche4-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
