MATLAB: Unable to perform assignment because the size of the left side is 1-by-1 and the size of the right side is 1-by-401. Error in fminsearch (line 200) fv(:,1) = funfcn(x,varargin{:});

fminsearch

zahl = [1:1:401];
fun_normal = @(x)(normpdf(zahl,x(1),x(2)) + unifpdf(zahl,0,x(3)));
x0=[max(zahl),5,30];
x = fminsearch(fun_normal,x0);

Best Answer

The objective function (first input argument of "fminsearch") should return a scalar value to be minimized. However, the function "fun_normal" used in the code doesn’t return scalar value. So, try redefining the function such that it returns a scalar value to use fminsearch.