how can call a function
1 回表示 (過去 30 日間)
古いコメントを表示
Hello everyone,
how can i call this function in an other function?
i need to plot a, b, c and d:
function [o, a, b, c, d] = ObjectiveFunction(X )
a=sum(throughputS, 'all');
b=sum(throughputT, 'all');
c=sum(throughputCN, 'all');
d=sum(throughputCR, 'all');
Thanks alot
1 件のコメント
Walter Roberson
2019 年 8 月 18 日
Where are throughputS, throughputT, throughputCN, and throughputCR coming from, and why is the input X not being used? Where is the output o coming from?
Your outputs a, b, c, and d are all going to be scalars, so it is not obvious what you would be plotting?
回答 (2 件)
Walter Roberson
2019 年 8 月 18 日
Example:
N = 100;
o = zeros(N,1); a = zeros(N,1); b = zeros(N,1); c = zeros(N,1); d = zeros(N,1);
for idx = 1 : N
X = rand(15,15);
[o(idx), a(idx), b(idx), c(idx), d(idx)] = ObjectiveFunction(X);
end
plot([a,b,c,d])
legend({'a', 'b', 'c', 'd'});
0 件のコメント
Luna
2019 年 8 月 19 日
You should define the variables you are going to use as inputs of function. The inputs are written in the paranthesis.
All outputs must be assigned also.
function [o, a, b, c, d] = ObjectiveFunction(throughputS,throughputT,throughputCN,throughputCR)
a=sum(throughputS, 'all');
b=sum(throughputT, 'all');
c=sum(throughputCN, 'all');
d=sum(throughputCR, 'all');
o = 'Luna';
end
Then you call this function as follows in another function:
function hPlot = anotherFunctionToPlotSomeData(w,x,y,z) % you should pass variable reference here.
[o, a, b, c, d] = ObjectiveFunction(w,x,y,z) % where your w,x,y,z becomes throughputS,throughputT,throughputCN,throughputCR respectively inside this function.
% Now you obtained a,b,c,d (I don't know what to do with "o" variable but you get the idea)
figure;
hPlot = plot([a,b,c,d]); % this function also returns the plot handle (line class)
end
Also check below link to learn more about how to create functions:
1 件のコメント
Walter Roberson
2019 年 8 月 19 日
The a, b, c, d returned are all going to be scalars, so plot([a,b,c,d]) would be a request to plot a line with four points. Although that is well defined, I suspect that is not what the poster had in mind.
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!