フィルターのクリア

Fast function application

1 回表示 (過去 30 日間)
Mateusz
Mateusz 2011 年 9 月 29 日
Hi,
Let a be n-dimensional vector, B n-by-n dimensional matrix, f(a, b) - binary function that operates on two vectors, and returns scalar as a result. Is there fast way (no-loops) to implement application of this function to vector a and every column of matrix B? More precisely forall_j r(j) = f(a, B(:, j))?
  1 件のコメント
Mateusz
Mateusz 2011 年 9 月 29 日
I think I cannot repmat vector 'a' since f has to work explicitly on vectors.

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2011 年 9 月 29 日
These days, "no loops" is not necessary any faster.
You can use
arrayfun(@(K) f(a,B(:,K)), 1:size(B,2))
but that will probably not be any faster than a loop.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by