MATLAB扫盲:详解Inf和NaN的含义与应用

1.概念

众所周知,数学上表达无穷大使用符号“∞”,在Matlab中,用特殊字符“inf”表示无穷大,比如零除和溢出等这样的运算会产生无穷大,这导致结果太大而不能用传统的浮点值表示;

用特殊字符“NaN”表示既不是实数也不是复数的“非数字”的值,例如,当把Excel文件中的数据读取到Matlab中时,若只读取数值型数据,那么数据中的缺失值自动使用NaN来表达;

2.Inf的创建和产生

创建无穷大的函数是inf,除此之外,一些运算也会生成Inf

程序示例:

a=inf

1/0  %无穷大

1e309  %超过存储范围,返回无穷大

realmax  %浮点型最大取值范围

realmax+1e30  %最大取值+1e30并未返回无穷大值

realmax+1e300  %最大取值+1e300返回无穷大值

3. NaN的创建和产生

创建非值的函数是nan,除此之外,一些运算也会生成NaN

程序示例:

a=nan  %nan

inf/inf  %nan

0/0  %nan

4. Inf的判断和运算

判读一个变量是否为无穷大使用函数isinf,在Matlab里,infinf相等判断为真;

程序示例:

isinf(exp(1000))  %返回逻辑1,是无穷大

inf==inf  %返回逻辑值为真

inf+10  %返回Inf

inf-1e308  %返回Inf

inf+inf  %返回Inf

5. NaN的判断和运算

判读一个变量是否为非值使用函数isnan,在Matlab里,nannan相等判断为假;

程序示例:

a=nan

isnan(a)  %返回逻辑值为真

nan==nan  %0假,非值无法定义,因此相互之间不相等

nan>0

nan<0

nan~=nan

%涉及nan的逻辑运算结果通常为0

相关视频

End

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空