How to code the following expression in MATLAB

1 次查看(过去 30 天)
Hello all, I am trying to understand how to code the following equation (1) in MATLAB: ----(1)
where,
, such that each of is a column vector of dimension 8 X 1, L denotes total time slots.
And each is drawn randomly from set .
Also i.e., denotes cardinality of a set.
If N = 16 and if are as follows:
x_1 = [xs xs 0 0 0 0 0 0 ]'; x_2 = [xs 0 xs 0 0 0 0 0 ]'; x_3 = [xs 0 0 xs 0 0 0 0 ]'; x_4 = [xs 0 0 0 xs 0 0 0 ]';
x_5 = [xs 0 0 0 0 xs 0 0 ]'; x_6 = [xs 0 0 0 0 0 xs 0 ]'; x_7 = [xs 0 0 0 0 0 0 xs ]'; x_8 = [0 xs xs 0 0 0 0 0 ]';
x_9 = [0 xs 0 xs 0 0 0 0 ]'; x_10 = [0 xs 0 0 xs 0 0 0 ]'; x_11 = [0 xs 0 0 0 xs 0 0 ]'; x_12 = [0 xs 0 0 0 0 xs 0 ]';
x_13 = [0 xs 0 0 0 0 0 xs]'; x_14 = [0 0 xs xs 0 0 0 0]'; x_15 = [0 0 xs 0 xs 0 0 0]'; x_16 = [0 0 xs 0 0 xs 0 0]';
where xs = sqrt(1/2)*(randn(1,1)+1i*randn(1,1)); % transmitted signal of Complex Gaussian nature
Any help in this regard will be highly appreciated.

回答(1 个)

Image Analyst
Image Analyst 2023-10-23
To get L random columns from xgssk, you can use randperm
randomColumns = randperm(size(xgssk, 2), L);
X = xgssk(1:8, randomColumns); % 8 by L matrix
You can get a random index and value from column vector xi also using randperm
index = randperm(numel(xi), 1);
value = xi(index);
  5 个评论
Image Analyst
Image Analyst 2023-10-23
It says the cardinality is N^L or 16^8 = 4294967296
chaaru datta
chaaru datta 2023-10-25
@Image Analyst In my case L is not 8 but its value is 500....so cardinality should be 16^500.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by