matlab课后答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二章习题

1.观察一个数(在此用@记述)在以下四条不同指令作用下的异同:

a=@

b=sym(@)

c=sym(@,’d’)

d=sym(‘@’)

在此,@分别代表具体数值7/3,pi/3,pi*3^(1/3);而异同通过vpa(abs(a-d)),vpa(abs(b-d)),vpa(abs(c-d))等来观察。

a=7/3

b=sym(7/3)

c=sym(7/3,'d')

d=sym('7/3')

vpa(abs(a-d))

vpa(abs(a-b))

vpa(abs(c-d))

a =

2.3333

b =

7/3

c =

2.3333333333333334813630699500209

d =

7/3

ans =

0.0

ans =

0.0

ans =

0.00000000000000014802973661668756666666667788716

a=pi/3

b=sym(pi/3)

c=sym(pi/3,'d')

d=sym('pi/3')

vpa(abs(a-d))

vpa(abs(a-b))

vpa(abs(c-d))

a =

1.0472

b =

pi/3

c =

1.047197551196597631317786181171

d =

pi/3

ans =

0.0

ans =

0.0

ans =

0.00000000000000011483642827992216762806615818554

2.说出以下三条指令产生的结果各属于那种数据类型,是“双精度”对象,还是“符号”对象?

3/7+0.1,sym(3/7+0.1),vpa(sym(3/7+0.1))

a=3/7+0.1

b=sym(3/7+0.1)

c=vpa(sym(3/7+0.1))

class(a)

class(b)

class(c)

a =

0.5286

b =

37/70

c =

0.52857142857142857142857142857143

ans =

double

ans =

sym

ans =

sym

3.在不加专门指定的情况下,以下符号表达中的那一个变量是独立自由变量。

sym(‘sin(w*t)’),sym(‘a*exp(-x)’),sym(‘z*exp(j*theta)’)

syms t w x a j z theta

a=sin(w*t)

b=a*exp(-x)

c=z*exp(j*theta)

findsym(a)

findsym(b)

findsym(c)

a =

sin(t*w)

b =

sin(t*w)/exp(x)

c =

z*exp(j*theta)

ans =

t,w

ans =

t,w,x

ans =

j,theta,z

6.对于x>0,求∑2/2k+1(x-1/x+1)^(2k+1) (k=0至∞)

syms k x;

f=2*(x-1/x+1)^(2*k+1)/(2*k+1)

a=simple(symsum(f,k,0,inf))

c=simple(a)

f =

(2*(x - 1/x + 1)^(2*k + 1))/(2*k + 1)

a =

piecewise([abs(x - 1/x + 1) < 1, 2*atanh(x - 1/x + 1)])

c =

piecewise([abs(x - 1/x + 1) < 1, 2*atanh(x - 1/x + 1)])

7.(1)通过符号计算求y(t)=|sin(t)|的导数dy/dt。(2)然后根据此结果,求dy/dt|t=0-和dy/dt|t=pi/2。

syms t

f=abs(sin(t))

a=diff(f,t)

limit(a,t,0,'left')

limit(a,t,pi/2)

f =

abs(sin(t))

a =

sign(sin(t))*cos(t)

ans =

-1

ans =

9.计算二重积分∫∫(x^2+y^2)dydx。 (外重积分限 1 2;内重积分限 1 x^2) syms x y;

f=x^2+y^2;

a=int(int(f,y,1,x^2),x,1,2)

a =

1006/105

第三章习题

1.要求在闭区间[0,2pi]上产生具有10各等距采样点的一维数组。使用两种不同的指令实现。

a=0:2*pi/9:2*pi

a =

Columns 1 through 8

0 0.6981 1.3963 2.0944 2.7925 3.4907 4.1888 4.8869

Columns 9 through 10

5.5851

6.2832

logspace(0,2*pi,10)

ans =

1.0e+006 *

Columns 1 through 8

0.0000 0.0000 0.0000 0.0001 0.0006 0.0031 0.0154 0.0771

Columns 9 through 10

0.3846 1.9195

2.由指令rand(‘twister’,0),A=rand(3,5)生成二维数组A,试求该数组中所有大于0.5的元素位置,分别求出它们的“全下标”和“单下标”。

rand('twister',0)

A=rand(3,5)

A =

0.5488 0.5449 0.4376 0.3834 0.5680

0.7152 0.4237 0.8918 0.7917 0.9256

0.6028 0.6459 0.9637 0.5289 0.0710

A>0.5

ans =

1 1 0 0 1

1 0 1 1 1

1 1 1 1 0

A(:)

ans =

0.5488

相关文档
最新文档