How to Multiply a Value by a Matrix in MATLAB?

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 8K views
Ewok
Messages
5
Reaction score
0
Hi, this isn't a homework question as such, but I'd appreciate some advice as it is a part of a project that I'm doing.

I'm trying to write some MATLAB code and need to create a matrix and multiply some value by this matrix

ie.
R(*)=[cos(*) sin(*) 0; -sin(*) cos(*) 0; 0 0 1]

but I'm not sure how to write/use it. Basically I have a formula whereby a value is multiplied by this matrix (or visa versa), however I'm not sure how to relate the two in code.
The stars in the above matrix represent the value to be multiplied, so do I need to simply write the matrix as:

R=[cos sin 0; -sin cos 0; 0 0 1]

or

R()=[cos() sin() 0; -sin() cos() 0; 0 0 1]

or indeed something else for this operation to work??

p.s An example of the operation that I'm trying to do is:

temp = R(-MarsAng)*[a_mars;0;0];

Thanks
 
Last edited by a moderator:
Physics news on Phys.org
First define a symbolic variable for the functions, say theta. Then write the matrix R. Later, you can assign a value to theta, and use subs(R) to calculate the value of R.
Code:
syms theta;
R = [cos(theta) sin(theta) 0; -sin(theta) cos(theta) 0; 0 0 1];
x = pi/2;
subs(R)