2015-05-31 4 views
0

У меня есть список столбцов комплексных чисел (длиной около 200 тыс.). Я хочу переключить все реальные и мнимые части. Я уверен, что я могу сделать одно умножение, чтобы выполнить это, но я не могу найти формулу онлайн. Это самый лучший способ я нашел до сих пор, но это слишком медленно для моих потребностей (она должна работать в реальном времени):Комплекс коммутаторов matlab и реальные части номера

>> vec = [complex(1,11);complex(2,22);complex(3,33)] 

vec = 

    1.0000 +11.0000i 
    2.0000 +22.0000i 
    3.0000 +33.0000i 

>> complex(imag(vec),real(vec)) 

ans = 

    11.0000 + 1.0000i 
    22.0000 + 2.0000i 
    33.0000 + 3.0000i 

ответ

6

Я не уверен, если есть встроенная операция для этого, но Я вижу увеличение скорости, не используя complex функцию:

>> imag(vec) + real(vec)*1i 
ans = 
    11.0000 + 1.0000i 
    22.0000 + 2.0000i 
    33.0000 + 3.0000i 

, а также таким образом

>> conj(vec)*1i 
ans = 
    11.0000 + 1.0000i 
    22.0000 + 2.0000i 
    33.0000 + 3.0000i 

который я думаю, выглядит намного ровнее.

Смежные вопросы