Matrix multiply with a function

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 Commenti

Sorry the question is not clear to me?
land use l={a b c;b c a;c b a}
Is this cell array with strings? Use??
Indikatop
Indikatop il 22 Ott 2019
It is a 3x3 matrix
Adam
Adam il 22 Ott 2019
Why is this flagged as Unclear? It has an accepted answer.
I'm fix :)

Accedi per commentare.

 Risposta accettata

Andrei Bobrov
Andrei Bobrov il 22 Ott 2019
Modificato: Andrei Bobrov il 22 Ott 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 Commenti

Indikatop
Indikatop il 22 Ott 2019
Thank you Mr. Andrei for your answer. if d and i in excel or txt format how you do that?
Rik
Rik il 22 Ott 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.
@Indikatop: Please attach your txt or xlsx file here and we show how it do.

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by