本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,特別涉及一種粒子映射方法和裝置。
背景技術(shù):
隨著計算機(jī)技術(shù)的發(fā)展,終端可以在統(tǒng)一計算設(shè)備架構(gòu)(computeunifieddevicearchitecture,cuda)運(yùn)算平臺中求解流體的平流運(yùn)動,從而實現(xiàn)對流體運(yùn)動的模擬,比如,火焰、水流等。而終端在cuda運(yùn)算平臺中求解流體的平流運(yùn)動時,往往先需要對流體中的粒子進(jìn)行映射處理,即,通過確定三維空間中每個網(wǎng)格承受的周圍粒子的影響力,從而將流體中的粒子映射到三維空間的網(wǎng)格中。
現(xiàn)有技術(shù)中,終端的內(nèi)存空間中存儲流體中的每個粒子的粒子數(shù)據(jù),粒子數(shù)據(jù)包括位置信息和預(yù)設(shè)物理量。其中,預(yù)設(shè)物理量包括密度、速度和溫度中的至少一個。在對流體中的粒子進(jìn)行映射處理時,終端將當(dāng)前的三維空間劃分為多個立方體,每個立方體包括27個網(wǎng)格,每個網(wǎng)格為以單位長度為邊長的單位立方體。終端中同時運(yùn)行多個線程,通過一個線程對一個立方體中的粒子進(jìn)行映射處理。
對于每個立方體中的每個網(wǎng)格,終端通過一個線程從內(nèi)存空間中讀取粒子集合中的每個粒子的粒子數(shù)據(jù),粒子集合包括該網(wǎng)格包括的粒子以及該網(wǎng)格周圍的26個網(wǎng)格包括的粒子。終端根據(jù)該粒子集合中的每個粒子的位置信息,將該粒子集合中的粒子映射到該網(wǎng)格中,根據(jù)該粒子集合包括的每個粒子的位置信息和該網(wǎng)格的位置信息,分別計算該粒子集合包括的每個粒子與該網(wǎng)格之間的權(quán)重。終端根據(jù)該粒子集合包括的每個粒子與該網(wǎng)格之間的權(quán)重,以及,該粒子集合包括的每個粒子的預(yù)設(shè)物理量,通過以下公式一計算該粒子集合包括的每個粒子的預(yù)設(shè)物理量對該網(wǎng)格的影響力之和。終端計算該粒子集合包括的每個粒子與該網(wǎng)格之間的權(quán)重之和,將該影響力之和與該權(quán)重之和之間的比值確定為該粒子集合包括的每個粒子的預(yù)設(shè)物理量對該網(wǎng)格的平均影響力,將該網(wǎng)格的預(yù)設(shè)物理量的影響力設(shè)置為該平均影響力。
公式一:φ=σwiφi,其中,i表示該粒子集合中的第i個粒子,wi表示第i個粒子與該網(wǎng)格之間的權(quán)重,φi表示第i個粒子的預(yù)設(shè)物理量,φ表示該粒子集合包括的每個粒子的預(yù)設(shè)物理量對該網(wǎng)格的影響力之和。對于當(dāng)前的三維空間中的每個立方體都通過一個線程按以上方法進(jìn)行粒子映射處理。
在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
上述方法中,由于計算該網(wǎng)格的平均影響力時,需要通過一個線程從內(nèi)存空間中讀取周圍網(wǎng)格中的粒子的粒子數(shù)據(jù);同樣,在計算周圍網(wǎng)格的平均影響力時,通過另一個線程從內(nèi)存空間中讀取該網(wǎng)格的粒子的粒子數(shù)據(jù);由此可見,不同的線程會重復(fù)從內(nèi)存空間中讀取同一個粒子的粒子數(shù)據(jù),不僅浪費(fèi)帶寬,還降低了映射效率。
技術(shù)實現(xiàn)要素:
為了解決現(xiàn)有技術(shù)的問題,本發(fā)明提供了一種粒子映射方法方法和裝置。技術(shù)方案如下:
第一方面,本發(fā)明實施例提供了一種粒子映射方法,所述方法包括:
對于三維空間中的第一區(qū)域的第一子區(qū)域,讀取所述第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)所述每個第一粒子的粒子數(shù)據(jù)和所述第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定所述每個第一粒子對所述第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和,任一第一粒子的粒子數(shù)據(jù)包括所述任一第一粒子的位置信息和預(yù)設(shè)物理量,所述第一區(qū)域為所述三維空間中的任一區(qū)域,所述第一子區(qū)域為所述第一區(qū)域中的任一子區(qū)域,所述第一子區(qū)域包括第一預(yù)設(shè)數(shù)目個網(wǎng)格;
從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對所述第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對所述第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,所述第二子區(qū)域為所述第一子區(qū)域的前一個子區(qū)域,所述第三子區(qū)域為所述第一子區(qū)域的后一個子區(qū)域;
根據(jù)所述第一影響力之和、所述第一權(quán)重之和、所述第二影響力之和、所述第二權(quán)重之和、所述第三影響力之和以及所述第三權(quán)重之和,確定所述第一中心網(wǎng)格的平均影響力;
根據(jù)所述每個第一粒子的位置信息,將所述每個第一粒子映射到所述第一中心網(wǎng)格中,將所述第一中心網(wǎng)格的影響力設(shè)置為所述平均影響力。
可選的,所述對于三維空間中的第一區(qū)域的第一子區(qū)域,讀取所述第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)所述每個第一粒子的粒子數(shù)據(jù)和所述第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定所述每個第一粒子對所述第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和,包括:
從所述第一區(qū)域?qū)?yīng)的第一存儲空間中讀取所述第一區(qū)域包括的每個粒子的粒子數(shù)據(jù);
對于所述第一子區(qū)域中的第一中心網(wǎng)格,通過第一線程,執(zhí)行以下步驟:
根據(jù)所述每個第一粒子的位置信息和所述第一中心網(wǎng)格的位置信息,計算所述每個第一粒子與所述第一中心網(wǎng)格之間的權(quán)重;
對所述每個第一粒子與所述第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,得到所述第一權(quán)重之和;
將所述每個第一粒子與所述第一中心網(wǎng)格之間的權(quán)重與所述每個第一粒子的預(yù)設(shè)物理量進(jìn)行乘積,得到所述每個第一粒子對所述第一中心網(wǎng)格的影響力;
將所述每個第一粒子對所述第一中心網(wǎng)格的影響力進(jìn)行求和,得到所述第一影響力之和。
可選的,所述從所述第一區(qū)域?qū)?yīng)的第一存儲空間中讀取所述第一區(qū)域包括的每個粒子的粒子數(shù)據(jù)之前,所述方法還包括:
根據(jù)本端設(shè)備包括的每個存儲空間的大小,將所述三維空間劃分為多個柱狀體,每個柱狀體包括多個網(wǎng)格;
將所述每個柱狀體劃分為多個區(qū)域;
為所述第一區(qū)域分配所述第一存儲空間,將所述第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到所述第一存儲空間中。
可選的,所述將所述第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到所述第一存儲空間中,包括:
根據(jù)所述第一存儲空間的大小,從內(nèi)存空間中讀取所述第一區(qū)域包括的粒子的粒子數(shù)據(jù);
將讀取的粒子數(shù)據(jù)存儲到所述第一存儲空間中。
可選的,所述第一存儲空間為顯卡緩存sharedmemory。
可選的,所述方法還包括:
將所述第一影響力之和,以及所述第一權(quán)重之和存儲到所述第一區(qū)域?qū)?yīng)的第四存儲空間中。
可選的,所述從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對所述第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對所述第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和之前,所述方法還包括:
讀取所述第二子區(qū)域包括的每個第二粒子的粒子數(shù)據(jù),根據(jù)所述每個第二粒子的粒子數(shù)據(jù)和所述第一中心網(wǎng)格的位置信息,確定所述每個第二粒子對所述第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,將所述第二影響力之和與所述第二權(quán)重之和存儲至所述第二存儲空間中;
讀取所述第三子區(qū)域包括的每個第三粒子的粒子數(shù)據(jù),根據(jù)所述每個第三粒子的粒子數(shù)據(jù)和所述第一中心網(wǎng)格的位置信息,確定所述每個第三粒子對所述第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,將所述第三影響力之和與所述第三權(quán)重之和存儲至所述第三存儲空間中。
可選的,所述根據(jù)所述第一影響力之和、所述第一權(quán)重之和、所述第二影響力之和、所述第二權(quán)重之和、所述第三影響力之和以及所述第三權(quán)重之和,確定所述第一中心網(wǎng)格的平均影響力,包括:
對所述第一影響力之和、所述第二影響力之和以及所述第三影響力之和進(jìn)行求和,得到第一數(shù)值;
對所述第一權(quán)重之和、所述第二權(quán)重之和以及所述第三權(quán)重之和進(jìn)行求和,得到第二數(shù)值;
將所述第一數(shù)值與所述第二數(shù)值之間的比值確定為所述第一中心網(wǎng)格的平均影響力。
第二方面,本發(fā)明實施例提供了一種粒子映射裝置,所述裝置包括:
讀取模塊,用于對于三維空間中的第一區(qū)域的第一子區(qū)域,讀取所述第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)所述每個第一粒子的粒子數(shù)據(jù)和所述第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定所述每個第一粒子對所述第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和,任一第一粒子的粒子數(shù)據(jù)包括所述任一第一粒子的位置信息和預(yù)設(shè)物理量,所述第一區(qū)域為所述三維空間中的任一區(qū)域,所述第一子區(qū)域為所述第一區(qū)域中的任一子區(qū)域,所述第一子區(qū)域包括第一預(yù)設(shè)數(shù)目個網(wǎng)格;
獲取模塊,用于從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對所述第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對所述第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,所述第二子區(qū)域為所述第一子區(qū)域的前一個子區(qū)域,所述第三子區(qū)域為所述第一子區(qū)域的后一個子區(qū)域;
第一確定模塊,用于根據(jù)所述第一影響力之和、所述第一權(quán)重之和、所述第二影響力之和、所述第二權(quán)重之和、所述第三影響力之和以及所述第三權(quán)重之和,確定所述第一中心網(wǎng)格的平均影響力;
映射模塊,用于根據(jù)所述每個第一粒子的位置信息,將所述每個第一粒子映射到所述第一中心網(wǎng)格中,將所述第一中心網(wǎng)格的影響力設(shè)置為所述平均影響力。
可選的,所述讀取模塊,還用于從所述第一區(qū)域?qū)?yīng)的第一存儲空間中讀取所述第一區(qū)域包括的每個粒子的粒子數(shù)據(jù);
對于所述第一子區(qū)域中的第一中心網(wǎng)格,所述讀取模塊,還用于通過第一線程,根據(jù)所述每個第一粒子的位置信息和所述第一中心網(wǎng)格的位置信息,計算所述每個第一粒子與所述第一中心網(wǎng)格之間的權(quán)重;對所述每個第一粒子與所述第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,得到所述第一權(quán)重之和;將所述每個第一粒子與所述第一中心網(wǎng)格之間的權(quán)重與所述每個第一粒子的預(yù)設(shè)物理量進(jìn)行乘積,得到所述每個第一粒子對所述第一中心網(wǎng)格的影響力;將所述每個第一粒子對所述第一中心網(wǎng)格的影響力進(jìn)行求和,得到所述第一影響力之和。
可選的,所述裝置還包括:
第一劃分模塊,用于根據(jù)本端設(shè)備包括的每個存儲空間的大小,將所述三維空間劃分為多個柱狀體,每個柱狀體包括多個網(wǎng)格;
第二劃分模塊,用于將所述每個柱狀體劃分為多個區(qū)域;
第一存儲模塊,用于為所述第一區(qū)域分配所述第一存儲空間,將所述第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到所述第一存儲空間中。
可選的,所述第一存儲模塊,還用于根據(jù)所述第一存儲空間的大小,從內(nèi)存空間中讀取所述第一區(qū)域包括的粒子的粒子數(shù)據(jù);將讀取的粒子數(shù)據(jù)存儲到所述第一存儲空間中。
可選的,所述第一存儲空間為顯卡緩存sharedmemory。
可選的,所述裝置還包括:
第二存儲模塊,用于將所述第一影響力之和,以及所述第一權(quán)重之和存儲到所述第一區(qū)域?qū)?yīng)的第四存儲空間中。
可選的,所述裝置還包括:
第二確定模塊,用于讀取所述第二子區(qū)域包括的每個第二粒子的粒子數(shù)據(jù),根據(jù)所述每個第二粒子的粒子數(shù)據(jù)和所述第一中心網(wǎng)格的位置信息,確定所述每個第二粒子對所述第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,將所述第二影響力之和與所述第二權(quán)重之和存儲至所述第二存儲空間中;
第三確定模塊,用于讀取所述第三子區(qū)域包括的每個第三粒子的粒子數(shù)據(jù),根據(jù)所述每個第三粒子的粒子數(shù)據(jù)和所述第一中心網(wǎng)格的位置信息,確定所述每個第三粒子對所述第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,將所述第三影響力之和與所述第三權(quán)重之和存儲至所述第三存儲空間中。
可選的,所述第一確定模塊,包括:
第一求和單元,用于對所述第一影響力之和、所述第二影響力之和以及所述第三影響力之和進(jìn)行求和,得到第一數(shù)值;
第二求和單元,用于對所述第一權(quán)重之和、所述第二權(quán)重之和以及所述第三權(quán)重之和進(jìn)行求和,得到第二數(shù)值;
確定單元,用于將所述第一數(shù)值與所述第二數(shù)值之間的比值確定為所述第一中心網(wǎng)格的平均影響力。
本發(fā)明實施例中,終端根據(jù)讀取的每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和。然后,終端從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和。終端根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力;并將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力,從而將第一中心網(wǎng)格周圍的第一粒子、第二粒子、第三粒子的預(yù)設(shè)物理量映射到該第一中心網(wǎng)格中。由于終端可以分別計算每個第一中心網(wǎng)格對應(yīng)的第一影響力之和、第一權(quán)重之和,并直接獲取第二影響力之和、第二權(quán)重之和,第三影響力之和,第三權(quán)重之和,確定出第一中心網(wǎng)格的影響力,從而無需重復(fù)讀取第一粒子、第二粒子以及第三粒子的粒子數(shù)據(jù),節(jié)省了帶寬,提高了粒子映射的效率。
附圖說明
圖1是本發(fā)明實施例提供的一種粒子映射的方法流程圖;
圖2是本發(fā)明實施例提供的一種粒子映射的方法流程圖;
圖3是本發(fā)明實施例提供的一種粒子映射的裝置結(jié)構(gòu)示意圖;
圖4是本發(fā)明實施例提供的一種粒子映射的裝置結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進(jìn)一步地詳細(xì)描述。
本發(fā)明實施例提供了一種粒子映射方法,該方法的執(zhí)行主體可以為終端或服務(wù)器,本發(fā)明實施例對此不做具體限定,本發(fā)明實施例僅以終端為例進(jìn)行說明,如圖1所示,該方法包括:
步驟101:對于三維空間中的第一區(qū)域的第一子區(qū)域,讀取該第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)該每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和。
需要說明的是,任一第一粒子的粒子數(shù)據(jù)包括該任一第一粒子的位置信息和預(yù)設(shè)物理量,該第一區(qū)域為該三維空間中的任一區(qū)域,該第一子區(qū)域為該第一區(qū)域中的任一子區(qū)域,該第一子區(qū)域包括第一預(yù)設(shè)數(shù)目個網(wǎng)格。
步驟102:從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和。
需要說明的是,該第二子區(qū)域為該第一子區(qū)域的前一個子區(qū)域,該第三子區(qū)域為該第一子區(qū)域的后一個子區(qū)域。
步驟103:根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力。
步驟104:根據(jù)該每個第一粒子的位置信息,將該每個第一中心網(wǎng)格映射到該第一中心網(wǎng)格中,將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力。
在一種可能的設(shè)計中,對于三維空間中的第一區(qū)域的第一子區(qū)域,讀取該第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)該每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和,包括:
從該第一區(qū)域?qū)?yīng)的第一存儲空間中讀取該第一區(qū)域包括的每個粒子的粒子數(shù)據(jù);
對于該第一子區(qū)域中的第一中心網(wǎng)格,通過第一線程,執(zhí)行以下步驟:
根據(jù)該每個第一粒子的位置信息和該第一中心網(wǎng)格的位置信息,計算該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重;
對該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,得到該第一權(quán)重之和;
將該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重與該每個第一粒子的預(yù)設(shè)物理量進(jìn)行乘積,得到該每個第一粒子對該第一中心網(wǎng)格的影響力;
將該每個第一粒子對該第一中心網(wǎng)格的影響力進(jìn)行求和,得到該第一影響力之和。
在一種可能的設(shè)計中,從該第一區(qū)域?qū)?yīng)的第一存儲空間中讀取該第一區(qū)域包括的每個粒子的粒子數(shù)據(jù)之前,該方法還包括:
根據(jù)本端設(shè)備包括的每個存儲空間的大小,將該三維空間劃分為多個柱狀體,每個柱狀體包括多個網(wǎng)格;
將該每個柱狀體劃分為多個區(qū)域;
為該第一區(qū)域分配該第一存儲空間,將該第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到該第一存儲空間中。
在一種可能的設(shè)計中,將該第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到該第一存儲空間中,包括:
根據(jù)該第一存儲空間的大小,從內(nèi)存空間中讀取該第一區(qū)域包括的粒子的粒子數(shù)據(jù);
將讀取的粒子數(shù)據(jù)存儲到該第一存儲空間中。
在一種可能的設(shè)計中,該第一存儲空間為顯卡緩存sharedmemory。
在一種可能的設(shè)計中,該方法還包括:
將該第一影響力之和,以及該第一權(quán)重之和存儲到該第一區(qū)域?qū)?yīng)的第四存儲空間中。
在一種可能的設(shè)計中,從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和之前,該方法還包括:
讀取該第二子區(qū)域包括的每個第二粒子的粒子數(shù)據(jù),根據(jù)該每個第二粒子的粒子數(shù)據(jù)和該第一中心網(wǎng)格的位置信息,確定該每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,將該第二影響力之和與該第二權(quán)重之和存儲至該第二存儲空間中;
讀取該第三子區(qū)域包括的每個第三粒子的粒子數(shù)據(jù),根據(jù)該每個第三粒子的粒子數(shù)據(jù)和該第一中心網(wǎng)格的位置信息,確定該每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,將該第三影響力之和與該第三權(quán)重之和存儲至該第三存儲空間中。
在一種可能的設(shè)計中,根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力,包括:
對該第一影響力之和、該第二影響力之和以及該第三影響力之和進(jìn)行求和,得到第一數(shù)值;
對該第一權(quán)重之和、該第二權(quán)重之和以及該第三權(quán)重之和進(jìn)行求和,得到第二數(shù)值;
將該第一數(shù)值與該第二數(shù)值之間的比值確定為該第一中心網(wǎng)格的平均影響力。
本發(fā)明實施例中,終端根據(jù)讀取的每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和。然后,終端直接從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,直接從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和。終端根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力;并將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力,從而將第一中心網(wǎng)格周圍的第一粒子、第二粒子、第三粒子的預(yù)設(shè)物理量映射到該第一中心網(wǎng)格中。由于終端可以分別計算每個第一中心網(wǎng)格對應(yīng)的第一影響力之和、第一權(quán)重之和,并直接獲取第二影響力之和、第二權(quán)重之和,第三影響力之和,第三權(quán)重之和,確定出第一中心網(wǎng)格的影響力,從而無需重復(fù)讀取第一粒子、第二粒子以及第三粒子的粒子數(shù)據(jù),節(jié)省了帶寬,提高了粒子映射的效率。
本發(fā)明實施例提供了一種粒子映射方法,該方法的執(zhí)行主體可以為終端或服務(wù)器,本發(fā)明實施例對此不做具體限定,本發(fā)明實施例僅以終端為例進(jìn)行說明,如圖2所示,該方法包括:
步驟201:對于三維空間中的第一區(qū)域的第一子區(qū)域,終端讀取該第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)該每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和。
需要說明的是,該任一第一粒子的粒子數(shù)據(jù)包括該任一第一粒子的位置信息和預(yù)設(shè)物理量,該第一區(qū)域為該三維空間中的任一區(qū)域,該第一子區(qū)域為該第一區(qū)域中的任一子區(qū)域,該第一子區(qū)域包括第一預(yù)設(shè)數(shù)目個網(wǎng)格。
其中,該粒子的位置信息可以為該粒子在三維空間中的位置坐標(biāo)。該粒子的預(yù)設(shè)物理量可以根據(jù)需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該預(yù)設(shè)物理量可以包括該粒子的速度、密度、溫度中的至少一個。
該網(wǎng)格為三維空間中預(yù)先劃分的邊長為單位長度的正方形網(wǎng)格。該第一預(yù)設(shè)數(shù)目可以根據(jù)需要進(jìn)行設(shè)置并更改,在本發(fā)明實施例中對此不做具體限定。例如,第一預(yù)設(shè)數(shù)目可以為9、25或者49等。在本發(fā)明實施例中以第一預(yù)設(shè)數(shù)目為9為例進(jìn)行說明,則該第一子區(qū)域可以為由3*3個小網(wǎng)格組成的小正方形。
本發(fā)明實施例中,終端可以在該三維空間中預(yù)先建立三維直角坐標(biāo)系xyz,其中,x軸為平行于地面水平向右的方向,y軸為垂直于地面豎直向上的方向,z軸為垂直于紙面的向外的方向,z軸垂直于x軸和y軸構(gòu)成的區(qū)域。粒子的位置信息可以用該粒子在該三維直角坐標(biāo)系xyz中的位置坐標(biāo)表示。
本步驟可以通過以下步驟2011-2013實現(xiàn)。
步驟2011:終端從該第一區(qū)域?qū)?yīng)的第一存儲空間中讀取該第一區(qū)域包括的每個粒子的粒子數(shù)據(jù)。
本發(fā)明實施例中,該第一區(qū)域為終端預(yù)先對三維空間進(jìn)行劃分得到的區(qū)域,具體的,終端從第一存儲空間中讀取該第一區(qū)域包括的每個粒子的粒子數(shù)據(jù)之前,終端預(yù)先按照以下步驟a-b中的劃分方式,對該三維空間進(jìn)行劃分,得到多個區(qū)域,并基于該劃分方式,對三維空間中粒子的粒子數(shù)據(jù)進(jìn)行存儲,從而將第一區(qū)域包括的粒子數(shù)據(jù)存儲到第一存儲空間中。
步驟a:終端根據(jù)本端設(shè)備包括的每個存儲空間的大小,將該三維空間劃分為多個柱狀體,每個柱狀體包括多個網(wǎng)格。
本步驟中,該柱狀體可以為z軸方向上長度與三維空間的長度相等,x、y軸方向上為預(yù)設(shè)形狀的截面的柱狀體。
其中,終端根據(jù)每個存儲空間的大小,確定該柱狀體在x、y軸方向上的預(yù)設(shè)形狀的截面的大小。該每個存儲空間用于存儲一個預(yù)設(shè)形狀的截面包括的粒子的粒子數(shù)據(jù)。具體的,步驟a可以為:終端將該三維空間在z軸方向上的長度確定為該柱狀體的長度;終端獲取每個存儲空間的大小,根據(jù)每個存儲空間的大小,按照第一預(yù)設(shè)規(guī)則,劃分每個柱狀體的預(yù)設(shè)形狀的截面的大小,以使每個存儲空間可以存儲每個預(yù)設(shè)形狀的截面包括的粒子的粒子數(shù)據(jù)。
其中,該第一預(yù)設(shè)規(guī)則可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該第一預(yù)設(shè)規(guī)則可以為:每個柱狀體的截面中包括的全部粒子的粒子數(shù)據(jù)所占的空間大小不超過每個存儲空間的大小。對應(yīng)的,每個存儲空間可以存儲一個預(yù)設(shè)形狀的截面包括的全部粒子的粒子數(shù)據(jù)。
或者,該第一預(yù)設(shè)規(guī)則還可以為:每個柱狀體的截面中包括的50%的粒子的粒子數(shù)據(jù)所占的空間大小不超過每個存儲空間的大小。對應(yīng)的,每個存儲空間可以存儲一個預(yù)設(shè)形狀的截面包括的50%的粒子的粒子數(shù)據(jù)。
該預(yù)設(shè)形狀的截面可以根據(jù)需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該預(yù)設(shè)形狀的截面可以為正方形的截面、矩形的截面或者圓形的截面等。
步驟b:終端將該每個柱狀體劃分為多個區(qū)域;為該第一區(qū)域分配該第一存儲空間,將該第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到該第一存儲空間中。
其中,終端將每個柱狀體劃分為多個區(qū)域的步驟可以為:終端按照第二預(yù)設(shè)規(guī)則,在z軸方向上對該柱狀體進(jìn)行切割,得到多個在x、y軸方向上的預(yù)設(shè)形狀的截面,將每個預(yù)設(shè)形狀的截面作為一個區(qū)域。
其中,該第一區(qū)域可以為該每個柱狀體的多個區(qū)域中的任一區(qū)域。
例如,終端可以將三維空間a劃分為m個柱狀體,每個柱狀體劃分為n個區(qū)域,該第一區(qū)域可以表示為aij,其中,i為m個柱狀體中第i個柱狀體,j為第i個柱狀體的n個區(qū)域中,第j個區(qū)域。
本發(fā)明實施例中,終端可以將每個柱狀體劃分為多個區(qū)域,由于每個區(qū)域中存在多個粒子,終端為每個區(qū)域?qū)?yīng)分配一個存儲空間,每個存儲空間用于存儲該存儲空間對應(yīng)的區(qū)域中包括的粒子的粒子數(shù)據(jù)。終端存儲該柱狀體中區(qū)域和存儲空間的對應(yīng)關(guān)系。
可選的,終端也可以為第二預(yù)設(shè)數(shù)目個區(qū)域?qū)?yīng)分配一個存儲空間,每個存儲空間每次只存儲一個區(qū)域的粒子的粒子數(shù)據(jù),當(dāng)終端通過步驟201,根據(jù)該區(qū)域的粒子的粒子數(shù)據(jù),確定該區(qū)域的粒子對于本區(qū)域的影響力之和以及權(quán)重之和、該區(qū)域的粒子對于前一個區(qū)域的影響力之和以及權(quán)重之和、該區(qū)域的粒子對于后一個區(qū)域的影響力之和以及權(quán)重之和之后,終端將該區(qū)域的粒子的粒子數(shù)據(jù)從該存儲空間中刪除。終端將下一個區(qū)域的粒子的粒子數(shù)據(jù)繼續(xù)存儲在該存儲空間中,并通過步驟201,對該下一個區(qū)域的粒子的粒子數(shù)據(jù)進(jìn)行計算。從而節(jié)省了粒子數(shù)據(jù)占用的存儲空間。
其中,該第二預(yù)設(shè)數(shù)目個區(qū)域可以根據(jù)需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該預(yù)設(shè)數(shù)目個區(qū)域可以為5個區(qū)域,或者,該預(yù)設(shè)數(shù)目個區(qū)域還可以為一個柱狀體中包括的所有區(qū)域。
其中,終端為第一區(qū)域分配第一存儲空間的步驟可以為:終端為第一區(qū)域分配第一存儲空間,并將第一區(qū)域和第一存儲空間的對應(yīng)關(guān)系存儲在區(qū)域和存儲空間的對應(yīng)關(guān)系中。相應(yīng)的,步驟2011可以為:終端根據(jù)該第一區(qū)域,從區(qū)域和存儲空間的對應(yīng)關(guān)系中,確定該第一區(qū)域?qū)?yīng)的第一存儲空間,從第一存儲空間中讀取第一區(qū)域包括的每個粒子的粒子數(shù)據(jù)。
需要說明的是,該多個存儲空間的大小可以相等,也可以不相等,該第一區(qū)域可以為該柱狀體包括的多個區(qū)域中的任一區(qū)域。該第一存儲空間可以為多個存儲空間中的任一存儲空間。本發(fā)明實施例對此不做具體限定。
其中,終端將該第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到該第一存儲空間中的步驟可以為:終端根據(jù)該第一存儲空間的大小,按照第二預(yù)設(shè)規(guī)則,從內(nèi)存空間中讀取該第一區(qū)域包括的粒子的粒子數(shù)據(jù)。將讀取的粒子數(shù)據(jù)存儲到該第一存儲空間中。
其中,該第二預(yù)設(shè)規(guī)則可以根據(jù)用戶需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該第二預(yù)設(shè)規(guī)則可以為:終端一次讀取第一區(qū)域包括的所有粒子的粒子數(shù)據(jù)。對應(yīng)的,終端將該第一區(qū)域包括的所有粒子的粒子數(shù)據(jù)存儲到第一存儲空間中。
該第二預(yù)設(shè)規(guī)則還可以為:每次從內(nèi)存空間中讀取第一區(qū)域包括的50%的粒子的粒子數(shù)據(jù)。對應(yīng)的,終端將第一次讀取的50%的粒子的粒子數(shù)據(jù)存儲到第一存儲空間中;然后,將第二次讀取的剩余50%的粒子的粒子數(shù)據(jù)存儲到第一存儲空間中。
該第二預(yù)設(shè)規(guī)則還可以為:每次從內(nèi)存空間中讀取第一區(qū)域包括的一個粒子的粒子數(shù)據(jù)。對應(yīng)的,終端將每次讀取的一個粒子的粒子數(shù)據(jù)存儲到第一存儲空間中,直到將第一區(qū)域包括的所有粒子的粒子數(shù)據(jù)存儲到第一存儲空間中。
需要說明的是,該第一存儲空間為顯卡緩存(sharedmemory)。
本發(fā)明實施例中,將cuda運(yùn)算平臺中的sharememory作為第一存儲空間,由于sharedmemory的讀取速率和寫入速率較高,遠(yuǎn)高于內(nèi)存的讀取和寫入的速率,因此,本發(fā)明實施例中,將sharedmemory作為第一存儲空間,從而提高了粒子數(shù)據(jù)的存儲速率和讀取速率。并且,終端從內(nèi)存空間中讀取第一區(qū)域包括的粒子,并將第一區(qū)域包括的所有粒子的粒子數(shù)據(jù)存儲到第一存儲空間中,因此,終端可以直接從該第一存儲空間中讀取第一區(qū)域包括的粒子的粒子數(shù)據(jù),無需從內(nèi)存空間中重復(fù)讀取粒子數(shù)據(jù),從而節(jié)省了帶寬,提高了帶寬利用率。
其中,該多個區(qū)域的數(shù)量可以根據(jù)需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,終端可以將每個柱狀體劃分為1000個區(qū)域。
本發(fā)明實施例中,終端通過利用gpu(graphicsprocessingunit,圖形處理器)的simt(singleinstructionmultiplethreads,單指令多線程)的架構(gòu)模式,為每個柱狀體分配一個線程塊(threadblock),每個線程塊包括多個線程,終端通過一個線程對應(yīng)計算一個中心網(wǎng)格的影響力,該多個線程塊可以同時運(yùn)行。從而提高了并行度,進(jìn)而提高了粒子映射的效率。
其中,對于該第一子區(qū)域的第一中心網(wǎng)格,終端通過第一線程,執(zhí)行以下步驟2012-2014。
步驟2012:終端根據(jù)該每個第一粒子的位置信息和該第一中心網(wǎng)格的位置信息,計算該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重。
本發(fā)明實施例中,該第一子區(qū)域為3*3個網(wǎng)格組成的正方形的子區(qū)域。第一區(qū)域中包括多個網(wǎng)格,因此,該第一子區(qū)域為第一區(qū)域中任意3*3個網(wǎng)格組成的正方形區(qū)域。
該第一中心網(wǎng)格為該3*3個網(wǎng)格組成的正方形區(qū)域的中心點所在的網(wǎng)格。該第一粒子為第一子區(qū)域中的任一粒子。該第一粒子與該第一中心網(wǎng)格之間的權(quán)重可以為該第一粒子與該正方形區(qū)域的中心點之間的權(quán)重。
因此,本步驟可以為:終端獲取第一子區(qū)域中每個第一粒子的位置信息和該第一中心網(wǎng)格的位置信息,根據(jù)該第一中心網(wǎng)格的位置信息,確定該第一中心網(wǎng)格的中心點的位置信息。終端根據(jù)第一子區(qū)域中每個第一粒子的位置信息和該第一中心網(wǎng)格的中心點的位置信息,計算每個第一粒子和該第一中心網(wǎng)格的中心點之間的距離,并通過預(yù)設(shè)算法,確定每個第一粒子和該第一中心網(wǎng)格的中心點之間的權(quán)重,將該權(quán)重作為該第一粒子與第一中心網(wǎng)格之間的權(quán)重。
其中,該預(yù)設(shè)算法可以根據(jù)需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該預(yù)設(shè)算法可以為:第一粒子與第一中心網(wǎng)格之間的權(quán)重為第一粒子與第一中心網(wǎng)格之間的距離的倒數(shù)。即,第一粒子與第一中心網(wǎng)格之間的距離越大,第一粒子與第一中心網(wǎng)格之間的權(quán)重越小。
該第一粒子的位置信息,該第一網(wǎng)格的位置信息,以及該第一中心網(wǎng)格的位置信息可以用三維直角坐標(biāo)系xyz中的位置坐標(biāo)表示。本發(fā)明實施例對此不做具體限定。
步驟2013:終端對該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,得到該第一權(quán)重之和。
本步驟中,終端對第一子區(qū)域中每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,將得到的結(jié)果作為第一權(quán)重之和。
本發(fā)明實施例中,終端可以將該第一權(quán)重之和存儲到第一區(qū)域?qū)?yīng)的第四存儲空間中,以便于終端后續(xù)確定第一中心網(wǎng)格的影響力時,可以直接從該第四存儲空間讀取該第一權(quán)重之和,從而提高了粒子映射的效率。
其中,該第四存儲空間可以為寄存器。由于寄存器具有高速讀取和高速寫入的性能,本發(fā)明實施例通過將該第一權(quán)重之和存儲在該寄存器中,提高了終端存儲該第一權(quán)重之和的存儲速率,以及,后續(xù)終端讀取該第一權(quán)重之和的讀取速率。
另外,如果終端為每個區(qū)域?qū)?yīng)分配一個存儲空間,該第四存儲空間還可以為每個子區(qū)域所在的區(qū)域?qū)?yīng)的存儲空間,即,本步驟中,第四存儲空間為第一區(qū)域?qū)?yīng)的sharedmemory。由于sharedmemory也具有高速讀取和高速寫入的性能,因此,本步驟中,終端將第一存儲空間作為第四存儲空間,同樣可提高該第一權(quán)重之和的存儲速率和讀取速率。
步驟2014:終端將該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重與該每個第一粒子的預(yù)設(shè)物理量進(jìn)行乘積,得到該每個第一粒子對該第一中心網(wǎng)格的影響力,并將該每個第一粒子對該第一中心網(wǎng)格的影響力進(jìn)行求和,得到該第一影響力之和。
本步驟中,對于每個第一子區(qū)域中的每個第一粒子,終端獲取該粒子與第一中心網(wǎng)格之間的權(quán)重,并計算該權(quán)重與該第一粒子的預(yù)設(shè)物理量的乘積,將該乘積做為該第一粒子對第一中心網(wǎng)格的影響力。對于每個第一子區(qū)域,終端計算該第一子區(qū)域包括的每個粒子對該第一中心網(wǎng)格的影響力之和,將得到結(jié)果作為第一影響力之和。
具體的,對于每個第一子區(qū)域,終端可以將該第一子區(qū)域中每個粒子與第一中心網(wǎng)格之間的權(quán)重,以及該第一粒子的預(yù)設(shè)物理量通過以下公式一確定第一影響力之和:
公式一:φ=σwiφi
其中,i表示該第一子區(qū)域中的第i個粒子,wi表示第i個粒子與該第一中心網(wǎng)格之間的權(quán)重,φi表示第i個粒子的預(yù)設(shè)物理量,φ表示該第一影響力之和。
本步驟中,終端還可以將該第一影響力之和也存儲在第一區(qū)域?qū)?yīng)的第四存儲空間中,即,終端將該第一影響力之和,以及該第一權(quán)重之和存儲到該第一區(qū)域?qū)?yīng)的第四存儲空間中。從而提高了該第一影響力之和的存儲速率與讀取速率,進(jìn)而提高了粒子映射的效率。
本發(fā)明實施例提供的一種可能的設(shè)計中,對于步驟2012-2014,終端可以每次只對該第一子區(qū)域中預(yù)設(shè)數(shù)量的第一粒子進(jìn)行計算,分多次計算得到步驟2012-2014中的結(jié)果,對應(yīng)的,該步驟2012-2014可以為:終端每次根據(jù)該第一子區(qū)域中預(yù)設(shè)數(shù)量的第一粒子的位置信息和該第一中心網(wǎng)格的位置信息,通過第一線程,計算該預(yù)設(shè)數(shù)量的第一粒子與該第一中心網(wǎng)格之間的權(quán)重,并將該預(yù)設(shè)數(shù)量的第一粒子與該第一中心網(wǎng)格之間的權(quán)重與該第一粒子的預(yù)設(shè)物理量進(jìn)行乘積,得到該預(yù)設(shè)數(shù)量的第一粒子對該第一中心網(wǎng)格的影響力。直到確定出第一子區(qū)域中每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重,以及,第一子區(qū)域中每個第一粒子對該第一中心網(wǎng)格的影響力。終端對該第一子區(qū)域包括的每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,得到該第一權(quán)重之和。終端將該每個第一粒子對該第一中心網(wǎng)格的影響力進(jìn)行求和,得到該第一影響力之和。
其中,該預(yù)設(shè)數(shù)量的第一粒子可以根據(jù)需要設(shè)置并更改,本發(fā)明實施例對此不做具體限定。例如,該第一預(yù)設(shè)數(shù)量的第一粒子可以為該第一子區(qū)域中第三預(yù)設(shè)數(shù)目個網(wǎng)格中包括的第一粒子?;蛘?,按照第一粒子在坐標(biāo)系中的位置坐標(biāo),該第一預(yù)設(shè)數(shù)量的第一粒子為x坐標(biāo)由小到大的前50%的第一粒子。其中,該第三預(yù)設(shè)數(shù)目可以為1、3等小于9的任意正整數(shù)。
本發(fā)明實施例通過分次計算第一子區(qū)域中的每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重,從而使得終端中一個流處理器(steamingprocessor)中同時運(yùn)行的線程塊增多,提高了并行度。
本發(fā)明實施例中,終端確定每個第一子區(qū)域中每個第一粒子對第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和之后,終端還需確定第一粒子分別對于第二區(qū)域的第二中心網(wǎng)格的第四影響力之和以及第四權(quán)重之和,以及對于第三區(qū)域的第三中心網(wǎng)格的第五影響力之和以及第五權(quán)重之和。具體該過程可以為:終端根據(jù)該每個第一粒子的粒子數(shù)據(jù)和該第二子區(qū)域的第二中心網(wǎng)格的位置信息,確定該每個第一粒子對該第二中心網(wǎng)格的第四影響力之和以及第四權(quán)重之和;終端根據(jù)該每個第一粒子的粒子數(shù)據(jù)和該第三子區(qū)域的第三中心網(wǎng)格的位置信息,確定該每個第一粒子對該第三中心網(wǎng)格的第五影響力之和以及第五權(quán)重之和。
終端將該第四影響力之和、第四權(quán)重之和、第五影響力之和、第五權(quán)重之和存儲到第四存儲空間中。從而終端確定第二中心網(wǎng)格的影響力時,可以直接從該第四存儲空間中獲取該第四影響力之和以及第四權(quán)重之和,以及,終端確定第三中心網(wǎng)格的影響力時,可以直接從該第四存儲空間中獲取該第五影響力之和以及第五權(quán)重之和。
其中,終端確定該第四影響力之和、第四權(quán)重之和、第五影響力之和、第五權(quán)重之和的實現(xiàn)方式與上述步驟201中確定第一影響力之和、第一權(quán)重之和實現(xiàn)方式一致,此處不再一一贅述。
步驟202:終端從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取該第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和。
需要說明的是,該第二子區(qū)域為該第一子區(qū)域的前一個子區(qū)域,該第三子區(qū)域為該第一子區(qū)域的后一個子區(qū)域。
例如,如果將該第一區(qū)域表示為aij,則第二子區(qū)域可以表示為ai,j-1,第三子區(qū)域可以表示為ai,j+1。其中,i為m個柱狀體中第i個柱狀體,j為第i個柱狀體的n個區(qū)域中,第j個區(qū)域。
本發(fā)明實施例中,對于柱狀體中每個區(qū)域中的子區(qū)域,終端均計算并存儲該子區(qū)域中的每個粒子對于該子區(qū)域的中心網(wǎng)格的影響力之和以及權(quán)重之和,以及,該子區(qū)域中的每個粒子對于相鄰子區(qū)域的中心網(wǎng)格的影響力之和以及權(quán)重之和。
因此,本步驟之前,終端可以通過以下步驟2021-2022,預(yù)先確定并存儲該第二影響力之和、第二權(quán)重之和、第三影響力之和以及第三權(quán)重之和。
步驟2021:終端讀取該第二子區(qū)域包括的每個第二粒子的粒子數(shù)據(jù),根據(jù)該每個第二粒子的粒子數(shù)據(jù)和該第一中心網(wǎng)格的位置信息,確定該每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,將該第二影響力之和與該第二權(quán)重之和存儲至該第二存儲空間中。
其中,終端從該第二區(qū)域?qū)?yīng)的第五存儲空間中讀取第二子區(qū)域包括的每個第二粒子的粒子數(shù)據(jù)。終端確定第二影響力之和以及第二權(quán)重之和的實現(xiàn)方式同步驟201中確定第一影響力之和以及第一權(quán)重之和的實現(xiàn)方式一致,此處不再一一贅述。
其中,如果終端為每個區(qū)域?qū)?yīng)分配一個存儲空間,該第二區(qū)域?qū)?yīng)的第五存儲空間可以為終端為該第二區(qū)域分配的存儲空間,用于存儲該第二區(qū)域包括的粒子的粒子數(shù)據(jù)。本發(fā)明實施例中,終端可以為該第二區(qū)域分配一個sharememory,將該sharememory作為第五存儲空間。如果終端為第二預(yù)設(shè)數(shù)目個區(qū)域?qū)?yīng)分配一個存儲空間,該第二區(qū)域?qū)?yīng)的第五存儲空間可以為第一存儲空間,即,第一存儲空間與第五存儲空間為同一個存儲空間。
需要說明的是,該第二存儲空間可以為寄存器?;蛘撸绻K端為每個區(qū)域?qū)?yīng)分配一個存儲空間,該第二存儲空間也可以為該第二區(qū)域?qū)?yīng)的第五存儲空間。
步驟2022:終端讀取該第三子區(qū)域包括的每個第三粒子的粒子數(shù)據(jù),根據(jù)該每個第三粒子的粒子數(shù)據(jù)和該第一中心網(wǎng)格的位置信息,確定該每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,將該第三影響力之和與該第三權(quán)重之和存儲至該第三存儲空間中。
其中,終端從該第三區(qū)域?qū)?yīng)的第六存儲空間中讀取第三子區(qū)域包括的每個第三粒子的粒子數(shù)據(jù)。終端確定第三影響力之和以及第三權(quán)重之和的實現(xiàn)方式同步驟201中確定第一影響力之和以及第一權(quán)重之和的實現(xiàn)方式一致,此處不再一一贅述。
其中,如果終端為每個區(qū)域?qū)?yīng)分配一個存儲空間,該第三區(qū)域?qū)?yīng)的第六存儲空間可以為終端為該第三區(qū)域分配的存儲空間,用于存儲該第三區(qū)域包括的粒子的粒子數(shù)據(jù)。本發(fā)明實施例中,終端可以為該第三區(qū)域分配一個sharememory,將該sharememory作為第六存儲空間。如果終端為第二預(yù)設(shè)數(shù)目個區(qū)域?qū)?yīng)分配一個存儲空間,該第三區(qū)域?qū)?yīng)的第六存儲空間可以為第一存儲空間,即,第一存儲空間與第六存儲空間為同一個存儲空間。
需要說明的是,該第三存儲空間可以為寄存器?;蛘撸绻K端為每個區(qū)域?qū)?yīng)分配一個存儲空間,該第三存儲空間也可以為該第三區(qū)域?qū)?yīng)的第六存儲空間。
進(jìn)一步的,終端可以將第一影響力之和、第一權(quán)重之和、第二影響力之和、第二權(quán)重之和、第三影響力之和以及第三權(quán)重之和存儲至同一個寄存器中,即,該第二存儲空間、第三存儲空間以及第四存儲空間均相同,為同一個寄存器?;蛘?,終端也可以為每個區(qū)域分配一個寄存器,將第一影響力之和、第一權(quán)重之和存儲在第一區(qū)域?qū)?yīng)的寄存器中,將第二影響力之和、第二權(quán)重之和存儲在第二區(qū)域?qū)?yīng)的寄存器中,將第三影響力之和、第三權(quán)重之和存儲在第三區(qū)域?qū)?yīng)的寄存器中。
步驟203:終端根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力。
本步驟可以為:終端對該第一影響力之和、該第二影響力之和以及該第三影響力之和進(jìn)行求和,得到第一數(shù)值,并對該第一權(quán)重之和、該第二權(quán)重之和以及該第三權(quán)重之和進(jìn)行求和,得到第二數(shù)值。終端將該第一數(shù)值與該第二數(shù)值之間的比值確定為該第一中心網(wǎng)格的平均影響力。
步驟204:終端根據(jù)該每個第一粒子的位置信息,將該每個第一粒子映射到該第一中心網(wǎng)格中,將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力。
本發(fā)明實施例中,該第一影響力之和、該第二影響力之和以及該第三影響力之和分別為該第一粒子、第二粒子以及第三粒子的預(yù)設(shè)物理量對該第一中心網(wǎng)格的影響力之和。終端根據(jù)每個第一粒子的位置信息,將每個第一粒子的預(yù)設(shè)物理量映射到第一中心網(wǎng)格中,同時,終端根據(jù)每個第一粒子的位置信息,將該第一粒子對應(yīng)的第一子區(qū)域的相鄰子區(qū)域中的粒子,即第二子區(qū)域中的第二粒子以及第三子區(qū)域中的第三粒子,將每個第二粒子以及第三粒子的預(yù)設(shè)物理量映射到第一中心網(wǎng)格中。終端將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力,從而確定出該第一中心網(wǎng)格的影響力。
本發(fā)明實施例中,終端根據(jù)讀取的每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和。然后,終端獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,該第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和。終端根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力;并將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力,從而將第一中心網(wǎng)格周圍的第一粒子、第二粒子、第三粒子的預(yù)設(shè)物理量映射到該第一中心網(wǎng)格中。由于終端可以分別計算每個第一中心網(wǎng)格對應(yīng)的第一影響力之和、第一權(quán)重之和,并直接獲取第二影響力之和、第二權(quán)重之和,第三影響力之和,第三權(quán)重之和,確定出第一中心網(wǎng)格的影響力,從而無需重復(fù)讀取第一粒子、第二粒子以及第三粒子的粒子數(shù)據(jù),節(jié)省了帶寬,提高了粒子映射的效率。
本發(fā)明實施例提供了一種粒子映射裝置,如圖3所示,該裝置包括:
讀取模塊301,用于對于三維空間中的第一區(qū)域的第一子區(qū)域,讀取該第一子區(qū)域包括的每個第一粒子的粒子數(shù)據(jù),并根據(jù)該每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和,任一第一粒子的粒子數(shù)據(jù)包括該任一第一粒子的位置信息和預(yù)設(shè)物理量,該第一區(qū)域為該三維空間中的任一區(qū)域,該第一子區(qū)域為該第一區(qū)域中的任一子區(qū)域,該第一子區(qū)域包括第一預(yù)設(shè)數(shù)目個網(wǎng)格;
獲取模塊302,用于從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,該第二子區(qū)域為該第一子區(qū)域的前一個子區(qū)域,該第三子區(qū)域為該第一子區(qū)域的后一個子區(qū)域;
第一確定模塊303,用于根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力;
映射模塊304,用于根據(jù)該每個第一粒子的位置信息,將該每個第一粒子映射到該第一中心網(wǎng)格中,將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力。
可選的,該讀取模塊301,還用于從該第一區(qū)域?qū)?yīng)的第一存儲空間中讀取該第一區(qū)域包括的每個粒子的粒子數(shù)據(jù);
對于該第一子區(qū)域中的第一中心網(wǎng)格,該讀取模塊301,還用于通過第一線程,根據(jù)該每個第一粒子的位置信息和該第一中心網(wǎng)格的位置信息,計算該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重;對該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重進(jìn)行求和,得到該第一權(quán)重之和;將該每個第一粒子與該第一中心網(wǎng)格之間的權(quán)重與該每個第一粒子的預(yù)設(shè)物理量進(jìn)行乘積,得到該每個第一粒子對該第一中心網(wǎng)格的影響力;將該每個第一粒子對該第一中心網(wǎng)格的影響力進(jìn)行求和,得到該第一影響力之和。
可選的,該裝置還包括:
第一劃分模塊,用于根據(jù)本端設(shè)備包括的每個存儲空間的大小,將該三維空間劃分為多個柱狀體,每個柱狀體包括多個網(wǎng)格;
第二劃分模塊,用于將該每個柱狀體劃分為多個區(qū)域;
第一存儲模塊,用于為該第一區(qū)域分配該第一存儲空間,將該第一區(qū)域包括的粒子的粒子數(shù)據(jù)存儲到該第一存儲空間中。
可選的,該第一存儲模塊,還用于根據(jù)該第一存儲空間的大小,從內(nèi)存空間中讀取該第一區(qū)域包括的粒子的粒子數(shù)據(jù);將讀取的粒子數(shù)據(jù)存儲到該第一存儲空間中。
可選的,該第一存儲空間為顯卡緩存sharedmemory。
可選的,該裝置還包括:
第二存儲模塊,用于將該第一影響力之和,以及該第一權(quán)重之和存儲到該第一區(qū)域?qū)?yīng)的第四存儲空間中。
可選的,該裝置還包括:
第二確定模塊,用于讀取該第二子區(qū)域包括的每個第二粒子的粒子數(shù)據(jù),根據(jù)該每個第二粒子的粒子數(shù)據(jù)和該第一中心網(wǎng)格的位置信息,確定該每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,將該第二影響力之和與該第二權(quán)重之和存儲至該第二存儲空間中;
第三確定模塊,用于讀取該第三子區(qū)域包括的每個第三粒子的粒子數(shù)據(jù),根據(jù)該每個第三粒子的粒子數(shù)據(jù)和該第一中心網(wǎng)格的位置信息,確定該每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和,將該第三影響力之和與該第三權(quán)重之和存儲至該第三存儲空間中。
可選的,該第一確定模塊303,包括:
第一求和單元,用于對該第一影響力之和、該第二影響力之和以及該第三影響力之和進(jìn)行求和,得到第一數(shù)值;
第二求和單元,用于對該第一權(quán)重之和、該第二權(quán)重之和以及該第三權(quán)重之和進(jìn)行求和,得到第二數(shù)值;
確定單元,用于將該第一數(shù)值與該第二數(shù)值之間的比值確定為該第一中心網(wǎng)格的平均影響力。
本發(fā)明實施例中,終端根據(jù)讀取的每個第一粒子的粒子數(shù)據(jù)和該第一子區(qū)域的第一中心網(wǎng)格的位置信息,確定該每個第一粒子對該第一中心網(wǎng)格的第一影響力之和以及第一權(quán)重之和。然后,終端從第二存儲空間中獲取第二子區(qū)域中的每個第二粒子對該第一中心網(wǎng)格的第二影響力之和以及第二權(quán)重之和,以及,從第三存儲空間中獲取第三子區(qū)域中的每個第三粒子對該第一中心網(wǎng)格的第三影響力之和以及第三權(quán)重之和。終端根據(jù)該第一影響力之和、該第一權(quán)重之和、該第二影響力之和、該第二權(quán)重之和、該第三影響力之和以及該第三權(quán)重之和,確定該第一中心網(wǎng)格的平均影響力;并將該第一中心網(wǎng)格的影響力設(shè)置為該平均影響力,從而將第一中心網(wǎng)格周圍的第一粒子、第二粒子、第三粒子的預(yù)設(shè)物理量映射到該第一中心網(wǎng)格中。由于終端可以分別計算每個第一中心網(wǎng)格對應(yīng)的第一影響力之和、第一權(quán)重之和,并直接獲取第二影響力之和、第二權(quán)重之和,第三影響力之和,第三權(quán)重之和,確定出第一中心網(wǎng)格的影響力,從而無需重復(fù)讀取第一粒子、第二粒子以及第三粒子的粒子數(shù)據(jù),節(jié)省了帶寬,提高了粒子映射的效率。
需要說明的是:上述實施例提供的粒子映射裝置在粒子映射時,僅以上述各功能模塊的劃分進(jìn)行舉例說明,實際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實施例提供的粒子映射裝置與粒子映射方法實施例屬于同一構(gòu)思,其具體實現(xiàn)過程詳見方法實施例,這里不再贅述。
參見圖4,其示出了本發(fā)明實施例所涉及的粒子映射的裝置的結(jié)構(gòu)示意圖,該終端可以用于實施上述實施例中提供的粒子映射方法。具體來講:
終端400可以包括rf(radiofrequency,射頻)電路110、包括有一個或一個以上計算機(jī)可讀存儲介質(zhì)的存儲器120、輸入單元130、顯示單元140、傳感器150、音頻電路160、wifi(wirelessfidelity,無線保真)模塊170、包括有一個或者一個以上處理核心的處理器180、以及電源190等部件。本領(lǐng)域技術(shù)人員可以理解,圖4中示出的終端結(jié)構(gòu)并不構(gòu)成對終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:
rf電路110可用于收發(fā)信息或通話過程中,信號的接收和發(fā)送,特別地,將基站的下行信息接收后,交由一個或者一個以上處理器180處理;另外,將涉及上行的數(shù)據(jù)發(fā)送給基站。通常,rf電路110包括但不限于天線、至少一個放大器、調(diào)諧器、一個或多個振蕩器、用戶身份模塊(sim)卡、收發(fā)信機(jī)、耦合器、lna(lownoiseamplifier,低噪聲放大器)、雙工器等。此外,rf電路110還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。所述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于gsm(globalsystemofmobilecommunication,全球移動通訊系統(tǒng))、gprs(generalpacketradioservice,通用分組無線服務(wù))、cdma(codedivisionmultipleaccess,碼分多址)、wcdma(widebandcodedivisionmultipleaccess,寬帶碼分多址)、lte(longtermevolution,長期演進(jìn))、電子郵件、sms(shortmessagingservice,短消息服務(wù))等。
存儲器120可用于存儲軟件程序以及模塊,處理器180通過運(yùn)行存儲在存儲器120的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理。存儲器120可主要包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲數(shù)據(jù)區(qū)可存儲根據(jù)終端400的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲器120可以包括高速隨機(jī)存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他易失性固態(tài)存儲器件。相應(yīng)地,存儲器120還可以包括存儲器控制器,以提供處理器180和輸入單元130對存儲器120的訪問。
輸入單元130可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與用戶設(shè)置以及功能控制有關(guān)的鍵盤、鼠標(biāo)、操作桿、光學(xué)或者軌跡球信號輸入。具體地,輸入單元130可包括觸敏表面131以及其他輸入設(shè)備132。觸敏表面131,也稱為觸摸顯示屏或者觸控板,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸敏表面131上或在觸敏表面131附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動相應(yīng)的連接裝置??蛇x的,觸敏表面131可包括觸摸檢測裝置和觸摸控制器兩個部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號,將信號傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點坐標(biāo),再送給處理器180,并能接收處理器180發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實現(xiàn)觸敏表面131。除了觸敏表面131,輸入單元130還可以包括其他輸入設(shè)備132。具體地,其他輸入設(shè)備132可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。
顯示單元140可用于顯示由用戶輸入的信息或提供給用戶的信息以及終端400的各種圖形用戶接口,這些圖形用戶接口可以由圖形、文本、圖標(biāo)、視頻和其任意組合來構(gòu)成。顯示單元140可包括顯示面板141,可選的,可以采用lcd(liquidcrystaldisplay,液晶顯示器)、oled(organiclight-emittingdiode,有機(jī)發(fā)光二極管)等形式來配置顯示面板141。進(jìn)一步的,觸敏表面131可覆蓋顯示面板141,當(dāng)觸敏表面131檢測到在其上或附近的觸摸操作后,傳送給處理器180以確定觸摸事件的類型,隨后處理器180根據(jù)觸摸事件的類型在顯示面板141上提供相應(yīng)的視覺輸出。雖然在圖4中,觸敏表面131與顯示面板141是作為兩個獨立的部件來實現(xiàn)輸入和輸入功能,但是在某些實施例中,可以將觸敏表面131與顯示面板141集成而實現(xiàn)輸入和輸出功能。
終端400還可包括至少一種傳感器150,比如光傳感器、運(yùn)動傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板141的亮度,接近傳感器可在終端400移動到耳邊時,關(guān)閉顯示面板141和/或背光。作為運(yùn)動傳感器的一種,重力加速度傳感器可檢測各個方向上(一般為三軸)加速度的大小,靜止時可檢測出重力的大小及方向,可用于識別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計姿態(tài)校準(zhǔn))、振動識別相關(guān)功能(比如計步器、敲擊)等;至于終端400還可配置的陀螺儀、氣壓計、濕度計、溫度計、紅外線傳感器等其他傳感器,在此不再贅述。
音頻電路160、揚(yáng)聲器161,傳聲器162可提供用戶與終端400之間的音頻接口。音頻電路160可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號,傳輸?shù)綋P(yáng)聲器161,由揚(yáng)聲器161轉(zhuǎn)換為聲音信號輸出;另一方面,傳聲器162將收集的聲音信號轉(zhuǎn)換為電信號,由音頻電路160接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器180處理后,經(jīng)rf電路110以發(fā)送給比如另一終端,或者將音頻數(shù)據(jù)輸出至存儲器120以便進(jìn)一步處理。音頻電路160還可能包括耳塞插孔,以提供外設(shè)耳機(jī)與終端400的通信。
wifi屬于短權(quán)重?zé)o線傳輸技術(shù),終端400通過wifi模塊170可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖4示出了wifi模塊170,但是可以理解的是,其并不屬于終端400的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。
處理器180是終端400的控制中心,利用各種接口和線路連接整個手機(jī)的各個部分,通過運(yùn)行或執(zhí)行存儲在存儲器120內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲在存儲器120內(nèi)的數(shù)據(jù),執(zhí)行終端400的各種功能和處理數(shù)據(jù),從而對手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器180可包括一個或多個處理核心;可選的,處理器180可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器180中。
終端400還包括給各個部件供電的電源190(比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器180邏輯相連,從而通過電源管理系統(tǒng)實現(xiàn)管理充電、放電、以及功耗管理等功能。電源190還可以包括一個或一個以上的直流或交流電源、再充電系統(tǒng)、電源故障檢測電路、電源轉(zhuǎn)換器或者逆變器、電源狀態(tài)指示器等任意組件。
盡管未示出,終端400還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。具體在本實施例中,終端400的顯示單元是觸摸屏顯示器,終端400還包括有存儲器,以及一個或者一個以上的程序,其中一個或者一個以上程序存儲于存儲器中,且經(jīng)配置以由一個或者一個以上處理器執(zhí)行。所述一個或者一個以上程序包含用于執(zhí)行確定粒子映射的指令。
本發(fā)明實施例還提供了一種計算機(jī)可讀存儲介質(zhì),該計算機(jī)可讀存儲介質(zhì)可以是上述實施例中的存儲器中所包含的計算機(jī)可讀存儲介質(zhì);也可以是單獨存在,未裝配入終端中的計算機(jī)可讀存儲介質(zhì)。該計算機(jī)可讀存儲介質(zhì)存儲有一個或者一個以上程序,該一個或者一個以上程序被一個或者一個以上的處理器用來執(zhí)行粒子映射方法。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。