how can replace randi instead randint?

45 ビュー (過去 30 日間)
mohamad gholami
mohamad gholami 2018 年 1 月 2 日
回答済み: HONG CHENG 2022 年 4 月 28 日
hi ;i have a question please help me , i want to replace randi instead randint in ofdm_basic code in r2017a , but i dont know how i must do it . please answer and help me . this is that line :
X=randint(1,Nused*Nframe,M); % bit: integer vector

採用された回答

Jan
Jan 2018 年 1 月 2 日
編集済み: Jan 2018 年 1 月 2 日
Do you mean randint from the Communications Toolbox or is this from Octave code?
I assume, for both the answer is the same: It depends on what M is.
  • [0, range-1] if range is a positive integer
  • [range+1, 0] if range is a negative integer
  • Between min and max, inclusive, if range = [min,max] or [max,min]
% X = randint(1, Nused*Nframe, M)
if length(M) == 1
if M > 0
Range = [0, M-1];
else
Range = [M+1, 0];
end
else
Range = [min(M), max(M)];
end
X = randi(Range, 1, Nused*Nframe);
I do not have this toolbox, but I guess that you should find something like this, if you look into the randint function:
edit randint
  1 件のコメント
mohamad gholami
mohamad gholami 2018 年 1 月 2 日
thank my friend . in next answer i explain . please read that

サインインしてコメントする。

その他の回答 (5 件)

Geoff Hayes
Geoff Hayes 2018 年 1 月 2 日
mohamad - which ofdm_basic code are you referring to? Is this something found on the MATLAB FileExchange or something else? From Communications System Toolbox Release Notes, it looks like randint has been removed from the Communications System Toolbox and is to be replaced with randi.
If we assume that the code
X=randint(1,Nused*Nframe,M)
creates a 1x(Nused*Nframe) matrix with integers in the interval [0,M-1], then we can replace the above with
X = randi(M, 1, Nused*Nframe) - 1;
I think that will work...
  4 件のコメント
mohamad gholami
mohamad gholami 2018 年 1 月 2 日
thanks a lot . but please explain this line and this change for me
Geoff Hayes
Geoff Hayes 2018 年 1 月 3 日
ummm...see randi and then replace your one line of code with this one...

サインインしてコメントする。


Mochan Yang
Mochan Yang 2019 年 7 月 22 日
bitstream=randi(2,1,N)-1
  1 件のコメント
Walter Roberson
Walter Roberson 2019 年 7 月 22 日
bitstream = randi([0 1], 1, N);
or
bitstream = rand(1,N) >= 0.5;

サインインしてコメントする。


Yusuf lamah
Yusuf lamah 2020 年 3 月 22 日
thank you very much

khalil nasri
khalil nasri 2021 年 3 月 6 日
randn( )>0;
  1 件のコメント
Walter Roberson
Walter Roberson 2021 年 3 月 6 日
Normal distribution has peak probability at 0 exactly. Does testing for strict greater than give 50% exactly?

サインインしてコメントする。


HONG CHENG
HONG CHENG 2022 年 4 月 28 日
you can look at this link
Specifically
You just need to change the order of paramters
a=randint(3,4,[1,4]);
a=randi([1,4],3,4);

カテゴリ

Help Center および File ExchangeModulation についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by