Vector normalization giving error in second iteration

3 visualizaciones (últimos 30 días)
Sania Gul
Sania Gul el 2 de En. de 2019
Comentada: Sania Gul el 4 de En. de 2019
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)

Respuesta aceptada

Jan
Jan el 2 de En. de 2019
Editada: Jan el 2 de En. de 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

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by