matlab课后习题解答第二章
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章符号运算
习题2及解答
1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”
对象,还是“符号”符号对象
3/7+; sym(3/7+; sym('3/7+'); vpa(sym(3/7+)
〖目的〗
不能从显示形式判断数据类型,而必须依靠class指令。
〖解答〗
c1=3/7+
c2=sym(3/7+
c3=sym('3/7+')
c4=vpa(sym(3/7+)
Cs1=class(c1)
Cs2=class(c2)
Cs3=class(c3)
Cs4=class(c4)
c1 =
c2 =
37/70
c3 =
c4 =
Cs1 =
double
Cs2 =
sym
Cs3 =
sym
Cs4 =
sym
2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认
为是自由符号变量.
sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)')
〖目的〗
理解自由符号变量的确认规则。
〖解答〗
symvar(sym('sin(w*t)'),1)
ans =
w
symvar(sym('a*exp(-X)'),1)
ans = a
symvar(sym('z*exp(j*th)'),1) ans = z
5求符号矩阵⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=3332
31
232221
131211
a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。
〖目的〗
理解subexpr 指令。 〖解答〗
A=sym('[a11 a12 a13;a21 a22 a23;a31 a32 a33]')
DA=det(A) IA=inv(A);
[IAs,d]=subexpr(IA,d) A =
[ a11, a12, a13] [ a21, a22, a23] [ a31, a32, a33] DA =
a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31 IAs =
[ d*(a22*a33 - a23*a32), -d*(a12*a33 - a13*a32), d*(a12*a23 - a13*a22)] [ -d*(a21*a33 - a23*a31), d*(a11*a33 - a13*a31), -d*(a11*a23 - a13*a21)] [ d*(a21*a32 - a22*a31), -d*(a11*a32 - a12*a31), d*(a11*a22 - a12*a21)] d =
1/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31)
8(1)通过符号计算求t t y sin )(=的导数
dt
dy
。(2)然后根据此结果,求-
=0t dt
dy 和2
π
=
t dt
dy 。
〖目的〗
diff, limit 指令的应用。 如何理解运行结果。 〖解答〗
syms t
d=diff(y) %求dy/dt
d0_=limit(d,t,0,'left') %求dy/dt|t=0- dpi_2=limit(d,t,pi/2) %求dy/dt|t=pi/2 y =
abs(sin(t)) d =
sign(sin(t))*cos(t) d0_ = -1
dpi_2 = 0
9求出dx x e x sin 7.110⎰--π
π的具有64位有效数字的积分值。
〖目的〗
符号积分的解析解和符号数值解。 符号计算和数值计算的相互校验。 〖解答〗
(1)符号积分
syms x clear syms x
y=exp(-abs(x))*abs(sin(x)) si=vpa(int(y,-10*pi,*pi),64) y =
abs(sin(x))/exp(abs(x)) si =
(2)数值计算复验
xx=-10*pi:pi/100:*pi;
sn=trapz(exp(-abs(xx)).*abs(sin(xx)))*pi/100 sn =
10计算二重积分⎰⎰
+2
1
1
222
)(x dydx y x 。
〖目的〗
变上限二重积分的符号计算法。 〖解答〗
syms x y f=x^2+y^2;
r=int(int(f,y,1,x^2),x,1,2) r =
1006/105
11在]2,0[π区间,画出dt t
t
x y x
⎰
=
sin )(曲线,并计算)5.4(y 。
在符号计算中,经常遇到计算结果是特殊经典函数的情况。 如何应用subs 获得超过16位有效数字的符号数值结果。 初步尝试ezplot 指令的简便。 〖解答〗
(1)符号计算
syms t x; f=sin(t)/t; y=int(f,t,0,x) % 将得到一个特殊经典函数
y5=subs(y,x,sym('')) ezplot(y,[0,2*pi]) y =
sinint(x) y5 =
1
2
34
5
6
00.20.40.60.811.21.41.61.8x
sinint(x)
(2)数值计算复验
tt=0::; tt(1)=eps;
yn=trapz(sin(tt)./tt)* yn =
12在0>n 的限制下,求xdx n y n ⎰
=
20
sin )(π
的一般积分表达式,并
计算)3
1(y 的32位有效数字表达。
〖目的〗
一般符号解与高精度符号数值解。