APP下载

MATLAB技术在高职《工程力学》教学中应用和研究

2016-09-13崔海军

关键词:力图工程力学子程序

崔海军

(扬州工业职业技术学院 建筑工程学院, 江苏 扬州 225127)

MATLAB技术在高职《工程力学》教学中应用和研究

崔海军

(扬州工业职业技术学院建筑工程学院,江苏扬州225127)

文章借助MALAB软件,探讨了《工程力学》基本题例的MATLAB计算子程序、基于MATLAB单跨静定梁变形可视化研究、单跨静定梁通用模型MATLAB子程序研究以和可视化教学界面研究,在《工程力学》教学中应用MATLAB技术进行辅助教学,提高了教学效果。

MATLAB;工程力学;单跨静定梁;子程序;教学界面

近年来,MATLAB技术广泛应用于工程领域,如桥梁、房屋建筑、机械结构等领域[1]。对于基础课程《工程力学》,MATLAB仿真软件应用,尽管有部分工程力学题型、案例的MATLAB仿真模拟分析,但还需要进一步对工程力学课程内容体系进行梳理,提炼出代表工程力学课程体系的典型题例及框架,运用MATLAB仿真软件仿真及可视化研究,加强学生建模和计算能力,拓宽学生知识面,培养学生创新思维;同时减轻学生的手算工作量,将学生主要精力放在力学模型的理解和力学思维的建立上,进行创造性的工作,从而有效提高《工程力学》教学效果和教学质量[2]。

一、《工程力学》基本题例的MATLAB计算子程序

对于许多力学基本问题,通过MATLAB编程,归结为一个子程序,使力学求解变得简单、方便,求解过程规范,容易掌握。通过对工程力学基本题例的MATLAB子程序编程学习和研究,将力学分析过程与MATLAB编程语言相结合,利用其友好的可视化界面表示出来,加强对力学过程的理解和分析,更好地掌握力学原理,同时通过典型题例的MATLAB编程训练,进一步深化学生对MATLAB编程语言的认识和理解,掌握用MATLAB语言求解力学问题的方法、技巧及需要注意的问题。

针对高职所学力学基本知识及要求,可以归纳和编制如力在坐标轴上的投影、力对点之矩、平面汇交力系合成、支座反力以及内力图绘制等工程力学基本题例MATLAB子程序。同时针对高职学生所学的单跨静定梁类型编制常见6种结构类型单跨静定梁内力求解及内力图绘制通用模型MATLAB子程序。

比如,针对力在坐标轴上的投影基本题例

(1)知识点:投影公式

Fx=±Fcosa

Fy=±Fsina

(2)基本题例

【例】已知F1=100N,F2=50N,F3=60N,F4=80N。各力方向如图1所示。试分别求出各力在x轴和y轴上的投影。

图1

【传统解法】由式(1-2)可求出各力在x、y轴上的投影:

(3)Matlab编程

【程序设计】

clear

F=[100 50 60 80]%输入每个力的大小

degree=[pi/6 acos(-3/5)pi/2 3*pi/4]%输入力与X轴的夹角,弧度

ax=cos(degree)

ay=[sin(pi/6)-4/5 sin(pi/2)sin(3*pi/4)]

Fx=F.*ax

Fy=F.*ay

【运行结果】

Fx=86.6025-30.00000.0000-56.5685

Fy=50.0000-40.000060.000056.5685

再比如,轴向拉伸与压缩内力图绘制基本题例:

【例】绘制如图2所示杆的轴力图。

图2

【传统解法】略

Matlab部分编程

【程序设计】

clear

L=input(′请输入杆件的长度,单位m:′)

nd=3000

nf=nd+1

x=linspace(0,L,nf)

dx=L/nd

……

title(′悬臂直杆轴力图′,′position′,[3,-22],′fontsize′,16)%图名标注

set(gca,′DataAspectRatio′,[1 5 1])%等比例显示,效果等价于axis equal

axis off%取消坐标轴显示

请输入杆件的长度,单位m:6

【运行结果】

图3

二、基于MATLAB单跨静定梁变形可视化研究

在《工程力学》课程的教学中,单跨静定梁的内力计算、内力图绘制以及变形教学是重点内容,同时又是难点内容,传统内力分析和变形计算过程繁琐、复杂[3]。借助MATLAB软件,可以将任意荷载条件下梁的内力(弯矩和剪力)求出,并绘制出内力图,并通过MATLAB强大的绘图功能,可以简单、快捷地将梁的变形情况呈现出来。

如简支梁内力图绘制:

【基本题例】如图4所示梁,已知:F=7KN,q= 2KN/m,M=5KN·m。作结构内力图。

图4

【程序设计】

