How to solve Too many input arguments error? Error in Fminsearch (line 200) fv(:,1) = funfcn(x,varargin{:});
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I am doing the modelling and I am trying to find the best fit parameter with mini errors.
the experimental data is MSM, which has 6 coloums indicating 6 different measurements.
I would like to use loop to find the fits for those 6 models.
Here is my code
%% minimization / parameter estimation
% specify function handle to function vpe
fh=cell(6,1);
global pesmin
global pelmin
global Vsmin
global Vlmin
pesmin = rand(2,6); % estimated parameter
Vsmin= rand(1,6); % error
for n=1:6; %function handle
fh{n}= @(pes)vpe(pes(:,n),p,MSM(:,n),erps(:,n),n);
end
for n=1:6; % search for the mini error
[pesmin(:,n),Vsmin(n)] = fminsearch(fh{n},reshape(pesmin(:,n),[2,1]));
end
this loop can only run once. as n=2 or >2, the error comes out. the error shows Index at position 2 is out of range of the array (cannot exceed 1). I really did not get where is the position 2. what does it mean position 2 is out of range of the array.
for n=1:c/2; % search for the mini error
[pesmin(:,n),Vsmin(n)] = fminsearch(fh{n},reshape(pesmin(:,n),[2,1]));
end
Besides, it also shows
3 个评论
Walter Roberson
2020-2-13
pes(:,n)
pes does not exist in the code you posted, so we do not know how large it is.
Likewise for MSM and erps.
采纳的回答
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Filter Banks 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!