999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

有限元方法計算格式的向量化

2022-10-20 05:48:52何朝葵
高師理科學刊 2022年9期
關鍵詞:程序有限元方法

何朝葵

有限元方法計算格式的向量化

何朝葵

(河海大學 理學院,江蘇 南京 211100)

針對初學者反映有限元方法難以編制程序的問題,基于Python軟件的向量運算優勢,引入形函數向量和形函數導數向量,從而使有限元方法的計算格式向量化.向量化后的計算格式簡單易懂,易于編寫程序,也便于根據精度要求和邊界條件的變換進行調整.

有限元方法;高斯積分;向量化;程序

有限元方法是一種非常流行的數值計算方法,廣泛應用于結構力學、流體力學和熱學等眾多領域.掌握有限元方法已成為很多工程設計從業人員的一個基本要求.有限元方法由于其具有理論性強、基礎要求高、實踐應用性特別強的特點,給有限元方法課程教學的內容安排、教學方案設計帶來了很大的挑戰,學生普遍反映學習的難度大,為此,眾多學者對有限元方法課程如何選擇教材,如何安排教學內容,采用何種有效教學手段進行了深入的探討[1-8].有限元方法課程一個關鍵的難點在于有限元方法的計算格式比較繁雜,導致程序的編寫比較困難,而學生判斷“懂了”和“沒懂”的關鍵指標就是程序編制是否成功,一旦程序調試成功,他們才認為掌握了有限元這種方法.在有限元方法課程教學過程中,教師不妨把教會學生編制有限元方法程序(一次插值和二次插值)作為首要任務,再思索如何簡明地講解有限元方法計算格式,引導他們編制相應的程序.

1 有限元方法計算格式

有限元方法的第一步,基于加權余量原理把問題的微分形式轉化為積分形式.如對于兩點邊值問題

其中

(7)

按照有限元方法這個計算格式的流程,把關鍵點放在式(6)(7)上,采用循環語句依次對每個單元計算單元的系數矩陣和常數項矩陣里的每一個元素,并且積分還要采用高斯積分,這樣就需要多個循環語句.另外,由于3個形函數和形函數的導數的結構是不同的,程序編寫起來就會很冗長,對于初學者來說,編制程序就變得非常困難.第一次講授時,20個學生中只有3個學生編制程序成功.這嚴重地影響了教學的效果.因此,如何優化有限元方法的計算格式,使其便于初學者理解,并易于編制程序就顯得非常重要.

2 計算格式向量化

考慮到Python軟件的向量運算功能,對有限元方法計算格式采用向量形式來表示,引入形函數向量和形函數導數向量

那么,單元系數矩陣和單元常數項矩陣就可分別表示成

結合高斯積分

圖1 有限元方法程序流程

3 有限元方法程序

1 import numpy as np

2 x=[0,0.45,1,1.5,2]

3 n=len(x)

4 m=2;n1=m*(n-1)+1;

5 xi=[0.2113,0.7887]

6 w=[0.5,0.5]

7 n2=len(w)

8 c1=1;c2=8

9 A=np.zeros((n1,n1));h=np.zeros(n-1)

10 b=np.zeros((n1,1))

11 for i in range(n-1):

12 h[i]=x[i+1]-x[i]

13 Ai=np.zeros((m+1,m+1))

14 bi=np.zeros((m+1,1))

15 for j in range(n2):

16 p=x[i]+h[i]*xi[j]+1

17 q=1

18 f=x[i]+h[i]*xi[j]

19 N=[[(2*xi[j]-1)*(xi[j]-1),4*xi[j]*(1-xi[j]),xi[j]*(2*xi[j]-1)]]

20 dN=[[4*xi[j]-3,4-8*xi[j],4*xi[j]-1]]

21 NT=np.transpose(N); dNT=np.transpose(dN)

22 Ai=Ai+w[j]*(p/h[i]*np.dot(dNT,dN)+h[i]*q*np.dot(NT,N))

23 bi=bi+w[j]*f*NT*h[j]

24 A[m*i:m*(i+1)+1,m*i:m*(i+1)+1]=A[m*i:m*(i+1)+1,m*i:m*(i+1)+1]+Ai

