- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
matlab编程基础与工程应用课件
MATLAb 编程基础与工程应用;第七章 MTALAB符号计算;7.1符号对象的生成和使用 ;
sym(‘x’, ‘unreal’) :unreal定义的是非实型符号变量
除了sym函数以外,MATLAB还提供了syms函数用来定义符号变量。与sym函数最大的不同点在于,syms可以很方便地一次定义多个符号变量。syms函数的调用格式为:
syms arg1 arg2 arg3 …
【例7.1-1】合并数学表达式x2y2+yx+x2+3x对于x的同类项。
syms x y;
collect(x^2*y^2+y*x+x^2+3*x)
ans =
(y^2+1)*x^2+(y+3)*x
即求得了对于x的同类项为x2y2+yx+x2+3x=(y2+1)x2+(y+3)x;7.1.2符号矩阵MATLAB可以处理那些元素以字母表示的矩阵的相关数学问题。;【例7.1-3】求矩阵第一行元素的和,并用m代替矩阵A第4行4列的元素。;7.2符号微积分;【例7.2-1】已知函数y=ax2+bx+c,求y对x的一阶导数。
syms y x a b c
y=a*x^2+b*x*c;
y=a*x^2+b*x+c;
df=diff(y,x)
df =
2*a*x+b
另外,diff函数还可以对矩阵中各个元素逐个进行处理。;【例7.2-2】已知函数,求函数A对x的一阶导数。
syms A a x
A=[sin(a*x^2) cos(a*x^3);tan(a*x) cot(a*x^2)]
A =
[ sin(a*x^2), cos(a*x^3)]
[ tan(a*x), cot(a*x^2)]
dy=diff(A,x)
dy =
[ 2*cos(a*x^2)*a*x, -3*sin(a*x^3)*a*x^2]
[ (1+tan(a*x)^2)*a, 2*(-1-cot(a*x^2)^2)*a*x];7.2.2积分;【例7.2-3】求。
syms x a b c
int(a*x^2+b*x+c)
ans =
1/3*a*x^3+1/2*b*x^2+c*x
需要注意的是不定积分在matlab运行结果中不包含任意常量。
【例7.2-4】求积分。
syms y x
y= int((x^2+1)*exp(x),0,1);
ans =
2*exp(1)-3;7.2.3符号求和;
【例7.2-5】求级数的和
【解】
syms x
S=symsum(1/x^2,1,inf)
S =
1/6*pi^2
【例7.2-6】求级数的和
【解】
syms x k
A=symsum(x^k,k,0,inf)
A =
-1/(x-1);7.2.4极限;【例7.2-8】求极限
【解】
syms f x k
f=(1-1/x)^(k*x);
B=limit(f,inf)
B =
exp(-k);7.3符号方程求解;【例7.3-1】求解方程5x2-9x-100=0。
【解】
syms x
A=5*x^2-9*x-100;
solve(A)
ans =
9/10+1/10*2081^(1/2)
9/10-1/10*2081^(1/2)
这个方程的数值解为:
double(ans)
ans =
5.46179789118282
-3.66179789118282;【例7.3-2】求解方程ax2+bx+c=0。
【解】 syms x a b c
B=a*x^2+b*x+c;
solve(B)
ans =
1/2/a*(-b+(b^2-4*a*c)^(1/2))
1/2/a*(-b-(b^2-4*a*c)^(1/2))
x作为自变量时,命令solve(f(x),x)中的x可以省略。若果把其它字母设为自变量,则在solve命令中不能省略。在例7.1-13中,关于自变量b的解为
syms x a b c
B=a*x^2+b*x+c;
b=sol
文档评论(0)