How to solve this error "Not enough input arguments."
Afficher commentaires plus anciens
Dear all,
I have this code, though, I have previously defined all the variables, it still persist a message:
Not enough input arguments.
Error in Riesgo_C (line 2)
aux1 = V_in(V_in(:,12) == BATT,:);
The function:
function [deltaSOC] = Riesgo_C(V_in,BATT,PV,IRR)
aux1 = V_in(V_in(:,12) == BATT,:);
aux2 = aux1(aux1(:,11) == PV,:);
auxD = aux2(:,[2;4;6;8;10]);
auxI = aux2(:,[1;3;5;7;9]);
p = polyfit(auxI(1,:),auxD(1,:),1);
deltaSOC = polyval(p,IRR);
end
2 commentaires
Adam
le 14 Fév 2020
Functions have to be called with arguments actually passed in as they have their own sealed workspace, unlike a script. They know nothing at all about what exists in the calling workspace so you have to call the function as
[deltaSOC] = Riesgo_C(V_in,BATT,PV,IRR);
when you call it in order for it to have the inputs it needs.
Tony Castillo
le 17 Fév 2020
Réponse acceptée
Plus de réponses (1)
madhu
le 21 Nov 2023
0 votes
Not enough input arguments.
Error in mylaplasian (line 6)
[rows, cols]=size(g);
1 commentaire
Walter Roberson
le 21 Nov 2023
Modifié(e) : Walter Roberson
le 21 Nov 2023
You are running a function named mylaplasian which accepts one or more inputs, one of which is named g in the function. But when you run mylaplasian then you are not passing in enough parameters to put anything into the g slot.
You should rewrite your function to do something appropriate when the user calls it with fewer parameters than the maximum. For example,
mytest(10,20)
mytest(30)
mytest()
function mytest(P,Q)
if nargin < 2; Q = -99; end
if nargin < 1
error('You need to pass at least one parameter to this function!');
end
fprintf('Input P was: %g\n', P);
fprintf('Input Q was: %g\n', Q);
end
This code illustrates that you can detect that trailing optional parameters have not been passed in, and in that case you can put in default values if appropriate -- but that when the user has not passed in enough parameters for minimal functionality, that you should generate a meaningful error message to inform the user of what is needed.
Catégories
En savoir plus sur Argument Definitions dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!