25 b[m*i:m*(i+1)+1]=b[m*i:m*(i+1)+1]+bi[0:m+1]

26 A[0,:]=0.0;A[0,0]=1;b[0]=c1

27 A[n1-1,:]=0.0;A[n1-1,n1-1]=1;b[n1-1]=c2

28 invA=np.linalg.inv(A)

29 u=np.zeros((n1,1))

30 u=np.dot(invA,b)

31 y = np.zeros((n1,1))

32 for i in range(n-1):

33 y[m*i]=x[i]

34 for k in range(m-1):

35 y[m*i+1+k]=x[i]+(k+1)*h[i]/m

36 y[n1-1]=x[n-1]

鹽城地區年平均日太陽輻照量達13 582kJ/m2,全年大部分時間太陽光照充分,6層商業裙房屋頂面積大,除放置機電各專業機房及設備,太陽能集熱板布置條件好。

37 u2 = np.zeros((n1, 2))

38 u2[:,0]=y[:,0]; u2[:,1]=u[:,0]

39 print(u2)

程序的第5,6行是高斯積分點以及對應的權系數,計算單元系數矩陣和單元常數項矩陣只用了2行代碼,即第22,23行.第19,20行分別為形函數向量、形函數導數向量,如果要采用更高次的拉格朗日插值函數,則修改第19,20行,并相應地提高數值積分的精度,修改程序的第5,6行,以及第4行中的m即可.程序具有良好的可讀性,根據精度需求和不同的邊界條件易于做出相應的調整.

4 應用實例

例1邊值問題

圖2 例1的有限元方法數值解

例2 混合邊值問題

由邊界條件有,因此,在對例1采用三次插值函數計算的基礎上再修改程序中第8,27行:8 c1=0;g=1;27 b[n1]= b[n1]+1.運行程序,得到數值解(見圖3).

5 結語

有限元方法程序主要步驟在于依次對每個單元計算單元系數矩陣和單元常數項矩陣,經典的有限元方法教材編制程序用的是Fortran語言,通過多個循環語句來計算單元系數矩陣和單元常數項矩陣的元素,這可以理解為從微觀的角度來編制程序.借助Python語言矢量運算的優勢,引入形函數向量和形函數導數向量,那么單元系數矩陣和單元常數項矩陣就是通過向量運算得到的,即是從宏觀的角度來理解有限元方法的計算格式,從宏觀的角度來編制程序,程序不但具有良好的可讀性,還便于根據精度要求、邊界條件的變換進行調整,這顯然達到了優化程序的目的.由于篇幅的限制,本文是以一維問題為例來說明向量化的優勢,實際上對于二維、三維問題這一優勢更加明顯.把計算格式向量化后,在教學實踐中也看到了效果,編制程序成功的學生越來越多,選這門課的學生也越來越多.

[1] 劉巖.專業認證背景下有限元技術基礎課程改革與實踐[J].高師理科學刊,2019,39(4):76-79.

[2] 周騰,吳之豪,史留勇.有限元分析及混合教學法在材料力學課程中的教學研究[J].高教學刊,2021(35):82-86,90.

[3] 馬竹樵.應用型本科院校《有限元方法》教學改革分析[J].教育現代化,2019,6(15):51-53.

[4] 劉楊,趙宇來,奚方權,等.有限單元法課程教學現狀與改革方法探究[J].中國教育技術裝備,2019(18):71-73.

[5] 于亞婷,杜平安.《有限元法》課程實踐教學方法探索[J].實驗科學與技術,2008(1):108-110.

[6] 智晉寧.有限元方法課程教學改革與實踐[J].安徽工業大學學報(社會科學版),2010,27(5):117-118.

[7] 張有宏,常新龍,張青,等.基于“理論引領、應用并行、案例示范”理念的有限元方法教學改革與實踐[J].教育教學論壇,2020(6):127-128.

[8] 向家偉.“有限元方法及程序設計”課程教學實踐[J].重慶工學院學報(自然科學版),2007(7):171-173.

[9] 林群.微分方程數值解法基礎教程[M].3版.北京:科學出版社,2017.

