Gauss Gordan method