如何成為一名合格的分析工程師——必備的理論基礎(chǔ)【轉(zhuǎn)發(fā)】
2018-05-08 by:CAE仿真在線 來源:互聯(lián)網(wǎng)
隨著有限元在工業(yè)領(lǐng)域的普及,FEA成為CAE的重要組成部分,同時也帶給大家一個感覺,CAE嘛,當(dāng)然是COMPUTER重要。說到這里,我想到一個人,就是我碩士時的導(dǎo)師,作為北大數(shù)學(xué)力學(xué)系的畢業(yè)生,在60年代分配去做反應(yīng)堆工程,做了一輩子的核設(shè)備力學(xué)分析。他到這個研究院后,開始主要是手算解決力學(xué)問題,然后是從打孔計(jì)算機(jī)開始編程計(jì)算,然后SAP4,ADINA用到了SAP84。在我入學(xué)時,計(jì)算工具已經(jīng)是ANSYS5.4和MARC了,操作系統(tǒng)也變成了UNIX,他已經(jīng)不會這些工具了,但是在日常的分析工作中,遇到問題時,無一不是他解決的。他給我說的一句話,至今讓我受益。"無論用什么程序,要清楚你輸入的每一個參數(shù)的來龍去脈"。正是這樣,即使不懂商業(yè)軟件,他還是可以幫助我們解決分析中遇到的問題。
透徹的了解所分析問題的理論基礎(chǔ)是做一個分析工程師所必須的條件。
大多數(shù)公司對有限元分析工程師的基本學(xué)歷要求都是工學(xué)碩士。拋開目前國內(nèi)人才市場學(xué)歷貶值的因素不談,我覺得這個要求是非常合理和必要的。因?yàn)檫M(jìn)近些年,在大多數(shù)的工科院校里,除了工程力學(xué)專業(yè)外,很少在本科階段開設(shè)有限元理論的課程,另一些做有限元分析的必要理論課程,如彈性力學(xué),塑性力學(xué),變分理論也多在碩士階段才開設(shè)。因此有時看到一些公司在招聘有限元分析工程師時,學(xué)歷要求僅僅要求大?;虮究?便覺得有些懷疑。并非學(xué)歷歧視,只是覺得如果要以大?;虮究频慕逃尘?可能需要做更多努力才能勝任這樣的職位。
作為一個分析工程師到底需要什么樣的理論基礎(chǔ)呢,也許有人覺得過分強(qiáng)調(diào)理論的重要性有些吹毛求疵了。在這一部分中,將系統(tǒng)介紹一下分析工程師必須具備的理論知識,限于本文的寫作目的,本章不會涉及細(xì)節(jié)的理論。
在大學(xué)中,我們首先學(xué)到的是數(shù)學(xué),對于有限元分析,數(shù)學(xué)同樣是最基礎(chǔ)的了。除了對微積分有深刻認(rèn)識外,由于在力學(xué)領(lǐng)域會涉及到較多的偏微分方程,應(yīng)此對數(shù)理方程應(yīng)該了解,同時,由于有限元分析是數(shù)值計(jì)算方法,矩陣論、數(shù)值計(jì)算方法和偏微分方程數(shù)值解是盡量要掌握的。
另外的便是變分方法和復(fù)變函數(shù)了,對于有限元分析工程師,個人認(rèn)為這兩門課程不是必須的,因?yàn)閷τ诖蠖鄶?shù)工程力學(xué)分析問題,已經(jīng)有現(xiàn)成的變分過程可查了,有一點(diǎn)變分的知識就好了。(十年前就寫了這么多,所以網(wǎng)上傳播的那些帖子也就都戛然而止了,下面的經(jīng)驗(yàn)還沒有涉及呢。)
力學(xué)毫無疑問是專業(yè)基礎(chǔ),但是確實(shí)類別太多,理論力學(xué)、材料力學(xué)、彈性力學(xué)、結(jié)構(gòu)力學(xué)、振動理論或結(jié)構(gòu)動力學(xué)、彈性動力學(xué)、塑性力學(xué)、斷裂力學(xué)…光固體力學(xué)就一大堆。再加上可能會遇到的熱力學(xué)、流體力學(xué)…公式一大堆,本本書都是可以燒壞腦子的。
如果在學(xué)校學(xué)過上面這些科目,能科科都過就阿彌陀佛了,工作幾年,大概都還給趙錢孫李各位教授了。今天說要全部讀一遍,對大多數(shù)人都是不可能的了。而且就算都讀一遍,所有例題都演算一遍,也難以保證在分析工作中能有所幫助,那如何提高自己做分析時的理論推導(dǎo)能力呢?如何快速提高自己的理論水平呢?
一方面,在商業(yè)軟件大行其道的今天,商業(yè)軟件已經(jīng)滲透到了工業(yè)領(lǐng)域甚至高校及科研機(jī)構(gòu)的各個角落,而且商業(yè)軟件越來越龐大,對大部分的應(yīng)用工程師來說,商業(yè)軟件越來越成為一個黑匣子。
另一方面,從結(jié)構(gòu)分析工程師的背景來說,以筆者所見,機(jī)械設(shè)計(jì)與機(jī)械制造、土木工程、熱能工程、核工程、化工機(jī)械等等五花八門,科班工程力學(xué)少之又少,筆者也并非科班力學(xué)。
正是由于工具及使用者兩方面的原因,使得分析變得模式化和流程化。但是,仿真分析的可怕之處在于,陷阱太多,無論你如何設(shè)定分析模型和參數(shù),除了極少情況(無法收斂的非線性問題等),都可以得到一個似是而非的結(jié)果,而那些黑匣子扔出一個結(jié)果,永遠(yuǎn)不會主動告訴你此次分析是對還是錯。如果錯了,將導(dǎo)致設(shè)計(jì)校核上的直接損失和團(tuán)隊(duì)對分析工作失去信任。
只有一個辦法,就是去理解這些黑匣子!而理解這些仿真程序,就需要上一節(jié)提到的那些理論課程,如果你能按照我推薦的辦法一點(diǎn)點(diǎn)理解分析軟件的運(yùn)作模式,持續(xù)的去做,最終你將能夠理解那些理論在分析中如何被應(yīng)用,從“光腳的殺手”變成“穿鞋子的殺手”。讀懂分析程序?qū)⑹强焖偬岣呃碚撍降囊粭l捷徑。
所謂讀程序,可以理解為開發(fā)軟件的逆向工程,編一段分析程序的流程大抵應(yīng)該是:理論公式-數(shù)值算法-程序?qū)崿F(xiàn),這三者的關(guān)系非常割裂。那好,如果我們有辦法從源代碼中找出分析的理論公式,就可以很快理解程序的運(yùn)作機(jī)制了。
下面將具體講解讀什么及如何讀。
讀懂大型商業(yè)軟件ANSYS,Abaqus, Nastran很難嗎?不用恐懼,下面給大家看兩段輸入文件。
左邊較精煉一段是ANSYS經(jīng)典版的模態(tài)分析的輸入文件,右邊一段是古老的ADINA的一個時程分析的輸入文件。
比較二者,ANSYS是加入了一些Keyword;ADINA沒有keyword,輸入數(shù)字意義用行列位置表示,需要一本說明書便可清楚得到。剔除字符定義的區(qū)別和幾何不同,兩個程序需要讀取的信息是一樣的??梢钥闯?盡管兩個程序版本出現(xiàn)的年代久遠(yuǎn)(相隔20年以上),其運(yùn)行機(jī)制并無大不同。
但是當(dāng)年的ADINA的源程序有多少呢? 1.8M!下節(jié)我們將來分析這 1.8M代碼有多強(qiáng)大,打破大家心目中的黑匣子!
做結(jié)構(gòu)仿真分析這件事,有兩類人,一類是科研人員,一類是工程師。再次強(qiáng)調(diào)本文所談主要針對工程師。
上文談到一個古老的有限元分析軟件的源代碼,為什么談這個軟件? 剛好手邊有一個完整的ADINA84源代碼版本,此軟件在1984年之前是最流行的有限元結(jié)構(gòu)分析軟件,因?yàn)槠湓创a公開,后來很多商業(yè)軟件都是以此為原型的。
結(jié)構(gòu)分析計(jì)算就是求解一堆偏微分方程組:平衡方程,物理方程,幾何方程,力邊界條件,幾何邊界條件。因?yàn)槔碚撉蠼庵荒芙獬鰳O少的一部分簡單問題,對于復(fù)雜問題,就只能借助于數(shù)值方法,差分方法,有限元方法等等都是結(jié)構(gòu)分析常用的數(shù)值方法。
最開始的有限元方法提出者Clough是利用結(jié)構(gòu)力學(xué)里的直接剛度法推導(dǎo)到彈性力學(xué)的平面問題的,這就是很多人會發(fā)現(xiàn),有限元分析流程與結(jié)構(gòu)分析的直接剛度法的相似性(找本計(jì)算結(jié)構(gòu)力學(xué)看看,可以大大提高對有限元分析的直觀認(rèn)識,個人認(rèn)為這門課比較簡單)。
后來,牛人們從嚴(yán)格的數(shù)學(xué)上的論證了有限元方法是基于變分原理Ritz的一種形式,確認(rèn)了有限元方法是處理連續(xù)介質(zhì)問題的一種普遍方法,然后更多牛人把這一方法擴(kuò)展到了塑性、粘彈性等等各個學(xué)科和各個領(lǐng)域。這部分基本就忽略吧,目前我們工程中常用各類力學(xué)的基本方程的等效變分原理都推導(dǎo)的非常成熟了。(論證部分有興趣可以參考王勖成的經(jīng)典有限元教材,英文經(jīng)典的有Bath和Clough的)。Bath就是干出ADINA84程序那位。
這里要提一個概念叫有限元分析本體程序,它是有限元分析程序的核心,目前那些裝在機(jī)器上龐大到幾個G的商業(yè)軟件,其本體程序基本大同小異,并非像想象那么大,幾十個K足足可以解決一個類型的問題了。上面提到的ADINA84,因?yàn)闆]有太多前后處理功能,1.8M主要就是本體程序的大小,主要的分析功能都有了。讓我們來拆開本體程序吧。下面是一個靜力平衡問題的本體程序框圖。(取自王勖成《有限單元法基本原理和數(shù)值方法》第二版)
各結(jié)構(gòu)分析各個分支的計(jì)算模塊的本體程序流程大同小異,基本按這個流程在走。如果是Ka=P這個方程會引入加速度,就變成了動力問題,如果K中也含有a, 求解的也就是非線性方程組了。不能再往下深入,否則就是具體理論問題了。
我的建議是,找一段源代碼,分解出上圖描述的流程,再讀出其中的平衡方程,物理方程,幾何方程,力邊界條件,幾何邊界條件,這樣就可以將那些復(fù)雜的力學(xué)理論映射到程序原理和程序使用上,求解線性方程或非線性方程的部分至少讀出求解方法,就可以把數(shù)值計(jì)算的理論加深。
本文作者:南京安世亞太 高博
相關(guān)標(biāo)簽搜索:如何成為一名合格的分析工程師——必備的理論基礎(chǔ)【轉(zhuǎn)發(fā)】 Ansys有限元培訓(xùn) Ansys workbench培訓(xùn) ansys視頻教程 ansys workbench教程 ansys APDL經(jīng)典教程 ansys資料下載 ansys技術(shù)咨詢 ansys基礎(chǔ)知識 ansys代做 Fluent、CFX流體分析 HFSS電磁分析 Abaqus培訓(xùn)