Centrifugal compressor package (API 617)
Gas compressor train on a common skid with walkways: barrel or horizontally split casing with dry gas seals, bearing housings and probes, suction / discharge nozzles up or down (down nozzles drop through deck openings), an anti-surge valve on a reducing tee off the discharge, a temporary suction strainer with dP gauge, dry gas seal panel and API 614 overhead rundown tank. Driver is a large induction motor (CACA cooler) with a speed-increasing gearbox and API 614 lube console, or a two-shaft gas turbine in its own acoustic enclosure with filter house, exhaust stack and fuel gas skid. Casing, motor and turbine size from mw.
Installation
Copies rotating/centrifugal-compressor.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 { CentrifugalCompressor } from './components/deck-twin/rotating/centrifugal-compressor'
export default function Scene() {
return (
<Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
<Stage>
<CentrifugalCompressor />
</Stage>
<OrbitControls makeDefault />
</Canvas>
)
}
Props
| Prop | Type | Default | Range |
|---|---|---|---|
suctionNps | number (NPS, in) | null | |
dischargeNps | number (NPS, in) | null | |
rating | 150 | 300 | 600 | 900 | 1500 | 2500 | null | |
mw | number (MW) | null | 0.5 – 40 |
casing | "barrel" | "split" | null | |
nozzles | "up" | "down" | null | |
driver | "motor" | "gas-turbine" | null | |
cutaway | boolean | null | |
running | boolean | null | |
tag | string | null | |
...group | position, rotation, scale… |
P&ID
Trapezoid (wide end = suction, narrow end = discharge) with the driver on the shaft: a circle with M for a motor, or a gas turbine drawn as a second, reversed trapezoid. Anti-surge recycle and a recycle valve usually loop from discharge back to suction.
Trapezoid = dynamic compressor. A trapezoid narrowing the other way, coupled to a generator or compressor, is a turbine (or an expander). A rectangle with a piston is a reciprocating compressor; two meshing rotors mean a screw compressor.
suctionNpsdischargeNpsratingmwcasingnozzlesdrivertagTypical suppliers
Baker Hughes · Elliott Group · Solar Turbines. 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:
Or fetch /r/centrifugal-compressor.json, or copy a ready-made instruction:
Add the Deck Twin "Centrifugal compressor package (API 617)" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add centrifugal-compressor` (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 centrifugal-compressor` for its props, ranges and ports. Render <CentrifugalCompressor /> 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