Horizontal separator
Horizontal 3-phase or 2-phase separator, or knock-out drum, on Zick saddles (one sliding). 2:1 ellipsoidal heads with real nozzle openings, water boot, inlet deflector, calming baffle, weir plate, mesh pad and vortex breaker inside, level bridle with magnetic gauge and GWR transmitter, blinded vent and drain, davit manway, earth boss and a top access platform with caged ladder. Shell wall from ASME VIII-1 UG-27 for the design pressure.
Installation
Copies vessels/horizontal-separator.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 { HorizontalSeparator } from './components/deck-twin/vessels/horizontal-separator'
export default function Scene() {
return (
<Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
<Stage>
<HorizontalSeparator />
</Stage>
<OrbitControls makeDefault />
</Canvas>
)
}
Props
| Prop | Type | Default | Range |
|---|---|---|---|
service | "3-phase" | "2-phase" | "ko-drum" | null | |
diameter | number (m) | null | 0.8 – 5 |
length | number (m) | null | 3 – 24 |
elevation | number (m) | null | 0.8 – 4 |
pressure | number (barg) | null | 3 – 150 |
rating | 150 | 300 | 600 | 900 | 1500 | 2500 | null | |
inletNps | number (NPS, in) | null | |
gasNps | number (NPS, in) | null | |
liquidNps | number (NPS, in) | null | |
insulated | boolean | null | |
platform | boolean | null | |
tag | string | null | |
...group | position, rotation, scale… |
P&ID
Horizontal capsule (rectangle with semi-elliptical ends). A 3-phase separator shows a weir plate inside and a water boot below; a 2-phase separator a mesh pad at the gas outlet; a KO drum is plain.
Vertical capsule = vertical-separator. Long capsule with closure door at one end = pig-launcher. A horizontal capsule with filter elements and a lower sump barrel = filter-separator.
servicediameterlengthpressureratinginletNpsgasNpsliquidNpsinsulatedtagTypical suppliers
SLB (Cameron) · Cimarron. 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/horizontal-separator.json, or copy a ready-made instruction:
Add the Deck Twin "Horizontal separator" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add horizontal-separator` (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 horizontal-separator` for its props, ranges and ports. Render <HorizontalSeparator /> 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