文档

腹肌

的绝对值fi对象

语法

c = abs (a)
c = abs (T)
c = abs (F)
c = abs (a、T、F)

描述

c = abs (a)返回的绝对值fi对象一个用同样的numerictype对象作为一个。中间量计算使用fimath一个。输出fi对象c当地fimath一样吗一个

c = abs (T)返回一个fi对象与一个值的绝对值一个numerictype对象T。中间量计算使用fimath一个和输出fi对象c当地fimath一样吗一个。看到数据类型传播规则

c = abs (F)返回一个fi对象与一个值的绝对值一个和相同的numerictype对象作为一个。中间量计算使用fimath对象F。输出fi对象c没有地方fimath。

c = abs (a、T、F)返回一个fi对象与一个值的绝对值一个numerictype对象T。中间量计算使用fimath对象F。输出fi对象c没有地方fimath。看到数据类型传播规则

请注意

Signedness输入的numerictype对象T汽车,腹肌函数始终返回一个无符号fi对象。

腹肌只支持万博1manbetxfi对象(斜率偏见)扩展当偏差为零和部分的斜率就是其中之一。腹肌不支持复杂万博1manbetxfi数据类型的对象布尔

当对象一个是真实的和有一个签署了数据类型,最负值的绝对值是有问题的,因为它不是可表示的。在这种情况下,饱和烃绝对值最积极的价值由数据类型如果能上演的OverflowAction属性设置为饱和。如果OverflowAction包装的绝对值最负面的价值没有影响。

数据类型传播规则

为你指定一个语法numerictype对象T,腹肌函数遵循下表中列出的数据类型传播规则。一般来说,这些规则可以概括为“传播浮点数据类型。“这允许您编写的代码可以使用定点和浮点输入。

对象数据类型的输入 numerictype对象T的数据类型 数据类型的输出c

fi固定

fi固定

数据类型的numerictype对象T

fiScaledDouble

fi固定

ScaledDouble的属性numerictype对象T

fi

fi固定

fi

fi

fi固定

fi

任何fi数据类型

fi

fi

任何fi数据类型

fi

fi

例子

示例1

下面的例子显示了区别最负值的绝对值结果可表示的数据类型时签署OverflowAction饱和包装

P = fipref (“NumericTypeDisplay”,“全部”,“FimathDisplay”,“全部”);= fi (-128) = -128 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 8 abs (a) ans = 127.9961 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 8。OverflowAction =“包装”= -128 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 8 RoundingMethod:最近OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision abs (a) ans = -128 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 8 RoundingMethod:最近OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision

示例2

下面的例子显示了复杂的绝对值结果之间的差异和实际fi输入负值表示的最大的数据类型时签署OverflowAction包装

re = fi(15) 1, 1, 16日re = 1 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15我= fi(0, 1, 16日15)im = 0 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15 =复杂(再保险、im) = 1 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15 abs (a、re.numerictype fimath (“OverflowAction”,“包装”)ans = 1.0000 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15 abs(再保险、re.numerictype fimath (“OverflowAction”,“包装”)ans = 1 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15

示例3

下面的例子显示了如何指定numerictypefimath对象作为可选参数控制的结果腹肌真实的输入函数。当你指定一个fimath对象作为参数fimath对象用于计算中间量,并由此产生fi没有地方fimath对象。

一个= fi (1 1 6 5“OverflowAction”,“包装”)= 1 DataTypeMode:定点:二进制扩展Signedness:签了字:6 FractionLength: 5 RoundingMethod:最近OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision abs (a) ans = 1 DataTypeMode:定点:二进制扩展Signedness:签了字:6 FractionLength: 5 RoundingMethod:最近OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision f = fimath (“OverflowAction”,“饱和”)f = RoundingMethod:最近的OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision abs (a、f) ans = 0.9688 DataTypeMode:定点:二进制扩展Signedness:签了字:6 FractionLength: 5 t = numerictype (a.numerictype,“签署”假)t = DataTypeMode:定点:二进制扩展Signedness:无符号字:6 FractionLength: 5 abs (a、t、f) ans = 1 DataTypeMode:定点:二进制扩展Signedness:无符号字:6 FractionLength: 5

示例4

下面的例子显示了如何指定numerictypefimath对象作为可选参数控制的结果腹肌对于复杂的输入函数。

= fi(我,1,16日15日“OverflowAction”,“包装”)= -1.0000 - 1.0000我DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15 RoundingMethod:最近OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision t = numerictype (a.numerictype,“签署”假)t = DataTypeMode:定点:二进制扩展Signedness:无符号字:16 FractionLength: 15 abs (a、t) ans = 1.4142 DataTypeMode:定点:二进制扩展Signedness:无符号字:16 FractionLength: 15 RoundingMethod:最近OverflowAction:包装ProductMode: FullPrecision SumMode: FullPrecision f = fimath (“OverflowAction”,“饱和”,“SumMode”,“KeepLSB”,“SumWordLength”a.WordLength,“ProductMode”,“specifyprecision”,“ProductWordLength”a.WordLength,“ProductFractionLength”a.FractionLength) f = RoundingMethod:最近的OverflowAction:饱和ProductMode: SpecifyPrecision ProductWordLength: 16 ProductFractionLength: 15 SumMode: KeepLSB SumWordLength: 16 CastBeforeSum:真正的abs (a、t、f) ans = 1.4142 DataTypeMode:定点:二进制扩展Signedness:无符号字:16 FractionLength: 15

算法

绝对值y一个真正的输入一个定义如下:

y=一个如果一个> = 0

y= -一个如果一个< 0

绝对值y一个复杂的输入一个有关它的实部和虚部如下:

y =√真正的(一个)*()+图像放大(a) *图像放大(a))

腹肌函数的绝对值计算复杂的输入如下:

  1. 计算的实部和虚部一个使用以下公式:

    re =真正的(一个)

    我=图像放大(a)

  2. 计算的广场再保险即时通讯使用以下对象:

    • fimath对象F如果F被指定为一个参数。

    • fimath一个如果F没有指定作为参数。

  3. 演员的广场再保险即时通讯如果输入签署无符号类型。

  4. 添加的广场再保险即时通讯使用以下对象:

    • fimath对象F如果F被指定为一个参数。

    • fimath对象与一个如果F没有指定作为参数。

  5. 计算的平方根之和计算四步中使用√6函数用以下额外的参数:

    • numerictype对象T如果T是指定的,还是numerictype的对象一个否则。

    • fimath对象F如果F是指定的,还是fimath对象与一个否则。

请注意

第三步阻止的平方和的真实和虚构的成分从负面的。这是很重要的,因为如果再保险即时通讯最大负值和吗OverflowAction属性设置为包装然后将发生一个错误当第五步的平方根。

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

之前介绍过的R2006a

这个主题有帮助吗?