1 MatLab & 数学建模第四讲数值计算符号数学工具箱符号表达式的运算 numeric 符号到数值的转换 pretty 显示悦目的符号输出 subs 替代子表达式 sym 建立符号矩阵或表达式 symadd 符号加法 symdiv 符号除法 symmul 符号乘法 symop 符号运算 sympow 符号表达式的幂运算 symrat 有理近似 symsub 符号减法 symvar 求符号变量符号表达式的简化 collect 合并同类项 expand 展开 factor 因式 simple 求解最简形式 simplify 简化 symsum 和级数符号多项式 charpoly 特征多项式 horner 嵌套多项式表示 numden 分子或分母的提取 poly2sym 多项式向量到符号的转换 sym2poly 符号到多项式向量的转换符号微积分 diff 微分 int 积分 jordan 约当标准形 taylor 泰勒级数展开符号可变精度算术 2 digits 设置可变精度 vpa 可变精度计算 pose 函数的复合 dsolve 微分方程的求解 finverse 函数逆 linsolve 齐次线性方程组的求解 solve 代数方程的求解符号线性代数 charploy 特征多项式 determ 矩阵行列式的值 eigensys 特征值和特征向量 inverse 矩阵逆 jordan 约当标准形 linsolve 齐次线性方程组的解 transpose 矩阵的转置一、方程求解求解单个代数方程 MATLAB 具有求解符号表达式的工具, 如果表达式不是一个方程式( 不含等号),则在求解之前函数 solve 将表达式置成等于 0。>>solve( 'a*x^2+b*x+c ')%solve for the roots ofthe eqution ans= [1/2/a*(-b+(b^2-4*a*c)^1/2)] [1/2/a*(-b-(b^2-4*a*c)^1/2)] 结果是符号向量,其元素是方程的 2个解。如果想对非缺省 x变量求解, solve 必须指定变量。>>solve( 'a*x^2+b*x+c ','b')%solve for b ans= -(a*x^2+c)/x 带有等号的符号方程也可以求解。>>f=solve( 'cos(x)=sin(x) ')%solve for x f=1/4*pi >>t=solve( 'tan(2*x)=sin(x) ') t= 3 [0] [acos(1/2+1/2*3^(1/2))] [acos(1/2=1/2*3^(1/2))] 并得到数值解。>>numeric (f) ans= >>numeric(t) ans= 00+ 注意在求解周期函数方程时,有无穷多的解。在这种情况下, solve 对解的搜索范围限制在接近于零的有限范围,并返回非唯一的解的子集。如果不能求得符号解,就计算可变精度解。>>x=solve( 'exp(x)=tan(x) ') x= 代数方程组求解可以同时求解若干代数方程,语句 solve (s1 , s2, ..... , sn) 对缺省变量求解n 个方程,语句 solve(s1 , s2, ... , sn,' v1, v2, ... , vn ')对n个' v1, v2, ...vn '的未知数求解 n个方程。 solve (f) 解符号方程式 f。 solve(f1, …,fn) 解由 f1, …,fn 组成的联立方程式。我们先定义以下的方程式: >>eq1 ='x-3=4 ';%注意也可写成'eq1=x-7 ' >>eq2 ='x*2-x-6=0 ';%注意也可写成'eq2=x*2-x-6 ' >>eq3 ='x2+2*x+4=0 ';>>eq4 ='3*x+2*y-z=10 '; 4 >>eq5 ='-x+3*y+2*z=5 '; >>eq6 ='x-y-z=-1 ';>>solve(eq1) ans= 7>>solve(eq2) ans= [[3],[-2]] '%原方程式有二个根 3,-2 >>solve(eq3) ans= [[-1+ i*3^(1/2)],[-1- i*3^(1/2)]] '%注意实根和虚根的表示式>>solve(eq4,eq5,eq6) %解三个联立方程式 ans= x=-2, y=5,z=-6 如何处理中小学典型的代数问题? 黛安娜(Diane) 想去看电影,她从小猪存钱罐倒出硬币并清点,她发现: 10美分的硬币数加上 5美分的硬币总数的一半等于 25美分的硬币数。 1美分的硬币数比 5美分、 10美分以及 25美分的硬币总数多 10。 25 美分和 1
matlab4 来自淘豆网m.daumloan.com转载请标明出处.