How to match matrix dimensions?

I am making a silly mistake, I am sure, in matching my matrix dimensions. If anyone can spot what I am doing wrong it would be appreciated.
Here is the code to calculate 6 simultaneous equations with 6 unknown variables:
function F = correlation3;
X = [259, 266, 298, 322, 310, 339, 398];
Y = [64.6, 65.48, 65.28, 65.66, 65.86, 65.83, 65.37];
Z = [-42, -35.8, -24.8, -16, -19.7, -9.5 -1];
X2 = X .* X; %Used to simplify the matrix notation within
X3 = X2 .* X; %the while loop.
Y2 = Y .* Y;
Y3 = Y2 .* Y;
Z2 = Z .* Z;
q = [X3 .* X, X3, X2 .* Y2, X2 .* Y, X3 .* Y, X2;
X3, X2, X .* Y2, Y.* X, X2 .* Y, X;
X2 .* Y2, X .* Y2, Y3 .* Y, Y3, Y3 .* X, Y2;
X2 .* Y, X .* Y, Y3, Y2, X .* Y2, Y;
X3 .* Y, X2 .* Y, Y3 .* X, X .* Y2, X2 .* Y2, Y .* X;
X2, X, Y2, Y, Y .* X, 1];
p = [X2.*Z; X.*Z; Y2.*Z; Y.*Z; Y.*Z; Z2];
A, B, C, D, E, F=q\p
end
The error I am presented with is:
"Error using vertcat Dimensions of matrices being concatenated are not consistent.
Error in correlation3 (line 13) q = [X3 .* X, X3, X2 .* Y2, X2 .* Y, X3 .* Y, X2;"
Thanks

2 comentarios

Jackie
Jackie el 23 de Jul. de 2013
Having updated the code with the correction bellow I have a 7 by 42 matrix being produced. Surely this matrix should be a 6 by 1? Seeing as:
"Solution, specified as a vector, full matrix, or sparse matrix. If A is an m-by-n matrix and B is an m-by-p matrix, then x is an n-by-p matrix, including the case when p==1."
And I am starting with a 6 by 6 and a 6 by 1 therefore according to the explanation it should be a 6 by 1?
Youssef  Khmou
Youssef Khmou el 23 de Jul. de 2013
yes the solution x should be [m,p=1],

Iniciar sesión para comentar.

 Respuesta aceptada

Youssef  Khmou
Youssef Khmou el 23 de Jul. de 2013

0 votos

hi Jackie,
The mistake is obvious, its the last component 1, replace it with
ones(1,length(X))

2 comentarios

Jackie
Jackie el 23 de Jul. de 2013
Thank you! Not something I would have found myself but something to remember for the future.
Youssef  Khmou
Youssef Khmou el 23 de Jul. de 2013
ok, you can still use your first try but with cells
>> doc cell

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Centro de ayuda y File Exchange.

Preguntada:

el 23 de Jul. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by