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