1.3 MATLAB中函数的数值运算
- 格式:ppt
- 大小:149.00 KB
- 文档页数:57
Matlab中常用的数值计算方法数值计算是现代科学和工程领域中的一个重要问题。
Matlab是一种用于数值计算和科学计算的高级编程语言和环境,具有强大的数值计算功能。
本文将介绍Matlab中常用的数值计算方法,包括数值积分、数值解微分方程、非线性方程求解和线性方程组求解等。
一、数值积分数值积分是通过数值方法来近似计算函数的定积分。
在Matlab中,常用的数值积分函数是'quad'和'quadl'。
'quad'函数可以用于计算定积分,而'quadl'函数可以用于计算无穷积分。
下面是一个使用'quad'函数计算定积分的例子。
假设我们想计算函数f(x) = x^2在区间[0, 1]上的定积分。
我们可以使用如下的Matlab代码:```f = @(x) x^2;integral = quad(f, 0, 1);disp(integral);```运行这段代码后,我们可以得到定积分的近似值,即1/3。
二、数值解微分方程微分方程是描述自然界各种变化规律的数学方程。
在科学研究和工程应用中,常常需要求解微分方程的数值解。
在Matlab中,可以使用'ode45'函数来求解常微分方程的数值解。
'ode45'函数是采用基于Runge-Kutta方法的一种数值解法。
下面是一个使用'ode45'函数求解常微分方程的例子。
假设我们想求解一阶常微分方程dy/dx = 2*x,初始条件为y(0) = 1。
我们可以使用如下的Matlab代码:```fun = @(x, y) 2*x;[x, y] = ode45(fun, [0, 1], 1);plot(x, y);```运行这段代码后,我们可以得到微分方程的数值解,并绘制其图像。
三、非线性方程求解非线性方程是指方程中包含非线性项的方程。
在很多实际问题中,我们需要求解非线性方程的根。
《深度探讨:从数值运算到符号运算的MATLAB应用》在科学计算领域中,MATLAB无疑是一个不可或缺的工具。
它被广泛应用于数学建模、数据分析、图形可视化和算法开发等领域。
在MATLAB中,数值运算和符号运算是两个核心概念,它们分别在不同的领域中发挥着重要作用。
本文将从数值运算和符号运算两个方面展开讨论,带您深入探索MATLAB的应用价值。
一、数值运算1. MATLAB中的数值数据类型在MATLAB中,常见的数值数据类型包括整数、浮点数和复数等。
它们在科学计算中有着广泛的应用,例如在矩阵运算、微分方程求解和优化算法中。
2. 数值计算函数的应用MATLAB提供了丰富的数值计算函数,包括线性代数运算、插值和拟合、统计分布和随机数生成等。
这些函数为科学计算提供了强大的支持,使得复杂的数值计算变得更加简单高效。
3. 数值方法在实际问题中的应用通过具体的案例,我们可以深入了解MATLAB在实际问题中的数值计算方法。
通过有限元分析解决结构力学问题、通过数值积分求解物理方程、通过数值微分求解工程问题等。
二、符号运算1. MATLAB中的符号计算工具MATLAB提供了符号计算工具包,可以进行符号变量的定义、代数运算、微分积分和方程求解等。
这为数学建模、符号推导和精确计算提供了强大的支持。
2. 符号计算函数的应用通过具体的例子,我们可以深入了解MATLAB中符号计算函数的应用。
利用符号计算求解微分方程、利用符号变量定义复杂的代数表达式等。
3. 符号计算在科学研究中的应用通过详细的案例,我们可以了解符号计算在科学研究中的应用。
利用符号计算推导物理模型、利用符号运算求解工程问题等。
总结与展望:通过本文的深度探讨,我们对MATLAB中的数值运算和符号运算有了全面的了解。
数值运算为我们提供了高效的数值计算工具,而符号运算则为我们提供了精确的符号计算工具。
这两者相辅相成,在不同的领域中发挥着重要的作用。
希望通过本文的阐述,读者可以更加深入地理解MATLAB中数值运算和符号运算的应用,提升科学计算的能力和水平。
Matlab中的数值计算和数值优化技术指南概述:数值计算和数值优化是计算数学的一个重要分支,同时也是科学与工程领域中广泛应用的核心技术之一。
Matlab作为一种强大的数值计算工具,提供了丰富的函数库和算法,可用于解决各种数值计算和数值优化问题。
本文将针对Matlab中的数值计算和数值优化技术,进行详细的介绍和指南。
1. 数值计算技术1.1. 矩阵运算与线性方程组求解在数值计算领域中,矩阵运算和线性方程组求解是基础问题。
Matlab提供了一系列用于矩阵运算和线性方程组求解的函数,如inv、pinv、linsolve等。
使用这些函数,可以快速、准确地进行矩阵的求逆、广义逆和线性方程组的求解。
1.2. 插值和拟合在实际应用中,常常需要根据有限的数据点构建连续函数。
Matlab的interp1和polyfit函数可以用于数据的插值和拟合。
interp1函数可以根据已知的离散数据点,估计出其他位置的函数值;polyfit函数可以根据一组数据点,拟合出一个多项式函数。
1.3. 数值积分数值积分是计算数学中的一个重要问题。
Matlab提供了多种数值积分的函数,如quad、dblquad等。
这些函数使用了各种数值积分算法,可用于计算一维和二维区间上的定积分。
1.4. 常微分方程求解常微分方程的求解是科学与工程中常见的问题之一。
Matlab提供了ode45、ode23等函数,用于求解常微分方程的初值问题。
通过这些函数,可以准确、高效地求解各种常微分方程。
2. 数值优化技术2.1. 优化问题的建模数值优化是求解最优化问题的方法。
在实际问题中,需要将具体问题转化为数学模型,以便进行数值优化。
Matlab提供了fmincon、fminunc等函数,用于建立优化问题的模型,并进行数值优化。
2.2. 约束优化在实际问题中,优化问题往往包含一些约束条件。
Matlab的优化函数可以处理带约束的优化问题,如线性约束、非线性约束等。
第3章 MATLAB 数值运算教学提示:每当难以对一个函数进行积分或者微分以确定一些特殊的值时,可以借助计算机在数值上近似所需的结果,从而生成其他方法无法求解的问题的近似解。
这在计算机科学和数学领域,称为数值分析。
本章涉及的数值分析的主要内容有插值与多项式拟合、数值微积分、线性方程组的数值求解、微分方程的求解等,掌握这些主要内容及相应的基本算法有助于分析、理解、改进甚至构造新的数值算法。
教学要求:本章主要是让学生掌握数值分析中多项式插值和拟合、牛顿-科茨系列数值求积公式、3种迭代方法求解线性方程组、解常微分方程的欧拉法和龙格-库塔法等具体的数值算法,并要求这些数值算法能在MATLAB 中实现。
3.1 多 项 式在工程及科学分析上,多项式常被用来模拟一个物理现象的解析函数。
之所以采用多项式,是因为它很容易计算,多项式运算是数学中最基本的运算之一。
在高等数学中,多项式一般可表示为以下形式:120121()n n n n n f x a x a x a x a x a −−−=+++++…。
当x 是矩阵形式时,代表矩阵多项式,矩阵多项式是矩阵分析的一个重要组成部分,也是控制论和系统工程的一个重要工具。
3.1.1 多项式的表达和创建在MATLAB 中,多项式表示成向量的形式,它的系数是按降序排列的。
只需将按降幂次序的多项式的每个系数填入向量中,就可以在MATLAB 中建立一个多项式。
例如,多项式43231529s s s s +−−+在MATLAB 中,按下面方式组成一个向量x = [1 3 -15 -2 9]MATLAB 会将长度为n +1的向量解释成一个n 阶多项式。
因此,若多项式某些项系数为零,则必须在向量中相应位置补零。
例如多项式41s +在MATLAB 环境下表示为y = [1 0 0 0 1]3.1.2 多项式的四则运算多项式的四则运算包括多项式的加、减、乘、除运算。
下面以对两个同阶次多项式MATLAB 基础及其应用教程·66··66·32()234a x x x x =+++,32()4916b x x x x =+++做加减乘除运算为例,说明多项式的四则运算过程。
第2章 MATLAB数值计算MATLAB的数学计算=数值计算+符号计算其中符号计算是指使用未定义的符号变量进行运算,而数值计算不允许使用未定义的变量。
2.1 变量和数据2.1.1数据类型数据类型包括:数值型、字符串型、元胞型、结构型等数值型=双精度型、单精度型和整数类整数类=无符号类(uint8、uint16、uint32、uint64)和符号类整数(int8、int16、int32、int64)。
2.1.2数据1. 数据的表达方式▪可以用带小数点的形式直接表示▪用科学计数法▪数值的表示范围是10-309~10309。
以下都是合法的数据表示:-2、5.67、2.56e-56(表示2.56×10-56)、4.68e204(表示4.68×10204)2. 矩阵和数组的概念在MATLAB的运算中,经常要使用标量、向量、矩阵和数组,这几个名称的定义如下:▪标量:是指1×1的矩阵,即为只含一个数的矩阵。
▪向量:是指1×n或n×1的矩阵,即只有一行或者一列的矩阵。
▪矩阵:是一个矩形的数组,即二维数组,其中向量和标量都是矩阵的特例,0×0矩阵为空矩阵([])。
▪数组:是指n维的数组,为矩阵的延伸,其中矩阵和向量都是数组的特例。
3. 复数复数由实部和虚部组成,MATLAB用特殊变量“i”和“j”表示虚数的单位。
复数运算不需要特殊处理,可以直接进行。
复数可以有几种表示:z=a+b*i或z=a+b*jz=a+bi 或z=a+bj(当b 为标量时) z=r*exp(i*theta)● 得出一个复数的实部、虚部、幅值和相角。
a=real(z) %计算实部 b=imag(z) %计算虚部 r=abs(z) %计算幅值 theta=angle(z) %计算相角 说明:复数z 的实部a=r*cos(θ); 复数z 的虚部b=r*sin(θ); 复数z 的幅值22b a r +=;复数z 的相角theta=arctg(b/a),以弧度为单位。
第2章MATLAB数据及运算2.1 变量及其操作一、变量命名规则1.变量名、函数名对字母大小写是敏感的myfile与MyFile表示不同的变量sin是MATLAB定义的正弦函数名,但SIN、Sin都不是2.变量名的第一个字符必须是英文字母3.变量名最多可包含63个字符(英文、数字和下划线)4.变量名中不能包含空格、标点my_exemple12是合法的变量名,12exemple、_exemple12、my exemple12、my.exemple12是非法变量名二、MATLAB默认的预定义变量每当MATLAB启动时,不经定义和赋值就会产生一些变量,称为MATLAB 默认的预定义变量这些变量都可以重新赋值。
但最好不要对这些变量名重新赋值例1 用键盘在MATLAB指令窗中输入以下内容epseps ——机器的浮点运算误差限。
PC机上eps的默认值为2.2204×10-16,若某个量的绝对值小于eps,则可以认为这个量为0。
例2 用键盘在MATLAB指令窗中输入以下内容1/0,1.e1000,log(0)Inf ——无穷大量+ ∞的MATLAB表示,也可以写成inf 。
同样地,- ∞可以表示为- Inf 。
在MATLAB 程序执行时,即使遇到了以0 为除数的运算,也不会终止程序的运行,而只给出一个“除0”警告,并将结果赋成Inf ,这样的定义方式符合IEEE 的标准。
从数值运算编程角度看,这样的实现形式明显优于C语言。
例3 用键盘在MATLAB指令窗中输入以下内容0/0,inf/inf,inf*0注意在MATLAB 中,即使遇到以0为除数的运算,程序也不会终止运行。
这时只给出一个警告,并将结果赋给inf 或NaNNaN —— 不定式( not a number ) ,通常由 0 / 0 运算、Inf / Inf 及其他可能的运算得出。
NaN 是一个很奇特的量,如 NaN 与Inf 的乘积仍为 NaN 。
如何在MATLAB中进行数值计算1.基本数学操作:-加法、减法、乘法、除法:使用+、-、*、/操作符进行基本算术运算。
-幂运算:使用^或.^(点乘)操作符进行幂运算。
- 开平方/立方:可以使用sqrt(或power(函数进行开平方和立方运算。
2.矩阵操作:- 创建矩阵:可以使用矩阵构造函数如zeros(、ones(、rand(等创建矩阵。
- 矩阵运算:使用*操作符进行矩阵相乘,使用transpose(函数进行矩阵转置。
- 矩阵求逆和求解线性方程组:使用inv(函数求矩阵的逆,使用\操作符求解线性方程组。
3.数值积分和微分:- 数值积分:使用integral(函数进行数值积分。
可以指定积分函数、积分上下限和积分方法。
- 数值微分:使用diff(函数进行数值微分。
可以指定微分函数和微分变量。
4.解方程:- 一元方程:使用solve(函数可以解一元方程。
该函数会尝试找到方程的精确解。
- 非线性方程组:使用fsolve(函数可以求解非线性方程组。
需要提供初始值来开始求解过程。
-数值方法:可以使用牛顿法、二分法等数学方法来求解方程。
可以自定义函数来实现这些方法。
5.统计分析:- 统计函数:MATLAB提供了丰富的统计分析函数,如mean(、std(、var(等用于计算均值、标准差、方差等统计量。
- 直方图和密度估计:使用histogram(函数可以绘制直方图,并使用ksdensity(函数进行核密度估计。
- 假设检验:使用ttest(或anova(函数可以进行假设检验,用于比较多组数据之间的差异。
6.数值优化:- 非线性最小化:使用fminunc(函数可以进行非线性最小化。
需要提供目标函数和初始点。
- 线性规划:使用linprog(函数可以进行线性规划。
需要提供目标函数和限制条件。
- 整数规划:使用intlinprog(函数可以进行整数规划。
需要提供目标函数和整数约束。
7.拟合曲线:- 线性拟合:使用polyfit(函数进行线性拟合。
matlab的数值运算当使用MATLAB 进行数值运算时,可以使用各种内置函数和运算符进行计算。
下面是一些常见的数值运算操作的详细说明:基本数学运算:加法:使用"+" 运算符进行两个数的相加。
例如,计算2 和3 的和:2 + 3。
减法:使用"-" 运算符进行两个数的相减。
例如,计算5 减去2 的结果:5 - 2。
乘法:使用"*" 运算符进行两个数的相乘。
例如,计算4 乘以3 的结果:4 * 3。
除法:使用"/" 运算符进行两个数的相除。
例如,计算10 除以2 的结果:10 / 2。
取余数:使用"mod" 函数或"%" 运算符计算两个数的余数。
例如,计算11 除以3 的余数:mod(11, 3) 或11 % 3。
幂运算:使用"^" 运算符进行幂运算。
例如,计算2 的3 次幂:2^3。
数学函数:MATLAB 提供了许多内置的数学函数,可以进行各种数值计算和分析操作。
这些函数包括但不限于:abs(x):返回x 的绝对值。
sin(x):返回x 的正弦值。
cos(x):返回x 的余弦值。
exp(x):返回e 的x 次幂,其中e 是自然对数的底数。
log(x):返回x 的自然对数。
sqrt(x):返回x 的平方根。
round(x):返回x 的四舍五入值。
floor(x):返回不大于x 的最大整数。
ceil(x):返回不小于x 的最小整数。
max(x, y):返回x 和y 中的较大值。
min(x, y):返回x 和y 中的较小值。
数组运算:MATLAB 中的数值计算通常涉及数组操作。
可以对向量、矩阵和多维数组执行各种运算,例如:矩阵相加:使用"+" 运算符对两个相同大小的矩阵进行元素级别的相加。
矩阵相乘:使用"" 运算符对两个矩阵进行乘法运算。
matlab常用函数与常用指令大全matlab, 函数, 指令, 大全matlab常用函数与常用指令大全matlab常用函数- -1、特殊变量与常数ans 计算结果的变量名computer 确定运行的计算机eps 浮点相对精度Inf 无穷大I 虚数单位inputname 输入参数名NaN 非数nargin 输入参数个数nargout 输出参数的数目pi 圆周率nargoutchk 有效的输出参数数目realmax 最大正浮点数realmin 最小正浮点数varargin 实际输入的参量varargout 实际返回的参量操作符与特殊字符+ 加- 减* 矩阵乘法.* 数组乘(对应元素相乘)^ 矩阵幂 .^ 数组幂(各个元素求幂)\ 左除或反斜杠/ 右除或斜面杠./ 数组除(对应元素除)kron Kronecker张量积: 冒号() 圆括[] 方括 . 小数点.. 父目录 ... 继续, 逗号(分割多条命令); 分号(禁止结果显示)% 注释! 感叹号' 转置或引用= 赋值== 相等<> 不等于& 逻辑与| 逻辑或~ 逻辑非xor 逻辑异或2、基本数学函数abs 绝对值和复数模长acos,acodh 反余弦,反双曲余弦acot,acoth 反余切,反双曲余切acsc,acsch 反余割,反双曲余割angle 相角asec,asech 反正割,反双曲正割secant 正切asin,asinh 反正弦,反双曲正弦atan,atanh 反正切,双曲正切tangent 正切atan2 四象限反正切ceil 向着无穷大舍入complex 建立一个复数conj 复数配对cos,cosh 余弦,双曲余弦csc,csch 余切,双曲余切cot,coth 余切,双曲余切exp 指数fix 朝0方向取整floor 朝负无穷取整*** 最大公因数imag 复数值的虚部lcm 最小公倍数log 自然对数log2 以2为底的对数log10 常用对数mod 有符号的求余nchoosek 二项式系数和全部组合数real 复数的实部rem 相除后求余round 取整为最近的整数sec,sech 正割,双曲正割sign 符号数sin,sinh 正弦,双曲正弦sqrt 平方根tan,tanh 正切,双曲正切3、基本矩阵和矩阵操作blkding 从输入参量建立块对角矩阵eye 单位矩阵linespace 产生线性间隔的向量logspace 产生对数间隔的向量numel 元素个数ones 产生全为1的数组rand 均匀颁随机数和数组randn 正态分布随机数和数组zeros 建立一个全0矩阵colon) 等间隔向量cat 连接数组diag 对角矩阵和矩阵对角线fliplr 从左自右翻转矩阵flipud 从上到下翻转矩阵repmat 复制一个数组reshape 改造矩阵roy90 矩阵翻转90度tril 矩阵的下三角triu 矩阵的上三角dot 向量点集cross 向量叉集ismember 检测一个集合的元素intersect 向量的交集setxor 向量异或集setdiff 向是的差集union 向量的并集数值分析和傅立叶变换cumprod 累积cumsum 累加cumtrapz 累计梯形法计算数值微分factor 质因子inpolygon 删除多边形区域内的点max 最大值mean 数组的均值mediam 中值min 最小值perms 所有可能的转换polyarea 多边形区域primes 生成质数列表prod 数组元素的乘积rectint 矩形交集区域sort 按升序排列矩阵元素sortrows 按升序排列行std 标准偏差sum 求和trapz 梯形数值积分var 方差del2 离散拉普拉斯diff 差值和微分估计gradient 数值梯度cov 协方差矩阵corrcoef 相关系数conv2 二维卷积conv 卷积和多项式乘法filter IIR或FIR滤波器deconv 反卷积和多项式除法filter2 二维数字滤波器cplxpair 将复数值分类为共轭对fft 一维的快速傅立叶变换fft2 二维快速傅立叶变换fftshift 将FFT的DC分量移到频谱中心ifft 一维快速反傅立叶变换ifft2 二维傅立叶反变换ifftn 多维快速傅立叶变换ifftshift 反FFT偏移nextpow2 最靠近的2的幂次unwrap 校正相位角多项式与插值conv 卷积和多项式乘法roots 多项式的根poly 具有设定根的多项式polyder 多项式微分polyeig 多项式的特征根polyfit 多项式拟合polyint 解析多项式积分polyval 多项式求值polyvalm 矩阵变量多项式求值residue 部分分式展开interp1 一维插值interp2 二维插值interp3 三维插值interpft 使用FFT的一维插值interpn 多维插值meshgrid 为3维点生成x和y的网格ndgrid 生成多维函数和插值的数组pchip 分段3次Hermite插值多项式ppval 分段多项式的值spline 3次样条数据插值绘图函数bar 竖直条图barh 水平条图hist 直方图histc 直方图计数hold 保持当前图形loglog x,y对数坐标图pie 饼状图plot 绘二维图polar 极坐标图semilogy y轴对数坐标图semilogx x轴对数坐标subplot 绘制子图bar3 数值3D竖条图bar3h 水平3D条形图comet3 3D慧星图cylinder 圆柱体fill3 填充的3D多边形plot3 3维空间绘图quiver3 3D震动(速度)图slice 体积薄片图sphere 球stem3 绘制离散表面数据wate***ll 绘制瀑布trisurf 三角表面clabel 增加轮廓标签到等高线图中datetick 数据格式标记grid 加网格线gtext 用鼠标将文本放在2D图中legend 图注plotyy 左右边都绘Y轴title 标题xlabel X轴标签ylabel Y轴标签zlabel Z轴标签contour 等高线图contourc 等高线计算contourf 填充的等高线图hidden 网格线消影meshc 连接网格/等高线mesh 具有参考轴的3D网格peaks 具有两个变量的采样函数surf 3D阴影表面图su***ce 建立表面低层对象surfc 海浪和等高线的结合surfl 具有光照的3D阴影表面trimesh 三角网格图1 常用指令(General Purpose Commands) 1.1 通用信息查询(General information) demo 演示程序help 在线帮助指令helpbrowser 超文本文档帮助信息helpdesk 超文本文档帮助信息helpwin 打开在线帮助窗info MA TLAB 和MathWorks 公司的信息subscribe MA TLAB 用户注册ver MA TLAB 和TOOLBOX 的版本信息version MA TLAB 版本whatsnew 显示版本新特征1.2 工作空间管理(Managing the workspace)clear 从内存中清除变量和函数exit 关闭MA TLABload 从磁盘中调入数据变量pack 合并工作内存中的碎块quit 退出MA TLABsave 把内存变量存入磁盘who 列出工作内存中的变量名whos 列出工作内存中的变量细节workspace 工作内存浏览器1.3 管理指令和函数(Managing commands and functions) edit 矩阵编辑器edit 打开M 文件inmem 查看内存中的P 码文件mex 创建MEX 文件open 打开文件pcode 生成P 码文件type 显示文件内容what 列出当前目录上的M、MA T、MEX 文件which 确定指定函数和文件的位置1.4 搜索路径的管理(Managing the seach patli) addpath 添加搜索路径rmpath 从搜索路径中删除目录path 控制MA TLAB 的搜索路径pathtool 修改搜索路径1.5 指令窗控制(Controlling the command window) beep 产生beep 声echo 显示命令文件指令的切换开关diary 储存MA TLAB 指令窗操作内容format 设置数据输出格式more 命令窗口分页输出的控制开关1.6 操作系统指令(Operating system commands) cd 改变当前工作目录computer 计算机类型copyfile 文件拷贝delete 删除文件dir 列出的文件dos 执行dos 指令并返还结果getenv 给出环境值ispc MA TLAB 为PC(Windows)版本则为真isunix MA TLAB 为Unix 版本则为真mkdir 创建目录pwd 改变当前工作目录unix 执行unix 指令并返还结果vms 执行vms dcl 指令并返还结果web 打开web 浏览器! 执行外部应用程序2 运算符和特殊算符(Operators and special characters)2.1 算术运算符(Arithmetic operators)+ 加- 减* 矩阵乘.* 数组乘^ 矩阵乘方.^ 数组乘方\ 反斜杠或左除/ 斜杠或右除./或.\ 数组除张量积[注]本表第三栏括号中的字符供在线救助时help 指令引述用2.2 关系运算符(Relational operators)= = 等号~= 不等号< 小于> 大于<= 小于或等于>= 大于或等于2.3 逻辑操作(Logical operators) & 逻辑与| 逻辑或~ 逻辑非xor 异或any 有非零元则为真all 所有元素均非零则为真2.4 特殊算符(Special characters) :冒号( ) 圆括号[ ] 方括号{ } 花括号@ 创建函数句柄. 小数点. 构架域的关节点.. 父目录续行号, 逗号; 分号% 注释号! 调用操作系统命令= 赋值符号ˊ引号ˊ复数转置号.ˊ转置号[,] 水平串接[;] 垂直串接( ),{ },. 下标赋值( ),{ },. 下标标识subsindex 下标标识3 编程语言结构(Programming language constructs) 3.1 控制语句(Control flow)break 终止最内循环case 同switch 一起使用catch 同try 一起使用continue 将控制转交给外层的for 或while 循环else 同if 一起使用elseif 同if 一起使用end 结束for,while,if 语句for 按规定次数重复执行语句if 条件执行语句otherwise 可同switch 一起使用return 返回switch 多个条件分支try try-cathch 结构while 不确定次数重复执行语句3.2 计算运行(Evaluation and execution)assignin 跨空间赋值builtin 执行内建的函数eval 字符串宏指令evalc 执行MA TLAB 字符串evalin 跨空间计算串表达式的值feval 函数宏指令run 执行脚本文件3.3 脚本文件、函数及变量(Scripts,function,and variables) exist 检查变量或函数是否被定义function 函数文件头global 定义全局变量isglobal 若是全局变量则为真iskeyword 若是关键字则为真mfilename 正在执行的M 文件的名字persistent 定义永久变量script MA TLAB 命令文件3.4 宗量处理(Augument handling) inputname 实际调用变量名nargchk 输入变量个数检查nargin 函数输入宗量的个数nargout 函数输出宗量的个数nargoutchk 输出变量个数检查varagin 输入宗量varagout 输出宗量3.5 信息显示(Message display)disp 显示矩阵和文字内容display 显示矩阵和文字内容的重载函数error 显示错误信息fprintf 把格式化数据写到文件或屏幕lasterr 最后一个错误信息lastwarn 最后一个警告信息sprintf 按格式把数字转换为串warning 显示警告信息3.6 交互式输入(Interactive input)input 提示键盘输入keyboard 激活键盘做为命令文件pause 暂停uicontrol 创建用户界面控制uimenu 创建用户界面菜单4 基本矩阵函数和操作(Elementary matrices and matrix manipulation)4.1 基本矩阵(Elementary matrices)eye 单位阵linspace 线性等分向量logspace 对数等分向量meshgrid 用于三维曲面的分格线坐标ones 全1 矩阵rand 均匀分布随机阵randn 正态分布随机阵repmat 铺放模块数组zeros 全零矩阵: 矩阵的援引和重排4.2 矩阵基本信息(Basic array information)disp 显示矩阵和文字内容isempty 若是空矩阵则为真isequal 若对应元素相等则为1islogical 尤其是逻辑数则为真isnumeric 若是数值则为真length 确定向量的长度logical 将数值转化为逻辑值ndims 数组A 的维数size 确定矩阵的维数4.3 矩阵操作(Matrix manipulateion)blkdiag 块对角阵串接diag 创建对角阵,抽取对角向量end 数组的长度,即最大下标find 找出非零元素1 的下标fliplr 矩阵的左右翻转flipud 矩阵的上下翻转flipdim 交换对称位置上的元素ind2sub 据单下标换算出全下标reshape 矩阵变维rot90 矩阵逆时针90°旋转sub2idn 据全下标换算出单下标tril 抽取下三角阵triu 抽取上三角阵4.4 特殊变量和常数(Special variables and constants) ans 最新表达式的运算结果eps 浮点相对误差i,j 虚数单位inf 或Inf 无穷大isfinite 若是有限数则为真isinf 若是无穷大则为真isnan 若为非数则为真NaN 或nan 非数pi 3.1415926535897?.realmax 最大浮点数realmin 最小正浮点数why 一般问题的简明答案4.5 特殊矩阵(Specialized matrices) compan 伴随矩阵gallery 一些小测试矩阵hadamard Hadamard 矩阵hankel Hankel 矩阵hilb Hilbert 矩阵invhilb 逆Hilbert 矩阵magic 魔方阵pascal Pascal 矩阵rosser 典型对称特征值实验问题toeplitz T oeplitz 矩阵vander V andermonde 矩阵wilkinson Wilkinson’s 对称特征值实验矩阵5 基本数学函数(Elementary math functions)5.1 三角函数(T rigonometric) acos 反余弦acosh 反双曲余弦acot 反余切acoth 反双曲余切acsc 反余割acsch 反双曲余割asec 反正割asech 反双曲正割asin 反正弦asinh 反双曲正弦atan 反正切atanh 反双曲正切atan2 四象限反正切cos 余弦cosh 双曲余弦cot 余切coth 双曲余切csc 余割csch 双曲余割sec 正割sech 双曲正割sin 正弦sinh 双曲正弦tan 正切tanh 双曲正切5.2 指数函数(Exponential)exp 指数log 自然对数log10 常用对数log2 以2 为底的对数nestpow2 最近邻的2 的幂pow2 2 的幂sqrt 平方根5.3 复数函数(Complex)abs 绝对值angle 相角complex 将实部和虚部构成复数conj 复数共轭cplxpair 复数阵成共轭对形式排列imag 复数虚部isreal 若是实数矩阵则为真real 复数实部unwrap 相位角360°线调整5.4 圆整和求余函数(Rounding and remainder)ceil 朝正无穷大方向取整fix 朝零方向取整floor 朝负无穷大方向取整mod 模数求余rem 求余数round 四舍五入取整sign 符号函数6 特殊函数(Specialized math functions)cart2pol 直角坐标变为柱(或极)坐标cart2sph 直角坐标变为球坐标cross 向量叉积dot 向量内积isprime 若是质数则为真pol2cart 柱(或极)坐标变为直角坐标sph2cart 球坐标变为直角坐标7 矩阵函数和数值线性代数(Matrix functions-numerical linear algebra) 7.1 矩阵分析(Matrix analysis)det 行列式的值norm 矩阵或向量范数normest 估计2 范数null 零空间orth 值空间rank 秩rref 转换为行阶梯形trace 迹subspace 子空间的角度7.2 线性方程(Linear equations)chol Cholesky 分解cholinc 不完全Cholesky 分解cond 矩阵条件数condest 估计1-范数条件数inv 矩阵的逆lu LU 分解luinc 不完全LU 分解lscov 已知协方差的最小二乘积nnls 非负二乘解pinv 伪逆qr QR 分解rcond LINPACK 逆条件数\、/ 解线性方程7.3 特性值与奇异值(Eigenvalues and singular values) condeig 矩阵各特征值的条件数eig 矩阵特征值和特征向量eigs 多个特征值gsvd 归一化奇异值分解hess Hessenberg 矩阵poly 特征多项式polyeig 多项式特征值问题qz 广义特征值schur Schur 分解svd 奇异值分解svds 多个奇异值7.4 矩阵函数(Matrix functions)expm 矩阵指数expm1 矩阵指数的Pade 逼近expm2 用泰勒级数求矩阵指数expm3 通过特征值和特征向量求矩阵指数funm 计算一般矩阵函数logm 矩阵对数sqrtm 矩阵平方根7.5 因式分解(Factorization utility)cdf2rdf 复数对角型转换到实块对角型balance 改善特征值精度的平衡刻度rsf2csf 实块对角型转换到复数对角型8 数据分析和傅里叶变换(Date analysis and Fourier transforms)8.1 基本运算(Basic operations) cumprod 元素累计积cumsum 元素累计和cumtrapz 累计积分hist 统计频数直方图histc 直方图统计max 最大值mean 平均值median 中值min 最小值prod 元素积sort 由小到大排序sortrows 由小到大按行排序std 标准差sum 元素和trapz 梯形数值积分var 求方差8.2 有限差分(Finite differentces) del2 五点离散Laplaciandiff 差分和近似微分gradient 梯度8.3 相关(Correlation)corrcoef 相关系数cov 协方差矩阵subspace 子空间之间的角度8.4 滤波和卷积(Filtering and convoluteion) conv 卷积和多项式相乘conv2 二维卷积convn N 维卷积detrend 去除线性分量deconv 解卷和多项式相除filter 一维数字滤波器fliter2 二维数字滤波器8.5 傅里叶变换(Fourier transforms)fft 快速离散傅里叶变换fft2 二维离散傅里叶变换fftn N 维离散傅里叶变换fftshift 重排fft 和fft2 的输出ifft 离散傅里叶反变换ifft2 二维离散傅城叶反变换ifftn N 维离散傅里叶反变换ifftshift 反fftshift9 音频支持(Audio support)9.1 音频硬件驱动(Audio hardware drivers)sound 播放向量soundsc 自动标刻并播放waveplay 利用系统音频输出设配播放waverecor 利用系统音频输入设配录音9.2 音频文件输入输出(Audio file import and export) auread 读取音频文件(.au)auwrite 创建音频文件(.au)wavread 读取音频文件(.wav)wavwrite 创建音频文件(.wav)9.3 工具(Utilities)lin2mu 将线性信号转换为μ 一律编码的信号mu2lin 将μ 一律编码信号转换为线性信号10 插补多项式函数(Interpolation and polynomials) 10.1 数据插补(Data Interpolation)griddata 分格点数据griddata3 三维分格点数据griddatan 多维分格点数据interpft 利用FFT 方法一维插补interp1 一维插补interp1q 快速一维插补interp2 二维插补interp3 三维插补intern N 维插补pchip hermite 插补10.2 样条插补(Spline Interpolation)ppval 计算分段多项式spline 三次样条插补10.3 多项式(Polynomials)conv 多项式相乘deconv 多项式相除poly 由根创建多项式polyder 多项式微分polyfit 多项式拟合polyint 积分多项式分析polyval 求多项式的值polyvalm 求矩阵多项式的值residue 求部分分式表达roots 求多项式的根1#caidaoyiba11 数值泛函函数和ODE 解算器(Function functions and ODE solvers) 11.1 优化和寻根(Optimization and root finding)fminbnd 非线性函数在某区间中极小值fminsearch 单纯形法求多元函数极值点指令fzero 单变量函数的零点11.2 优化选项处理(Optimization Option handling)optimget 从OPTIONS 构架中取得优化参数optimset 创建或修改OPTIONS 构架11.3 数值积分(Numerical intergration)dblquad 二重(闭型)数值积分指令quad 低阶法数值积分quadl 高阶法数值积分11.4 绘图(Plotting)ezcontour 画等位线ezcontourf 画填色等位线ezmesh 绘制网格图ezmeshc 绘制含等高线的网格图ezplot 绘制曲线ezplot3 绘制3 维曲线ezpolar 采用极坐标绘图ezsurf 画曲面图ezsurfc 画带等位线的曲面图fplot 画函数曲线图11.5 内联函数对象(Inline function object) argnames 给出函数的输入宗量char 创建字符传输组或者将其他类型变量转化为字符串数组formula 函数公式inline 创建内联函数11.6 差微分函数解算器(Differential equation solvers) ode113 变阶法解方程ode15s 变阶法解刚性方程ode23 低阶法解微分方程ode23s 低阶法解刚性微分方程ode23t 解适度刚性微分方程odet23tb 低阶法解刚性微分方程ode45 高阶法解微分方程12 二维图形函数(Two dimensional graphs)12.1 基本平面图形(Elementary X-Y graphs) loglog 双对数刻度曲线plot 直角坐标下线性刻度曲线plotyy 双纵坐标图polar 极坐标曲线图semilogx X 轴半对数刻度曲线semilogy Y 轴半对数刻度曲线12.2 轴控制(Axis control)axes 创建轴axis 轴的刻度和表现box 坐标形式在封闭式和开启词式之间切换grid 画坐标网格线hold 图形的保持subplot 创建子图zoom 二维图形的变焦放大12.3 图形注释(Graph annotation)gtext 用鼠标在图上标注文字legend 图例说明plotedit 图形编辑工具text 在图上标注文字texlabel 将字符串转换为T ex 格式title 图形标题xlabel X 轴名标注ylabel Y 轴名标注12.4 硬拷贝(Hardcopy and printing)orient 设置走纸方向print 打印图形或把图存入文件printopt 打印机设置13 三维图形函数(Three dimensional graphs) 13.1 基本三维图形(Elementary 3-D plots) fill3 三维曲面多边形填色mesh 三维网线图plot3 三维直角坐标曲线图surf 三维表面图13.2 色彩控制(Color control)alpha 透明色控制brighten 控制色彩的明暗caxis (伪)颜色轴刻度colordef 用色风格colormap 设置色图graymon 设置缺省图形窗口为单色显示屏hidden 消隐shading 图形渲染模式whitebg 设置图形窗口为白底13.3 光照模式(Lighting)diffuse 漫反射表面系数light 灯光控制lighting 设置照明模式material 使用预定义反射模式specular 漫反射surfnorm 表面图的法线surfl 带光照的三维表面图13.4 色图(Color maps)autumn 红、黄浓淡色bone 蓝色调灰度图colorcube 三浓淡多彩交错色cool 青和品红浓淡色图copper 线性变化纯铜色调图flag 红-白-蓝黑交错色图gray 线性灰度hot 黑-红-黄-白交错色图hsv 饱和色彩图jet 变异HSV 色图lines 采用plot 绘线色pink 淡粉红色图prism 光谱色图spring 青、黄浓淡色summer 绿、黄浓淡色vga 16 色white 全白色winter 蓝、绿浓淡色13.5 轴的控制(Axis control)axes 创建轴axis 轴的刻度和表现box 坐标形式在封闭式和开启式之间切换daspect 轴的DataAspectRatio 属性grid 画坐标网格线hold 图形的保持pbaspect 画坐标框的PlotBoxAspectRatio 属性subplot 创建子图xlim X 轴范围ylim Y 轴范围zlim Z 轴范围zoom 二维图形的变焦放大13.6 视角控制(V iewpoint control)rotate3d 旋动三维图形view 设定3-D 图形观测点viewmtx 观测点转换矩阵13.7 图形注释(Graph annotation)colorbar 显示色条gtext 用鼠标在图上标注文字plotedit 图形编辑工具text 在图上标注文字title 图形标题xlabel X 轴名标注ylabel Y 轴名标注zlabel Z 轴名标注13.8 硬拷贝(Hardcopy and printing)orient 设置走纸方向print 打印图形或把图存入文件printopt 打印机设置verml 将图形保存为VRML2.0 文件14 特殊图形(Specialized graphs)14.1 特殊平面图形(Specialized 2-D graphs) area 面域图bar 直方图barh 水平直方图comet 彗星状轨迹图compass 从原点出发的复数向量图errorbar 误差棒棒图ezplot 画二维曲线ezpolar 画极坐标曲线feather 从X 轴出发的复数向量图fill 多边填色图fplot 函数曲线图hist 统计频数直方图pareto Pareto 图pie 饼形统计图plotmatrix 散点图阵列scatter 散点图stairs 阶梯形曲线图stem 火柴杆图14.2 等高线及二维半图形(Contour and 2-1/2D graphs) clabel 给等高线加标注contour 等高线图contourf 等高线图contour3 三维等高线ezcontour 画等位线ezcontourf 画填色等位线pcolor 用颜色反映数据的伪色图voronoi V oronoi 图14.3 特殊三维图形(Specialized 3-D graphs)bar3 三维直方图bar3h 三维水平直方图comet3 三维彗星动态轨迹线图ezgraph3 通用指令ezmesh 画网线图ezmeshc 画等位线的网线图ezplot3 画三维曲线ezsurf 画曲面图ezsurfc 画带等位线的曲面图meshc 带等高线的三维网线图meshz 带零基准面的三维网线图pie3 三维饼图ribbon 以三维形式绘制二维曲线scatter3 三维散点图stem3 三维离散杆图surfc 带等高线的三维表面图trimesh 三角剖分网线图trisurf 三角剖分曲面图waterfall 瀑布水线图14.4 内剖及向量视图(V olume and vector visualization) coneplot 锥体图contourslice 切片等位线图quiver 矢量场图quiver3 三维方向箭头图slice 切片图14.5 图像显示及文件处理(Image display and file I/O) brighten 控制色彩的明暗colorbar 色彩条状图colormap 设置色图contrast 提高图像对比度的灰色图gray 线性灰度image 显示图像imagesc 显示亮度图像imfinfo 获取图像文件的特征数据imread 从文件读取图像的数据阵(和伴随色图))imwrite 把强度图像或真彩图像写入文件14.6 影片和动画(Movies and animation)capture 当前图的屏捕捉frame2im 将影片动画转换为编址图像getframe 获得影片动画图像的帧im2frame 将编址图像转换为影片动画movie 播放影片动画moviein 影片动画内存初始化rotate 旋转指令14.7 颜色相关函数(Color related function)spinmap 颜色周期性变化操纵14.8 三维模型函数(Solid modeling)cylinder 圆柱面patch 创建块sphere 球面Surf2patch 将曲面数据转换为块数据15 句柄图形(Handle Graphics)15.1 图形窗的产生和控制(Figure window creation and control) clf 清除当前图close 关闭图形figure 打开或创建图形窗口gcf 获得当前图的柄openfig 打开图形refresh 刷新图形shg 显示图形窗15.2 轴的产生和控制(Axis creation and control) axes 在任意位置创建轴axis 轴的控制box 坐标形式在封闭式和开启式之间切换caxis 控制色轴的刻度cla 清除当前轴gca 获得当前轴的柄hold 图形的保持ishold 若图形处保持状态则为真subplot 创建子图15.3 句柄图形对象(Handle Graphics objects) axex 在任意位置创建轴figure 创建图形窗口image 创建图像light 创建光line 创建线patch 创建块rectangle 创建方surface 创建面text 创建图形中文本uicontextmenu 创建现场菜单对象uicontrol 用户使用界面控制uimenu 用户使用菜单控制15.4 句柄图形处理(Handle Graphics operations) copyobj 拷贝图形对象及其子对象delete 删除对象及文件drawnow 屏幕刷新findobj 用规定的特性找寻对象gcbf “正执行回调操作”的图形的柄gcbo “正执行回调操作”的控件图柄指令gco 获得当前对象的柄get 获得对象特性getappdat 获得应用程序定义数据isappdata 检验是否应用程序定义数据reset 重设对象特性rmappdata 删除应用程序定义数据set 建立对象特性setappdata 建立应用程序定义数据15.5 工具函数(Utilities)closereq 关闭图形窗请求函数ishandle 若是图柄代号侧为真newplot 下一个新图16 图形用户界面工具(Graphical user interface tools) align 对齐用户控件和轴cbedit 编辑回调函数ginput 从鼠标得到图形点坐标guide 设计GUImenu 创建菜单menuedit 菜单编辑propedit 属性编辑uicontrol 创建用户界面控制uimenu 创建用户界面菜单2#caidaoyiba17 字符串(Character string)17.1 通用字符串函数(General)blanks 空格符号cellstr 通过字符串数组构建字符串的元胞数组char 创建字符传输组或者将其他类型变量转化为字符串数组deblank 删除最后的空格double 把字符串变成ASCII 码值eval 执行串形式的MATLAB 表达式17.2 字符串查询(String tests)iscellstr 若是字符串组成的元胞数组则为真ischar 若是字符串则为真isletter 串中是字母则为真isspace 串中是空格则为真isstr 若是字符串则为真17.3 字符串操作(String operations)base2dec X-进制串转换为十进制整数bin2dec 二进制串转换为十进制整数dec2base 十进制整数转换为X 进制串dec2bin 十进制整数转换为二进制串dec2hex 十进制整数转换为16 进制串findstr 在一个串中寻找一个子串hex2dec 16-进制串转换为十进制整数hex2num 16-进制串转换为浮点数int2str 将整数转换为字符串lower 把字符串变成小写mat2str 将数组转换为字符串num2str 把数值转换为字符串strcat 把多个串连接成长串strcmp 比较字符串strcmpi 比较字符串(忽略大小写)strings MA TLAB 中的字符串strjust 字符串的对齐方式strmatch 逐行搜索串strnomp 比较字符串的前N 个字符strncmpi 比较字符串的前N 个字符(忽略大小写)strrep 用另一个串代替一个串中的子串strtok 删除串中的指定子串strvcat 创建字符串数组str2mat 将字符串转换为含有空格的数组str2num 将字符串转换为数值upper 把字符串变成大写18 文件输入/输出(File input/output)clc 清除指令窗口disp 显示矩阵和文字内容fprintf 把格式化数据写到文件或屏幕home 光标返回行首input 提示键盘输入load 从磁盘中调入数据变量pause 暂停sprintf 写格式数据到串sscanf 在格式控制下读串19 时间和日期(T ime and dates)clock 时钟cputme MA TLAB 战用CPU 时间date 日期etime 用CLOCK 计算的时间now 当前时钟和日期pause 暂停tic 秒表启动toc 秒表终止和显示20 数据类型(Data types and structures)20.1 数据类型(Data types)cell 创建元胞变量char 创建字符传输组或者将其他类型变量转化为字符串数组double 转化为16 位相对精度的浮点数值对象function handle 函数句柄inline 创建内联函数JavaArray 构建Java 数组JavaMethod 调用某个Java 方法JavaObject 调用Java 对象的构造函数single 转变为单精度数值sparse 创建稀疏矩阵struct 创建构架变量uint8(unit16、unit32) 转换为8(16、32)位无符号整型数int8(nit16、nit32) 转换为8(16、32)位符号整型数20.2 多维数组函数(Multi-dimensional array functions) cat 把若干数组串接成高维数组ndims 数组A 的维数ndgrid 为N-D 函数和插补创建数组ipermute 广义反转置permute 广义非共轭转置shiftdim 维数转换squeeze 使数组降维20.3 元胞数组函数(Cell array functions)cell 创建元胞变量celldisp 显示元胞数组内容cellfun 元胞数组函数cellplot 图示元胞数组的内容cell2struct 把元胞数组转换为构架数组deal 把输入分配给输出is cell 若是元胞则为真num2 cell 把数值数组转换为元胞数组struct2 cell 把构架数组转换为元胞数组20.4 构架函数(Structure functions)fieldnames 获取构架的域名getfield 获取域的内容isfield 若为给定构架的域名则为真isstruct 若是构架则为真rmfield 删除构架的域setfield 指定构架域的内容struct 创建构架变量20.5 函数句柄函数(Function handle functions)@ 创建函数句柄functions 列举函数句柄对应的函数func2str 将函数句柄数组转换为字符串str2func 将字符串转换为函数句柄20.6 面向对象编程(Object oriented programming functions) dlass 查明变量的类型isa 若是指定的数据类型则为真inferiorto 级别较低isjava 若是java 对象则为真isobject 若是对象则为真methods 显示类的方法名substruct 创建构架总量superiorto 级别较高21 示例(E xamples and demonstrations)demo 演示程序flow 无限大水体中水下射流速度数据intro 幻灯演示指令peaks 产生peaks 图形数据22 符号工具包(Symbolic Math T oolbox) 22.1 微积分(Calculus)diff 求导数limit 求极限int 计算积分jacobian Jacobian 矩阵symsum 符号序列的求和trylor T rylor 级数22.2 线性代数(Linear Algebra)det 行列式的值diag 创建对角阵,抽取对角向量eig 矩阵特征值和特征向量expm 矩阵指数inv 矩阵的逆jordan Jordan 分解null 零空间poly 特征多项式rank 秩rref 转换为行阶梯形svd 奇异值分解。
matlab的数值运算Matlab是一种强大的数值计算和科学计算软件,它提供了丰富的数值运算功能,包括基本的数学运算、矩阵运算、符号计算以及常见的数值方法等。
在本文中,我们将讨论一些常见的数值运算方法和函数,并介绍它们的使用方法。
1. 基本的数学运算在Matlab中,可以使用基本的算术运算符进行数学运算,例如加法(+)、减法(-)、乘法(*)、除法(/)等。
例如,可以使用以下代码计算两个数的和:```a = 3;b = 4;c = a + b;disp(c);```这将输出结果为7。
此外,Matlab还提供了许多数学函数,可以进行各种复杂的数学运算。
例如,可以使用`sin`函数计算一个角度的正弦值,如下所示:```angle = pi/6;sin_value = sin(angle);disp(sin_value);```这将输出结果为0.5,表示30度的正弦值为0.5。
2. 矩阵运算Matlab中的矩阵运算非常方便,可以对矩阵进行加法、减法、乘法、转置等操作。
例如,可以使用以下代码计算两个矩阵的乘法:```A = [1 2; 3 4];B = [5 6; 7 8];C = A * B;disp(C);```这将输出结果为:```19 2243 50```表示两个2x2矩阵的乘积。
此外,Matlab还提供了许多专门用于矩阵运算的函数,例如`inv`函数可以计算一个矩阵的逆矩阵,`eig`函数可以计算一个矩阵的特征值和特征向量等。
3. 符号计算Matlab还提供了符号计算的功能,可以进行代数运算、求解方程、微积分等。
通过使用符号变量,并调用Matlab中的符号计算函数,可以进行复杂的数值计算。
例如,以下代码演示了如何计算方程的解:```syms x;eqn = x^2 - 3*x + 2 == 0;sol = solve(eqn, x);disp(sol);```这将输出结果为2和1,表示方程的两个解分别为2和1。
matlab中inf和nan的运算规则Matlab中inf和nan是特殊的数值,其运算规则相对复杂。
本文将从引言概述、正文内容、总结三个部分展开,正文内容分六个大部分。
引言概述:在数学和科学计算中,inf和nan是常见的特殊数值。
inf代表正无穷大,nan表示无效数或非数。
在Matlab中,inf和nan具有特定的运算规则,需要我们注意和了解,以避免在使用这些特殊数值时引发错误。
正文内容:1. inf的运算规则:1.1 inf与有限数相加或相减,结果仍为inf。
例如,inf + 1 仍为inf。
1.2 inf与自身相加、相减、相乘或相除,结果仍为inf。
例如,inf - inf 仍为inf。
1.3 inf与任何非零有限数相乘,结果为inf。
例如,inf * 2 仍为inf。
1.4 inf与0相乘,结果为NaN(无效数)。
例如,inf * 0 为NaN。
1.5 inf与无穷大相乘,结果为inf。
例如,inf * inf 仍为inf。
2. nan的运算规则:2.1 nan与有限数相加、相减、相乘或相除,结果均为nan。
例如,nan + 1 为nan。
2.2 nan与自身相加、相减、相乘或相除,结果仍为nan。
例如,nan - nan 仍为nan。
2.3 nan与任何无穷大相加、相减、相乘或相除,结果均为nan。
例如,nan + inf 为nan。
2.4 nan与0相乘,结果为nan。
例如,nan * 0 为nan。
2.5 nan与无穷大相乘,结果为nan。
例如,nan * inf 为nan。
3. inf与nan的运算规则:3.1 inf与nan相加、相减或相乘,结果仍为nan。
例如,inf + nan 为nan。
3.2 inf与nan相除,结果为inf。
例如,inf / nan 为inf。
3.3 nan与inf相加、相减或相乘,结果仍为nan。
例如,nan + inf 为nan。
3.4 nan与inf相除,结果为nan。