Which is faster, a row vector or a column vector? Can anyone answer me please?

조회 수: 74 (최근 30일)
I am trying to do some integration so I am defining the output as a matrix, my question is which definition will give me faster results to define my matrix :
A = zeros(1,n) or A = zeros(n,1)?
Regards

채택된 답변

Stephen23
Stephen23 2015년 5월 13일
편집: Stephen23 2015년 5월 15일
Perhaps the column, as MATLAB uses column-major memory storage of arrays. But really it is unlikely to make a big difference.
Just try it and use timeit or tic and toc to compare the times.
Another very fast way to define a matrix of zeros is this:
A(n) = 0;
Or if speed really is that critical, you might like to check out some of the submissions on MATLAB File Exchange:
  댓글 수: 7
Walter Roberson
Walter Roberson 2015년 5월 14일
My checking shows that if you use 5 for r, and leave s symbolic, then there is a closed-form integral for the expression -- something that could be evaluated once per t rather than having to do the time-consuming numeric integration.
In the case of r held at 5, the integral for turns complex if s becomes larger than about 10.3 or if s is negative (but might become positive again below -10.3).
When you are varying r and s for your 16 runs, what are the values you are testing with?
Avan Al-Saffar
Avan Al-Saffar 2015년 5월 15일
편집: Avan Al-Saffar 2015년 5월 15일
r = 1,2.5,5,10
s = 1,3,5,10

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

추가 답변 (1개)

Walter Roberson
Walter Roberson 2015년 5월 13일
For any of the arithmetic operations, a row vector is exactly the same speed as a column vector. However, extracting a column vector from a matrix is faster than extracting a row vector. Also, library functions often are defined as returning column vectors and their logic is sometimes marginally faster on column vectors.

카테고리

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