《注意》:下例子僅用於測試程式正確性與並行時的加速比,故沒有使用例子中全部測試**。
例7.7.1 根據上的個等距橫座標點和函式.
(1)求的6階三角多項式逼近,計算均方誤差;
(2)將這三個三角多項式分別與的傅利葉級數
的前6項進行比較;
(3)利用三角多項式分別計算xi= -2, 2.5的值;
(4)在同一座標系中,畫出函式,的三角多項式和資料點的圖形.
解 (1)輸入程式
>> x1=-pi:2*pi/13:pi;y1=2*sin(x1/3);x1i=[-2,2.5];
[a1,b1,y11,rm1]=sanjiao(x1,y1,x1i,6),
>> matlabpool 4
>> [a1,b1,y11,rm1]=sanjiao(x1,y1,x1i,6); %序列**實現
a1 =
1.0e-016 *
0.0263 -0.3416 0.1708 -0.1708 0 -0.1708 0
b1 =
0 1.2189 -0.5234 0.3053 -0.1857 0.1018 -0.0326
y11 =
-1.1975 1.5908
rm1 =
9.9406e-032
>> [a1,b1,y11,rm1]=sanjiao_spmd(x1,y1,x1i,6,4並行實現
a1 =
1.0e-016 *
0.0263 -0.3416 0.1708 -0.1708 0 -0.1708 0
b1 =
0 1.2189 -0.5234 0.3053 -0.1857 0.1018 -0.0326
y11 =
-1.1975 1.5908
rm1 =
9.9406e-032
>>matlabpool close
序列程式和並行程式都得出的結果一致。下面看看並行**與序列**的效率對比:
2 編寫並儲存為speed_up_
>> speed_up_sanjiao_spmd(x1,y1,x1i,6,4)
elapsed time is 0.000384 seconds.
elapsed time is 0.267290 seconds.
speed_up =
0.0015
>>matlabpool close
輸出中第一行是序列**所用時間,第二行是並行**所用時間
三角多項式取值範圍x1大小、函式階數m,[1334,667] lab數目: 1,2,3,4加速比如下:
表1取其中的[2001,100],[6001,500],[6001,3000]三個範圍的加速比做直觀圖如下:
從兩幅圖里都可以看到當計算規模較小時【2001,100】,spmd加速不明顯甚至效能比序列還低,而且lab數量變大可能造成效能下降,這是因為將任務分配給labs會耗時,這種情況下spmd並行得來的效能欠佳,不能彌補這種消耗。矩陣規模較大【6001,3000】時spmd並行化加速明顯,而且隨著lab數量增加而增加,近似線性加速。
多項式乘以多項式
學習目標 理解多項式乘以多項式的運算法則 重點 能夠按多項式乘法步驟進行簡單的乘法運算 難點 學習過程 一 創設情境 我們在上一節課裡學習了單項式與多項式的乘法,請口算下列練習中的 1 2 1 3x x y2 a b k 3 a b m n 比較 3 與 1 2 在形式上有何不同?如何進行多項式乘以...
14 1 4多項式乘多項式練習題 三
14.1.4 多項式與多項式相乘練習題 一 選擇題 1 計算 2a 3b 2a 3b 的正確結果是 a 4a2 9b2 b 4a2 9b2 c 4a2 12ab 9b2 d 4a2 12ab 9b2 2 若 x a x b x2 kx ab,則k的值為 a a bb a bc a bd b a 3 ...
多項式乘以多項式導學稿
武城一中數學導學稿 年級 初二年級學科 數學執筆 審核 張迎華初二數學備課組 內容 多項式乘以多項式課型 新授課時間 2011年月日 學習目標 1.探索多項式乘法的法則過程,理解多項式乘法的法則,並會進行多項式乘法的運算 2.進一步體會乘法分配律的作用和轉化的思想,發展有條理的思考和語言表達能力.重...