ch2例题.docx
- 文档编号:2422645
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:20
- 大小:375.34KB
ch2例题.docx
《ch2例题.docx》由会员分享,可在线阅读,更多相关《ch2例题.docx(20页珍藏版)》请在冰豆网上搜索。
ch2例题
【例2.1-1】符号(类)数字与数值(类)数字之间的差异。
a=pi+sqrt(5)
sa=sym('pi+sqrt(5)')
Ca=class(a)
Csa=class(sa)
vpa(sa-a)
a=
5.3777
sa=
pi+sqrt(5)
Ca=
double
Csa=
sym
ans=
.138223758410852e-16
【例2.1-2】用符号计算研究方程的解。
(1)
symsuvwz
Eq=u*z^2+v*z+w;
result_1=solve(Eq)%
findsym(Eq,1)
result_1=
-u*z^2-v*z
ans=
wxywzv
(2)
result_2=solve(Eq,z)
result_2=
1/2/u*(-v+(v^2-4*u*w)^(1/2))
1/2/u*(-v-(v^2-4*u*w)^(1/2))
【例2.1-3】对独立自由符号变量的自动辨认。
(1)
symsabxXY
k=sym('3');%符号常数
z=sym('c*sqrt(delta)+y*sin(theta)');%直接定义符号表达式
EXPR=a*z*X+(b*x^2+k)*Y;
(2)
findsym(EXPR)
ans=
X,Y,a,b,c,delta,theta,x,y
k不是“自由”的,z不是独立的,所以都不被该指令认作自由变量。
(3)
findsym(EXPR,1)
ans=
x
(4)
findsym(EXPR,2),findsym(EXPR,3)
ans=
x,y
ans=
x,y,theta
【例2.1-4】findsym确定自由变量是对整个矩阵进行的。
symsabtuvxy
A=[a+b*x,sin(t)+u;x*exp(-t),log(y)+v]
findsym(A,1)
A=
[a+b*x,sin(t)+u]
[x*exp(-t),log(y)+v]
ans=
x
【例2.1-5】数据对象及其识别指令的使用。
(1)
clear
a=1;b=2;c=3;d=4;
Mn=[a,b;c,d]
Mc='[a,b;c,d]'
Ms=sym(Mc)
Mn=
12
34
Mc=
[a,b;c,d]
Ms=
[a,b]
[c,d]
(2)
SizeMn=size(Mn)
SizeMc=size(Mc)
SizeMs=size(Ms)
SizeMn=
22
SizeMc=
19
SizeMs=
22
(3)
CMn=class(Mn)
CMc=class(Mc)
CMs=class(Ms)
CMn=
double
CMc=
char
CMs=
sym
(4)
isa(Mn,'double')
isa(Mc,'char')
isa(Ms,'sym')
ans=
1
ans=
1
ans=
1
(5)
whosMnMcMs
NameSizeBytesClassAttributes
Mc1x918char
Mn2x232double
Ms2x2312sym
【例2.2-1】digits,vpa指令的使用。
digits
p0=sym('(1+sqrt(5))/2')
pr=sym((1+sqrt(5))/2)
%
pd=sym((1+sqrt(5))/2,'d')
%
e32r=vpa(abs(p0-pr))
e16=vpa(abs(p0-pd),16)
e32d=vpa(abs(p0-pd))
Digits=32
p0=
(1+sqrt(5))/2
pr=
7286977268806824*2^(-52)
pd=
1.6180339887498949025257388711907
e32r=
.543211520368251e-16
e16=
0.
e32d=
.543211520368251e-16
【例2.2-2】简化。
symsx
f=(1/x^3+6/x^2+12/x+8)^(1/3);
g1=simple(f)
g2=simple(g1)
g1=
(2*x+1)/x
g2=
2+1/x
【例2.2-3】对符号矩阵进行特征向量分解。
clearall
symsabcdW
[V,D]=eig([ab;cd])
[RVD,W]=subexpr([V;D],W)
V=
[-(1/2*d-1/2*a-1/2*(d^2-2*a*d+a^2+4*b*c)^(1/2))/c,-(1/2*d-1/2*a+1/2*(d^2-2*a*d+a^2+4*b*c)^(1/2))/c]
[1,1]
D=
[1/2*d+1/2*a+1/2*(d^2-2*a*d+a^2+4*b*c)^(1/2),0]
[0,1/2*d+1/2*a-1/2*(d^2-2*a*d+a^2+4*b*c)^(1/2)]
RVD=
[-(1/2*d-1/2*a-1/2*W)/c,-(1/2*d-1/2*a+1/2*W)/c]
[1,1]
[1/2*d+1/2*a+1/2*W,0]
[0,1/2*d+1/2*a-1/2*W]
W=
(d^2-2*a*d+a^2+4*b*c)^(1/2)
数学背景:
设A为n阶方阵,若存在数λ和非零的n维列向量x,使得Ax=λx或(A-λI)x=0,则称数λ为矩阵A的特征值,称x为矩阵A对应于特征值λ的特征向量.
【例2.2-4】用简单算例演示subs的置换规则。
(1)产生符号函数
symsax;f=a*sin(x)+5
f=
a*sin(x)+5
(2)符号表达式置换
f1=subs(f,'sin(x)',sym('y'))%<2>
class(f1)
f1=
a*y+5
ans=
sym
(3)a被双精度数字置换,x被符号数字置换
f2=subs(f,{a,x},{2,sym('pi/3')})%<3>
class(f2)
f2=
3^(1/2)+5
ans=
sym
(4)a,x均被双精度数值取代
f3=subs(f,{a,x},{2,pi/3})%<4>
class(f3)
f3=
6.7321
ans=
double
(5)x被数值数组取代
f4=subs(subs(f,a,2),x,0:
pi/6:
pi)%<5>
class(f4)
f4=
5.00006.00006.73217.00006.73216.00005.0000
ans=
double
(6)a,x被同样大小的数值数组取代,这时执行的是数组乘
f5=subs(f,{a,x},{0:
6,0:
pi/6:
pi})%<6>
class(f5)
f5=
5.00005.50006.73218.00008.46417.50005.0000
ans=
double
表达式能和符号变量同时包含在old中被置换,如
subs(f,{a,sin(x)},{2,sym('y')})
ans=
2*y+5
【例2.3-1】试求。
symsxk
Lim_f=limit((1-1/x)^(k*x),x,inf)
Lim_f=
exp(-k)
【例2.3-2】求求,,。
symsatx;f=[a,t^3;t*cos(x),log(x)];
df=diff(f)%求矩阵f对x的导数
dfdt2=diff(f,t,2)%求矩阵f对t的二阶导数
dfdxdt=diff(diff(f,x),t)%求二阶混合导数
df=
[0,0]
[-t*sin(x),1/x]
dfdt2=
[0,6*t]
[0,0]
dfdxdt=
[0,0]
[-sin(x),0]
结论:
求导运算是对矩阵元素逐个进行的
【例2.3-3】求的Jacobian矩阵。
symsx1x2;f=[x1*exp(x2);x2;cos(x1)*sin(x2)];
v=[x1x2];fjac=jacobian(f,v)
fjac=
[exp(x2),x1*exp(x2)]
[0,1]
[-sin(x1)*sin(x2),cos(x1)*cos(x2)]
【例2.3-4】,求,。
需要分区间求导
(1)对于x≥0,据导数定义求导
clear
symsx
symsdpositive
f_p=sin(x);%x≥0时,f(x)改写而成
df_p=limit((subs(f_p,x,x+d)-f_p)/d,d,0)%求x>0区间的导数<4>
df_p0=limit((subs(f_p,x,d)-subs(f_p,x,0))/d,d,0)%x=0+的右导数<5>
df_p=
cos(x)
df_p0=
1
(2)对于x≤0,据导数定义求导
f_n=sin(-x);%x≤0时,f(x)改写而成
df_n=limit((f_n-subs(f_n,x,x-d))/d,d,0)%求x<0区间的导数<7>
df_n0=limit((subs(f_n,x,0)-subs(f_n,x,-d))/d,d,0)%x=0-的左导数<8>
df_n=
-cos(x)
df_n0=
-1
(3)直接利用diff求导
f=sin(abs(x));
dfdx=diff(f,x) %只能得到x≠0时的导函数
dfdx=
cos(abs(x))*abs(1,x)%abs(1,x)表示abs(x)的一阶导数,只在x≠0时有值,等价于sign(x).用abs(1,sym('x'))可观察
(4)图形观察
xn=-3/2*pi:
pi/50:
0;xp=0:
pi/50:
3/2*pi;xnp=[xn,xp(2:
end)];
holdon
plot(xnp,subs(f,x,xnp),'k','LineWidth',2.5)%<13>
plot(xn,subs(df_n,x,xn),'--r','LineWidth',2.5)
plot(xp,subs(df_p,x,xp),':
r','LineWidth',2.5)
legend(char(f),char(df_n),char(df_p),'Location','N
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ch2 例题
![提示](https://static.bdocx.com/images/bang_tan.gif)