Do we need any particular command if i need variable. If A=[1 2 3] i need this as: A=[X1 X2 X3]

8 件のコメント

Steven Lord
Steven Lord 2017 年 3 月 13 日
Can you say a little more about what you're trying to do, how you would use that A matrix later in your code?
dpb
dpb 2017 年 3 月 13 日
Anticipating that, most likely this isn't the way to proceed; see the section "Alternatives to the eval Function" at
doc eval
particularly the second, "Variables with Sequential Names"
kritika adhikari
kritika adhikari 2017 年 3 月 14 日
編集済み: Walter Roberson 2017 年 3 月 14 日
I am writing a program where I need matrix with its element in variable form. I cannot do it directly just by writing variable inside the matrix. I need to create program for that. I tried this way but does not work
int_data=[4 2 1 5 6 3]
for i=1:6
t=int_data(i)
y(i)=X(t)
end
KSSV
KSSV 2017 年 3 月 14 日
what you are trying to do is not clear.
kritika adhikari
kritika adhikari 2017 年 3 月 14 日
hello I need a matrix with variable in it.
ES
ES 2017 年 3 月 14 日
From what I understand from your code, you can simply put
y = X (int_data);
If this is not what you need, Please say what are your inputs and outputs? The code you have provided is not enough!
kritika adhikari
kritika adhikari 2017 年 3 月 14 日
Actually m designing an interleaver. So what I need is to pass the blocks of message. That messages are in variable form . The interleaver will be constructed in such a way that the messages that has been passed will appear in matrix form with variables but not with binary digits.
Walter Roberson
Walter Roberson 2017 年 3 月 14 日
Well, then what I posted will allow you to do that. You should go ahead and try and see if it works for your needs.
I think you are making a mistake, though. The output from an interleaver would normally be symbols, not variables. For practical purposes, the symbols would normally be encoded as non-negative integers that could be used as indices.

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

 採用された回答

Walter Roberson
Walter Roberson 2017 年 3 月 14 日

0 投票

int_data=[4 2 1 5 6 3]
X = sym('X', [1, max(int_data)]);
y = X(int_data);
The result would be
y = [X4 X2 X1 X5 X6 X3]

1 件のコメント

kritika adhikari
kritika adhikari 2017 年 3 月 18 日
Yeah I got It. Actually you were right. The output from interleaver are not variables. Thank you so much.

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

その他の回答 (1 件)

ES
ES 2017 年 3 月 14 日
編集済み: ES 2017 年 3 月 14 日

0 投票

From what I understand from your code, you can simply put
y = X (int_data);
[ Example:
X = [2,4,6,8,10,12,14,16,18]
int_data=[4 2 1 5 6 3];
disp(X(int_data));
>> 8 4 2 10 12 6
]
If this is not what you need, Please say what are your inputs and outputs? The code you have provided is not enough!

カテゴリ

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by