function gradient = lsqGradient(parameter, x, y) % The gradient of the least square error % % Arguments: parameter, vector containing slope and intercept % as the 1st and 2nd element % x, vector of the input values % y, vector of the corresponding measured output values % % Returns: the gradient as a vector with two elements h = 1e-6; % stepsize for derivatives partial_m = (lsqError([parameter(1)+h, parameter(2)], x, y) - lsqError(parameter, x, y))/ h; partial_n = (lsqError([parameter(1), parameter(2)+h], x, y) - lsqError(parameter, x, y))/ h; gradient = [partial_m, partial_n]; end