matlab数学实验习题全部答案(胡良剑)
温柔似野鬼°
843次浏览
2021年01月30日 00:55
最佳经验
本文由作者推荐
天经地义的意思-河套平原
数学实验答案
%Page20,ex1
(5)
等于
[exp(1),exp(2);exp(3),exp(4)]
(7) 3=1*3, 8=2*4
(8) a
为各列最小值,
b
为最小值所在的行号
(10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture
(11)
答案表明:编址第
2
元素满足不等式
(30>=20)< br>和编址第
4
元素满足不等式
(40>=10)
(12)
答案表明:
编址第
2
行第
1
列元素满足不等式
(3 0>=20)
和编址第
2
行第
2
列元素满足不
等式
(40>=10)
%Page20, ex2
(1)a, b, c
的值尽管都是
1
,
但数据类型分别为数值,字符,
逻辑,
注意
a
与
c
相等,
但
他们不等于
b
(2)double(fun)
输出的 分别是字符
a,b,s,(,x,)
的
ASCII
码
%Page20,ex3
>> r=2;p=0.5;n=12;
>> T=log(r)/n/log(1+0.01*p)
T =
11.5813
%Page20,ex4
>> x=-2:0.05:2;f=x.^4-2.^x;
>> [fmin,min_index]=min(f)
fmin =
-1.3907 %
最小值
min_index =
54 %
最小值点编址
>> x(min_index)
ans =
0.6500 %
最小值点
>> [f1,x1_index]=min(abs(f)) %
求近似根
--
绝对值最小的点
f1 =
0.0328
x1_index =
24
>> x(x1_index)
ans =
-0.8500
>> x(x1_index)=[];f=x.^4-2.^x; %
删去绝对值最小的点以求函数绝对值次小的点
>> [f2,x2_index]=min(abs(f)) %
求另一近似根
--
函数绝对值次小的点
f2 =
0.0630
x2_index =
65
1
>> x(x2_index)
ans =
1.2500
%Page20,ex5
>> z=magic(10)
z =
92 99 1 8 15 67 74 51 58 40
98 80 7 14 16 73 55 57 64 41
4 81 88 20 22 54 56 63 70 47
85 87 19 21 3 60 62 69 71 28
86 93 25 2 9 61 68 75 52 34
17 24 76 83 90 42 49 26 33 65
23 5 82 89 91 48 30 32 39 66
79 6 13 95 97 29 31 38 45 72
10 12 94 96 78 35 37 44 46 53
11 18 100 77 84 36 43 50 27 59
>> sum(z)
ans =
505 505 505 505 505 505 505 505 505 505
>> sum(diag(z))
ans =
505
>> z(:,2)/sqrt(3)
ans =
57.1577
46.1880
46.7654
50.2295
53.6936
13.8564
2.8868
3.4641
6.9282
10.3923
>> z(8,:)=z(8,:)+z(3,:)
z =
92 99 1 8 15 67 74 51 58 40
98 80 7 14 16 73 55 57 64 41
4 81 88 20 22 54 56 63 70 47
85 87 19 21 3 60 62 69 71 28
86 93 25 2 9 61 68 75 52 34
17 24 76 83 90 42 49 26 33 65
23 5 82 89 91 48 30 32 39 66
2
83 87 101 115 119 83 87 101 115 119
10 12 94 96 78 35 37 44 46 53
11 18 100 77 84 36 43 50 27 59
3
%Page 40 ex1
先在编辑器窗口写下列
M
函数,保存为
eg2_1.m
function [xbar,s]=ex2_1(x)
n=length(x);
xbar=sum(x)/n;
s=sqrt((sum(x.^2)-n*xbar^2)/(n-1));
例如
>>x=[81 70 65 51 76 66 90 87 61 77];
>>[xbar,s]=ex2_1(x)
xbar =
72.4000
s =
12.1124
%Page 40 ex2
s=log(1);n=0;
while s<=100
n=n+1;
s=s+log(1+n);
end
m=n
计算结果
m=37
%Page 40 ex3
clear;
F(1)=1;F(2)=1;k=2;x=0;
e=1e-8; a=(1+sqrt(5))/2;
while abs(x-a)>e
k=k+1;F(k)=F(k-1)+F(k-2); x=F(k)/F(k-1);
end
a,x,k
计算至
k=21
可满足精度
%Page 40 ex4
clear;tic;s=0;
for i=1:1000000
s=s+sqrt(3)/2^i;
end
s,toc
tic;s=0;i=1;
while i<=1000000
s=s+sqrt(3)/2^i;i=i+1;
4
end
s,toc
tic;s=0;
i=1:1000000;
s=sqrt(3)*sum(1./2.^i);
s,toc
%Page 40 ex5
t=0:24;
c=[15 14 14 14 14 15 16 18 20 22 23 25 28 ...
31 32 31 29 27 25 24 22 20 18 17 16];
plot(t,c)
%Page 40 ex6
%(1)
x=-2:0.1:2;y=x.^2.*sin(x.^2-x-2);plot(x,y)
y=inline('x^2*sin(x^2-x-2)');fplot(y,[-2 2])
%(2)
参数方法
t=linspace(0,2*pi,100);
x=2*cos(t);y=3*sin(t); plot(x,y)
%(3)
x=-3:0.1:3;y=x;
[x,y]=meshgrid(x,y);
z=x.^2+y.^2;
surf(x,y,z)
%(4)
x=-3:0.1:3;y=-3:0.1:13;
[x,y]=meshgrid(x,y);
z=x.^4+3*x.^2+y.^2-2*x-2*y-2*x.^2.*y+6;
surf(x,y,z)
%(5)
t=0:0.01:2*pi;
x=sin(t);y=cos(t);z=cos(2*t);
plot3(x,y,z)
%(6)
theta=lins pace(0,2*pi,50);fai=linspace(0,pi/2,20);
[theta,fai]=meshgrid(theta,fai);
x=2*sin(fai).*cos(theta);
5
y=2*sin(fai).*sin(theta);z=2*cos(fai);
surf(x,y,z)
%(7)
x=linspace(0,pi,100);
y1=sin(x);y2=sin(x).*sin(10*x);y3=-sin(x);
plot(x,y1,x,y2,x,y3)
%page41, ex7
x=-1.5:0.05:1.5;
y=1.1*(x>1. 1)+x.*(x<=1.1).*(x>=-1.1)-1.1*(x<-1.1);
plot(x,y)
%page41,ex8
分别使用
which trapz, type trapz, dir C:MA
TLAB7toolboxmatlabdatafun
%page41,ex9
clear;close;
x=-2:0.1:2;y=x;
[x,y]=meshgrid(x,y);
a=0.5457;b=0.7575;
p=a*exp(-0.75*y.^2-3.75*x.^2-1.5*x).*(x+y>1);
p=p+b*exp(-y.^2-6*x.^2).*(x+y>-1).*(x+y<=1);
p=p+a*exp(-0.75*y.^2-3.75*x.^2+1.5*x).*(x +y<=-1);
mesh(x,y,p)
%page41, ex10
lookfor lyapunov
help lyap
>> A=[1 2 3;4 5 6;7 8 0];C=[2 -5 -22;-5 -24 -56;-22 -56 -16];
>> X=lyap(A,C)
X =
1.0000 -1.0000 -0.0000
-1.0000 2.0000 1.0000
-0.0000 1.0000 7.0000
6
%Chapter 3
%Exercise 1
>> a=[1,2,3];b=[2,4,3];a./b,a.b,a/b,ab
ans =
0.5000 0.5000 1.0000
ans =
2 2 1
ans =
0.6552 %
一元方程组
x[2,4,3]=[1,2,3]
的近似解
ans =
0 0 0
0 0 0
0.6667 1.3333 1.0000
%
矩阵方程
[1, 2,3][x11,x12,x13;x21,x22,x23;x31,x32,x33]=[2,4,3]< br>的特解
%Exercise 2(1)
>> A=[4 1 -1;3 2 -6;1 -5 3];b=[9;-2;1];
>> rank(A), rank([A,b]) %[A,b]
为增广矩阵
ans =
3
ans =
3 %
可见方程组唯一解
>> x=Ab
x =
2.3830
1.4894
2.0213
%Exercise 2(2)
>> A=[4 -3 3;3 2 -6;1 -5 3];b=[-1;-2;1];
>> rank(A), rank([A,b])
ans =
3
ans =
3 %
可见方程组唯一解
>> x=Ab
x =
-0.4706
-0.2941
0
7
%Exercise 2(3)
>> A=[4 1;3 2;1 -5];b=[1;1;1];
>> rank(A), rank([A,b])
ans =
2
ans =
3 %
可见方程组无解
>> x=Ab
x =
0.3311
-0.1219 %
最小二乘近似解
%Exercise 2(4)
>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1 2 3]';%
注意
b
的写法
>> rank(a),rank([a,b])
ans =
3
ans =
3 %rank(a)==rank([a,b])<4
说明有无穷多解
>> ab
ans =
1
0
1
0 %
一个特解
%Exercise 3
>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1,2,3]';
>> x=null(a),x0=ab
x =
-0.6255
0.6255
-0.2085
0.4170
x0 =
1
0
1
0
%
通解
kx+x0
%Exercise 4
8
>> x0=[0.2 0.8]';a=[0.99 0.05;0.01 0.95];
>> x1=a*x, x2=a^2*x, x10=a^10*x
>> x=x0;for i=1:1000,x=a*x;end,x
x =
0.8333
0.1667
>> x0=[0.8 0.2]';
>> x=x0;for i=1:1000,x=a*x;end,x
x =
0.8333
0.1667
>> [v,e]=eig(a)
v =
0.9806 -0.7071
0.1961 0.7071
e =
1.0000 0
0 0.9400
>> v(:,1)./x
ans =
1.1767
1.1767 %
成比例,说明
x
是最大特征值对应的特征向量
%Exercise 5
%
用到公式
(3.11)(3.12)
>> B=[6,2,1;2.25,1,0.2;3,0.2,1.8];x=[25 5 20]';
>> C=B/diag(x)
C =
0.2400 0.4000 0.0500
0.0900 0.2000 0.0100
0.1200 0.0400 0.0900
>> A=eye(3,3)-C
A =
0.7600 -0.4000 -0.0500
-0.0900 0.8000 -0.0100
-0.1200 -0.0400 0.9100
>> D=[17 17 17]';x=AD
x =
37.5696
25.7862
24.7690
%Exercise 6(1)
9
>> a=[4 1 -1;3 2 -6;1 -5 3];det(a),inv(a),[v,d]=eig(a)
ans =
-94
ans =
0.2553 -0.0213 0.0426
0.1596 -0.1383 -0.2234
0.1809 -0.2234 -0.0532
v =
0.0185 -0.9009 -0.3066
-0.7693 -0.1240 -0.7248
-0.6386 -0.4158 0.6170
d =
-3.0527 0 0
0 3.6760 0
0 0 8.3766
%Exercise 6(2)
>> a=[1 1 -1;0 2 -1;-1 2 0];det(a),inv(a),[v,d]=eig(a)
ans =
1
ans =
2.0000 -2.0000 1.0000
1.0000 -1.0000 1.0000
2.0000 -3.0000 2.0000
v =
-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i
-0.5773 0.5774 0.5774
-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000i
d =
1.0000 0 0
0 1.0000 + 0.0000i 0
0 0 1.0000 - 0.0000i
%Exercise 6(3)
>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]
A =
5 7 6 5
7 10 8 7
6 8 10 9
5 7 9 10
>> det(A),inv(A), [v,d]=eig(A)
ans =
1
10
ans =
68.0000 -41.0000 -17.0000 10.0000
-41.0000 25.0000 10.0000 -6.0000
-17.0000 10.0000 5.0000 -3.0000
10.0000 -6.0000 -3.0000 2.0000
v =
0.8304 0.0933 0.3963 0.3803
-0.5016 -0.3017 0.6149 0.5286
-0.2086 0.7603 -0.2716 0.5520
0.1237 -0.5676 -0.6254 0.5209
d =
0.0102 0 0 0
0 0.8431 0 0
0 0 3.8581 0
0 0 0 30.2887
%Exercise 6(4)(
以
n=5
为例
)
%
关键是矩阵的定义
%
方法一(三个
for
)
n=5;
for i=1:n, a(i,i)=5;end
for i=1:(n-1),a(i,i+1)=6;end
for i=1:(n-1),a(i+1,i)=1;end
a
%
方法二(一个
for
)
n=5;a=zeros(n,n);
a(1,1:2)=[5 6];
for i=2:(n-1),a(i,[i-1,i,i+1])=[1 5 6];end
a(n,[n-1 n])=[1 5];
a
%
方法三(不用
for
)
n=5;a=diag(5*ones(n,1));
b=diag(6*ones(n-1,1));
c=diag(ones(n-1,1));
a=a+[zeros(n-1,1 ),b;zeros(1,n)]+[zeros(1,n);c,zeros(n-1,1)]
%
下列计算
>> det(a)
ans =
665
>> inv(a)
ans =
0.3173 -0.5865 1.0286 -1.6241 1.9489
-0.0977 0.4887 -0.8571 1.3534 -1.6241
11
0.0286 -0.1429 0.5429 -0.8571 1.0286
-0.0075 0.0376 -0.1429 0.4887 -0.5865
0.0015 -0.0075 0.0286 -0.0977 0.3173
>> [v,d]=eig(a)
v =
-0.7843 -0.7843 -0.9237 0.9860 -0.9237
0.5546 -0.5546 -0.3771 -0.0000 0.3771
-0.2614 -0.2614 0.0000 -0.1643 0.0000
0.0924 -0.0924 0.0628 -0.0000 -0.0628
-0.0218 -0.0218 0.0257 0.0274 0.0257
d =
0.7574 0 0 0 0
0 9.2426 0 0 0
0 0 7.4495 0 0
0 0 0 5.0000 0
0 0 0 0 2.5505
%Exercise 7(1)
>> a=[4 1 -1;3 2 -6;1 -5 3];[v,d]=eig(a)
v =
0.0185 -0.9009 -0.3066
-0.7693 -0.1240 -0.7248
-0.6386 -0.4158 0.6170
d =
-3.0527 0 0
0 3.6760 0
0 0 8.3766
>> det(v)
ans =
-0.9255 %v
行列式正常
,
特征向量线性相关,可对角化
>> inv(v)*a*v %
验算
ans =
-3.0527 0.0000 -0.0000
0.0000 3.6760 -0.0000
-0.0000 -0.0000 8.3766
>> [v2,d2]=jordan(a) %
也可用
jordan
v2 =
0.0798 0.0076 0.9127
0.1886 -0.3141 0.1256
-0.1605 -0.2607 0.4213 %
特征向量不同
d2 =
8.3766 0 0
0 -3.0527 - 0.0000i 0
12
0 0 3.6760 + 0.0000i
>> v2a*v2
ans =
8.3766 0 0.0000
0.0000 -3.0527 0.0000
0.0000 0.0000 3.6760
>> v(:,1)./v2(:,2) %
对应相同特征值的特征向量成比例
ans =
2.4491
2.4491
2.4491
%Exercise 7(2)
>> a=[1 1 -1;0 2 -1;-1 2 0];[v,d]=eig(a)
v =
-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i
-0.5773 0.5774 0.5774
-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000i
d =
1.0000 0 0
0 1.0000 + 0.0000i 0
0 0 1.0000 - 0.0000i
>> det(v)
ans =
-5.0566e-028 -5.1918e-017i %v
的行列式接近
0,
特征向量线性相关,不可对角化
>> [v,d]=jordan(a)
v =
1 0 1
1 0 0
1 -1 0
d =
1 1 0
0 1 1
0 0 1 %jordan
标准形不是对角的,所以不可对角化
%Exercise 7(3)
>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]
A =
5 7 6 5
7 10 8 7
6 8 10 9
5 7 9 10
>> [v,d]=eig(A)
13
v =
0.8304 0.0933 0.3963 0.3803
-0.5016 -0.3017 0.6149 0.5286
-0.2086 0.7603 -0.2716 0.5520
0.1237 -0.5676 -0.6254 0.5209
d =
0.0102 0 0 0
0 0.8431 0 0
0 0 3.8581 0
0 0 0 30.2887
>> inv(v)*A*v
ans =
0.0102 0.0000 -0.0000 0.0000
0.0000 0.8431 -0.0000 -0.0000
-0.0000 0.0000 3.8581 -0.0000
-0.0000 -0.0000 0 30.2887
%
本题用
jordan
不行
,
原因未知
%Exercise 7(4)
参考
6(4)
和
7(1),
略
%Exercise 8
只有
(3)
对称
,
且特征值全部大于零
,
所以是正定矩阵
.
%Exercise 9(1)
>> a=[4 -3 1 3;2 -1 3 5;1 -1 -1 -1;3 -2 3 4;7 -6 -7 0]
>> rank(a)
ans =
3
>> rank(a(1:3,:))
ans =
2
>> rank(a([1 2 4],:)) %1,2,4
行为最大无关组
ans =
3
>> b=a([1 2 4],:)';c=a([3 5],:)';
>> bc %
线性表示的系数
ans =
0.5000 5.0000
-0.5000 1.0000
0 -5.0000
%Exercise 10
>> a=[1 -2 2;-2 -2 4;2 4 -2]
>> [v,d]=eig(a)
14
v =
0.3333 0.9339 -0.1293
0.6667 -0.3304 -0.6681
-0.6667 0.1365 -0.7327
d =
-7.0000 0 0
0 2.0000 0
0 0 2.0000
>> v'*v
ans =
1.0000 0.0000 0.0000
0.0000 1.0000 0
0.0000 0 1.0000 %v
确实是正交矩阵
%Exercise 11
%
设经过
6
个电阻的电流分别为
i1, ..., i6.
列方程组如下
%20-2i1=a; 5-3i2=c; a-3i3=c; a-4i4=b; c-5i5=b; b-3i6=0;
%i1=i3+i4;i5=i2+i3;i6=i4+i5;
%
计算如下
>> A=[1 0 0 2 0 0 0 0 0;0 0 1 0 3 0 0 0 0;1 0 -1 0 0 -3 0 0 0; 1 -1 0 0 0 0 -4 0 0;
0 -1 1 0 0 0 0 -5 0;0 1 0 0 0 0 0 0 -3; 0 0 0 1 0 -1 -1 0 0;0 0 0 0 -1 -1 0 1 0;
0 0 0 0 0 0 -1 -1 1];
>>b=[20 5 0 0 0 0 0 0 0]'; Ab
ans =
13.3453
6.4401
8.5420
3.3274
-1.1807
1.6011
1.7263
0.4204
2.1467
%Exercise 12
>> A=[1 2 3;4 5 6;7 8 0];
>> left=sum(eig(A)), right=sum(trace(A))
left =
6.0000
right =
6
>> left=prod(eig(A)), right=det(A) %
原题有错
, (-1)^n
应删去
left =
15
27.0000
right =
27
>> fA=(A-p(1)*eye(3,3))*(A-p(2)*eye(3,3)) *(A-p(3)*eye(3,3))
fA =
1.0e-012 *
0.0853 0.1421 0.0284
0.1421 0.1421 0
-0.0568 -0.1137 0.1705
>> norm(fA) %f(A)
范数接近
0
ans =
2.9536e-013
16