bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

MATLAB如何實現并行運算

這篇文章給大家分享的是有關MATLAB如何實現并行運算的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

網站建設哪家好,找創新互聯!專注于網頁設計、網站建設、微信開發、成都微信小程序、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了興安盟免費建站歡迎大家使用!

MATLAB如何實現并行運算

本來我是把全部過程都錄完了的,不過轉成GIF后比較大超過2兆了,沒法上傳,所以就錄了部分。

錄地時候忘把patch對象中的EdgeAlpha設為零的,所以patch的edge把前面的line給遮住了(在程序中我把line放前面了)。如果把patch中的EdgeAlpha設為0,連線才是紅色的,或者你不用line也行,你直接把EdgeColor的值設為 'r' 也行。感覺這樣應該好看點。

MATLAB如何實現并行運算

代碼基本和昨天的一致,我只是把plotSTL出的patch對象的FaceAlpha值設為0了,在循環中再patch每個小塊。

這里還是放出源碼吧

clc
clear
close all

VertexData= stl2matlab('pig_stl.txt');
hPatch = plotSTL(VertexData,[1 1 0]);
hPatch.FaceAlpha = 0;
view(3)
set(gca,'NextPlot','add')
set(gca,'Clipping','off')
axis off
set(gca,'Units','nor')
set(gca,'Position',[0 0 1 1])
set(gca,'Color',get(gcf,'Color'))


X = VertexData{1};
Y = VertexData{2};
Z = VertexData{3};

for i = 1 : size(X,2)
    line( X(:,i) , Y(:,i) , Z(:,i) , 'Color' , 'r' , 'LineWidth' , 0.5)
    scatter3( X(:,i) , Y(:,i) , Z(:,i) , 'SizeData' , 20 , 'MarkerFaceColor' , 'y')
    patch( X(:,i) , Y(:,i) , Z(:,i) , [1 128/255 128/255] , 'FaceAlpha' , 0.4,'EdgeAlpha' , 0)
    drawnow
    i
end

MATLAB如何實現并行運算

來點有用的..

關于并行運算,我只知道個parfor,和for循環一樣,parfor也是要搭配一個end。parfor和for循環的區別還是很大的。

  1. parfor中不能再嵌套一個parfor

  2. parfor只支持對整數進行循環

  3. parfor它不一定是按照順序的(我不知道怎么描述,看下面這個例子吧)

  4. 每次循環都必須要求獨立,也就是說下一次的循環不能依賴于上一次的循環,這個要求最惱人...

MATLAB如何實現并行運算

當我們使用parfor時,MATLAB會開若干個workspace,然后把這個循環分成若干個部分分別分配到那若干個workspace中同時計算。這樣速度就快了好幾倍。不過如果for循環幾秒就能解決的事,用parfor可能會比for慢。

上面說了parfor下不能嵌套parfor,而我們有兩重循環怎么辦?解決辦法是外層parfor,內層for,或者外層for,內層parfor........但是后者很慢....還有一個辦法是把兩層循環單層循環,such as:

A = magic(2000);
m = size(A,1);
n = size(A,2);
%A = reshape(A , m * n , 1);
tic
parfor k = 1:numel(A)
    i = mod(k - 1 , m) + 1;
    j = floor( (k - 1) / m ) + 1;
    A(k) = A(k) + i * j;% 單個的parfor中只能用向量,你這里寫A(i,j)matlab就不干
end
A = reshape(A,m,n);
Method4 = toc;

感謝各位的閱讀!關于“MATLAB如何實現并行運算”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

當前標題:MATLAB如何實現并行運算
轉載來源:http://vcdvsql.cn/article42/gghcec.html

成都網站建設公司_創新互聯,為您提供建站公司動態網站App設計網站建設虛擬主機靜態網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站網頁設計