Variable "H" might be set by a nonscalar operator
52 views (last 30 days)
Show older comments
Hello,
My goal for my code is to simulate a tire model and H equation gets a error code saying "Variable H might be set by a nonscalar operator". I think it has to deal with my variable s being defined as a vector but I dont know how to change it into a scalar. Help please :).
1 Comment
Jan
on 13 Feb 2022
Please post code as text, not as screenshot. Then it is easier to suggest modifications using copy&paste.
Answers (1)
Jan
on 13 Feb 2022
If H is an array, what is the meaning of:
if H < 0.5
? The IF command requires a scalar condition. Therefore Matlab inserts an all() automatically. To be exact:
if all(H(:) < 0.5) && ~isempty(H)
It is not meaningful "to change H to a scalar" also.
You are running a loop over the elements of s. Maybe you do not want to access the vector s, but the elements s(i).
8 Comments
Jan
on 14 Feb 2022
Edited: Jan
on 14 Feb 2022
Square brackets are the operator for concatenating arrays. Changing parentheses to brackets is not useful.
My suggested code produces the same output as the original code.
"(s,Fx) isnt what im looking for" - I do not know, what you are looking for. All I know is the code you have posted.
See Also
Categories
Find more on Tires and Vehicles in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!