what is wrong with my code? vertcat error
    13 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
t = [0:0.4:40];
a = [20.*sin(t); 20.*cos(t); 0];
b = [0; 0; (10-((t.^2)/16))];
s = a+b
It gives me:  Error using vertcat Dimensions of matrices being concatenated are not consistent. what is wrong?
1 comentario
  Stephen23
      
      
 el 30 de Oct. de 2017
				
      Editada: Stephen23
      
      
 el 30 de Oct. de 2017
  
			You are trying to concatenate vectors with different numbers of columns:
>> size(t)
ans =
     1   101
>> size(0)
ans =
   1   1
t has 101 columns (as do sin and cos outputs too), whereas 0 has one column. It is not possible to vertically concatenate arrays with different numbers of columns.
Respuestas (3)
  M
      
 el 30 de Oct. de 2017
        You are trying to define a matrix that can not exist.
In your case, t is a vector of dimension 101
size(t)
ans =
     1   101
and so is
20.*sin(t)
but when you write
a = [20.*sin(t); 20.*cos(t); 0];
0 is a scalar of dimension
What you should do is have a look at the function
zeros(M,N) or zeros([M,N]) is an M-by-N matrix of zeros.
0 comentarios
  Rik
      
      
 el 30 de Oct. de 2017
        The dimensions of matrices being concatenated are not consistent. t is a row-vector, 0 is not.
Apart from that, a will have 203 elements, while b will have only 103 elements, so a+b will fail.
0 comentarios
Ver también
Categorías
				Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