[10] 章本照,印建安,張宏基.流體力學數值方法[M].北京:機械工業出版社,2003.

Vectorization of calculation format of finite element method

HE Zhaokui

(School of Science,Hohai University,Nanjing 211100,China)

Aiming at the problem that beginners reflect that the finite element method is difficult to program,based on the vector operation advantages of the software Python,the shape function vector and the shape function derivative vector are introduced,so that the calculation format of the finite element method is vectorized.The calculation format after vectorization is simple and easy to understand,easy to program,and easy to adjust according to the accuracy requirements and the transformation of boundary conditions.

finite element method;Gaussian integral;vectorization;program

1007-9831(2022)09-0062-05

O242.21∶G642.0

A

10.3969/j.issn.1007-9831.2022.09.013

2022-01-10

高等學校大學數學教學研究與發展中心項目(CMC20220203);江蘇省高等教育教改研究課題重點項目(2021JSJG090);2021年江蘇省高校“基礎課程群”專項重點課題(2021JDKT017);河海大學課程思政示范課程建設項目(2021A05)

何朝葵(1974-),男,湖南郴州人,講師,碩士,從事有限元方法教學研究.E-mail:hzk@hhu.edu.cn

猜你喜歡
程序有限元方法
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
磨削淬硬殘余應力的有限元分析
基于SolidWorks的吸嘴支撐臂有限元分析
箱形孔軋制的有限元模擬
上海金屬(2013年4期)2013-12-20 07:57:18
主站蜘蛛池模板: 亚洲视频色图| 亚洲无码精品在线播放| 多人乱p欧美在线观看| 九色在线观看视频| 综合亚洲网| 99久久国产综合精品女同 | 国产va在线| 一区二区欧美日韩高清免费| 欧美视频免费一区二区三区| 操美女免费网站| 亚洲免费人成影院| 中字无码av在线电影| 欧美a在线视频| 成人日韩视频| 国产成人高清精品免费软件| 88av在线| 色国产视频| 午夜福利网址| 在线看片中文字幕| 91在线一9|永久视频在线| 国产精品99r8在线观看| 免费看久久精品99| 国产波多野结衣中文在线播放| 亚洲中文字幕23页在线| 伊人蕉久影院| 久久影院一区二区h| 国产精品漂亮美女在线观看| 亚洲人成影院午夜网站| a色毛片免费视频| 亚洲 日韩 激情 无码 中出| 中文字幕2区| 成人午夜网址| 久久综合亚洲鲁鲁九月天| 欧美另类视频一区二区三区| 2021最新国产精品网站| 久久狠狠色噜噜狠狠狠狠97视色| 麻豆国产在线观看一区二区 | 国产成人精品一区二区三区| 日韩少妇激情一区二区| 久久免费精品琪琪| 国产精品永久在线| 在线观看热码亚洲av每日更新| 老司机午夜精品网站在线观看| 中文字幕亚洲综久久2021| 18禁色诱爆乳网站| 国产全黄a一级毛片| 日本国产精品| 国模视频一区二区| 四虎国产精品永久在线网址| 欧美成人午夜视频| 日韩第一页在线| 久久久久九九精品影院| 老熟妇喷水一区二区三区| 亚洲伦理一区二区| 免费人成在线观看视频色| 欧美成人精品一区二区| 免费国产黄线在线观看| 99偷拍视频精品一区二区| 午夜国产大片免费观看| 99视频在线观看免费| 国产精品专区第1页| 91小视频在线播放| 一本大道东京热无码av| 日韩精品一区二区三区中文无码| 岛国精品一区免费视频在线观看| 秋霞午夜国产精品成人片| 免费一级毛片| 欧美国产在线一区| 小说区 亚洲 自拍 另类| 亚洲色图欧美视频| 97在线国产视频| 91精品国产福利| 亚洲人成色在线观看| 久久这里只有精品免费| 综合五月天网| 亚洲成人网在线播放| 日韩AV手机在线观看蜜芽| 亚洲男人的天堂在线观看| 免费一级毛片完整版在线看| 中文字幕有乳无码| 日本五区在线不卡精品| 亚洲一级毛片在线观播放|