MATLAB 2015从入门到精通
上QQ阅读APP看书,第一时间看更新

2.1.2 符号与数值之间的转化

上一节中我们已经讲述了 sym 函数的应用。其中有一条调用格式为 Num=sym(Num,flag),该调用格式为符号与数值计算之间的转化。转化的方式则由参数flag来确定,分别为r、d、e和f。下面通过具体例子讲解符号与数值之间的转化关系。

【实例2-2】使用Num=sym(Num,flag)调用格式,比较flag取不同的值时,输出结果的差异。

思路·点拨

sym函数中参数flag的默认值为r。

—附带光盘“Ch2\实例2-2”文件夹

—附带光盘“AVI\实例2-2.avi”

解:具体程序如下。

t=0.1;

sym(t)

sym(t,'r')

sym(t,'f')

sym(t,'d')

sym(t,'e')

输出结果为

ans =

1/10

ans =

1/10

ans =

3602879701896397/36028797018963968

ans =

0.10000000000000000555111512312578

ans =

eps/40 + 1/10

根据上述例子,读者可以比较出参数 flag 取不同的值时,其输出结果的差异。sym 函数除了将符号转换为数值之外,同理可以将数值转化为符号。

【实例2-3】将数值矩阵转化为符号矩阵。

思路·点拨

本例仍然是一个sym函数的简单应用的例子。使用sym(A)即可将该数值矩阵转化为符号矩阵。

—附带光盘“Ch2\实例2-3”文件夹

—附带光盘“AVI\实例2-3.avi”

解:具体程序如下。

A=[0.3 0.5 0.3 0.2;

1.0 0.4 0.7 0.8;

0.5 0.5 0.3 0.25;

0.6 0.9 0.35 0.5];

sym(A)

程序运行结果如下。

ans =

[ 3/10, 1/2, 3/10, 1/5]

[ 1, 2/5, 7/10, 4/5]

[ 1/2, 1/2, 3/10, 1/4]

[ 3/5, 9/10, 7/20, 1/2]