Vector normalization giving error in second iteration

1 view (last 30 days)
In first iteration, there was no issue, but in second iteration, the program stopped running giving error " Subscript indices must either be real positive integers or logicals" .
See line 62
Matlab command
s1=s1/norm(s1)

Accepted Answer

Jan
Jan on 2 Jan 2019
Edited: Jan on 2 Jan 2019
You have redefined "norm" as a variable in:
norm = 1./eta;
Afterwards you cannot access the function norm() directly anymore. The solution is easy: Do not shadow built-in functiony by variables, but choose a different name for teh variable.
By the way: you can find the reason of such problems easily using the debugger. Type this in the command window:
dbstop if error
and run your code again. When Matlab stops at the problem, check the used expressions:
which norm -all % <- this will reveal the problem
size(s1) % <- might be useful in other cases
class(s1)
s1

More Answers (0)

Categories

Find more on Debugging and Analysis 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!