How to multiply function handles stored in a cell array?
1 回表示 (過去 30 日間)
古いコメントを表示
Vinothkumar Sethurasu
2021 年 7 月 27 日
コメント済み: Vinothkumar Sethurasu
2021 年 7 月 28 日
I have a application to multiply the function handles which are stored in a cell array.
The expected output need to be,
sa=@(w) Na{1,1}(w)*Na{1,2}(w)*Na{1,3}(w);
The length of the cell array differs for each case. So, the multiplication need to be automated.
I have tried with the below script,
D=length(Na);
A=[1 0;0 1];
for j=1:D
sa=@(w) A*Na{1,j}(w);
A=@(w) sa(w);
end
It is not producing any results.
Kindly provide any suggestions.
0 件のコメント
採用された回答
Rik
2021 年 7 月 27 日
Na=repmat({@(w) [1,-w*i(2,e);0 1]},1,3)
sa=@(w) 1;
for n=1:numel(Na)
sa=@(w) sa(w)*Na{n}(w);
end
Note that in this case you can do something much simpler:
N=3;
sa=@(w) [1,-w*i(2,e);0 1]^N;
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrices and Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!