Phase Extractor

Извлеките неотвернутую фазу комплексного входа

Библиотека

Сигнальные операции

dspsigops

  • Phase Extractor block

Описание

Блок Phase Extractor извлекает неотвернутую фазу комплексного входа. Входной вход может быть вектором или матрицей. Для 2D входов блок обрабатывает каждый столбец как независимый канал. Первая размерность - длина канала. Второе измерение - количество каналов. Блок обрабатывает 1D входы как один канал.

Блок сохраняет размер и размерность входа, и скорость выходного порта равна скорости входного порта.

Примеры

В этом примере показано, как использовать блок Phase Extractor для извлечения фазы знаковой волны. Блок DSP Sine Wave представляет входной сигнал системы. Установите параметры блоков DSP Sine Wave:

  • Frequency установлено на 10 Hz

  • Sample mode установлено на Discrete

  • Output complexity установлено на Complex

  • Sample time установлено на 1/1000

  • Sample per frame установлено на 128

Не выбирайте параметры блоков Phase Extractor Unwrap phase only within the frame.

Блок Time Scope отображает извлеченную фазу.

Параметры

Unwrap phase only within the frame

Когда вы снимаете этот флажок, блок игнорирует контуры между входными кадрами. Когда вы устанавливаете этот флажок, блок обрабатывает каждую систему координат входных данных независимо и сбрасывает начальное значение фазы для каждого нового входного кадра.

Simulate using

Выберите тип симуляции из следующего:

  • Code generation

  • Interpreted execution

Поддерживаемые типы данных

ПортПоддерживаемые типы данных

Вход

  • Плавающая точка двойной точности

  • Плавающая точка с одной точностью

Выход

  • Плавающая точка двойной точности

  • Плавающая точка с одной точностью

См. также

dsp.PhaseExtractor

DSP System Toolbox

Алгоритмы

Рассмотрим входной кадр длины N:

(x1x2xN)

The step метод действует на эту систему координат и формирует этот выход:

(Φ1Φ2ΦN)

где:

Φi=Φi1+угол(xi1*xi)

Здесь я бегу от 1 до N. The angle функция возвращает угол фазы в радианах.

Если входной сигнал состоит из нескольких систем координат:

  • Если вы задаете TreatFramesIndependently на true, а step способ обрабатывает каждую систему координат независимо. Поэтому в каждой системе координат step метод вычисляет фазу по предыдущей формуле, где:

    • Φ0 равен 0.

    • x0 равен 1.

  • Если вы задаете TreatFramesIndependently на false, а step метод игнорирует контуры между системами координат. Поэтому в каждой системе координат step метод вычисляет фазу по предыдущей формуле, где:

    • Φ0 - последняя неотвернутая фаза из предыдущей системы координат.

    • x0 - последняя выборка из предыдущей системы координат.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Введенный в R2014b