第1章
基础准备及入门
习题 1 及解答
1
数字 1.5e2,1.5e3 中的哪个与 1500 相同吗?
〖解答〗 1.5e3
2
请指出如下 5 个变量名中,哪些是合法的? abcd-2 xyz_3 3chan a 变量 ABCDefgh
〖解答〗 2、5 是合法的。
3
在 MATLAB 环境中,比 1 大的最小数是多少?
〖解答〗 1+eps
4
设 a = -8 , 运行以下三条指令,问运行结果相同吗?为什么?
w1=a^(2/3) w2=(a^2)^(1/3) w3=(a^(1/3))^2
〖解答〗 (1)不同。具体如下
w1=a^(2/3) w2=(a^2)^(1/3) w3=(a^(1/3))^2 w1 = -2.0000 + 3.4641i w2 = 4.0000 w3 = -2.0000 + 3.4641i %仅求出主根 %求出(-8)^2 的主根 %求出(-8)主根后再平方
(2)复数的多方根的,下面是求取全部方根的两种方法: (A)根据复数方根定义a=-8;n=2;m=3; ma=abs(a);aa=angle(a); for k=1:m %m 决定循环次数 sa(k)=(aa+2*pi*(k-1))*n/m; %计算各根的相角 end result=(ma^(2/3)).*exp(j*sa) %计算各根 result = -2.0000 + 3.4641i 4.0000 - 0.0000i -2.0000 - 3.4641i
(B)利用多项式 r a 0 求根3 2
p=[1,0,0,-a^2]; r=roots(p) r = -2.0000 + 3.4641i -2.0000 - 3.4641i 4.0000
5
指令 clear, clf, clc 各有什么用处?
清除工作空间中所有的变量。 清除当前图形。 清除命令窗口中所有显示。
〖解答〗 clear clf clc
6
以下两种说法对吗?(1)“MATLAB 进行数值的表达精度与其 指令窗中的数据显示精度相同。” (2) MATLAB 指令窗中显示 的数值有效位数不超过 7 位。”
〖解答〗 (1)否;(2)否。
7
想要在 MATLAB 中产生二维数组 S 1 4 7
2 5 8
3 6 9
下面哪些指令能实现目的?
(A) S=[1,2,3;4,5,6;7,8;9] (B) S=[1 2 3;4 5 6;7 8 9] (C) S=[1,2,3;4,5,6;7,8,9] 〖解答〗 前两种输入方法可以,后一种方法不行。
%整个指令在中文状态下输入
8
试为例 1.3-5 编写一个解题用的 M 脚本文件?
〖解答〗 直接点击新文件图标,出现 M 文件编辑器窗口;在该 M 文件编辑器中,输入例 1.3-5 中的 全部指令;并另存为 p109.m,便得到所需的脚本文件。
习题 2
1. 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号” 对象? 3/7+0.1, sym(3/7+0.1), vpa(sym(3/7+0.1)) a=class(3/7+0.1)%双精度 b=class(sym(3/7+0.1))%符号 c=class(vpa(sym(3/7+0.1),4))%符号 d=class(vpa(sym(3/7+0.1)))%符号 2. 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是独立自由变量。 sym('sin(w*t)') , sym('a*exp(-X)' ) , sym('z*exp(j*th)') a=sym('sin(w*t)'); symvar(a) b=sym('a*exp(-X)'); symvar(b) c=sym('z*exp(j*th)'); symvar(c)
3. 求以下两个方程的解: (提示:关于符号变量的假设要注意) (1)试写出求三阶方程 x 44 . 5 0 正实根的程序。注意:只要正实根,不要出现其
他根。 x=sym('x','positive'); f=x^3-44.5; x=solve(f,x) (2)试求二阶方程 x ax a 0 在 a >0 时的根。
a=sym('a','positive'); syms x; f=x^2-a*x+a^a; x=solve(f,x)
4. 观察一个数(在此用@记述)在以下四条不同指令作用下的异同: 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(b-d)) vpa(abs(c-d)) a=pi/3 b=sym(pi/3) c=sym(pi/3,'d')d=sym('pi/3') vpa(abs(a-d)) vpa(abs(b-d)) vpa(abs(c-d)) a=pi*3^(1/3) b=sym(pi*3^(1/3)) c=sym(pi*3^(1/3),'d') d=sym('pi*3^(1/3)') vpa(abs(a-d)) vpa(abs(b-d)) vpa(abs(c-d))
a 11
5. 求符号矩阵 A a 21 a 31 a 12 a 22 a 32 a 13 a 23 的行列式值和逆,所得结果应采用“子表达式置换” a 33
简洁化。 syms a11 a12 a13 a21 a22 a23 a31 a32 a33; A=[a11,a12,a13;a21,a22,a23;a31,a32,a33]; DA=det(A) IA=inv(A); IA=subexpr(IA,W)
6. 求k 0 x 的符号解,并进而用该符号解求 (
k k 0
1 3
) , (
k k 0
1
) , 3 的准确
k k k 0
matlab速成教程值。(提示:注意 subs 的使用) syms x k; f=x^k; s=symsum(f,k,0,inf) a=subs(s,x,-1/3) a=subs(s,x,1/pi) a=subs(s,x,3) 7. 对于 x 0 ,求
k 0
x 1 2k 1 x 1 2
2 k 1
。(提示:理论结果为 ln x ;注意限定性假设)
x=sym('x','positive'); syms k; f=2/(2*k+1)*((x-1)/(x+1))^(2*k+1); s=symsum(f,k,0,inf) 8. (1)通过符号计算求 y ( t ) sin t 的导数
dy dt
。 (2)然后根据此结果,求
dy dt
t0
和
dy dt
t
2
。
syms t; f=abs(sin(t)); f1=diff(f) limit(f1,t,0,'left') limit(f1,t,pi/2) 9. 求出
1 .7 5
e
x
sin x dx 的具有 64 位有效数字的积分值。(提示:int, vpa, ezplot)
syms x; f=exp(-abs(x))*abs(sin(x)); digits(64) a=vpa(int(f,x,-5*pi,1.7*pi),64) ezplot(f) 10.计算二重积分
2 1
x
2
( x y ) dydx 。
2 2
1
syms x y; f=x^2+y^2; a=int(int(f,y,1,x^2),x,1,2) 11.在 [ 0 , 2 ] 区间,画出 y ( x ) syms x t; f=sin(t)/t; y=int(f,t,0,x) y4_5=subs(y,x,4.5) xk=0:0.01*pi:2*pi; yxk=subs(y,x,xk); plot(xk,yxk)
x
sin t t
(提示:int, subs) dt 曲线,并计算 y ( 4 . 5 ) 。
0
12.在 n 0 的限制下,求 y ( n )
2
sin
n
0
xdx 的一般积分表达式,并计算 y ( ) 的
3
1
32 位有效数字表达。(提示:注意限定条件;注意题目要求 32 位有效) n=sym('n','positive'); syms x; f1=sin(x)^n f=int(f1,x,0,pi/2) a=vpa(subs(f,n,1/3),32) 13.有 序 列 x ( k ) a , h ( k ) b , ( 在 此 k 0 , a b ) , 求 这 两 个 序 列 的 卷 积
k k
y (k )
h(n ) x(k
n0
k
n ) 。(提示:symsum, subs)
syms k a b n; x=a^k; h=b^k; y=symsum(h*subs(x,k,k-n),n,0,k)
14.设系统的冲激响应为 h ( t ) e
3t
,求该系统在输入 u ( t ) cos t , t 0 作用下的输出。
(提示:直接卷积法,变换法均可;) 15.求 f ( t ) Ae
t
, 0 的 Fourier 变换。(提示:注意限定)
syms A t w; a=sym('a','positive'); f=A*exp(-a*abs(t)); fw=fourier(f,t,w)
t A1 16.求 f ( t ) 0 t t
的 Fourier 变换, 并画出 A 2 , 2 时的幅频谱。 (提
示:注意限定;simple) syms t A w; tao=sym('tao','positive'); f=A*((1+t/tao)*(heaviside(t+tao)-heaviside(t))+(1-t/tao)*(heaviside(t)-heaviside(t-tao))); fw=fourier(f,t,w) fws=simple(fw) fw2=subs(fws,[A,tao],[2,2]) ezplot(abs(fw2)) 17.求 F ( s )
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论