Computational hydraulics