Changing real part of complex number?
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Danijel
el 10 de Oct. de 2017
Editada: John D'Errico
el 10 de Oct. de 2017
I have an array of compelx numbers. I'd like to change the real part of the 34th array member to zero. This code doesn't work:
real( my_complex_array(34) ) = 0;
What's the solution?
0 comentarios
Respuesta aceptada
John D'Errico
el 10 de Oct. de 2017
Editada: John D'Errico
el 10 de Oct. de 2017
X = (1:35)' * (1+1i); % not being very creative here
Now, there are lots of ways to just kill the real part of only the 34'th element. This will work:
X(34) = X(34) - real(X(34));
Perhaps simpler, because it will not require the subtraction.
X(34) = 1i*imag(X(34));
Or,
X(34) = 0 + 1i*imag(X(34));
Another one, using complex.
X(34) = complex(0,imag(X(34));
In any event, did it work?
X(33:35)
ans =
33 + 33i
0 + 34i
35 + 35i
Of course it did.
0 comentarios
Más respuestas (1)
Ver también
Categorías
Más información sobre Operators and Elementary Operations 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!