フィルターのクリア

Efficient implementation of a functions with vector arguments

1 回表示 (過去 30 日間)
Ted Ersek
Ted Ersek 2013 年 4 月 3 日
I am an inexperienced MATLAB user. I need to define functions with an efficient implementation because they will be called many times. The function arguments are 3-D vectors, and the functions need access to individual elements of the vectors. The following is a toy example.
function y = foo( vector )
y = vector(1)*cos(vector(2))/(1+vector(3));
end
--------------------------
Then I could do
v = [2,pi/3,2];
foo(v)
ans = 0.3333
Is there a more efficient way to implement the above function?
Thanks, Ted Ersek
  1 件のコメント
Sean de Wolski
Sean de Wolski 2013 年 4 月 3 日
What does your real vector look like and what would you expect for the output?

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

採用された回答

Doug Hull
Doug Hull 2013 年 4 月 3 日
編集済み: Doug Hull 2013 年 4 月 3 日
Do not worry about efficiency until you know it is a problem. I think you might be surprised where the bottlenecks in your code are. First write clear, correct, maintainable code. When it is found to be slow, then you can optimize for speed. You will likely find that the maintainable code is faster than you need.
I would be VERY surprised if this code was the slowdown in any realistic code.
Doug

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeIntroduction to Installation and Licensing についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by