大規(guī)模結(jié)構(gòu)有限元模型的多位移邊值約束工況處理方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明適用于大型結(jié)構(gòu)有限元數(shù)值計(jì)算領(lǐng)域,屬于大規(guī)模高效率建模中的數(shù)據(jù)結(jié) 構(gòu)算法技術(shù)。
【背景技術(shù)】
[0002] 工程結(jié)構(gòu)設(shè)計(jì)與大規(guī)模有限元離散化數(shù)值分析相結(jié)合是現(xiàn)代工程精細(xì)化設(shè)計(jì)的 顯著技術(shù)特征,是實(shí)現(xiàn)高精度高效率工程設(shè)計(jì)的重要技術(shù)途徑。大型工程結(jié)構(gòu)分析中不可 避免涉及到多載荷與多位移邊值的組合設(shè)計(jì)分析情況,按大規(guī)模結(jié)構(gòu)離散化模型數(shù)值分析 原理,多載荷工況僅需要在求解方程的右端項(xiàng)各列放置相應(yīng)于該工況的載荷數(shù)值即可;但 對(duì)于位移邊值工況,則要按照稀疏矩陣的數(shù)據(jù)管理結(jié)構(gòu)以及線性方程組數(shù)值計(jì)算原理,對(duì) 不同工況有效合理地組織處理與這些位移邊值節(jié)點(diǎn)相應(yīng)的矩陣元素及其位移數(shù)值,是大規(guī) 模工程結(jié)構(gòu)有限元數(shù)值分析算法中的關(guān)鍵基礎(chǔ)技術(shù)。
[0003] 在算法原理上,對(duì)于某個(gè)位移邊值條件下的結(jié)構(gòu)靜力分析方程為:
[0004]
(0.1)
[0005] 式中,剛度矩陣中號(hào)部分與位移約束邊界相關(guān)的剛度矩陣,<表示約束位移向 量,/丨表示約束位移對(duì)應(yīng)的未知支反力。
[0006] 求解自由節(jié)點(diǎn)位移U1的理論方程為:
[0007]
(0.2)
[0008」大規(guī)模結(jié)構(gòu)有限元離散化模型求解上式的具體問題在于:
[0009] 1、剛度矩陣中的各元素?cái)?shù)據(jù)均需一維全稀疏存儲(chǔ),以節(jié)省計(jì)算機(jī)內(nèi)存空間。這需 要設(shè)計(jì)相應(yīng)的稀疏數(shù)據(jù)結(jié)構(gòu)算法,建立節(jié)點(diǎn)及其自由度與剛陣各元素的具體映射關(guān)系;
[0010] 2、對(duì)于多位移邊值工況,對(duì)應(yīng)m及的剛度矩陣元素及其節(jié)點(diǎn)和自由度信息是動(dòng) 態(tài)變化的,需要在求解過程中高效動(dòng)態(tài)地組織對(duì)相應(yīng)于各位移邊值的剛度矩陣元素?cái)?shù)據(jù)以 及節(jié)點(diǎn)位移數(shù)值實(shí)施處理。
[0011]實(shí)際大型工程結(jié)構(gòu)有限元算法中,處理位移邊值的常用方法有三種,即:置大數(shù) 法、置一法和刪行刪列法。置大數(shù)和置一的處理方法僅對(duì)式(1.1)中的剛度矩陣元素進(jìn)行處 理,以達(dá)到消除剛度矩陣奇異性的目的。在一維全稀疏存儲(chǔ)條件下,通過數(shù)據(jù)結(jié)構(gòu)的映射查 找與已知位移邊值節(jié)點(diǎn)及其自由度相應(yīng)的矩陣元素并不是難事,但這種作法實(shí)際上改變了 矩陣本身的數(shù)值特性,不僅可導(dǎo)致數(shù)值解精度下降,且不能得到正確的特征值及特征向量 解。
[0012]刪行刪列方法與置一法同為精確求解方法,但其數(shù)學(xué)操作原理不同,需將剛度矩 陣中與已知位移邊值節(jié)點(diǎn)及其自由度相應(yīng)的那些行和列元素移除;同時(shí)也需移除右端項(xiàng)中 的相應(yīng)元素,并對(duì)所保留的元素用已知位移邊值的數(shù)值進(jìn)行適當(dāng)處理。如前所述,對(duì)于多位 移邊值情形,每種工況的上述操作需要處理剛度矩陣及其右端項(xiàng)列陣中的不同元素,這將 導(dǎo)致按位移工況的動(dòng)態(tài)操作。對(duì)于大規(guī)模結(jié)構(gòu)有限元模型,這種動(dòng)態(tài)的操作需要高效率的 算法技術(shù)予以恰當(dāng)處理。
[0013]現(xiàn)代大型商業(yè)有限元分析軟件,如nastran、abaqus等,普遍采用刪行刪列的位移 邊值處理方法,在所述大型商業(yè)有限元分析軟件的說明書中,包括Lee,John M.MSC-Nastran Linear Static Analysis User's Guide .MSC Software,1997、Hibbitt, Karlsson,and Sorensen.ABAQUS/standard user's Manual.Vol.1.Hibbitt,Karlsson& Sorensen, 2001和Guide ,ANSYS Fluent User ' S .Ansys · Inc · 2011,它們的共同做法是開辟 兩個(gè)大型數(shù)組,一個(gè)用來存儲(chǔ)完整的結(jié)構(gòu)總剛矩陣,即式(1.1)中剛度矩陣[K]的一維全稀 疏存儲(chǔ);另一個(gè)用作存儲(chǔ)經(jīng)過刪行刪列后的剛度矩陣,即式(1.1)的子矩陣塊Κη的一維全稀 疏存儲(chǔ),該剛陣數(shù)組用于具體每一位移邊值工況的結(jié)構(gòu)模型求解。針對(duì)不同位移邊值工況, 由[Κ]的一維全稀疏存儲(chǔ)數(shù)組生成子矩陣塊Κη的一維全稀疏存儲(chǔ)數(shù)組。這種數(shù)組存儲(chǔ)方法 以及子矩陣塊Κη的生成算法勢(shì)必造成大量的內(nèi)存空間浪費(fèi),且其生成算法無疑需要大量對(duì) 計(jì)算機(jī)內(nèi)存的移動(dòng)操作,以完成刪行刪列后剛度矩陣Κη的全稀疏組裝。
【發(fā)明內(nèi)容】
[0014] 為克服現(xiàn)有技術(shù)中存在的占用內(nèi)存過大、位移邊界處理時(shí)總剛矩陣組織效率低下 的不足,本發(fā)明提出了一種大規(guī)模結(jié)構(gòu)有限元模型的多位移邊值約束工況處理方法。
[0015] 本發(fā)明具體過程是:
[0016] 步驟1,多位移工況的節(jié)點(diǎn)重排序;所述多位移工況的節(jié)點(diǎn)重排序是對(duì)第1類的位 移約束節(jié)點(diǎn)、第2類的與所有位移邊值約束相關(guān)聯(lián)的自由節(jié)點(diǎn)和第3類的完全自由類節(jié)點(diǎn)的 重排序;重排序時(shí),將第三類完全自由節(jié)點(diǎn)安排在結(jié)構(gòu)總剛矩陣的前位;將第二類相關(guān)聯(lián)節(jié) 點(diǎn)安排在結(jié)構(gòu)總剛矩陣的中位;將位移邊值約束節(jié)點(diǎn)安排在結(jié)構(gòu)總剛矩陣的末位;重排序 后的位移約束節(jié)點(diǎn)內(nèi)部原有的相對(duì)順序、與所有位移邊值約束相關(guān)聯(lián)的自由節(jié)點(diǎn)內(nèi)部原有 的相對(duì)順序和完全自由類節(jié)點(diǎn)內(nèi)部原有的相對(duì)順序均保持不變;
[0017] 具體排序中,根據(jù)網(wǎng)格節(jié)點(diǎn)編號(hào)的分布確定自然序;通過對(duì)自然序進(jìn)行節(jié)點(diǎn)重排 序,得到該節(jié)點(diǎn)的使用序;
[0018] 步驟2,多位移邊值總剛矩陣模擬投放;所述的總剛矩陣采用全稀疏按行壓縮存儲(chǔ) 格式,縮寫為CSR,在有限元模型總剛矩陣形成之前需要建立其數(shù)據(jù)結(jié)構(gòu),得到總剛矩陣線 性表,包括CSR格式中的行索引數(shù)組及列索引數(shù)組;
[0019] 為獲得所述多位移邊值總剛矩陣的線性表,通過兩個(gè)步驟完成:第一步,形成結(jié)構(gòu) 模型節(jié)點(diǎn)單鏈表,該節(jié)點(diǎn)單鏈表描述了結(jié)構(gòu)模型離散化網(wǎng)格中的節(jié)點(diǎn)間關(guān)聯(lián)關(guān)系;第二步, 形成多位移邊值總剛矩陣線性表,此過程是在單鏈表的基礎(chǔ)上按自由度級(jí)展開,并引入多 位移邊值條件的標(biāo)記;
[0020] 所述的總剛矩陣節(jié)點(diǎn)單鏈表包括三個(gè)整型數(shù)組:列號(hào)數(shù)組IR0W、行頭數(shù)組IFCR及 位置數(shù)組LNXT;
[0021] 通過對(duì)結(jié)構(gòu)模型所有單元的遍歷查詢得到總剛矩陣單鏈表,獲得到單元節(jié)點(diǎn)間的 關(guān)聯(lián)關(guān)系,并在單鏈表中記錄每一節(jié)點(diǎn)在總剛矩陣中的后繼關(guān)聯(lián)節(jié)點(diǎn);所述總剛矩陣單鏈 表的生成算法流程如下:首先對(duì)單鏈表各數(shù)組初始化;隨后依次按單元種類、單元數(shù)以及單 元節(jié)點(diǎn)循環(huán),對(duì)有限元模型的單元節(jié)點(diǎn)關(guān)聯(lián)關(guān)系進(jìn)行遍歷查詢,并判斷節(jié)點(diǎn)間是否存在單 元連接關(guān)系;當(dāng)節(jié)點(diǎn)之間存在單元關(guān)聯(lián)關(guān)系時(shí),需將節(jié)點(diǎn)自然序通過數(shù)組IOVE轉(zhuǎn)換為使用 序,并將每一節(jié)點(diǎn)相關(guān)聯(lián)的節(jié)點(diǎn)使用序記錄到單鏈表中,
[0022] 步驟3,生成多位移邊值總剛矩陣;所述生成過程是對(duì)單元遍歷,并將各單元的剛 度矩陣元素投放到多位移工況總剛矩陣數(shù)值部分對(duì)應(yīng)位置;
[0023] 多位移工況總剛矩陣及約束剛度矩陣的投放過程包含兩個(gè)大循環(huán)和兩個(gè)小循環(huán); 大循環(huán)為單元種類循環(huán)和單元循環(huán),即實(shí)現(xiàn)了對(duì)所有單元的遍歷,并形成每一單元總體坐 標(biāo)系下的剛度矩陣足;小循環(huán)即單元節(jié)點(diǎn)循環(huán)和位移工況循環(huán),在單元節(jié)點(diǎn)循環(huán)中,由于單 元節(jié)點(diǎn)使用的是自然序,因而需將節(jié)點(diǎn)自然序通過I0VE轉(zhuǎn)換成總剛矩陣中的使用序,然后 判斷當(dāng)前單元是否包含約束節(jié)點(diǎn)或約束相關(guān)節(jié)點(diǎn),當(dāng)所有節(jié)點(diǎn)為完全自由節(jié)點(diǎn)時(shí)單元?jiǎng)偠?矩陣將投放到完全自由節(jié)點(diǎn)對(duì)應(yīng)的總剛矩陣GSM中,投放地址通過節(jié)點(diǎn)的使用序從完全自 由節(jié)點(diǎn)自由度序列表1D0F中獲取;當(dāng)單元中存在約束節(jié)點(diǎn)或約束相關(guān)節(jié)點(diǎn)時(shí),需進(jìn)行多位 移邊值循環(huán),并將對(duì)應(yīng)的單元?jiǎng)傟囋赝斗诺郊s束節(jié)點(diǎn)相關(guān)的多工況總剛矩陣GCSM lbc;,ibC =1,…,NBC及約束矩陣⑶SMibc,ibc = 1,…,NBC中;所述投放的投放地址通過節(jié)點(diǎn)使用序從 約束節(jié)點(diǎn)及約束相關(guān)自由度序列表1D0FCibc,ibc = 1,…,NBC中獲?。?br>[0024]多位移工況總剛度矩陣在系統(tǒng)總順序表中的數(shù)據(jù)存儲(chǔ)為線性表,由三部分組成, 即完全自由節(jié)點(diǎn)對(duì)應(yīng)的總剛矩陣、約束節(jié)點(diǎn)及相關(guān)節(jié)點(diǎn)的未約束自由度的總剛矩陣和約束 節(jié)點(diǎn)及相關(guān)節(jié)點(diǎn)的約束自由度的總剛矩陣;
[0025]步驟4,多位移邊值總剛矩陣的動(dòng)態(tài)拼裝;通過上述各節(jié)的運(yùn)算操作,形成多位移 邊值工況分段管理的全部數(shù)據(jù),其中包括多位移工況的自由度序列表、總剛矩陣和約束剛 度矩陣;所述總剛矩陣和約束剛度矩陣中均包括線性表及數(shù)值部分;所述總剛矩陣都采用 多位移邊值一維分段存儲(chǔ)管理模式,即完全自由節(jié)點(diǎn)對(duì)應(yīng)部分存儲(chǔ)一份,約束節(jié)點(diǎn)和約束 相關(guān)節(jié)點(diǎn)對(duì)應(yīng)部分每一位移邊值各自存儲(chǔ);為了適應(yīng)這種動(dòng)態(tài)拼裝,需要在自由節(jié)點(diǎn)的相 關(guān)數(shù)據(jù)后預(yù)留足夠的內(nèi)存數(shù)組空間;
[0026] 為了獲得第ibc位移工況的自由度序列表,拼裝方式為ID0F-ID0FCibc;將ID0FCibc 對(duì)應(yīng)的數(shù)據(jù)拷貝到ID0F后面預(yù)留的內(nèi)存空間,然后訪問一維順序表中ID0F起始空間數(shù)據(jù)即 能夠?qū)崿F(xiàn)對(duì)第ibc位移工況自由度序列表的調(diào)用;同理,總剛矩陣的拼裝過程也相同,其拼 裝過程包括三部分,即總剛矩陣線性表的行索引IRN-ICRN ibc、列索引ICN-ICCNibc和數(shù)值部 分 GSM-GCSMib。。
[0027] 所述步驟1中在有限元程序執(zhí)行中,有限元模型的處理網(wǎng)格節(jié)點(diǎn)涉及三類基本編 號(hào),包括、有限元離散模型的原始節(jié)點(diǎn)編號(hào)、有限元模型中原始節(jié)點(diǎn)編號(hào)的自然序號(hào)和總剛 矩陣中的節(jié)點(diǎn)排列順序;所述的有限元離散模型的原始節(jié)點(diǎn)編號(hào)存儲(chǔ)于一維節(jié)點(diǎn)數(shù)組IP 中,這僅是用戶識(shí)別的標(biāo)示碼,并不直接在數(shù)據(jù)結(jié)構(gòu)管理算法中使用;所述的有限元模型中 原始節(jié)點(diǎn)編號(hào)的自然序號(hào),即原始節(jié)點(diǎn)編號(hào)的IP數(shù)組的數(shù)組序,又稱為自然序;所述的總剛 矩陣中的節(jié)點(diǎn)排列順序又稱為使用序。
[0028] 所述步驟1中所述總剛矩陣節(jié)點(diǎn)排序規(guī)則為:結(jié)構(gòu)總剛矩陣的行列順序按節(jié)點(diǎn)的 自然順序排列,將第三類完全自由節(jié)點(diǎn)安排在結(jié)構(gòu)總剛矩陣的前位;將第二類相關(guān)聯(lián)節(jié)點(diǎn) 安排在結(jié)構(gòu)總剛矩陣的中位;將位移邊值約束節(jié)點(diǎn)安排在結(jié)構(gòu)總剛矩陣的末位。
[0029] 所述步驟2中生成總剛矩陣節(jié)點(diǎn)單鏈表具體過程是:
[0030] 第一步,取IPG行首元素 L=ICFR(IPG),根據(jù)L進(jìn)行判斷:當(dāng)L = 0時(shí),創(chuàng)建單鏈表行 頭,依次執(zhí)行LN=LF,ICFR(IPG) = LN,LF = LNXT(LN),LNXT(LN) = 0, IROW(LN) = JPG;當(dāng)L不 為〇時(shí),執(zhí)行第二步;
[0031] 第二步,依次執(zhí)行LA = 0和LS = IR0W(L),并根據(jù)JPG和LS的相對(duì)大小判斷:當(dāng)JPG〈 LS時(shí),執(zhí)行第三步;當(dāng)JPG〈LS不成立時(shí),執(zhí)行第四步;
[0032]第三步,執(zhí)行LN=LF,并根據(jù)LA是否為0判斷:當(dāng)LA = 0時(shí),新節(jié)點(diǎn)插入單鏈表頭,然 后依次執(zhí)行 ICFR(IPG)=LN,LF = LNXT(LN),LNXT(LN)=L,IROW(LN)=JPG,跳出圖中循環(huán); 當(dāng) LA = 0 不成立時(shí),新節(jié)點(diǎn)插入單鏈表中,LNXT(LA) = LN,LF = LNXT(LN),LNXT(LN) = L,IROW (LN)=JPG,跳出圖中循環(huán);
[0033]第四步,根據(jù)JPG和LS是否相等判斷:當(dāng)JPG = LS不成立時(shí),跳出圖中循環(huán);當(dāng)JPG = LS成立時(shí),執(zhí)行LA = L和L = LNXT(L),執(zhí)行第五步;
[0034] 第五步,根據(jù)L是否為0判斷:當(dāng)L = 0不成立時(shí),返回第二步的LS=IR0W(L);當(dāng)L = 0 時(shí),新節(jié)點(diǎn)插入單鏈表尾,依次執(zhí)行 LN=LF,LNXT(LA)=LN,LF = LNXT(LN),IROW(LN)=JPG, LNXT (LN) = L,然后跳出圖中循環(huán);
[0035]所述1^、1^、1^、1^、1^分別為不同節(jié)點(diǎn)序的臨時(shí)變量;
[0036]至此,得到總剛矩陣節(jié)點(diǎn)單鏈表。
[0037] 所述步驟2中生成多位移邊值總剛矩陣線性表的具體過程是;
[0038] 生成多位移邊值總剛矩陣線性表,需要:一、生成多位移工況自由度序列表;二、通 過多位移工況自由度序列表與節(jié)點(diǎn)單鏈表結(jié)合生成多位移邊值總剛矩陣線性表;
[0039] 一、生成多位移工況自由度序列表:
[0040]生成多位移邊值自由度序列表;所述的多位移邊值自由度序列表由完全自由節(jié)點(diǎn) 的自由度序列表和約束相關(guān)節(jié)點(diǎn)與約束節(jié)點(diǎn)的自由度序列表組成;所述完全自由節(jié)點(diǎn)的自 由度序列表中各位移工況生成一份,約束相關(guān)節(jié)點(diǎn)與約束節(jié)點(diǎn)的自由度序列表中按各位移 工況不同分別生成;
[0041 ]在所述多位移邊值自由度序列表中,用正整數(shù)標(biāo)識(shí)自由的節(jié)點(diǎn)自由度序號(hào),用負(fù) 整數(shù)標(biāo)識(shí)約束的節(jié)點(diǎn)自由度序號(hào),兩類自由度在序列表中是按絕對(duì)值從小到大排列;根據(jù) 總剛矩陣節(jié)點(diǎn)排序規(guī)則,完全自由節(jié)點(diǎn)和約束相關(guān)節(jié)點(diǎn)在各位移工況中都不存在約束自由 度,這些節(jié)點(diǎn)在自由度序列表中的元素為從1連續(xù)增大的整數(shù),從而確定了單元?jiǎng)傟囋卦?一維總剛矩陣中的位置;約束節(jié)點(diǎn)存在約束的自由度,在自由度序列表中,未約束自由度對(duì) 應(yīng)元素為繼前兩類節(jié)點(diǎn)自由度序列表最大值依次增加的正整數(shù),約束自由度對(duì)應(yīng)元素為 從-1開始依次連續(xù)減小的負(fù)整數(shù);
[0042] 二、通過多位移工況自由度序列表與節(jié)點(diǎn)單鏈表結(jié)合生成多位移邊值總剛矩陣線 性表;包括多位移邊值總剛矩陣線性表的行索引和多位移邊值總剛矩陣線性表的列索引;
[0043] I生成多位移邊值總剛矩陣線性表的行索引;具體過程如下:首先初始化變量,IL = 0、NQF = 0、NBEG=1;其次位移工況循環(huán),當(dāng)位移工況更新后首先進(jìn)行變量賦值,賦值等式 為MR= 1、NR= 1、IL1 = 1、ICL= 1,并進(jìn)行拼裝形成當(dāng)前工況的自由度序列表1D0Fibc,拼裝的 方法是將ibc工況的約束相關(guān)節(jié)點(diǎn)及約束節(jié)點(diǎn)對(duì)應(yīng)自由度序列表拷貝到ID0F后的內(nèi)存空間 中;最后節(jié)點(diǎn)循環(huán)生成當(dāng)前位移工況ibc的總剛矩陣線性表的行索引,包括當(dāng)該位移工況為 第一個(gè)位移工況時(shí)需要生成完全自由節(jié)點(diǎn)的行索引IRN和生成各位移工況的約束相關(guān)節(jié)點(diǎn) 及約束節(jié)點(diǎn)的總剛矩陣線性表行索引;在節(jié)點(diǎn)循環(huán)完成后,需要對(duì)線性表行索引的最后一 行進(jìn)行賦值,即 ICRNibc(MR+l-NQF) = IL1,IDRNibc(NR+l) = ICL;
[0044] Π 生成多位移總剛矩陣列索引,其過程如下:首先初始化變量,IL = 0、NBEG=1;其 次位移工況循環(huán)ibc = l,···,(:,當(dāng)位移工況更新后首先進(jìn)行變量賦值,賦值等式為IL1 = 1、IDL= 1,并進(jìn)行拼裝形成當(dāng)前工況的自由度序列表1D0Fibc,拼裝的方法是ID0F-ID0FCibc, 即將ibc工況的約束相關(guān)節(jié)點(diǎn)及約束節(jié)點(diǎn)對(duì)應(yīng)自由度序列表拷貝到ID0F后的內(nèi)存空間中; 最后節(jié)點(diǎn)循環(huán)生成當(dāng)前位移工況ibc的總剛矩陣線性表的列索引,在此過程中又分為兩種 情況,一種當(dāng)該位移工況為第一個(gè)位移工況時(shí)需要生成完全自由節(jié)點(diǎn)的列索引ICN,所述各 位移工況的約束相關(guān)節(jié)點(diǎn)及約束節(jié)點(diǎn)的總剛矩陣線性表列索引包括ICCN ib。和IDCNibc;
[0045] 所述IL是線性表的非零元序號(hào);NQF是當(dāng)前位移工況約束節(jié)點(diǎn)及約束相關(guān)節(jié)點(diǎn)的 未約束自由度總和;NBEG是當(dāng)前位移工況號(hào);MR是當(dāng)列索引中當(dāng)前行的最大列號(hào);IL1是IL 的臨時(shí)整數(shù)變量;ICL、IDL均為約束自由度線性表的元素序號(hào);NR是列索引中當(dāng)前約束自由 度的行號(hào);NBC為位移工況數(shù);ibc是位移工況號(hào)的臨時(shí)變量;ID0F ib。是第ibc位移工況的自 由度序列表;IDCNib。是第ibc位移工況的約束自由度列索引;ICCN ib。是第ibc位移工況的約 束節(jié)點(diǎn)及約束相關(guān)節(jié)點(diǎn)未約束自由度的列索引;ICN是完全自由節(jié)點(diǎn)的列索引;ICRN ibc是第 ibc位移工況的約束節(jié)點(diǎn)及約束相關(guān)節(jié)點(diǎn)未約束自由度的行索引;IDRNib。是第ibc位移工況 的約束節(jié)點(diǎn)及約束相關(guān)節(jié)點(diǎn)約束自由度的行索引;IRN是完全自由節(jié)點(diǎn)的行索引。
[0046] 所述步驟1中多位移工況的節(jié)點(diǎn)重排序的具體過程如下;
[0047] 第一步,初始化IEV0( I ) = Ι,Ι = 1,···,Ν;將模型的節(jié)點(diǎn)自然序一一對(duì)應(yīng)的填入 IEV0數(shù)組;所述的I為當(dāng)前節(jié)點(diǎn)自然序,Ν為網(wǎng)格節(jié)點(diǎn)總數(shù);數(shù)組定義為節(jié)點(diǎn)使用序到自然序 的映射數(shù)組,即該數(shù)組的自然序即為節(jié)點(diǎn)在總剛矩陣中的使用序,數(shù)組長(zhǎng)度即為總節(jié)點(diǎn)數(shù);
[0048] 第二步,標(biāo)記約束點(diǎn)集;所述標(biāo)記約束點(diǎn)集即在有限元節(jié)點(diǎn)編號(hào)數(shù)組IP中查找所 有位移工況被約束的節(jié)點(diǎn),并在IP數(shù)組中將其標(biāo)記為負(fù)數(shù),為下一步排序查詢作準(zhǔn)備;
[0049]第三