Compare arrays in Simulink

13 vues (au cours des 30 derniers jours)
Dhruv
Dhruv le 14 Août 2013
I have two arrays which I would like to compare with each other.
eg. A = [4.1,5.2,7.1] B = [1,2,3,4,5,6,7,8]
I want to be able to say that the following match 4.1->4, 5.2->5, 7.1->7 and then show it in a different array like C = [0,0,0,1,1,1,0]
I have been trying to use For loops but havent managed to solve it as yet. Any suggestions would be useful
*edit
I cannot use a Matlab function block as I need to use it with TargetLink later.
Thanks, Dhruv
  5 commentaires
Friedrich
Friedrich le 14 Août 2013
Modifié(e) : Friedrich le 14 Août 2013
I guess thats the range. Values between 0 and 2.3 are mapped to 1 and so. However its not clear what hapens with values equal to 2.3. Are those values mapped to 1 or 2?
Dhruv
Dhruv le 14 Août 2013
I have edited my comment to remove the confusion

Connectez-vous pour commenter.

Réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 14 Août 2013
A = [4.1,5.2,7.1];
B = [1,2,3,45,6,7,8];
out=zeros(size(B));
out(fix(A))=1
  10 commentaires
Friedrich
Friedrich le 14 Août 2013
Is a Look-Up-Table supported? If so, this would be what you need together with a For Itterator Subystem.
Dhruv
Dhruv le 19 Août 2013
I have the possibility of using a Matlab embedded block inside a Stateflow chart.. though I have never used Stateflow.. could you think of it as a possibility to be used in such a case?

Connectez-vous pour commenter.


Chetan Aswathanarayana
Chetan Aswathanarayana le 20 Août 2013
  1 commentaire
Chetan Aswathanarayana
Chetan Aswathanarayana le 20 Août 2013
https://www.dropbox.com/s/9iqv09tuw061vzj/Array_Compare.zip

Connectez-vous pour commenter.

Catégories

En savoir plus sur Simulink Functions dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by