

【摘要】針對機械工程專業(yè)學生學習材料力學直梁彎曲過程中遇到的理解難點問題,基于Python語言和MSC.Marc軟件編制了直梁尺寸、單元劃分和載荷施加的參數(shù)化程序,再借助C#強大的編程和調(diào)用能力啟動Marc及該程序,自動提交和運算完成后,學生可以提取多種直觀計算結果,為學生加深理解直梁彎曲變形理論提供了參數(shù)化和可視化計算工具。
【關鍵詞】Python Marc 材料力學 教學
【中圖分類號】G64 【文獻標識碼】A 【文章編號】2095-3089(2016)12-0016-01
前言
直梁類零部件受載荷而發(fā)生變形的情況在實際工程中很常見,例如,橋梁在自重和車輛作用下會發(fā)生變形、鋼架結構房屋的型材骨架在屋頂重力和自然風載等條件下也會發(fā)生變形。作為一名本科生,應當首先熟練掌握直梁彎曲變形的規(guī)律,以便今后在工程實踐中能安全設計滿足條件的梁的結構[1]?鄄[2]。梁的彎曲變形章節(jié)內(nèi)容較多,如何在推導理論模型前就建立對梁的彎曲變形的建立直觀和感性的認識是學好本章的基礎。隨著商業(yè)有限元的日益成熟和計算機硬件技術的發(fā)展,越來越多的研究借助它進行靈活的前處理,使模擬過程更接近實際工況,得到了內(nèi)容豐富和可視化程度高的結果[3]?鄄[6]。本文借助Python與MSC.Marc有限元軟件良好的交互性編制直梁參數(shù)化建模、劃分網(wǎng)格、加載和提交運算的程序,然后基于C#編制操作界面,計算完成之后自動讀取結果以便學生觀察直梁的變形過程,從而達到加深理解的目的。
1.Python語言和Marc交互參數(shù)化建模
Python編程語言是一種解釋性、交互式和面向?qū)ο蟮墓δ軓姶蟮木W(wǎng)絡服務器端腳本語言,與其它腳本語言一樣,Python代碼類似于偽代碼,同時還是一種交互式、可移植、易于學習、方便使用的嚴謹語言,它提供動態(tài)語義和快速的原型開發(fā)能力,適合用作連接已有組件的粘合語言。同時它可用于獨立的程序,也可用于腳本程序。
為了讓學生直觀認識大跨度梁和小跨度梁的彎曲形態(tài),需要將梁的長度和寬度設為參數(shù)化變量,此外,彎矩的大小及梁被劃分的網(wǎng)格大小均由用戶自己輸入。面對這幾個參數(shù)的多樣性,利用Python和Marc的良好交互性特點編寫直梁建模和網(wǎng)格劃分的參數(shù)化程序。Python程序以from py_mentat import *打頭,調(diào)用MSC.Marc的py_mentat模塊,主程序以def main( ):開頭,主程序下面是原始參數(shù)輸入,例如彎矩大小M,跨度L,梁高H、單元寬s1和單元長s2,子程序名稱依次列出,且子程序按照順序?qū)懺谥鞒绦虻纳戏健U麄€程序需要用pysend將命令送到MSC.Mentat執(zhí)行。
利用C#語言編制如圖1所示交互式界面,學生可以通過輸入彎矩的大小、梁的尺寸及網(wǎng)格劃分的大小就可點擊提交運算,后臺程序?qū)⒔缑嫔系膮?shù)傳給上述程序,然后調(diào)用MSC.Marc進行參數(shù)化建模與仿真,計算完成后,點擊查看結果可以直觀查看仿真結果。
2.可視化結果顯示與分析
當梁的輸入?yún)?shù)的長度與高度的比值比較小,則直梁的外形如圖2(a)所示,劃分出來的網(wǎng)格大小由學生自由控制,如果加的彎矩為M,則計算完成后的彎曲形態(tài)如圖2(b)所示,如果增加一倍彎矩,則彎曲形態(tài)繼續(xù)加大,如圖2(c)所示;同時,學生還可以通過查看最終的直梁彎曲變形曲線,并將其與材料力學中的經(jīng)典公式進行對比驗證。
結論
基于Python語言和MSC.Marc軟件良好的交互性編制的參數(shù)化程序可以靈活處理直梁的尺寸、單元大小和載荷施加方式,同時利用C#強大的編程和調(diào)用能力啟動Marc及其參數(shù)化程序,方便學生在學習材料力學直梁彎曲理論中加深對梁的彎曲變形規(guī)律的理解和認識。
參考文獻:
[1]姚月煥.直梁彎曲的教學方法探討[J].中等職業(yè)教育,2006(24):43-44.
[2]李萍.直梁純彎曲實驗的教學改革[J].洛陽理工學院學報:自然科學版,2013, 3(1):91-93.
[3]羅霄,任勇,山秀明.基于Python的混合語言編程及其實現(xiàn)[J].計算機應用與軟件, 2004,21(12):17-18.
[4]狄博,王曉丹.基于Python語言的面向?qū)ο蟪绦蛟O計課程教學[J].計算機工程與科學,2014,36(A01):122-125.
[5]甘輝.基于MARC的板料沖壓成形過程有限元模擬研究[J].機械制造與自動化,2009,38(1):48-50.
[6]趙毅,馬捷.利用Python和GTK+的Linux GUI應用的快速開發(fā)[J].計算機工程,2004,30(8):80-82.
作者簡介:
劉志芳(1984.6-),男,漢族,湖北黃岡人,博士,重慶理工大學,講師,研究方向為機械設計與制造。