Hi, I would like to know if there's a way to create n differente symbolic variables (n is an input). Thank's in advanced

 채택된 답변

madhan ravi
madhan ravi 2018년 10월 25일
편집: madhan ravi 2018년 10월 25일

3 개 추천

EDITED
n=input('value of n?')
syms(sym('a',[1 n]))
a=(sym('a',[1 n])) %storing symbolic variables in a vector for convenience and also to use indexing
command window displays:
value of n?10
n =
10
a =
[ a1, a2, a3, a4, a5, a6, a7, a8, a9, a10]
>> a(1:6)
ans =
[ a1, a2, a3, a4, a5, a6]
>>

댓글 수: 9

madhan ravi
madhan ravi 2018년 10월 25일
The above shows an example of creating n symbolic variables
madhan ravi
madhan ravi 2018년 10월 25일
편집: madhan ravi 2018년 10월 25일
If it’s what you want accept the answer so other people know the question is solved else let know
Note that this creates a single variable, A, that contains a vector of symbolic expressions that refer to symbolic variables that live in the symbolic engine, same as if you had done
A = [sym('A1'), sym('A2'), sym('A3'), ... sym('A20')];
The code does not create variables A1, A2, A3, ... A20 at the MATLAB level. You will not see them in the workspace; you will only see A in the workspace.
If you need to create them at the MATLAB level, then chances are that you should be coding differently.
madhan ravi
madhan ravi 2018년 10월 25일
Yes sir I thought the OP asked to simply create variable to be used further in mathematical equations
madhan ravi
madhan ravi 2018년 10월 25일
Edited the answer sir Walter, thank you for pointing it out
syms(sym('a',[1 n]))
That does work to create the variables in the MATLAB workspace, but any time you are creating a variable number of variables in the MATLAB workspace you should stop yourself and ask if it is strictly necessary to do so, as there is almost always a better way.
madhan ravi
madhan ravi 2018년 10월 25일
Oh yes sir Walter didn’t think of it actually thank you once again
one plus one is two
one plus one is two 2018년 11월 20일
Sorry for the late, thank you so much for your help!
madhan ravi
madhan ravi 2018년 11월 20일
Anytime :)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 MATLAB에 대해 자세히 알아보기

질문:

2018년 10월 25일

댓글:

2018년 11월 20일

Community Treasure Hunt

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

Start Hunting!

Translated by