Can symbolic vectors (not vectors of symbols) be defined and manipulated in the Symbolic Math Toolbox?
6 views (last 30 days)
Show older comments
Catalytic
on 25 Jun 2019
Commented: Walter Roberson
on 9 Feb 2022
I would like to define symbolic functions that are functions of vector-valued quantities, like
syms A x
f(x)=x.'*A*x
where A and x are understood to be a matrix and compatibly-sized vector. I would like to be able to do matrix-vector calculus which gives the result in matrix vector form, such as
>> G = gradient(f)
G = 2*A*x %I would like this to be the result
I would also like to define functions involving indexing expressions, like
h(x) = x(1) + x(2) + x(3)
Are these things possible? The closest thing I can find is the syntax
x = syms('x',N,1)
but this doesn't seem to behave as I've described. For one thing, manipulations with x do not get simplified to matrix-vector forms.
0 Comments
Accepted Answer
Walter Roberson
on 25 Jun 2019
No this is not possible. Any variable name is expanded to its contents and any symbolic variable names left are assumed to refer to scalar values and expressions will be rewritten assuming scalar communitivity.
4 Comments
Walter Roberson
on 9 Feb 2022
Note that a new facility was added as of R2021a; https://www.mathworks.com/help/symbolic/symmatrix.html
I have not had reason to experiment with it yet.
More Answers (0)
See Also
Categories
Find more on Special Values in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!