不知火舞的被虐|伊人天伊人天天综合网|博洛尼亚天气|任你懆这里只有精品4|久久美日韩精品久久|掌中之物漫画免费阅读观看|0丨d老妇

結(jié)冰算法的案例

Spring-ICE 結(jié)冰算法述評-(5)對流換熱系數(shù)計(jì)算
系列文章詳見: 飛機(jī)結(jié)冰的那些事(1) 飛機(jī)結(jié)冰的那些事(2) Spring-Ice結(jié)冰軟件介紹 Spring-ICE 結(jié)冰算法述評-(2)水滴軌跡計(jì)算 Spring-ICE 結(jié)冰算法述評-(3)水滴收集量計(jì)算 Spring-ICE 結(jié)冰算法述評-(4)番外:簡單面元法 最近看書不少,寫字很多。 心血來潮的看了一些古文,看了一些近現(xiàn)代文章。小時(shí)候其實(shí)學(xué)了不少好文章,只是當(dāng)時(shí)難見它們的好處所在。但用現(xiàn)在的眼光再看,可謂別有風(fēng)味。 比如蘇軾的文章,他評論賈誼和張良的兩篇策論,放在現(xiàn)在看就是標(biāo)準(zhǔn)的議論文模板。開篇點(diǎn)題,再正論反論的小論點(diǎn)輔之以舉例舉史,最后定調(diào)收官。思路非常清晰,加上作者超一流的文字水平,“方今天下,舍我其誰哉”,讀起來非常暢快。 順著《賈誼論》,又找來賈誼的《治安策》,這次看的是譯文。只看這個(gè)題目,就不是一般人敢寫的。治安策,治國安天下之策也。想想我寫個(gè)技術(shù)報(bào)告都顫顫巍巍。帶著好奇心就看看這個(gè)治國安天下的報(bào)告是怎么個(gè)寫法。看完以后不禁感嘆,這分明是一份調(diào)研分析報(bào)告啊。 文章細(xì)數(shù)了當(dāng)時(shí)大漢的內(nèi)外危機(jī),特別是如何處理諸侯國尾大不掉的問題,這個(gè)時(shí)候還沒到漢武帝時(shí)期,賈誼就分析大漢開國以來歷次諸侯國叛亂的共性,得出一個(gè)結(jié)論,啥結(jié)論呢?越小的封國越不會造反。順著這個(gè)思路,怎么處理諸侯國問題的答案就很明顯了,不是一把擼掉各國,而是增加封國,越多越好,封地越小越好。這個(gè)思想不就是后來的“推恩令”嘛。作者的總結(jié)洞察能力真是太厲害了 想想后世的偉人寫的很多調(diào)研報(bào)告,核心都是調(diào)研,分析,總結(jié)共性和異性,得出結(jié)論。這種天才般的洞察力和研究方法,很值得學(xué)習(xí)。 《治安策》的精彩之處遠(yuǎn)不止此,要知道這個(gè)文章是寫給皇帝的,里面有些和“陛下”交心的話,寫的很有意思。
展開
Spring-ICE 結(jié)冰算法述評-(2)水滴軌跡計(jì)算
Spring-ICE系列前述兩篇文章: 1、飛機(jī)結(jié)冰的那些事 2、Spring-ICE 結(jié)冰算法述評-(1)水滴軌跡計(jì)算 今天要聊的內(nèi)容,既常規(guī)又不常規(guī)。 說其常規(guī),是因?yàn)樗诬壽E的計(jì)算是所有結(jié)冰計(jì)算的基礎(chǔ)算法,不可或缺,是必備技能。說其非常規(guī)是因?yàn)椋M管目前文獻(xiàn)對這個(gè)計(jì)算過程描述的已經(jīng)足夠詳細(xì),但是還有很多的技術(shù)細(xì)節(jié),非實(shí)際操作而不可揣摩,正是這些具體的技術(shù)細(xì)節(jié)決定著計(jì)算的準(zhǔn)確性、效率,甚至是整個(gè)結(jié)冰算法的設(shè)計(jì)邏輯。 我這段時(shí)間感悟,任何工程的東西,越涉及到基礎(chǔ)的和實(shí)踐的,自己必須要親自去試一試,做一做,且不能是簡單的感受下,而要做出效果,做出感悟。要一竿子插到底,摸到邊。 如果我做復(fù)材,我就要親自去做一做材料成型,研究試件加工,然后試驗(yàn)測試,最后是結(jié)果處理。反復(fù)的想,整個(gè)過程和我仿真或者理論,哪些是對應(yīng)的,哪些是不同的,這些不同會有什么影響,有些試驗(yàn)現(xiàn)象的機(jī)理是什么,能不能從理論層面找到依據(jù)。 如果我們現(xiàn)在的身份不是一個(gè)學(xué)生,不是面向自己的課題。而是一個(gè)工程師面對一個(gè)項(xiàng)目,整個(gè)項(xiàng)目不是一個(gè)人能夠完成的,那么作為組織者,是不是給別人分個(gè)工,等著大家的結(jié)果就完事了?我想不是,即便沒有精力面面俱到,那么至少應(yīng)該精通某一方面,然后瞄準(zhǔn)項(xiàng)目的目標(biāo),搞清楚大家的工作和目標(biāo)的聯(lián)系,然后對重點(diǎn)問題深入研究,要搞懂要把控。總而言之,必須實(shí)踐,必須講求細(xì)節(jié)。 1 水滴軌跡計(jì)算到底要干啥? 從結(jié)冰計(jì)算整個(gè)層面來說,所謂結(jié)冰就是水滴撞在機(jī)翼表面然后凍結(jié)的現(xiàn)象。水滴軌跡的計(jì)算,就是要搞清楚水滴會撞擊到機(jī)翼表面的哪些區(qū)域,每個(gè)區(qū)域水滴撞擊的量(即水滴收集量)是多少,為下一步的結(jié)冰物理計(jì)算提供輸入。 從算法的層面,水滴軌跡計(jì)算需要做以下工作: (1)控制方程建立。說白了,水滴在流場中的運(yùn)動,滿足什么方程。 (2)求解方程,計(jì)算軌跡。
展開
Spring-ICE 結(jié)冰算法述評-(4)番外:簡單面元法
高強(qiáng)度活動了幾天的身體后,動極思靜,由來已久的搞三維結(jié)冰算法的想法再次冒頭。 每次決定搞一個(gè)大程序前,其實(shí)要思想斗爭很久,一個(gè)類似結(jié)冰這樣的程序,往往意味著長達(dá)一兩年的長期精力投入,意味著大量的業(yè)余時(shí)間的報(bào)銷,還意味著我得盡可能減少兼職工作。 決定干就在這兩天,兩個(gè)誘因。一個(gè)是有天一個(gè)師兄喝多了跟我說,咱們都慢一點(diǎn),慢慢來。那幾天正是我心態(tài)急躁的時(shí)候,前段時(shí)間投入了大量業(yè)余時(shí)間在兼職工作上,主副業(yè)交叉,腦子里亂的不行。聽師兄這么一說,我仔細(xì)想了想,我又不打算買房被割韭菜,我急個(gè)啥,開發(fā)工程工具解決工程問題是自己的興趣,還是要堅(jiān)定的干,只要餓不死,多干點(diǎn)自己喜歡的東西唄。第二個(gè)誘因是,晚上再次看了遍《星際穿越》,一邊品著里面各種裝備的結(jié)構(gòu)設(shè)計(jì),一邊用自己的專業(yè)知識揣測各種技術(shù)細(xì)節(jié),更關(guān)鍵的是,結(jié)合自己的工作經(jīng)歷,越發(fā)認(rèn)識到,我們掌握的知識是實(shí)實(shí)在在有用的,盡管看著古典傳統(tǒng),還帶著很多經(jīng)驗(yàn)性東西,沒有什么AI、區(qū)塊鏈聽著高端,但是AI、區(qū)塊鏈并沒有解決我們這個(gè)行業(yè)的根本性難題,從來沒有。不必羨慕那些概念,桿梁板殼,流場氣動,哪個(gè)不是精妙十足,博大精深。 結(jié)冰計(jì)算,流場先行。我們前面幾期也提到了這些,為了準(zhǔn)備三維結(jié)冰算法,我第一步就是要做個(gè)三維流場計(jì)算工具。參考我之前做二維的經(jīng)驗(yàn),這次還是選擇面元法。 本期就介紹下二維簡單面元法的實(shí)現(xiàn),以及主題:讀書。 1 參考啥文獻(xiàn)? 我在第一次搞面元法的時(shí)候,翻閱了很多文獻(xiàn)和書籍。最直接的感受是,越是近年的資料越不說“人話”。通篇不是偏微分積分,就是張量: 好像通篇理論性很強(qiáng),實(shí)際上約等于啥也沒說,這些公式也不是這些貨搞出來的,引用這些數(shù)學(xué)定義式,介紹下每個(gè)元素的含義,這叫個(gè)什么論文?歸根結(jié)底,這些東西是要編程實(shí)現(xiàn)的,這些貨給出的這些式子虛頭八腦的式子,離可用化的編程差著十萬八千里。
展開
基于matlab的Spring-ICE 結(jié)冰算法述評-(1)翼型前處理
這個(gè)軟件的算法,我前后花了近兩年的時(shí)間,探索,調(diào)試。是我迄今為止做過的最難也是最系統(tǒng)的軟件。 好巧不巧,剛讀研究生,接手的第一個(gè)項(xiàng)目也是算法開發(fā)。工作后,發(fā)起的第一個(gè)沖鋒,也是做程序。 不過我可絕非是個(gè)程序員,歸根結(jié)底,我們是做工程的,所謂的算法、軟件等等,目的都是為了完成數(shù)值計(jì)算,以解決工程實(shí)際問題為第一要?jiǎng)?wù)。 這個(gè)軟件從完成后,至今未曾給我?guī)砣魏沃苯拥氖找妫瑯s譽(yù)上的也好,金錢上的也罷。但是,通過這個(gè)過程,我對工程分析軟件的定位,對數(shù)值算法的理解等多個(gè)層面的認(rèn)知提高了很多。從個(gè)人科技樹的角度,這個(gè)科技可能點(diǎn)歪了,但確實(shí)收獲良多。 我希望能從頭到尾,把這個(gè)算法的一些心得和思考整理出來,為己鑒,為后人鑒。 1 Spring-ICE結(jié)冰軟件簡介 之前在往期的文章里,簡單介紹過。此處再提下。 這款軟件的功能是要完成翼型在特定飛行工況、氣象工況下的結(jié)冰冰型的預(yù)測。 (1) 要完成冰型的預(yù)測,就必須先計(jì)算流場,拿到速度分布的數(shù)據(jù)。 (2) 其后,我們假定翼型前方有大量過懸浮小水滴,在流場的推動下,水滴往翼面上撞擊,從而確定出,翼型哪些地方被水撞到了,撞到了多少。 (3) 最后,根據(jù)熱平衡,計(jì)算這些水凍結(jié)多少,流到翼面其他地方多少。 (4) 水凍成冰以后,翼面的邊界上長出冰了,這時(shí)候,流場發(fā)生變化,再重復(fù)上述的步驟,繼續(xù)結(jié)冰。 這里面主要的大塊,是流場計(jì)算、水滴撞擊的計(jì)算、熱平衡的分析。要想把這個(gè)過程成功的實(shí)施并銜接得當(dāng),還要完成諸如翼型幾何的處理、冰型的生長更新等多個(gè)零散的細(xì)節(jié)難點(diǎn)。 再進(jìn)一步,你還希望別人拿過來就能很快用起來這個(gè)軟件,那么就需要便捷的操作,越簡單越好。這就意味著,算法的魯棒性、強(qiáng)大的前后處理都要非常完備。
展開
結(jié)冰算法圖1
Spring-ICE 結(jié)冰算法述評-(3)水滴收集量計(jì)算
這一期就講,利用水滴軌跡的計(jì)算,得到翼面各區(qū)域一定時(shí)間內(nèi)撞擊水量的計(jì)算,為下一步開展結(jié)冰熱力學(xué)算結(jié)冰量提供輸入。 最近這段時(shí)間一直在現(xiàn)場干體力活,這是我畢業(yè)兩年后再次長期干試驗(yàn)。干的時(shí)候,腦子里經(jīng)常閃現(xiàn)以前讀研天天泡在實(shí)驗(yàn)室的場景,師兄弟們有說有笑,手里不停,嘴上不停。白天干累了,晚上喝喝酒,或者寫寫論文做做計(jì)算。畢業(yè)后的兩年,大部分時(shí)候都在辦公室,要么跑各種流程,要么畫網(wǎng)格傷眼睛,恍惚間已然忘記自己以前還是個(gè)干“手藝”活的。 年初疫情隔離期間就開始再次健身,就是怕胖(雖然沒胖過),畢竟快禿了,再一胖,自己都不認(rèn)識自己了。這下好了,又回到了白天動身體,晚上動腦子的狀態(tài),身上線條慢慢恢復(fù),有一種勞資想干手藝就干手藝,想寫代碼就寫代碼的感覺,真好。 年齡這個(gè)東西真的很奇怪,我十六七歲的時(shí)候,拼命想練肌肉,那時(shí)候俯臥撐天天100,還是瘦的雞仔。10年過去,健壯了,也快禿了。 到目前唯一沒變的,還是對知識的熱愛吧,或許還有不知恥的自負(fù)。 1 水滴收集量怎么算 我們假定有一個(gè)水滴發(fā)射面,一齊向翼面上發(fā)射水滴,每個(gè)壁面單元(AB)必然在發(fā)射面上某兩個(gè)水滴發(fā)射位置覆蓋的范圍里(yi ~ yi+1),在這個(gè)范圍內(nèi)的所有水滴都只能打到AB內(nèi),反之,亦然。 對于二維問題,(yi+1)-(yi)就是壁面單元AB的水滴收集量(當(dāng)然還需要乘以軸向單位長度以及液態(tài)水含量還有時(shí)間,這里做簡化說明)。 為了便于統(tǒng)一比較,目前大家普遍引入水滴收集系數(shù)的概念,就是把[(yi+1)-(yi)]除以|AB|。 搞清了定義,其實(shí)計(jì)算大概思路基本就有了。只要搞清楚A、B兩點(diǎn)各自對應(yīng)哪條水滴軌跡,水滴收集量就出來了。
展開
流體有限元求解器開發(fā)-SUPG迎風(fēng)格式與SA湍流模型
0度攻角結(jié)果 5度攻角結(jié)果 系統(tǒng) 到目前為止,在流體方向我們已經(jīng)開發(fā)了: (1) 翼型造型算法和軟件:《葉片/翼型參數(shù)化造型技術(shù)》 (2) 網(wǎng)格生成算法: (3)結(jié)冰算法和軟件: (4)不可壓流動求解器 可以說,上述算法模塊已經(jīng)形成了一個(gè)小型的“生態(tài)系統(tǒng)”,如果我們再加上翼面升力和阻力計(jì)算,基本就可以實(shí)現(xiàn):幾何造形設(shè)計(jì)、網(wǎng)格生成、CFD計(jì)算、冰形計(jì)算、性能評估的完整流程。 如果再摻一點(diǎn)優(yōu)化算法,可以實(shí)現(xiàn)更多的功能,這大概就是自研系列化軟件的好處。
簡單三維面元法的實(shí)現(xiàn)
本次聊的三維面元法,甚至是后續(xù)的三維結(jié)冰算法,要做的就是這樣一個(gè)升維的工作。 1 三維面元法理論 仍舊參考徐華舫版《空氣動力學(xué)基礎(chǔ)》。思路如下: (1)面網(wǎng)格離散。考慮四邊形網(wǎng)格,以每個(gè)單元中心點(diǎn)作為控制點(diǎn)。計(jì)算并存儲好每個(gè)單元的局部坐標(biāo)系。 (2) 面元強(qiáng)度計(jì)算。對每個(gè)單元(i)進(jìn)行循環(huán),考慮第j個(gè)單元對它的擾動: a. 考慮在第j個(gè)單元局部坐標(biāo)系下,第i個(gè)單元的法向向量; b. 考慮在第j個(gè)單元局部坐標(biāo)系下,第j個(gè)單元的坐標(biāo); c. 循環(huán)計(jì)算第j個(gè)單元四個(gè)邊對第j個(gè)控制點(diǎn)的擾動; d. 形成擾動矩陣K(I,J)。 e. 求解面元。 (3) 流場計(jì)算。針對給定的點(diǎn),循環(huán)計(jì)算每個(gè)單元對其的擾動: a. 考慮給定點(diǎn)在第j個(gè)單元下的局部坐標(biāo); b. 循環(huán)每個(gè)單元四個(gè)邊對給定點(diǎn)的擾動; c. 將局部坐標(biāo)系下的擾動轉(zhuǎn)換到總體坐標(biāo)系下。 2 一些注意事項(xiàng) 單看上面的思路好像和二維區(qū)別不大。實(shí)際上,首先每個(gè)單元的局部坐標(biāo)系的處理方法就很不一樣。 另外循環(huán)計(jì)算每個(gè)面元時(shí),循環(huán)的方向是要特別注意的,搞不好就反了。 最后是程序細(xì)節(jié)的問題,比如對分母可能出現(xiàn)的為0情況的處理,對反tan函數(shù),可能出現(xiàn)的無限的處理。對判斷一個(gè)值是否為0是,是否考慮容差的處理等等。任何一個(gè)細(xì)節(jié),都會導(dǎo)致出來的結(jié)果有問題。 3 一些結(jié)果的展示 局部坐標(biāo)系的顯示 流場的顯示 4 程序調(diào)試的一點(diǎn)思考 寫了這么多程序,我的感覺,一個(gè)程序能不能成,關(guān)鍵是調(diào)試方法的好壞。 找到合適的算例,找到合適的判據(jù),根據(jù)判據(jù)來定位問題,然后各個(gè)擊破。 這次調(diào)試這個(gè)三維面元法,我先用了平直機(jī)翼,然后后掠翼,再用球。
展開
—Spring3D-Drop結(jié)冰程序研發(fā)記
1 Spring3D應(yīng)該長啥樣 我在之前一篇文章中提到過,要啟動三維結(jié)冰程序的研發(fā),這是20年6月份的事情。 結(jié)冰程序,有三個(gè)關(guān)鍵的技術(shù):流場計(jì)算、水滴收集系數(shù)計(jì)算、冰形計(jì)算。而在三維結(jié)冰這個(gè)方面,一般能完成前兩個(gè),就已經(jīng)達(dá)到了相當(dāng)高的程度,并具備了很強(qiáng)的實(shí)用性。 在研發(fā)之前,一個(gè)非常重要的問題就是要確定,這個(gè)軟件應(yīng)該長啥樣?這個(gè)問題倒不是說界面炫不炫,而是整個(gè)軟件的設(shè)計(jì)理念是什么?也就是所謂的概念設(shè)計(jì)。 基于前面二維結(jié)冰程序開發(fā)的經(jīng)驗(yàn),還有我自己的從業(yè)經(jīng)歷,我給這個(gè)三維軟件一些要求如下: (1)快。真男人就是要快。好軟件就是要快。快就意味著成本低,意味著效率高,意味著設(shè)計(jì)迭代短。快就是正義。部件級別的完成計(jì)算,用時(shí)2小時(shí)以內(nèi),整機(jī)級別的計(jì)算,控制在4-6小時(shí)。 (2)具備可用的精度。工程上能夠接受的精度,這個(gè)是軟件的底線。 (3)程序模塊化。大到流場計(jì)算模塊,小到一個(gè)判斷單元位置的算法,通通模塊化,設(shè)置為自定義函數(shù),在主程序里面調(diào)用。這樣主程序簡潔、清晰,子程序可以隨時(shí)優(yōu)化更新,不斷升級。 (4)設(shè)計(jì)輸入規(guī)范。根據(jù)軟件自身特點(diǎn),確定輸入文件的格式,并具有普適性。就是說,只要按照這個(gè)格式和要求提供輸入,就能成功計(jì)算。 (5)軟件輸出可直接用于設(shè)計(jì)。比如像Fensap三維結(jié)冰軟件,計(jì)算完水滴撞擊后,如果你想在數(shù)模上畫出撞擊范圍,就需要自己后處理,取多個(gè)剖面的結(jié)果。Spring3D軟件則要根據(jù)設(shè)計(jì)研發(fā)需求,直接給出可用的結(jié)果,避免過多的人工后處理操作。 20年6月份啟動的研發(fā),那時(shí)我仍在西北,搞飛機(jī)試飛,當(dāng)月就采用三維面元法解決了流場計(jì)算問題。
展開