how can i fix this error?

1 view (last 30 days)
Emily Gobreski
Emily Gobreski on 12 Jun 2016
Commented: Guillaume on 12 Jun 2016
a=[1 0 1 0 0 0 0 0 0 0 0;
0 1 0 1 0 0 0 0 0 0 0;
0 0 -R*sind(theta) R*cosd(theta) 0 0 0 0 0 0 1;
0 0 0 0 1 0 1 0 0 0 0;
0 0 0 0 0 1 0 1 0 0 0;
0 0 0 0 -R*sind(theta) R*cosd(theta) 0 0 0 0 0;
0 0 -1 0 -1 0 0 0 (4*abs(sign)) 0 0;
0 0 0 -1 0 -1 0 0 (-4*u*sign) 0 0;
0 0 -c (3*R) -c (-3*R) 0 0 (-4*(y-c)) 0 0;
0 0 0 0 0 0 0 0 -sign u*sign 0;
0 0 0 0 0 0 0 0 (-u*sign) 1 0]
Error using horzcat
Dimensions of matrices being concatenated are not consistent.
  3 Comments
Emily Gobreski
Emily Gobreski on 12 Jun 2016
I am confused. I entered it using the formatting code.
Guillaume
Guillaume on 12 Jun 2016
I think what Muhammad meant is your write your long matrix on more than one row as it's difficult to read long lines on the forum.
I've reformated your post so it's easier to see your matrix. Kudos for using the formatting tools.

Sign in to comment.

Accepted Answer

Guillaume
Guillaume on 12 Jun 2016
Presumably one of R, theta, sign (!), u, y, or c is not scalar but a matrix or column vector. You can't horizontally concatenate scalars with matrices or column vector, hence the error.
Find out which variable is the culprit on why it's not scalar (or why you're using a non scalar variable in your expression).
Also, I strongly recommend changing the name of the sign variable. sign is already a function in matlab which you won't be able to use if you've got a variable of the same name.

More Answers (1)

Muhammad Usman Saleem
Muhammad Usman Saleem on 12 Jun 2016
One of the rows does not have the same number of columns as the other.
One of the ways this could happen is if one of the elements is empty when the others are not.
  1 Comment
Guillaume
Guillaume on 12 Jun 2016
Actually, if the problem was with the number of elements per row, the error would have been "Error using vertcat".

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!