index notation symbolic toolbox
显示 更早的评论
example: fi = sym('fi',[1 2]) fi =
[ fi1, fi2]
I want this to be: fi =
[ fi(1), fi(2)]
This in order to use outcome of symbolic manipulation directly in my matlab code.
4 个评论
Dinant
2013-11-5
Dinant
2014-2-19
Sean de Wolski
2014-2-20
Dinant, I answered your question and provided you with code that does exactly what you asked for. If it's not, please clarify in your comments what you actually want.
Dinant Kistemaker
2019-2-19
Thanks for the help, but you did not. I have reinitiated my post in hope I can get a workaround for this...
回答(6 个)
Sean de Wolski
2013-11-4
>> fi = sym([1,2])
?
Dinant
2013-11-4
0 个投票
7 个评论
Sean de Wolski
2013-11-4
Is this what you're looking for?
Dinant
2013-11-4
Sean de Wolski
2013-11-4
Which can then be indexed like this:
fi(1)
fi(2)
Which is what you asked for.
Dinant
2013-11-4
Sean de Wolski
2013-11-4
Dinant, this is what my code does:
clear fi;
fi = sym([1 2]);
sin(fi(1))
It will not return two separate outputs because this is not how MATLAB works. Consider the same question for doubles:
[D(1) D(2)] = [1 2]; %error!
You would need to do this on two lines:
D(1) = 1;
D(2) = 2;
Knowing [1 2] upfront you would want
D = [1 2]
Then
D(1)
Dinant
2013-11-4
Sean de Wolski
2013-11-4
What release are you using? Because on mine(R2013b) it creates a 1x2 sym
Code:
fi = sym([1 2])
size(fi)
sin(fi(1))
Printed:
fi =
[ 1, 2]
ans =
1 2
ans =
sin(1)
Dinant Kistemaker
2019-2-19
0 个投票
I am still very much looking forward to an answer to my question. It is really annyoing that the printed format is not in vector notation. I want to use the output for some symbolic manipulations in my code and I want to use vector notation.
if I type:
fi = sym ('fi',[1 3]);
x=cos(fi)
>>x =
[ cos(fi1), cos(fi2), cos(fi3)]
I would very much want to have the answer in vector notation like:
x =
[ cos(fi(1)), cos(fi(2)), cos(fi(3))]
Dinant Kistemaker
2020-2-26
0 个投票
I am so looking forward to an answer to my problem...
Somebody from the Mathworks?
1 个评论
Steven Lord
2020-2-26
If you want an official MathWorks answer please contact Technical Support directly using the telephone icon in the upper-right corner of this page.
I suspect you will not be able to do what you want with sym or syms. Depending on what "use outcome of symbolic manipulation directly in my matlab[sic] code" means the matlabFunction function may be of use.
类别
在 帮助中心 和 File Exchange 中查找有关 Code Performance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!