Not enough input arguments.
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dursman Mchabe
am 23 Dez. 2018
Kommentiert: Dursman Mchabe
am 23 Dez. 2018
Hi Everyone,
I have a user-defined code that is based on Euler method, that runs successfully. However the output does not compare satisfactority with the experiment for one variable. I would like to use fminsearch to estimate the parameters that can improve the fitting. However, when I try that I get the error message that states:
Error using fzero (line 306)
FZERO cannot continue because user-supplied function_handle ==> HionpH failed with the error below.
Not enough input arguments.
Error in ParametersFittingEulerMethodWater>EulerMethod (line 131)
pH = fzero(@HionpH, pH1);
Error in fminsearch (line 200)
fv(:,1) = funfcn(x,varargin{:});
Error in ParametersFittingEulerMethodWater (line 58)
[b, Results] = fminsearch(@EulerMethod,b);
I can not figure out which arguments are outstanding.
I have attached both the running code and the faulty code.
Please help
0 Kommentare
Akzeptierte Antwort
Stephen23
am 23 Dez. 2018
Bearbeitet: Stephen23
am 23 Dez. 2018
You defined the function HiopH with two input arguments:
function ph = HionpH (pH,b)
In earlier threads we helped you to parameterize it so that you could use fzero to find the pH value:
fzero(@(pH)HionpH(pH,b),pH_trial);
But now you tried to supply it to fzero again, without parameterizing it:
pH = fzero(@HionpH, pH1);
Do you notice the difference? HionpH requires two input arguments. fzero provides exactly one input argument. When fzero calls that function handle (of HionpH), does it provide the second input argument? (hint: no, it only provides one input argument). Thus the error.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Optimization finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!