Error message "Invalid use of operator"

5 Ansichten (letzte 30 Tage)
Sergio
Sergio am 26 Mär. 2024
Kommentiert: Steven Lord am 26 Mär. 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 Kommentare
Dyuman Joshi
Dyuman Joshi am 26 Mär. 2024
Bearbeitet: Dyuman Joshi am 26 Mär. 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 am 26 Mär. 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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Voss
Voss am 26 Mär. 2024
Verschoben: Voss am 26 Mär. 2024
Looks like you mean to say:
grad_all((ii-1)*2+[1 2],:) = -grad;

Weitere Antworten (0)

Kategorien

Mehr zu Multidimensional Arrays finden Sie in Help Center und File Exchange

Produkte


Version

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by