Spacing in defining complex numbers?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I just spent a while puzzling over a problem until it dawned on me:
a1 = [3.98994e-05 +1i*-0, 4.21732e-05 +1i*3.69849e-05];
Computes to :
1.0e-04 *
0.3990 + 0.0000i 0.0000 + 0.0000i 0.4217 + 0.0000i 0.0000 + 0.3698i
To get what I expected, I had to do the following (strip spaces):
[3.98994e-05+1i*-0, 4.21732e-05+1i*3.69849e-05]
1.0e-04 *
0.3990 + 0.0000i 0.4217 + 0.3698i
I am debugging a large vector written from C code, so my hunch was to spend quite some time looking for bugs in C-code before starting to look at the numerical interpretation in MATLAB.
-k
0 Kommentare
Antworten (2)
KSSV
am 8 Mai 2017
You can try braces instead of space..
a1 = [(3.98994e-05 +1i*-0), (4.21732e-05 +1i*3.69849e-05)];
0 Kommentare
Guillaume
am 8 Mai 2017
The whole reason for this is that you're not consistent with your spacing around the operators. Either put a space before and after the +, or none on either side. As it is, because of the space before and none after, the + is interpreted as the unary +.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Financial Toolbox finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!