Help me to optimise or vectorize the code

조회 수: 1 (최근 30일)
SammyNHarry
SammyNHarry 2014년 1월 28일
편집: Patrik Ek 2014년 1월 28일
Hi
Here is a snippet of the code below. I wonder if there is anything else that the code can be optimised or vectorized especially between line 2 to line 5?
1 outSignal = y11.*-d11-y12.*d12+x11.*n11+ x12.*n12;
2 y12 = y11(:);
3 y11 = outSignal(:);
4 x12 = x11(:);
5 x11 = inSignal(:);
6 output = outSignal(:);
I would be greatly appreicated if you can offer me suggestion.
  댓글 수: 1
Patrik Ek
Patrik Ek 2014년 1월 28일
편집: Patrik Ek 2014년 1월 28일
May I ask what you are doing here? The operator that you use is an inbuilt operator and I doubt that there are any faster way to do the same operation. That would only be a marginal difference anyway.

댓글을 달려면 로그인하십시오.

답변 (1개)

Walter Roberson
Walter Roberson 2014년 1월 28일
The (:) operator is one of the fastest operations in MATLAB, as all it needs to do is create a new header and increment the usage count (for copy-on-write purposes): in particular, the data block pointer is copied without needing to copy or duplicate the data itself. All that is being changed is the header indicating how the data is organized, not the data itself.

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by