matlab作業

1. 請讀者先運行以下指令
a=0;b=pi;
t1=a:pi/9:pi;
t2=linspace(a,b,10);
T=t1*t2’;
F=find(T<0);
然後,請回答變量a、t1、T、F的維度、規模、長度分別是多少?t1完全等於t2嗎?爲什麼?

答:

a t1 T F
ndims 2 2 2 2
size 1*1 1*10 1*1 0*0
length 1 10 1 0

通過下面代碼可知t1不完全等於t2,因爲matlab數值計算會出現誤差,誤差不斷積累,當它超過eps時,就會影響實際結果

>>t1==t2
ans =
 1*10 logical 數組
 1   1   1   1   1   1   0   1   1   1

2. 對於指令A=reshape(1:18,3,6)產生的數組

A =

1    4     7    10   13    16

 2    5     8    11   14    17

 3    6     9    12   15    18  

先請你用一條指令,使A數組中取值爲2、4、8、16的元素都被重新賦值爲NaN。然後,再請你用一條指令,把A數組的第4、5兩列元素都被重新賦值爲Inf。
答:
在這裏插入圖片描述

3.由指令rng(‘default’),A=rand(3,5)生成二維數組A,試求該數組中所有大於0.5的元素的位置,分別求出它們的“全下標”和“單下標”。

>>rng('default'),A=rand(3,5);
>>L=find(A<0.5)
L=	
	3
	6
	7
	11
	14
>>[r,c]=ind2sub(size(A),L);
>>[r,c]
ans =
	3	1
	3	2
	1	3
	2	4
	2	5

4.在時間區間 [0,10]中,繪製曲線。要求分別採取“標量循環運算法”和“數組運算法”編寫兩段程序繪圖。
標量循環運算法:

i=1;
x=0:0.1:10;
for j=0:0.1:10
	y(i)=1-exp(-0.5*j)*cos(2*j);
	i=i+1;
end
plot(x,y)

在這裏插入圖片描述數組運算法:

x=0:0.1:10;
y=1-exp(-0.5*x).*cos(2*x);
plot(x,y)

在這裏插入圖片描述

1.已知A=magic(3),B=rand(3),請回答以下問題:

(1)A.*B和B.*A的運行結果相同嗎?請說出理由。

>>A=magic(3);B=rand(3);

在這裏插入圖片描述
答:相等,兩個同維矩陣對應元素相乘,有乘法的交換律可知一定相等。
(2)AB和A.B的運行結果相同嗎?請說出理由。
在這裏插入圖片描述
答:不相等,**是矩陣運算,.**是數組運算。
(3)A
B和B
A的運行結果相同嗎?請說出理由。
在這裏插入圖片描述
答:不相等,矩陣乘法不具有交換律。
(4)A.\B和B./A的運行結果相同嗎?請說出理由。
在這裏插入圖片描述
答:.\和./分別是數組的左除和右除,兩個式子的數學含義是相同的。
(5)A\B和B/A的運行結果相同嗎?請說出理由。
在這裏插入圖片描述
答:不相等,矩陣的乘法不滿足交換律,一個相當於左乘A的逆,一個相當右乘A的逆。
(6)AA\B-B和A(A\B)-B的運行結果相同嗎?它們中那個結果的元素都十分接近於0?
在這裏插入圖片描述
答:不相等
在這裏插入圖片描述
A*(A\B)-B的元素更接近於0
(7)A\eye(3)和eye(3)/A的運行結果相同嗎?爲什麼?
在這裏插入圖片描述
答:部分不相等,由於數值計算計算方法的不同會產生誤差,導致兩者不相等。
6.已知矩陣,A=[1 2;3 4](1)運行指令B1=A.^(0.5), B2=0.5.^A, B3=A^(0.5), B4=0.5^A可以觀察到不同運算方法所得結果不同。
在這裏插入圖片描述
(2)請分別寫出根據B1, B2, B3, B4恢復原矩陣A的M碼。
在這裏插入圖片描述
(3)用指令檢驗所得的兩個恢復矩陣是否相等。
在這裏插入圖片描述
在這裏插入圖片描述
7.先運行指令x=-3pi:pi/15:3pi; y=x; [X,Y]=meshgrid(x,y); warning
off; Z=sin(X).*sin(Y)./X./Y; 產生矩陣Z。(1)請問矩陣Z中有多少個“非數”數據?
在這裏插入圖片描述
(2)用指令surf(X,Y,Z); shading interp觀察所繪的圖形。
在這裏插入圖片描述
(3)請寫出繪製相應的“無裂縫”圖形的全部指令。(提示:isnan用於判斷是否非數;可藉助sum求和;realmin是最小正數。)
在這裏插入圖片描述
8.答:
在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章