MATLAB Answers

Matrix multiply with a function

6 views (last 30 days)
Indikatop
Indikatop on 22 Oct 2019
Commented: Andrei Bobrov on 22 Oct 2019
i have two matrix with same columns and rows(matrix a and b). a is depth and b is land use index. each index value has a different equation and it is function of depth. i need to create a third matrix by substituting depth value to the functions.
depth d={2 3 4;7 2 5;1 2 5}
land use l={a b c;b c a;c b a}
a=0.5*depth+3
b=0.78*depth+4
c=0.1*depth+8
I really appreciate your cooperation. Thank you

  4 Comments

Show 1 older comment
Indikatop
Indikatop on 22 Oct 2019
It is a 3x3 matrix
Adam
Adam on 22 Oct 2019
Why is this flagged as Unclear? It has an accepted answer.

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 22 Oct 2019
Edited: Andrei Bobrov on 22 Oct 2019
i = [1:3;2,3,1;3:-1:1];
k = [.5;.78;.1];
f = [3;4;8];
d=[2 3 4;7 2 5;1 2 5];
l = k(i).*d + f(i);
or
l = kron(k(i),d) + kron(ones(size(i)),f(i));

  3 Comments

Indikatop
Indikatop on 22 Oct 2019
Thank you Mr. Andrei for your answer. if d and i in excel or txt format how you do that?
Rik
Rik on 22 Oct 2019
Then you need to load them as variables. I'm sure Google will be able to supply you with dozens if not hundreds of examples of how to read data from Excel to Matlab.
Andrei Bobrov
Andrei Bobrov on 22 Oct 2019
@Indikatop: Please attach your txt or xlsx file here and we show how it do.

Sign in to comment.

More Answers (0)

Tags

Products


Translated by