Operation on matrix_for beginner

조회 수: 2 (최근 30일)
Momo
Momo 2013년 1월 25일
Dear all, I have a matrix M with 300 rows and 1020 columns, size(M)= 300, 1020; and a vector V= 1 2 3 4 ....1020; size(v)= 1, 1020; I want to divide all the matrix elements with the vector u, u=(1 /(exp(a*V/c)-1) + 1); where V is the row vector. (a and c are constants) I made the code below, but it doesn't work:
% code
u= 1/(exp(a*V(1,:)/c)-1);
[n,m]=size(M);
for i=1:n
NM= M(i,:)*(u(1,:)+1);
end
  댓글 수: 1
Jan
Jan 2013년 1월 25일
"It doesn't work" is an expression which should be explained with more details in a forum.

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

답변 (1개)

Evgeny Pr
Evgeny Pr 2013년 1월 25일
편집: Evgeny Pr 2013년 1월 25일
u = 1 ./ (exp(a * V / c) - 1) + 1
Out = bsxfun(@rdivide, M, u)
For example:
M = rand(3, 12)
V = rand(1, 12)
a = 10
c = 20
u = 1 ./ (exp(a * V / c) - 1) + 1
Out = bsxfun(@rdivide, M, u)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by