iterative numerical method