略。

【运行结果】

如图5。

图5

三、单跨静定梁通用模型MATLAB子程序研究

针对具体的静定梁力学问题,对于初步掌握MATLAB语言的学生而言,通过MATLAB编程,归结为一个子程序,使力学求解变得简单、方便,求解过程规范,容易掌握;而且通过对具体问题力学过程分析及编程,能够加深对问题的理解和把握。但每个静定梁力学具体问题都需要具体编程,使问题分析和求解变得繁琐,而且具体求解时,规律多、过程复杂,特别是在众多复杂载荷作用下,内力的计算及相应的编程相当复杂。

针对组成单跨静定梁的常见六种结构类型,编制在复杂载荷作用下的单跨静定梁通用模型MATLAB子程序,使力学问题研究变得更加简单,而且分析过程更加简洁。通过编制单跨静定梁通用模型MATLAB子程序,只需要根据要求输入相应的几何参数、载荷参数,就可以方便、快捷地解决某一类问题,使编制的力学问题MATLAB求解子程序具有可移植性,更具有普适性。

1.基本原理

计算梁的内力时,因为梁的变形很小,不必考虑其跨长的变化。在这种情况下,内力和荷载成线性关系。一般而言,只要所求的量(如内力、位移等)是荷载的线性函数,则可先求该量在每一荷载单独作用下的值,然后叠加,即为几个荷载联合作用下该量的总值,此即叠加原理。由于内力可以叠加,所以内力图也可以叠加。

2.单跨静定梁通用模型MATLAB子程序应用举例

以单跨静定左端外伸梁为例,编制该梁通用模型MATLAB子程序。

【例】求图6所示单跨静定左端外伸梁剪力图和弯矩图。

图6

【程序设计】

部分运行程序如下:

请输入整个外伸梁的长度,即简支段与外伸段长度之和,单位为m:5

L=5

请输入左端外伸梁左端外伸段的长度,为正值,单位为m:1

L1=1

请输入简支段长度,单位为m:4

L2=4

……

【运行结果】

如图7。

图7

四、单跨静定梁MATLAB GUI可视化教学界面研究

Matlab是一种数据可视化的开放型高级编程语言,其图形用户界面简称为GUI(Graphic User Interface),利用这些界面和设计的回调函数,可以实现人机互动交流,并且实现结构模型和结果的可视化[4]。

借助MATLAB图形用户界面设计单跨静定梁MATLAB GUI可视化教学界面,学生仅需根据题目条件输入参数,点击运行按钮,即可得出力学结果,可以有效地化解教学难点,提高学生学习效率和学习兴趣。

通过对数据结构、前处理程序及数据输入和读取进行设计[5],得到单跨静定梁可视化教学界面。MATLAB在工程力学中的应用,将枯燥、乏味的工程力学问题,结合计算机编程序或者利用图形用户界面求解不但省时省力,而且将计算结果,形象生动地绘制出来,既经济方便,又能实现资源共享,促进《工程力学》信息化教学的开发与建设,提高力学教学效果,具有推广和应用价值。

[1]吴彩铃,曾立.MATLAB软件在力的分解教学中的应用[J].大众科技,2015,(7).

[2]黄方,章向明.MATLAB在工程力学中的应用[J].科技资讯,2014,(28).

[3]王甲春,郑伟伟.MATLAB GUI技术在梁的内力分析可视化中的应用[J].厦门理工学院学报,2009,(4).

[4]李彤,项四通,李吉宗.基于Matlab的材料力学图形用户界面系统开发[J].实验室研究与探索,2010,(8).

[5]崔海军.基于MATLAB单跨静定梁内力和变形可视化研究[J].四川水泥,2014,(12).

(责任编辑:卓如)

G424.1

A

1671-802X(2016)01-0065-04

2016-01-03

崔海军(1979-),男,江苏盐城人,副教授,博士研究生,研究方向:结构工程、桥梁工程和工程力学。E-mail:19408313@qq.com.

江苏省力学学会教育教学研究课题《MATLAB技术在高职<工程力学>教学中应用和研究》(2015jslxjy0003)

猜你喜欢

力图工程力学子程序
工程力学课程思政教学实践
乔·拜登力图在外交政策讲话中向世界表明美国回来了
《工程力学》微课教学模式探索
血栓弹力图在恶性肿瘤相关静脉血栓栓塞症中的应用进展
时空观指导下的模块整合教学——以《20世纪四五十年代力图称霸的美国》为例
《工程力学》课程中PBL教学模式的应用探讨
浅谈子程序在数控车编程中的应用
工程力学
大面积烧伤患者血栓弹力图检测的临床意义
子程序在数控车加工槽中的应用探索