Pressure Vessels
PressureVessel is a native ProcessPI equipment module for preliminary ASME
Section VIII, Division 1 internal-pressure sizing.
With the engine
PressureVesselEngine has the same fit/run interface as the other ProcessPI
engines:
from processpi.equipment import PressureVesselEngine
from processpi.units import Diameter, Length, Pressure, Temperature
model = PressureVesselEngine(name="V-101")
model.fit(
vessel_type="horizontal",
head_type="ellipsoidal",
design_pressure=Pressure(10, "bar"),
design_temperature=Temperature(150, "C"),
diameter=Diameter(1.2),
length=Length(4),
corrosion_allowance=Length(3, "mm"),
material="sa-516-70",
joint_efficiency=0.85,
nozzles=[{"name": "N1", "diameter": Length(0.1, "m")}],
)
results = model.run()
print(results.summary())
print(results["selected_thickness"])
fit() takes every PressureVessel input, plus optional nozzles and
manholes lists of keyword dicts for add_nozzle / add_manhole. run()
returns PressureVesselResults; summary() and results() return the last run.
With the class
from processpi.equipment import PressureVessel
from processpi.units import Diameter, Length, Pressure, Temperature
vessel = PressureVessel(
vessel_type="horizontal",
head_type="ellipsoidal",
design_pressure=Pressure(10, "bar"),
design_temperature=Temperature(150, "C"),
diameter=Diameter(1.2),
length=Length(4),
corrosion_allowance=Length(3, "mm"),
material="sa-516-70",
joint_efficiency=0.85,
)
result = vessel.design()
The result includes shell/head thicknesses, a selected standard thickness,
volume, estimated shell weight, hydrotest pressure, nozzle/manhole records,
and design warnings. PressureVessels remains an alias for backwards
compatibility.
Notes
- Design temperatures down to -20°F (-29°C) use the first allowable-stress column of ASME Section II, Part D, Table 1A ("-20 to 100°F"; metric "-30 to 40°C"). Below that, the MDMT rules (UCS-66) apply and are not evaluated.
ug27_validityreports whether the cylindrical shell is inside the range of the UG-27(c)(1) formula (t <= R/2 and P <= 0.385 S E); outside it a warning says the Appendix 1-2 thick-wall rules apply.- The weight estimate uses the surface area of the chosen heads (flat, ellipsoidal, torispherical, hemispherical or conical).
Scope
The implementation is preliminary internal-pressure sizing based on UG-27(c)(1), UG-34, UG-32, and UG-99(b). It does not complete external-pressure/vacuum, nozzle reinforcement, support, wind, seismic, fatigue, MDMT, PWHT, or flange design. Those limitations are also returned in the result warnings.