崔海軍
(揚州工業(yè)職業(yè)技術(shù)學(xué)院,江蘇 揚州 225127)
基于MATLAB單跨靜定梁內(nèi)力和變形可視化研究
崔海軍
(揚州工業(yè)職業(yè)技術(shù)學(xué)院,江蘇 揚州 225127)
在Matlab 環(huán)境下,借助其圖形用戶界面技術(shù),開發(fā)用于計算單跨靜定梁內(nèi)力和變形的圖形用戶界面。該圖形用戶界面可以解決6種單跨靜定梁結(jié)構(gòu)的內(nèi)力和變形計算問題,方便、快捷,對力學(xué)教學(xué)及對力學(xué)知識的理解和掌握有很大的幫助。
Matlab 靜定梁 內(nèi)力 變形 圖形用戶界面
1982 年美國Math Works 公司推出的矩陣工作室Matlab(Martix Laboratory)是一個高效的科學(xué)計算軟件[1],是一種集數(shù)值計算、符號運算、可視化建模、仿真和圖形處理等多種功能于一體的優(yōu)秀的圖形化語言。GUI圖形用戶界面的設(shè)計是Matlab的一個重要功能,利用GUI技術(shù)可以充分發(fā)揮Matlab強大的可視化能力,在諸多科學(xué)計算領(lǐng)域里實現(xiàn)分析過程和結(jié)果的可視化[2-5]。本文借助Matlab GUI技術(shù),將單跨靜定梁內(nèi)力圖和變形圖形象、直觀地在圖形用戶界面求解,并可可以方便顯示出相應(yīng)的最值,并以右端固定單跨靜定懸臂梁圖形用戶界面設(shè)計為例闡述設(shè)計過程,在此基礎(chǔ)上闡明單跨靜定梁內(nèi)力和變形可視化圖形用戶界面的設(shè)計過程。
1. 數(shù)據(jù)結(jié)構(gòu)
Matlab GUI可視化界面要求在交互式界面上輸入相應(yīng)的參數(shù),然后運行相關(guān)Matlab GUI及其回調(diào)函數(shù)。對于右端固定單跨靜定懸臂梁內(nèi)力分析及變形研究需要輸入結(jié)構(gòu)的幾何尺寸參數(shù)、載荷參數(shù)意見相應(yīng)的材料參數(shù)。因此,建立了L_date、load、M_load、a、P_load、b、q_load、c、d、E、I等矩陣,另外對于參數(shù)的輸出建立了M、V、Sita、Y、zuizhi等輸出矩陣。
2. 前處理程序
在前處理中使用界面交互的形式輸入數(shù)據(jù),同時實現(xiàn)通過讀寫文本文件多次操作數(shù)據(jù)。共有一個主界面、4個axes坐標(biāo)軸對象、4個Edit Text編輯文本對象、2個push button觸控按鈕、17個Static Text靜態(tài)文本對象,6個Panel面板對象。
4個Edit Text編輯文本對象用于已知條件數(shù)據(jù)的輸入,如結(jié)構(gòu)幾何參數(shù)、荷載參數(shù)、材料彈性模量以及截面慣性矩;2個push button觸控按鈕用于程序的運行及結(jié)束清除變量;4個axes坐標(biāo)軸對象用于繪制剪力圖、彎矩圖、轉(zhuǎn)角曲線圖和撓度曲線圖;Static Text靜態(tài)文本對象用于輸出彎矩最大值、彎矩最小值、剪力最大值、剪力最小值、轉(zhuǎn)角最大值、撓度最大值;6個Panel面板對象使界面更加美觀[6]。
完成各個控件的布局,需要根據(jù)控件的功能編制各個控件的回調(diào)函數(shù),用右鍵單擊該
控件,點擊對話框中view callbacks,選擇一種激活回調(diào)函數(shù)的方式,就可以編制相應(yīng)的回調(diào)函數(shù),完成一定的功能。
3. 數(shù)據(jù)的輸入及讀取
如圖1所示右端固定懸臂梁。F = 3KN,q = 2KN/m,M = 6KN﹒m,a = 3m,彈性模量
E=2×108KPa,慣性矩為6×10-6mm4KPa。對其內(nèi)力及變形分析。L_date=[ 6 0 0 0],Load=[1 -6 3 0; 2 3 0 0; 3 2 0 3]。數(shù)據(jù)輸入如圖2所示。輸入數(shù)據(jù)后
圖1 懸臂梁計算圖
圖2 右端固定懸臂梁圖形用戶界面
4. 程序運行
完成數(shù)據(jù)輸入后,點擊界面“運行”按鈕,在4個axes坐標(biāo)軸對象內(nèi)分別繪制剪力圖、彎矩圖、轉(zhuǎn)角曲線圖和撓度曲線圖;同時再右下方的8個Static Text靜態(tài)文本對象顯示出彎矩最大值、彎矩最小值、剪力最大值、剪力最小值、轉(zhuǎn)角最大值、撓度最大值。
1. 數(shù)據(jù)結(jié)構(gòu)
L_date:第1列梁全長, L表示,第二列外伸段長度,L1表示,第三列簡支段長度,L2表示,第四列外伸段長度,L3表示。后三列如沒有則為0
2. 前處理程序
與前面程序界面相類似,主界面增加一個彈起式菜單,可以選擇梁的類型。
3. 數(shù)據(jù)的輸入及讀取
如圖3所示兩端外伸梁。彈性模量E=2×108KPa,慣性矩為6×10-6mm4KPa。L_date=[12 2 8 2],Load=[1 8 8 0; 2 2 -2 0; 3 2 0 10]。數(shù)據(jù)輸入如圖4。
圖 3兩端外伸梁計算圖
圖 4
4. 程序運行
完成數(shù)據(jù)輸入后,點擊界面“運行”按鈕,在4個axes坐標(biāo)軸對象內(nèi)分別繪制剪力圖、彎矩圖、轉(zhuǎn)角曲線圖和撓度曲線圖;同時再右下方的8個Static Text靜態(tài)文本對象顯示出彎矩最大值、彎矩最小值、剪力最大值、剪力最小值、轉(zhuǎn)角最大值、撓度最大值。
MATLAB語言盡管相對容易學(xué)習(xí),但理解、掌握及靈活運用程序有一定的難度。而單跨靜定梁MATLAB GUI可視化教學(xué)界面,使用者只需根據(jù)軟件說明在圖形用戶界面輸入?yún)?shù),點擊運行按鈕,即可得出力學(xué)結(jié)果??梢越鉀Q目前工程力學(xué)教學(xué)由于學(xué)時及實驗經(jīng)費的限制,難以從動手能力感性認(rèn)識方面培養(yǎng)學(xué)生的問題,對于提高學(xué)生學(xué)習(xí)的積極性、加強對所學(xué)知識的理解和掌握有很大的幫助。
[1]毛濤濤,王正林.精通MATLAB GUI設(shè)計[M],北京:電子工業(yè)出版社,2008
[2]王玉山,王銳.Matlab在材料力學(xué)超靜定問題求解及粱變形可視化中的應(yīng)用[J].石河子大學(xué)學(xué)報:自然科學(xué)版,2007,25(1):27-30.
[3]黃斌,姚正軍,王紅杰,等.材料力學(xué)性能檢測虛擬實驗的設(shè)計和開發(fā)[J].實驗力學(xué),2005,20(4):573-578.
[4]周全勝,王連明,邢雪峰,等.基于MATLAB的網(wǎng)絡(luò)交互式虛擬現(xiàn)實實驗系統(tǒng)的研究[J].實驗技術(shù)與管理,2007,24(9):102-105.
[5]喬閃.基于MATLAB面向課題的數(shù)字圖像處理實踐教學(xué)[J].實驗技術(shù)與管理,2005,22(8):93-96.
[6]李彤,項四通,李吉宗.基于Matlab的材料力學(xué)圖形用戶界面系統(tǒng)開發(fā),實驗室研究與探索,29(8) :42-44+69
G322
B
1007-6344(2015)04-0331-01
崔海軍(1979—),男,碩士,講師,從事結(jié)構(gòu)工程、道路橋梁工程等方面研究工作。