运行结果如下:
n =
m^2+n
d =
n*m
3。2。3 符号表达式的因式分解与展开
MATLAB中符号表达式因式分解与展开的函数,调用格式为:
(1)factor(s)对s分解因式。
(2)expand(s)对s进行展开。
(3)collect(s)对s合并同类项。论文网
(4)collect(s,v)对s按变量v合并同类项。
例3。3 对 因式分解。
MATLAB程序代码如下:
syms x
s=x^9-1;
factor(s) %对s因式分解
运行结果如下:
ans =
(x-1)*(x^2+x+1)*(x^6+x^3+1)
例3。4 对 展开和合并同类项。
MATLAB程序代码如下:
syms x y;
s=(2*x^2-y^2)*(x^2+3*y^2);
expand(s)%对s展开
collect(s) %按系统默认变量对s合并同类项
collect(s,x) %按变量x对s合并同类项
运行结果如下:
ans =
2*x^4+5*x^2*y^2-3*y^4
ans =
2*x^4+5*x^2*y^2-3*y^4
ans =
2*x^4+5*x^2*y^2-3*y^4
3。2。4 符号表达式的化简
MATLAB中符号表达式化简的函数调用格式为:
(1)simplify(s)应用函数规则对s进行化简。
(2)simple(s)调用MATLAB其他函数对s综合化简,并显示化简过程。
(3)pretty(s)美化表达式形式。
例3。5 对 进行化简。
MATLAB程序代码如下:
syms a b;
s=sqrt((a+sqrt(a^2-b))/2)+sqrt((a-sqrt(a^2-b))/2);
simplify(s)
运行结果如下:
ans =
1/2*(2*a+2*(a^2-b)^(1/2))^(1/2)+1/2*(2*a-2*(a^2-b)^(1/2))^(1/2)
3。2。5 符号表达式与数值表达式的转换
MATLAB中符号表达式与数值表达式的转换函数,调用格式为:
(1)函数sym可将数值表达式变成符号表达式。文献综述
(2)函数eval可将符号表达式变成数值表达式。
例3。6 将0。45变成符号表达式。
MATLAB程序代码如下:
sym(0。45)
运行结果如下:
ans =
9/20
例3。7 将 变成数值表达式。
MATLAB程序代码如下:
f=sym('10*sqrt(3)');
eval(f)
运行结果如下:
ans =
17。3205
3。2。6 符号表达式中变量的确定
MATLAB中的符号可以是符号变量和符号常量。findsym可查找符号表达式中的符号变量,调用格式:
findsym(s,n)
返回s中的n个符号变量,若没指定n,则返回s中全部符号变量。