Multiplying each value of a vector with the corresponding value in another vector?
20 ビュー (過去 30 日間)
古いコメントを表示
I have 4 vectors E,A,alpha,temp (each 21x1)
I want to carry out the following equation:
theta = E*A*alpha*temp [-1 ;1]
and theta be a vector where the first value is: theta(1) = E(1)*A(1)*alpha(1)*temp(1) * [-1;1]
and theta(n) = E(n)*A(n)*alpha(n)*temp(n) * [-1;1] etc.
Do I use for loop, how would I got about this?
Thank you in advance.
0 件のコメント
採用された回答
Star Strider
2020 年 11 月 13 日
Use element-wise multiplication. If all the other vectors are column vectors, the [-1 1] vector must be a row vector:
theta = E.*A.*alpha.*temp*[-1 1]
2 件のコメント
その他の回答 (2 件)
Setsuna Yuuki.
2020 年 11 月 13 日
編集済み: Setsuna Yuuki.
2020 年 11 月 13 日
with loop for
for n = 1:length(E)
theta(:,n) = E(n)*A(n)*alpha(n)*temp(n) * [-1;1]
end
or can be:
theta(n) = E.*A.*alpha.*temp(n).*[-1;1]
2 件のコメント
Setsuna Yuuki.
2020 年 11 月 13 日
編集済み: Setsuna Yuuki.
2020 年 11 月 13 日
My error in the code:
theta(n) = E.*A.*alpha.*temp(n).*[-1;1]
%is
theta= E.*A.*alpha.*temp.*[-1;1]
loop:
theta(:,n) = ...
参考
カテゴリ
Help Center および File Exchange で Optimization Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!