How to sub sym to a number in a matrix

2 views (last 30 days)
Hi all,
I have a code calculate the motion equation of 3DOF robotic arm.
In the code I use symbols such as
q = sym('q', [n 1], 'real');
Eventualy I have a 3x1 vector of the motion using alot of symbols on the way
for example, the output for row 1
val =
qdd2*(Izy2*cos(q1) + Izy3*cos(q1) - Izx2*sin(q1) - Izx3*sin(q1) + m3*(4*cos(q1)*sin(q2) +....
How can I subsitute those symbols, q1,q2,Izy,qdd2 and etc to a number?
I use diff() on the way to do diveration from the symbols (q1,q2,q3).,
so Im looking for a way to put the valuses of the symbols at the end, after calculating the motion equations.
I used sub(), didnt work..
thanks in advance.

Accepted Answer

Walter Roberson
Walter Roberson on 26 Jun 2022
subs(val, q(1:2), [VALUE1; VALUE2])
  3 Comments
Barak Bar-on
Barak Bar-on on 26 Jun 2022
thank, I had a problem with definde the sym on the vector.
thank you!

Sign in to comment.

More Answers (1)

John D'Errico
John D'Errico on 26 Jun 2022
syms x y z
M = [x-2,x+y,z^2]
M = 
subs(M,[x,z],[1 3])
ans = 

Community Treasure Hunt

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

Start Hunting!