Compare arrays in Simulink

13 visualizzazioni (ultimi 30 giorni)
Dhruv
Dhruv il 14 Ago 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 Commenti
Friedrich
Friedrich il 14 Ago 2013
Modificato: Friedrich il 14 Ago 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 il 14 Ago 2013
I have edited my comment to remove the confusion

Accedi per commentare.

Risposte (2)

Azzi Abdelmalek
Azzi Abdelmalek il 14 Ago 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 Commenti
Friedrich
Friedrich il 14 Ago 2013
Is a Look-Up-Table supported? If so, this would be what you need together with a For Itterator Subystem.
Dhruv
Dhruv il 19 Ago 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?

Accedi per commentare.


Chetan Aswathanarayana
Chetan Aswathanarayana il 20 Ago 2013
  1 Commento
Chetan Aswathanarayana
Chetan Aswathanarayana il 20 Ago 2013
https://www.dropbox.com/s/9iqv09tuw061vzj/Array_Compare.zip

Accedi per commentare.

Categorie

Scopri di più su Simulink Functions in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by