Multiple left-hand sides must be separated by commas
    16 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Postit123
 el 18 de Sept. de 2020
  
    
    
    
    
    Comentada: Stephen23
      
      
 el 18 de Sept. de 2020
            Hello 
When I execute my code, the error message keeps popping up, "Multiple left-hand sides must be separated by commas" .
I don't know what to do to fix it.
I really thank you for your help!
for i = 1:10
	EP(1,:)=EP1;
	while abs(EP(i+1,:)-EP(i,:)) > 0.1  ; %[m]
		t0(1) = ice;
		for j = 1:4
		a(j) = EP(i,1) - s(j,1); % X_total - X_satellite
		b(j) = EP(i,2) - s(j,2); % Y_total - Y_satellite
		c(j) = EP(i,3) - s(j,3); % Z_total - Z_satellite
		R_t(j) = sqrt(a(j)^2+b(j)^2+c(j)^2); % R_total
		PSR(j) = R_t(j) + c*t0(i);
		end
	Mat1(i) = [[a b c]./R_t c];
	Mat2(i) = [PSR-R_t];
	[dx(i); dy(i); dz(i); t0(i)] = inv(Mat1(i))*Mat2(i);
	EP(i+1,1) = EP(i,1) + dx(i);
    EP(i+1,2) = EP(i,2) + dy(i);
   	EP(i+1,3) = EP(i,3) + dz(i);
	t0(i+1) = t0(i);
    end
3 comentarios
  Stephen23
      
      
 el 18 de Sept. de 2020
				"Could you explain what the problem is?"
You are trying to access a row of EP that does not exist.
Look at the size of EP:
size(EP)
and the value of i+1:
disp(i+1)
Does EP have an i+1 row?
Respuesta aceptada
  Walter Roberson
      
      
 el 18 de Sept. de 2020
        [dx(i); dy(i); dz(i); t0(i)] = inv(Mat1(i))*Mat2(i);
You need to use comma instead of semicolon there.
But it is not going work. You need to assign the result to a variable and then index the variable to pull out parts to assign to those variables.
You are also going to need to start using cell arrays for Mat1 and Mat2
Is there a reason that you are storing the Mat1 and Mat2 results? You do not appear to be using them after the loop.
Más respuestas (0)
Ver también
Categorías
				Más información sobre Matrices and Arrays 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!


