How can I make a differential matrics?

Hi all
I have three matrices which obtained from a series of caculations. these matrices are cumulative i.e. values of matrix 2 are equal to ' values of matrix 1 + other values'. also values of matrix 3 are equal to ' values of matrix 2 + other values'. I want to make two matrices including differences between matrices 3 and 2 as well as matrices 2 and 1.It is necessary that all elements of these two matrics are aqual to a single value. How can I write this program? Thanks

 Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 27 Déc 2011
1) A,B,C - your matrix
Mx = cat(3,A,B,C);
Out = diff(Mx,1,3);
a = unique(Out);
2) The inverse problem
A - the initial matrix;
b - a scalar, which add to each element of the matrix;
out = bsxfun(@plus,A,b*reshape(0:2,1,1,[]));

2 commentaires

som
som le 27 Déc 2011
Hi andrei
Could you please explain your answer a bit more??
Thanks
Andrei Bobrov
Andrei Bobrov le 27 Déc 2011
'Out' - two matrices including differences between matrices 1 and 2 as well as matrices 2 and 3;
a - value of elements of matrices 'Out'.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by