generate odd and even numbers from randn function in simulink
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
i need to generate odd and even numbers from a random binary array in simulink. Can someone help me with that. For example if i have a random arrary of binary numbers i.e. 0 1 1 1 0 0 1 and would like to split this array to even and odd index. So for even it would be: 1 1 0 and for odd: 0 1 0 1. I did it in matlab but could not do it in simulink. the matlab code is
data=randn(1,N)>=0; %Generating a uniformly distributed random 1s and 0s
oddData = data(1:2:end);
evenData = data(2:2:end);
2 Kommentare
Walter Roberson
am 21 Aug. 2019
It is not obvious why you are using randn()>=0 instead of rand() >= 0.5 ?
Antworten (1)
Walter Roberson
am 21 Aug. 2019
https://www.mathworks.com/help/dsp/ref/convert1dto2d.html -- reshape the vector to two rows
https://www.mathworks.com/help/dsp/ref/variableselector.html -- use twice, once to select row 1 (odd indices), once to select row 2 (even indices)
The above two require DSP.
If you have a fixed signal length then you could use https://www.mathworks.com/help/simulink/slref/selector.html listing all of the desired indices directly (I am not sure if you can use colon notation there.)
4 Kommentare
Walter Roberson
am 21 Aug. 2019
Bearbeitet: Walter Roberson
am 21 Aug. 2019
https://www.mathworks.com/help/dsp/ref/buffer.html -- collect groups of two bits
After which you can use variableselector or https://www.mathworks.com/help/simulink/slref/selector.html to select the two different elements.
John D'Errico
am 23 Aug. 2019
Moved from an answer to a comment:
"I’m trying to replicate the code below using simulink"
data=randn(1,N)>=0.5;
%Generating a uniformly distributed random 1s and 0s
odddata = data(1:2:end);
evenData = data(2:2:end);
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!