Skip to main content

Crate garbongus

Crate garbongus 

Source
Expand description

§garbongus

Fluid mechanics library for pipeline hydraulics, desalination water transport, tunnel flow, suction/vacuum lift, capillary rise, and pipe flow calculations. Supports fresh water and seawater/brine. Pure Rust, zero dependencies.

§Modules

ModulePurpose
fluidFluid properties: fresh water + seawater/brine (density, viscosity, surface tension, vapor pressure)
flowFlow rate, pipe sizing, unit conversions, Bernoulli, pump power, pressure↔depth
manningManning equation for tunnel and open-channel gravity flow
pipelineMulti-segment pipeline with elevation profile, friction losses, pump power
pipeDarcy-Weisbach friction loss, Colebrook-White, Reynolds number, flow regime
vacuumSuction/vacuum lift over arbitrary distances
capillaryCapillary rise height calculations

§Quick Example

use garbongus::fluid::Fluid;
use garbongus::flow::{required_diameter, pump_power, FlowRate};

// Seawater at 35 ppt salinity, 20°C
let fluid = Fluid::seawater(20.0, 35.0);
println!("Density: {:.1} kg/m³", fluid.density_kg_m3);

// Size a pipe: Q = 10 m³/s at 2 m/s → D ≈ 2.52 m
let d = required_diameter(10.0, 2.0);
println!("Required diameter: {:.2} m", d);

// Pump power for 50m total head, 85% efficiency
let pp = pump_power(fluid.density_kg_m3, 10.0, 50.0, 0.85);
println!("Pump power: {:.1} kW", pp.shaft_kw());

// Flow rate conversions
let fr = FlowRate::from_m3s(1.0);
println!("{:.1} MGD = {:.0} L/min", fr.to_mgd(), fr.to_lpm());

Modules§

capillary
capillary
flow
flow
fluid
fluid
manning
manning
pipe
pipe
pipeline
pipeline
vacuum
vacuum