Air-cooled exchanger (fin-fan)

API 661 air-cooled heat exchanger: finned-tube bundles with plug-type or bolted cover-plate box headers, galvanised plenums and fan rings, forced- or induced-draft fans with V-belt drives, vertical TEFC motors, belt guards and vibration switches, optional top louvres. Column structure with bracing, header walkways with handrails and caged ladders, inlet and outlet manifolds across the bays. Fans spin while running.

API 661 / ISO 13706ASME B16.5ISO 14122IEC 60072
Drag to orbit, scroll to zoom
Parameters
–
– m
– m
–
– m
– kW

Installation

$npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add air-cooled-exchanger

Copies thermal/air-cooled-exchanger.tsx and the shared lib/ into src/components/deck-twin/. Needs three, @react-three/fiber and @react-three/drei. See installation for the manual route.

Usage

import { Canvas } from '@react-three/fiber'
import { OrbitControls } from '@react-three/drei'
import { Stage } from './components/deck-twin/lib/stage'
import { AirCooledExchanger } from './components/deck-twin/thermal/air-cooled-exchanger'

export default function Scene() {
  return (
    <Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
      <Stage>
        <AirCooledExchanger />
      </Stage>
      <OrbitControls makeDefault />
    </Canvas>
  )
}

Props

PropTypeDefaultRange
baysnumbernull1 – 6
fansPerBay1 | 2 | 3null
tubeLengthnumber (m)null4 – 15
bayWidthnumber (m)null1.5 – 4.5
rowsnumbernull3 – 10
draft"forced" | "induced"null
heightnumber (m)null3 – 10
passes1 | 2null
louvresbooleannull
header"plug" | "cover-plate"null
inletNpsnumber (NPS, in)null
outletNpsnumber (NPS, in)null
rating150 | 300 | 600 | 900 | 1500 | 2500null
kwnumber (kW)null7.5 – 75
runningbooleannull
tagstringnull
...groupposition, rotation, scale…

P&ID

P&ID symbol for air-cooled-exchanger

Rectangle (the finned-tube bundle, often with a zig-zag tube line inside) with a fan below it (forced draft) or above it (induced draft), drawn as a propeller or bow-tie on a shaft to a motor (circle with M); louvres as a row of slanted lines over the bundle.

tag Etag EAtag ACISO 10628-2 / PIP PIC001; API 661

The fan with its motor tells it from a shell-and-tube exchanger. The number of bays and fans is written beside it (e.g. 2 bays × 2 fans).

API 661 / ISO 13706 air-cooled heat exchanger datasheet fields and the props they set
Number of baysbays
Fans per bayfansPerBay
Tube lengthtubeLength
Bay widthbayWidth
Tube rowsrows
Draft typedraft
Tube passespasses
Louvreslouvres
Header typeheader
Inlet nozzle sizeinletNps
Outlet nozzle sizeoutletNps
Flange ratingrating
Fan motor powerkw
Tag numbertag

Typical suppliers

Chart Industries (Hudson Products, Smithco, Air-X-Changers). The geometry is generic and sized from public standards. It is not vendor CAD.

For agents

Machine-readable entry with props, ranges, defaults and ports:

$npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz info air-cooled-exchanger

Or fetch /r/air-cooled-exchanger.json, or copy a ready-made instruction:

Add the Deck Twin "Air-cooled exchanger (fin-fan)" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add air-cooled-exchanger` (it copies the file and the shared lib into src/components/deck-twin/), then `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz info air-cooled-exchanger` for its props, ranges and ports. Render <AirCooledExchanger /> inside a React Three Fiber <Canvas shadows>, wrapped in <Stage> from src/components/deck-twin/lib/stage. Set props from my data (metres, NPS in inches, ASME class) and leave the rest at defaults. Install three, @react-three/fiber, @react-three/drei and @types/three if they're missing. Full guide: https://decktwin.com/skill/SKILL.md