clc;
clear all;
d1=200;
d2=1;
a3=135;
a4=135;
a5=135;
theta2=linspace(0,350,50);
theta3=linspace(0,180,40);
theta4=linspace(0,270,40);
theta5=linspace(0,180,40);
c2=cosd(theta2)
c3=cosd(theta3);
c5=cosd(theta5);
c34=cosd(theta3+theta4);
s2=sind(theta2);
s3=sind(theta3);
s5=sind(theta5);
s34=sind(theta3+theta4);
px = (a3.*(c2.*c3))-(a5.*((s2.*s5)-(c5.*c2.*c34)))+(a4.*c2.*c34);
py = (a3.*c3.*s2)+(a5.*(c5.*s2.*c34)+(c2.*s5))+(a4.*s2.*c34);
pz = d1(ones(1,50)) + d2 + (a3.*s3)+(a5.*c5.*s34)+(a4.*s34);
[EDITED, Jan, please use a proper code formatting - thanks]

 Réponse acceptée

Geoff Hayes
Geoff Hayes le 5 Avr 2015

0 votes

Venkata - the error message is
Error using .*
Matrix dimensions must agree.
Error in *** (line 20)
px = (a3.*(c2.*c3))-(a5.*((s2.*s5)-(c5.*c2.*c34)))+(a4.*c2.*c34);
Note that this line of code is doing several incorrect element-wise multiplications between arrays that are 1x40 and 1x50 which is incorrect. If you want to use the .* then left and right operands must be of the same dimension or at least one must be a scalar. Put a breakpoint in your code (at this line) and run the above. When the debugger pauses at this line look at all the variables and ask yourself if their dimensions make sense given the problem that you are trying to solve.

7 commentaires

Ajay
Ajay le 5 Avr 2015
how to place a breakup point in this code
Geoff Hayes
Geoff Hayes le 5 Avr 2015
Look at debugging process and features for details on setting breakpoints and debugging your code.
Ajay
Ajay le 5 Avr 2015
i am not able to get the breakup point can you help me put sir
Geoff Hayes
Geoff Hayes le 5 Avr 2015
What is preventing you from putting a breakpoint at this line? Is the above script in a function/script?
Ajay
Ajay le 5 Avr 2015
px = (a3.*c2.*c3)-(a5.*s2.*s5)+(a5.*c5.*c2.*c34)+(a4.*c2.*c34);
in this case if i am using breakpoint also it is not executing
Geoff Hayes
Geoff Hayes le 5 Avr 2015
I'm not clear on what you mean in your above statement. What do you mean by if i am using breakpoint also it is not executing?
Ajay
Ajay le 5 Avr 2015
I am using breakpoint on that line with a red dot on the code line number and then executing the line, then also i am getting the error as "matrix dimensions must agree"

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by