solving simple equations in matlab

I have 2 variables:
d1 = 1:5;
d2 = 6:10;
I would like to calculate 'dat', which is given by:
dat = d1./(10.*d2);
However, the following returns a vector (as expected), how would I write this so that matlab returns a matrix i.e. the value for dat when d1 is 1:5 when d2 is 6 and then when d2 is 7, ultimately returning a 5x5 matrix. Is the only method of completing this through a loop.

 採用された回答

Andrei Bobrov
Andrei Bobrov 2012 年 12 月 19 日
編集済み: Andrei Bobrov 2012 年 12 月 19 日

1 投票

dat = d1.'*(.1./d2);

その他の回答 (2 件)

Walter Roberson
Walter Roberson 2012 年 12 月 18 日

1 投票

dat = bsxfun(@rdivide, d1.', d2) ./ 10;
Babak
Babak 2012 年 12 月 18 日
編集済み: Babak 2012 年 12 月 18 日

0 投票

d1 = 1:5;
d2 = 6:10;
for j=1:5
dat(j,:) = d1./(10.*d2(j));
end
dat

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by