Error message "Invalid use of operator"

3 visualizaciones (últimos 30 días)
Sergio
Sergio el 26 de Mzo. de 2024
Comentada: Steven Lord el 26 de Mzo. de 2024
Hi, when I run "enzymleastsquares.m" I get an odd error
"Invalid use of operator"
I used originally the normal =, but MATLAB asked me to change this to == , then I got this error as stated.
type('enzymeLeastSquares.m')
function [result,grad_all] = enzymeLeastSquares(k) N = 4; % number of experiments result = zeros(2*N,1); % pre-allocate result arrays grad_all = zeros(2*N,2); dt=0.01; T=1; %k=[5;1]; y0_all = [2 1 1 4; 1 1 0 1]; y1_all = [1.0 0.5 0.3 2.4; 2.1 1.6 0.9 2.7]; for ii = 1:N y0 = y0_all(:,ii); y1 = y1_all(:,ii); [SP,grad]=enzyme(y0,k,dt,T); result((ii-1)*2+[1 2]) = y1-SP; grad_all((ii-1)*2+[1 2], == -grad; end
Where is the error here? All seems fine in the grad_all operator!
Thanks
  2 comentarios
Dyuman Joshi
Dyuman Joshi el 26 de Mzo. de 2024
Editada: Dyuman Joshi el 26 de Mzo. de 2024
How are you calling the function enzymeLeastSquares.m?
What is this line supposed to do?
grad_all((ii-1)*2+[1 2], == -grad;
2nd last line in the same function.
Also, copy and paste your full error message i.e. all of the red text. Whenever you encounter an error, best to provide the full details of it.
Steven Lord
Steven Lord el 26 de Mzo. de 2024
Note that if you edit enzymeLeastSquares.m in the MATLAB editor, you receive two Code Analyzer messages.
One is orange, indicating that the variable grad defined on line 13 is not used. [I know you use it on line 15, but keep reading.]
The second, more serious message, is red indicating a fatal error that will prevent your code from running to completion. That's on line 15, which @Dyuman Joshi already called out in their comment. MATLAB doesn't understand what you're trying to do there. It's not valid MATLAB syntax.

Iniciar sesión para comentar.

Respuesta aceptada

Voss
Voss el 26 de Mzo. de 2024
Movida: Voss el 26 de Mzo. de 2024
Looks like you mean to say:
grad_all((ii-1)*2+[1 2],:) = -grad;

Más respuestas (0)

Categorías

Más información sobre Multidimensional Arrays en Help Center y File Exchange.

Productos


Versión

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by