function Hydro::solve() implementation