数学建模社区-数学中国

标题: 创建多个符号对象 [打印本页]

作者: 森之张卫东    时间: 2015-7-26 19:20
标题: 创建多个符号对象
命令1  创建多个符号对象的快捷命令
函数  syms
格式  syms  arg1  arg2 …     %定义arg1、arg2为符号
syms  arg1 arg2 … real   %该命令是下列命令的简洁形式:
arg1 = sym('arg1','real');
arg2 = sym('arg2','real'); …
syms arg1 arg2 … unreal   %该命令是下列命令的简洁形式:
arg1 = sym('arg1','unreal');
arg2 = sym('arg2','unreal'); …
注:clear x不能清除符号变量x的属性“real”,只能清除变量x。要想清除该属性,要输入:syms x unreal或clear mex或clear all。执行后面的两个命令后,Maple内核将重新装载入MATLAB的工作空间(这是不可取的,因为花费时间)。
例1
>>syms x beta real  %符号对象已经生成,执行下面一些操作:
>>whos
将显示工作空间中存在变量的详细信息:
      Name       Size         Bytes  Class
       beta       1x1            132  sym object
        x        1x1            126  sym object
      Grand total is 7 elements using 258 bytes
y = x + i*beta; clear x; y
通过上面的操作,我们看到,当x被清除掉后,y的值并没有马上改变:
y =
     x+i*beta

命令2  将符号多项式转化为数值多项式
函数  sym2poly
格式  c = sym2poly(s)   %返回符号多项式s的数值系数行向量c。多项式自变量次数的系数按降幂排列。即行向量c的第一分量c1为多项式s的最高次数项的系数,c2为第二高次数项的系数,如此类推。
例2
>>syms x u;
>>c1 = sym2poly(3*x^3 - 2*x^2 – sqrt(5))
>>c2 = sym2poly(u^4 – 3 + 5*u^2)
计算结果为:
c1 =
     3.0000   -2.0000    0   -2.2361
c2 =
     1     0     5     0    -3






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5