Imag, real function error
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
when I try to use the imag or real functions I get an error saying 'Subscript indices must either be real positive integers or logicals.' I don't get this when I use the isreal or abs functions. Why is this?
3 Commenti
James Tursa
il 12 Set 2017
Try clearing all variables first, and then re-try your code to confirm that it is a variable naming issue or not.
Risposte (2)
James Tursa
il 12 Set 2017
Modificato: James Tursa
il 12 Set 2017
It could be that you have inadvertently created variables with the name "real" or "imag" that are shadowing the functions real and/or imag.
0 Commenti
Star Strider
il 12 Set 2017
Modificato: Star Strider
il 12 Set 2017
My guess is that you used ‘imag’ and ‘real’ as variables somewhere earlier in your code. The solution is to find those variables and rename them. (The builtin (link) function can shed light on this.)
Example —
imag = 42;
x = 1 + 2*j;
A1 = builtin('imag', x)
A2 = imag(x)
yields:
A1 =
2.0000e+000
For ‘A2’:
Subscript indices must either be real positive integers or logicals.
Error in FileName (line #####)
A2 = imag(x)
3 Commenti
Star Strider
il 12 Set 2017
The which function can be helpful.
Note all the results from:
which real -all
If the first result is:
real is a variable.
you’ve found the problem.
Vedere anche
Categorie
Scopri di più su Convert Image Type in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!