Error: The first argument must be a scalar.

47 次查看(过去 30 天)
I defined a matrix of variables like this
X=sym('X', [4,1])
%it looks like this
X=[X1 X2 X3 X4]'
Then the code did some stuff on X to give a vector d of the form
d=[1-X1; 1-X2; 1-X3; 1]
Now I need to differentiat the ith element of d wrt the ith element of X, in other words I want to do this
I tried this
E=gradient(d, [X(1) X(2) X(3) X(4)]);
It gave me an error "The first argument must be a scalar"
So what should I do now?
Thanks!

采纳的回答

Torsten
Torsten 2019-1-22
dd = [diff(d(1),X(1)),diff(d(2),X(2)),diff(d(3),X(3)),diff(d(4),X(4))]

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Formula Manipulation and Simplification 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by