Engineering of rivers