How can I fix this error and what does mean by should return 1 or two arguments help pls
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Mudrik Ahmed
am 6 Sep. 2021
Kommentiert: Yongjian Feng
am 7 Sep. 2021
% Check userfun
userFG = checkFun(userfun,'SNOPT','userfun');
gotDeriv = 0;
try
[F,G] = userFG(x);
gotDeriv = 1;
catch
try
F = userFG(x);
gotDeriv = 0;
catch
error('SNOPT:InputArgs','userfun should return 1 or 2 arguments');
end
end
Error
Error using snopt (line 318)
userfun should return 1 or 2 arguments
Error in Untitled2 (line 173)
[x, f, inform, xmul, fmul] = snopt(xg, xlwr, xupr, xmul, xstate, ...
0 Kommentare
Akzeptierte Antwort
Jan
am 6 Sep. 2021
Which userfcn do you provide? You have to insert changes there, so please post the code of your userfcn.
It should start with
function [output1, output2] = theNameOfYourFcn()
% ^^^^^^^ ^^^^^^^
end
0 Kommentare
Weitere Antworten (1)
Yongjian Feng
am 6 Sep. 2021
userFG shall return one or two arguments. You can see that the code tries to call userFG and retrieves two returns. If this call throws an exception, then it tries to call userFG and retrieve one retuen. If this also throws exception, then it errors out. So it expects one or two returns.
4 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!