主要内容

Complex to Magnitude-Angle

计算复信号的幅值和/或相位角

  • Complex to Magnitude-Angle block

库:
Simulink / Math Operations

描述

Complex to Magnitude-Angle 模块输出输入信号的幅值和/或相位角,具体取决于输出参数的设置。输出是与模块输入具有相同数据类型的实数值。输入可以是复信号数组,这种情况下,输出信号也是数组。幅值信号数组包含对应的复数输入元素的幅值。同样,角度输出包含输入元素的角度。

端口

输入

全部展开

模块计算并输出幅值和/或相位角的复输入信号。

限制

仅当逼近方法设置为 CORDIC 时才支持定点数据类型。

数据类型: single | double

输出

全部展开

输出信号,即输入信号的幅值和/或相位角。要选择输出,请设置输出参数。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

相位角弧度,以实数值标量、向量或矩阵形式返回。

依赖关系

  • 要启用此端口,请将输出设置为幅值和角度角度

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

参数

全部展开

指定输出是输入信号的幅值和/或相位角(弧度)。

编程用法

参数:Output
类型:字符向量
值:'Magnitude and angle' | 'Magnitude' | 'Angle'
默认值:'Magnitude and angle'

指定计算输出的逼近方法类型。

逼近方法支持的数据类型何时使用此方法
(默认值)

浮点

您想使用默认的泰勒级数算法。

CORDIC

浮点和定点

您需要快速的近似计算时。

模块使用以下数据类型传播规则。

复数输入的数据类型逼近方法幅值输出的数据类型角度输出的数据类型

浮点

CORDIC

与输入相同

与输入相同

有符号、定点

CORDIC

fixdt(1, WL +2, FL)

其中:

  • WL = 幅值的输入字长 + 2 + 1

  • FL = 幅值的输入小数长度

fixdt(1, WL +2, FL)

其中:

  • WL = 幅值的输入字长 -3,以获得 [-pi, pi] 的最佳精度

  • FL = 角度的输入小数长度

无符号、定点

CORDIC

fixdt(1, WL +3, FL)

其中:

  • WL = 幅值的输入字长 + 2

  • FL = 幅值的输入小数长度

fixdt(1, WL +3, FL)

其中:

  • WL = 角度的输入字长 - 2,以获得范围 [0, pi/2] 的最佳精度小数长度

  • FL = 角度的输入小数长度

编程用法

模块参数ApproximationMethod
类型:字符向量
值:'None' | 'CORDIC'
默认值:'None'

CORDIC 算法执行的迭代次数,指定为正整数值标量。增加迭代次数可以得出更准确的结果,但会增加计算开销和延迟。

模块输入的数据类型您可以指定的值
浮点正整数。最大值是 52(对于双精度)或 23(对于单精度)。
定点不超过幅值输入字长或相位角输入字长(二者中取较小值)的正整数。

依赖关系

要启用此参数,请将逼近方法设置为 CORDIC

编程用法

模块参数NumberOfIterations
类型:字符向量
值:正整数,小于等于定点输入的字长
默认值:'11'

指定采样时间间隔。要继承采样时间,请将此参数设置为 -1。有关详细信息,请参阅指定采样时间

依赖关系

仅当您将此参数设置为 -1 以外的值时才可见。要了解详细信息,请参阅不建议设置采样时间的模块

编程用法

要以编程方式设置模块参数值,请使用 set_param 函数。

参数: SampleTime
值: "-1" (默认) | scalar or vector in quotes

模块特性

数据类型

double | single

直接馈通

多维信号

可变大小信号

过零检测

详细信息

全部展开

扩展功能

全部展开

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2006a 之前推出

全部展开