Error: The first argument must be a scalar.

50 views (last 30 days)
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!

Accepted Answer

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

More Answers (0)

Community Treasure Hunt

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

Start Hunting!