資源描述:
《基于哈希函數(shù)的有限元?jiǎng)偠染仃嚱M裝及儲(chǔ)存數(shù)據(jù)結(jié)構(gòu)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、基于哈希函數(shù)的有限元?jiǎng)偠染仃嚱M裝及儲(chǔ)存數(shù)據(jù)結(jié)構(gòu)摘要:在有限元程序中準(zhǔn)確快速的定位單元?jiǎng)偠染仃囍忻恳粋€(gè)元素在總剛矩陣中的位置對(duì)現(xiàn)代有限元程序運(yùn)行效率的高低起著關(guān)鍵作用。本文主要研究有限元方法中基于稀疏結(jié)構(gòu)的剛度矩陣組裝問題。研究表明采用哈希函數(shù)對(duì)剛度矩陣組裝比不采用該方法更能有效的組裝剛度矩陣,所用的時(shí)間是不采用哈希方法所用時(shí)間的四分之一到三分之一。關(guān)鍵詞:有限元?jiǎng)偠染仃嚱M裝稀疏矩陣哈希函數(shù)中圖分類號(hào):O174文獻(xiàn)標(biāo)識(shí)碼:A1引言11由于有限元方法有著廣泛的工程應(yīng)用,因此對(duì)有限元方法的優(yōu)化在過去幾十年有著深入的研究。在有限元分析中,組裝單元?jiǎng)偠染仃嚭途€性方
2、程組求解在整個(gè)分析過程中同等重要。因此對(duì)有限元方法的改進(jìn)也主要集中在這兩個(gè)方面,即線性方程組解法的研究和剛度矩陣的組裝。線性方程組的求解涉及很多領(lǐng)域,其解法也日臻完善。然而剛度矩陣組裝為有限元分析特有的過程,與線性方程組求解相比,其研究相對(duì)較少。因此,通過改進(jìn)剛度矩陣組裝方法來提高有限元程序執(zhí)行效率,有很大的研究空間。本文主要研究剛度矩陣的組裝,并給出基于哈希函數(shù)的剛度矩陣組裝方法。由單元?jiǎng)偠染仃嚱M裝所形成的總剛矩陣是對(duì)稱稀疏矩陣。[[[1]I.Z.Reguly;M.B.Giles;FiniteElementAlgorithmsandDateStruct
3、ureonGraphicalProcessingUnits[J].InternationalJournalofParallelProgramming,Springer,2013.]]因此利用總剛矩陣的稀疏性和對(duì)稱性對(duì)剛度矩陣的組裝和存儲(chǔ)方案進(jìn)行優(yōu)化。目前組裝單元?jiǎng)偠染仃囍饕匆韵氯齻€(gè)步驟實(shí)施。第一,選擇稀疏矩陣存儲(chǔ)方案并建立稀疏矩陣結(jié)構(gòu);第二,根據(jù)查詢單元?jiǎng)偠染仃囍忻總€(gè)元素不同的指標(biāo)來定位該元素在總剛矩陣的位置;第三,循環(huán)遍歷每個(gè)單元,在每個(gè)單元矩陣中,把具有與總剛矩陣相同行列指標(biāo)的元素加到總剛矩陣對(duì)應(yīng)行列指標(biāo)的位置,完成剛度矩陣的組裝。盡管剛度矩陣的組
4、裝過程不算復(fù)雜,但是必須花費(fèi)大量的時(shí)間去查找單元?jiǎng)偠染仃囍械拿總€(gè)元素在總剛矩陣中的對(duì)應(yīng)位置,很大程度上影響有限元程序執(zhí)行效率。提高查詢效率可以采取提高計(jì)算機(jī)硬件性能的辦法,近期有很多學(xué)者采用多核并行計(jì)算的方法來提高查詢和運(yùn)算效率。[[[2]Bolz,J.,Farmer,I.,Grinspun,E.,Schroder,P;SparsematrixsolversonGPU:Conjugategradientsandmultigrid.[J]ACMTransacationson11Graphics,2003.],[[3]Komatitsch,D.,Micha,
5、D.,Erlebacher,G.;Portingahigh-orderfinite-elementearthquakemodelingapplicationtoNVIDAgraphicscarsusingCUDA.[J]JournalofParallelandDistributedComputing.2009],[[4]Komastisch,D.,Goddeke,D.,Erlebacher,G.,Michea,D.;Modelingthepropagationofelasticwavesusingspectralelementsonclusterof19
6、2GPUs.[J]ComputerScienceResearchandDevelopment,2010],[[5]Flaig,C.,Arbenz,P.;Ascalablememoryefficientmultigridsolverformicro-finiteelementanalysesbasedonCTimages.[J]ParallelComputing.2011]]但在這些論文中并沒有涉及對(duì)剛度矩陣組裝的稀疏方法的改進(jìn),它們所采用的剛度矩陣組裝方法仍然是遍歷行列指標(biāo)查找的傳統(tǒng)方法。再者,計(jì)算機(jī)硬件性能也不可能無限度的提高。因此,本文采用建立哈希表
7、的方法查找單元?jiǎng)偠染仃囋夭⒋_定其在總剛矩陣中的位置。通過算例驗(yàn)證,采用建立哈希表的方法定位單元?jiǎng)偠染仃囋夭⒔M裝單元?jiǎng)偠染仃囁ㄙM(fèi)的時(shí)間是采用循環(huán)遍歷查找方法所花費(fèi)時(shí)間的四分之一到三分之一。顯著的提高了剛度矩陣的組裝效率。2稀疏矩陣存儲(chǔ)數(shù)據(jù)結(jié)構(gòu)下的數(shù)據(jù)查詢及單元?jiǎng)偠染仃嚱M裝11在有限元分析過程中,一旦我們將結(jié)構(gòu)離散化處理之后,即對(duì)單元和節(jié)點(diǎn)進(jìn)行編號(hào)后,就確定結(jié)構(gòu)的總剛矩陣結(jié)構(gòu)。首先,我們選擇恰當(dāng)?shù)南∈杈仃噧?chǔ)存方案建立稀疏矩陣儲(chǔ)存結(jié)構(gòu),然后根據(jù)所建立的稀疏矩陣存儲(chǔ)結(jié)構(gòu)對(duì)單元?jiǎng)偠染仃囍械脑剡M(jìn)行查詢和計(jì)算,最后完成總體剛度矩陣的組裝。常用的稀疏矩陣存儲(chǔ)結(jié)構(gòu)
8、有坐標(biāo)型方案(Coordinate,COO)、按行壓縮型方案(Compresse