首页 > 编程笔记 > MATLAB笔记 阅读:1

MATLAB symvar()函数的用法(附带实例)

在微积分、函数表达式化简、解方程中,确定自变量是必不可少的步骤。在不指定自变量的情况下,按照数学常规,自变量通常是小写英文字母,并且为字母表末尾的几个,如 t、w、x、y、z 等。

在 MATLAB 中,利用函数 symvar() 可以按数学习惯来确定一个符号表达式中的自变量,这对于按照特定要求进行某种计算是非常有价值的。

symvar() 函数的调用格式如下:
C = symvar(expr)        % 返回字符向量元胞数组 C 中的标识符(表达式中变量的名称)
                        % 搜索 expr 中除 i、j、pi、inf、nan、eps 和公共函数之外的标识符
C = symvar(expr, n)     % 按数学习惯确定符号函数 / 符号方程 expr 中的 n 个自变量
当 n=1 时,从符号表达式 expr 中找出在字母表中离 x 最近的字母;如果有两个字母与 x 的距离相等,取靠后的那个。参数 n 省略时,函数将给出 expr 中所有的符号变量。

【实例 1】确定符号函数 f1、f2 中的自变量。在命令行窗口中输入以下语句,并查看输出结果。
>> clear
>> syms k m n w y z
>> f1 = n*y^n + m*y + w;
>> ans1 = symvar(f1, 1)
ans1 =
y

>> f2 = m*y + n*log(z) + exp(k*y*z);
>> ans2 = symvar(f2, 2)
ans2 =
    [y, z]

【实例 2】确定符号方程 e1、e2 中的自变量。在命令行窗口中输入以下语句,并查看输出结果。
>> syms a b c x p q t w
>> e1 = sym(a*x^2 + b*x + c == 0);
>> ans1 = symvar(e1, 1)
ans1 =
x

>> e2 = sym(w*(sin(p*t + q)) == 0);
>> ans2 = symvar(e2)
ans2 =
    [p, q, t, w]

相关文章