Separate cost and gradient functions