Clear Filters
Clear Filters

Encoundered error during compiling program for solving differential equation ode45 using MATLAB R2013a.

1 view (last 30 days)
Came across 'The expression to the left of the equals sign is not a valid target for an assignment' during compiling ode45 differential equation solver line 29, what would be the possible error.

Answers (2)

Torsten
Torsten on 2 Jun 2016
if s==0
u=b*x(2)+c*x(1)-3*(1+abs(x(2)))*sign(s);
end
Best wishes
Torsten.

Steven Lord
Steven Lord on 2 Jun 2016
I believe line 29 is:
if s=0;
A single equal sign performs assignment. Two equal signs performs comparison.
x = 5; % Assign the value 5 to x
x == 5 % Returns true if x is equal to 5 and false if it is not.
The if keyword wants a comparison, not an assignment, as its condition.

Community Treasure Hunt

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

Start Hunting!