第一篇:《MATLAB及应用》课程教学改革探讨论文
课程是指学校学生所应学习的学科总和及其进程与安排课程。下面是小编为你带来的《MATLAB及应用》课程教学改革探讨论文,欢迎阅读。
摘要:面对质量工程建设,《MATLAB及应用》的数学面临如何调整步伐适应社会需求的问题。本文就《MATLAB及应用》课程的教学内容和教学方法与教学手段的改革进行了探讨。
关键词:MATLAB;教学改革;探讨改革教学内容,找准MATLAB与专业课的结合点
MATLAB是一种高性能的数值计算和可视化软件,学会使用并不是最终目的,关键是利用MATLAB提供的功能用于分析计算,将其引入《汽车理论》等课程教学中。就可以解决学生在学习中所投入精力与教学目标偏离的矛盾,使学生从繁重的手工数学运算中解脱出来,将学习重点放在对课程的基本概念、方法和原理的理解和运用上。而且可以运用MATLAB分析、讨论信号处理的典型问题时,对一些概念和理论,通过图形对比,使学生从理论认识进一步深入到感性理解。
(1)MATLAB运算功能强大,提供的向量、数组、矩阵运算,复数运算,求解高次方程,常微分方程购数值积分运算、最优化方法等,这些都是在汽车理论里经常遇到的计算课题。
(2)MATLAB语言语句简单,极其容易学习与使用。汽车理论本身就有很多理论问题需要研究,再要为学习某种语言及其语法花太多的时间与精力是不可取的。MATLAB正好具有语言简单、掌握方便的特点,是一个理想的工具。MATLAB的强大方便的图形功能,可以使得重复、繁琐计算与绘制图形的笨重劳动被简单、轻而易学的计算操作所代替。而且数据计算准确,图形绘制精密,这是过去从事本专业的人所追求与期盼的事情。
(3)在教学过程中,将MATLAB语言和汽车理论有机结合起来,既降低了汽车理论的抽象性、增强了直观性,又让学生在课堂教学中轻松学会使用最先进的编程工具。例如,在汽车数学模型章节中,调用MATLAB的示例程序中的一些汽车模型。让学生在SIMULINK环境中对这些模型进行仿真,逐步了解一个部件是如何组成,各个环节模型又是怎样的。相互关系怎样,系统又是如何运作的。既深化了汽车系统方面的概念,又学习了如何使用仿真工具SIM-ULINK。课后借助MATLAB工具,给学生布置一些MXTLAB习题,有利于培养学生应用计算机辅助分析和设计系统的综合能力。改革教学方法
2.1 上好第一堂课
从教学经验来看,良好的开端是成功的一半,因此第一节课非常关键。第一堂课的主要任务是让学生对本课程内容有个全面的了解,激发学生对这门课的学习兴趣。在第一节课的教学中,以往年学生所做毕业设计为例,依次介绍GUI的应用、系统仿真波形、数学运算、频谱分析等,让学生对课程内容、为什么要学习MATLAB有一个感性的认识;同时,还演示了一些用LabVIEW开发的仪器面板,让学生对虚拟仪器有个初步的概念,了解虚拟仪器在汽车电子上的应用,从而激发学生的学习兴趣,使学生认识到学习该课程的重要性,为后面的学习起到抛砖引玉的作用。
2.2 改变考核方式
在以往的教学偏重于知识素质的培养,考核的方式是考试+平时作业+实验,其中考试占大部分(70%),对培养学生的综合能力重视不够。尝试对考核方式进行了调整,增大实验环节比重,特别是将实验《MATLAB应用程序设计》进行扩充,要求学生努力编写一个简单的仿真程序,相当于一个简化版的课程设计,完全按照课程设计要求考核学生。这样虽然增加了老师的工作量,又能够促进学生学会使用图书馆检索、互联网查询等先进手段和渠道获得最新的知识和信息。相对更深入地理解所学知识,也会为《汽车理论》课程设计打下了好的基础。加快质量工程建设
3.1 教材建设
目前没有针对教学内容的合适教材,现有的教材一方面内容过多,一方面与汽车系专业课程联系不密切,因此迫切需要一本结合自身教学的教材。教师们已经做了很多前期工作,已完成自编讲义《MATLAB在汽车上的应用》,将MATLAB汽车理论课程紧密相连,用了2年,效果非常好。
3.2 实践环节建设
本着重实践的思想,加大实践环节比重。30学时的课程分出9学时让学生做实验,其中3学时验证性实验,6学时设计性实验,学生动手时间长了,加深了课程知识的理解。并且,在此基础上计划拟增设小课程设计,让学生任选专业课某环节,进行SIMULINK仿真,系统仿真占这两年学生毕业设计课题中很大一部分。3年来的教学实践发现,达到预期效果,学生们在《汽车理论》课程设计中取得良好成绩,并能够在毕业设计中从事基于MATLA的相关课题。结束语
结合学校,改革教学内容,加强实践教学、提高学生综合素质为主要教学目标,从而优化了教学过程。学生在掌握课程本身的同时,也掌握了一门重要的开发语言,为后继专业课程的学习打下了坚实的基础。
参考文献
[1]张学标.专业教学改革的风向标.南京:江苏教育,2010(3).[2]胡爱娜,等.《计算机网络》课程教学改革探索.北京:中国科教创新导刊,2010(22).[3]李楚琳.理论力学教学改革的实践与思考.十堰:湖北汽车工业学院学报,2004(4).
第二篇:应用统计学课程教学改革研究论文
摘要:该文在阐释创新创业教育内涵的基础上,结合高等学校创新创业教学实践,分析了创新创业教育背景下应用统计学课程教学存在的问题,提出了创新创业教育背景下应用统计学课程教学的两种新模式,即“参与式”教学模式与“项目驱动式”教学模式,为全民创新,万众创业形式下高校应用统计学课程教学教学改革提供新的思路。
关键词:创新创业;应用统计学;课程教学改革
1引言及文献综述
1989年,联合国教科文组织在《21世纪的高等教育:展望与行动世界宣言》中提出“创业教育”这一新的教育概念,自此“三创”教育逐渐成为我国高等教育改革与高校转型发展的重要方向。应用统计学是高等学校经济与管理类专业开设的主要课程之一,是计量经济学、质量管理、计量管理、财务管理、系统科学等课程的前导课程。随着科学技术的发展与大数据时代的来临,应用统计学不断地渗透到科学与工程技术、经济与管理等各个领域,并成为这些领域十分重要的组成部分。因此,围绕创新创业教育推进高校应用统计学课程教学改革,提出创新创业教育背景下应用统计学课程教育的新模式,对于更好地促进高等学校人才培养模式改革,提高创新创业型人才培养质量,具有重要意义。当前,针对创新创业教育背景下大学课程改革的研究并不多见。余达锦和杨淑玲(2013年)研究了创新创业教育背景下传统高等数学课程创新教育问题,提出了创新创业教育背景下高等数学创新教育的新模式——高等数学研究型教学。王红雨闫和广芬(2014年)研究了师生认知视野下的高校创业课程体系,认为综合性目标与阶梯性目标的共存、应用性技能与发展性能力的连接、复合型课堂与联盟型平台的联合应成为改进当前高校创业课程目标、完善创业课程内容、优化创业课程形态的基本策略。卢淑静(2015年)分析了创新创业教育嵌入专业教育的原则与机制。许小花和张鸽(2012年)分析了高校创新创业教育与课程体系构建之间的关系。
2创新创业教育的内涵
创新创业教育主要是一种兼顾创新教育和创业教育并以创业教育为重点,注重培养受教育者的创新能力、创新意识与创新思维的教育(王为民,2013年)。创新教育是一种以开创性个体为培养目标,以培养学生创新精神、创造性思维和创新能力为基本价值取向的教育,强调的是对人的具体价值的体现,是培养学生创业意识,开发学生创业基本素质,形成创业基本能力与实践技能的教育。(余达锦和杨淑玲,2013年)。
3创新创业教育背景下应用统计学课程教学存在的问题
(1)应用统计学教材重理论轻应用,重技能轻创新,忽视统计工具的使用与统计案例的解析。(2)应用统计学课程教学观念比较陈旧,教学模式比较单一。由于非统计学专业讲授《应用统计学》课程的教师大都不是学统计专业出身的,这些教师在开展统计学课程的教学之前,都需要进行一定的专业知识进修和提高。同时,应用统计学课程的学习者主要是非统计专业的学生,一定程度上决定了他们对这门课程开设的目的和意义认识不足,缺乏学习动力。而且大部分的学生是文科生,学习此门课程的畏难心理也一定程度上影响了教学效果与教学实施。(3)应用统计学课程教学手段比较落后,统计案例少,统计软件运用不够,难以体现应用统计学课程的应用性特点。部分应用统计学老师对SPSS、MATLAB、EVIEWES、R等统计软件与统计工具掌握不够,运用不够。同时,集统计理论、统计案例分析和统计软件为一体的教科书也不多见。(4)应用统计学课程考核与评价方式单一。大多数高校的考核还停留在期末考试中的“笔试”上,没有真实反映学生运用所学知识决统计问题的能力,不利于对学生统计素养的考查。
4创新创业教育背景下应用统计学课程教学改革设计
创新创业教育背景下,“参与式”和“项目驱动式”教学改革设计在应用统计学课程教学设计的改革中可以得到有效的利用。
4.1“参与式”教学改革设计
“参与式”教学是相对于传统“填鸭式”教学而言的,是一种强调以学生为主体,提倡学生主动参与的教学组织形式。在当前中外现代教学的改革与实践过程中,学生主体的参与得到普遍重视。应用统计学课程参与式教学改革的设计,主要包括激发学生的主动参与理念、第一课堂设计上的全程参与、第二课堂学生的主动参与、第三课堂学生的补充参与4个方面的内容。
4.1.1激发学生的主动参与理念
教学不是教与学的简单组合,它应该是实现教学目标的内在关联与互动机制。学生主动参与而融入教与学的全过程。从逻辑顺序来看,主体参与是教学的出发点。学生对教学活动的积极性是主动参与的前提。传统应用统计学课程教学缺乏必要的激励措施,使得学生参与热情比较低,融入教学的程度、深度不够。因此,要树立学生的主动参与理念,通过对应用统计学课程历史的介绍、对应用统计学课程的重要性的强调以及应用统计案例解析来提高学生对应用统计学课程的认知。
4.1.2第一课堂设计上的全程参与
课堂设计上的学生参与体现的是互动参与式教学法的要求。它以提高学生的实践能力为核心,强调充分调动学生的主观能动性,注重教学过程中教师与学生的“沟通”与“对话”,促使学生在心理上与行动上从“要我学”到“我要学”转变。从而将学生从单纯接受者的角色向学习过程的主体转变,从接受式学习向发现学习、探究学习转变。应用统计学课程课堂设计上的参与过程,主要是指第一课堂的知识传授与互动。主要包括课堂讲授、课内讨论等。一般通过学生回答问题、学生课堂作业练习、学生针对问题进行讨论等形式体现。
4.1.3第二课堂学生的主动参与
第二课堂学生的主动参与主要是指互动实践教学过程,通过实践课程设计以及与统计学相关的课外科技活动平台来实现。如统计软件实践操作大赛、统计调查方案设计大赛、统计案例设计大赛、创新性实验大赛等,在比赛中要求学生能够自主完成选题、设计方案与调查问卷、进行实地调查、利用统计软件处理数据、撰写统计分析报告等。在比赛每一个环节设计上要求学生自发主动地去学习统计理论和方法,并且加入自己的创新元素,以此提升学生多种途径地采集数据、多方法分析数据、多途径评价数据的实践能力,提升学生综合运用统计学知识和使用统计学软件的能力。
4.1.4第三课堂学生的补充参与
第三课堂补充参与主要包括学生利用网络平台以及其他途径的自我学习与释疑。教师可以在Blackboard平台搭建“应用统计学”课程教学平台,开发视频材料、电子教案、多媒体课件、课程游戏、案例分析、习题课和试卷库等多个学习模块。利用网络辅助教学手段,促进学生开展网上自主学习、寻求网上答疑。网络课程教学平台的搭建,有利于学生根据自身的兴趣爱好与课程掌握程度,合理安排学习时间,合理选择学习方法。而教师可以通过网络平台进行作业布置,有利于学生自发组成团队,选择感兴趣的案例进行研讨与攻关。此外,也有利于学生之间以及学生与教师之间通过QQ、微信、电子邮件等开展讨论,而不受时间、地域和空间的限制。
4.2“项目驱动式”教学改革设计
“项目驱动式”教学法是一种以建构主义学习理论为基础的教学方法。该方法的典型特征是以项目为主线,实践为导向,任务为载体。教学过程中能够凸显学生的主体与中心地位,强调教学过程中教师的引导与组织实施安排,倡导学生与学生之间的协作学习。这种教学方法能够很好地把学生的知识构建、素质形成、能力发展融为一体(徐钊,2012年)。应用统计学课程“项目驱动式”教学改革设计一般要遵循以项目的可操作性为前提、尊重学生个体差异、教学控制与考评等相关原则,实施流程主要包括教学准备、项目实施、评价考核3个环节。
4.2.1教学准备
教学准备的主要内容包括教学目标设置、项目设计与背景讲解等。根据学生及其专业的特点,选择与设计可行的具有实际意义的项目是项目驱动式教学的基础。一般而言,所选项目既要保证涵盖课程的重要知识点,又要能激发学生的学习兴趣与动力。首先,项目要有可行性,项目所涉及的背景知识,学生要熟悉、易理解、感兴趣。其次,项目大小和难易要适当。过难、过大、过于综合的项目,将容易挫伤学生的兴趣与积极性,而过易、过小的项目,也难以达到培养学生攻坚克难、勤于探索的精神的目的,无法激发学生的学习兴趣与学习热情。此外,项目还要有阶段性目标和适度的综合性。这样一方面能够使得教师在教学过程中能够对学生的学习动态及时进行控制与评估;另一方面也便于学生对自身的学习情况和掌握程度进行检查与反思。总之,教学准备环节中的项目设计,要注重把学生待掌握的知识和已掌握的知识进行有机融合,能够使学生的思维得以训练、知识结构得到拓展,能力与素质得到提升。
4.2.2项目实施
项目实施环节中,在第一堂课教师就要引导学生,明确将整个项目分解成若干相互关联而有独立的子项目。同时,随着项目的进行,要及时对现行课程教学内容进行补充与重组,甚至还要对参考教材进行二次开发和重新编排。教学中每一个子项目的实施过程中,既要使学生明确该阶段子项目的最终成果形式,也要在课堂上指导学生进行实际操作与演练,还要有学生项目成果的展示以及对成果的最后修正环节。
4.2.3评价考核
评价考核环节的主要内容包括汇报成果、学生研讨、总结点评、目标考核等。要保证应用统计学课程项目驱动式教学的实施效果,必须做好评价考核这一环节。项目成果的评价更重要是学生通过对子项目成果的展示,开展自评与互评,一方面由学生自己去寻找项目的特点与存在的问题;另一方面有学生之间相互去寻找各自项目的优缺点。而老师更多的是引导和帮助他们去提出问题,发现问题。评价与考核不仅在整个项目的最终完成阶段进行,还应该贯穿于每个子项目的实施过程与环节,使得学生能够不断地发现新问题、掌握新知识、锻炼新思维。只有这样才能确保教学目标的真正实现。
参考文献:
[1]余达锦,杨淑玲.创新创业教育背景下高等数学教学方法研究[J].江西财经大学学报,2013(4):122-129.[2]王红雨,闫广芬.师生认知视野下的高校创业课程体系:问题描述与改进策略[J].教育发展研究,2014(5):72-79.[3]卢淑静.创新创业教育嵌入专业教育的原则与机制[J].求索,2015(2):184-187.[4]许小花,张鸽.高校创新创业教育课程体系构建[J].中国电子教育,2012(1):19-21.[5]王为民.高校创新创业教育的理论范式与实践研究[J].郑州航空工业管理学院学报,2013(6):131-135.
[6]徐钊.项目驱动教学法在“概率论与数理统计”课教学中的应用[J].高教论坛,2012(11):36-39.[7]王世通,侯信华.“项目驱动”教学模式在应用统计学教学中的应用研究[J].当代经济,2014(17):111-113.
第三篇:MATLAB论文
MATLAB与在信号与系统中的应用
姓名:江肥 班级:*** 学号:***
摘要:论文通过MATLAB在信号与系统中的应用实例,探讨了MATLAB在信号与系统中的应用方法和技巧,对运用计算机软件完成“信号与系统”课程的波形绘制,微分方程的求解,信号与系统分析具有较好的参考价值。
关键字:MATLAB应用 信号与系统 微分方程
引言
“信号与系统”课程是一门实用性较强、涉及面较广的专业基础课,是电子信息类专业学生的必修课程。它是将学生从电路分析的知识领域引入信号处理与传输领域的关键性课程,对后继专业课起着承上起下的作用。该课程的基本方法和理论大量运用于计算机信息处理的各个领域,特别是通信、图像处理、数字信号分析等领域,应用更为广泛。MATLAB作为一个辅助类的软件可以很好的完成数值计算、信号与系统分析的可视化建模及仿真调试。
1.用MATLAB绘制信号的波形
运用MATLAB绘图,可以很快速和简便的得到响应函数的波形图,通过分析响应的波形将对信号的分析有更深入的了解。
用MATLAB绘制f(t)=e(t+3)-2e(t),其中e(t)为step函数 解:在MATLAB窗口中输入如下命令
f=sym('heaviside(t+3)-2*heaviside(t)')ezplot(f,[-5,4]), hold on,plot([0,0],[-1,1]), axis([-5,4,-1.1,1.1]),hold off 结果如图1:
图1
从图1可以清楚的看到f(t)的时域关系图。
2.利用MATLAB解微分方程
在信号与系统中,连续时间系统处理连续时间信号,通常用微分方程来描述这类系统,也就是系统的输入与输出之间通过他们时间函数及其对时间t的各阶导数的线性组合联系起来。因此,在信号与系统中,求解微分方程对于研究连续时间系统的时域分析非常的重要。下面本文选择了一种简便的方法来处理这类问题,运用MATLAB的方法。
求解线性微分方程
y’’’+5y’’+4y’+7y=3u’’+0.5u’+4u
在输入u(t)为单位脉冲及单位阶跃信号时的解。
解:两边进行拉普拉斯变换(脉冲输入U(S)=1;单位阶跃U(S)=1/S)3s20.5s4B(s)y(s)3u(s)
s5s24s7A(s)
求脉冲响应:A=[1 5 4 7];B=[3 0.5 4];[r ,p,k]=residue(B,A)时域解:t=0:0.2:10 y=r(1)*exp(p(1)*t)+r(2)*exp(p(2)*t)+r(3)*exp(p(3)*t);plot(t,y)得到的波形图如图2-1
图2-1 求阶跃响应:
打开MATLAB中的simulink模块,建立一个模型文件,命名为”li.mdl”。如图2-2
图2-2
单击仿真按钮,然后返回MATLAB中输入一下命令,即可得到如图2-3
图2-3
传统求系统阶跃响应和冲激响应的方法都是对传递函数进行拉氏变换,再和激励函数的拉氏形式相乘,左后求反变换。不仅工程量大,而且得出的结果不直观;本文采用MATLAB建模的方式解决问题,不但简单,而且非常直观的反映了响应函数的特性。
3.根据传递函数求系统的零极点分布,单位冲激响应,单位阶跃响应以及幅频特性
在分析系统的静态和动态特性时,常常可以通过对传递函数进行分析,从而解决系统是否稳定等问题,然而传统的分析方法,常常要借助于人工计算,不仅工作量比较大,而且效率也比较低。而MATLAB解决了这一难题,本文通过调用MATLAB内部的函数进行计算,非常的高效的得到了零级点分布,单位冲激响应,单位阶跃响应以及幅频特性,非常的直观。
例:传递函数是
1H(s) s32s22s1
解:首先建立一个m文件,并且命名为“li.m”
clear
t=0:0.01:10;
num=[1];
den=[1 2 2 1];
sys=tf(num,den)
poles=roots(den)
figure(1),pzmap(sys);%零级点分布
h1=impulse(num,den,t);
figure(2),plot(t,h1);%单位冲激响应的波形
title(‘Impulse Response’)%加标题
h2=step(num,den,t);
figure(3),plot(t,h2);%单位阶跃响应波形
[H,w]=freqs(num,den);
figure(4),plot(w,abs(H));%幅频特性图
xlabel(‘omega’)
title(‘magni tude Response’)%加标题
运行结果是
Transfer function:
---------------------s^3 + 2 s^2 + 2 s + 1
poles =
-1.0000
-0.5000 + 0.8660i
-0.5000-0.8660i 零极点分布如图3-1所示
图3-1
单位冲激响应的波形如图3-2所示
图3-2 单位阶跃响应波形如图3-3所示
图3-3
幅频特性如图3-4所示
如图3-4 结束语
MATLAB软件是目前比较流行的一套商业数学软件,在数值计算、信号处理方面尤为突出。它的出现给信号与系统分析中一些理论的掌握提供了很大的方便,利用其先进的计算机软件环境,可将信号与系统、信号处理中的很多定理直观化、可视化,这对学习这些理论非常有利。
参考文献:
【 1 】燕庆明.信号与系统教程[M].北京:高等教育出版社,2004 【 2 】楼顺天.基于MATLAB的系统分析与设计——信号处理.西安:西安电子科技大学出版社,2001 【 3 】梁红.信号与系统分析及MATLAB实现.北京:电子工业出版社,2002 【 4 】郑君里.信号与系统(第二版).北京:高等教育出版社,2000
第四篇:MATLAB课程总结
MATLAB课程总结
班级:14级电子信息与科学技术
姓名:
孙凯
学号 201442398
在过去的两个月里,我们学习了MATLAB教程这一门课程,对此我有一些自己的思考与感悟。
通过学习,我们了解了该软件的历史,是美国mathwork公司推出的一套高效率的数值计算和可视化软件。作为当今社会最具影响力、最具活力的软件,它起源于矩阵运算,现已发展为一款高度集中的计算机语言。
然后我们又学习了这款软件的功能,学会了用它来进行较复杂的科学运算,并实现高质量图形的可视化及界面设计,与其他程序和语言接口。因此,通过这个软件,我们既可以利用其强大的运算功能,又能使用它进行绘图,在接下来的学习中它必定会展现出更大的作用,与我们的生活息息相关。
这样一款应用相当广泛的数学软件,我们也许才刚刚触及皮毛,但我相信在接下来的学习中老师会带领我们进一步加深对它的使用的熟练程度及认识。
在平时的学习中,我觉得实践操作是很重要的,每次实验课上都需要妥善的利用时间进行操作练习,加强自己对这款软件的操作使用,对课上老师所讲的内容进行印证,把知识点记牢记准,并利用课下的时间进行进一步加强,达到熟练的操作程度,让这一项技能真正的属于我们。
第五篇:matlab课程总结
Matlab 课程总结
学习matlab已经有一年多的时间了,matlab跟其他语言不一样(我用的编程语言,除了matlab就应该是c或c++了,VB也接触过),如果你抱着“把其他语言的思想运用在matlab里面的想法”的话,那么我想,即使程序运行不出错,也很难把握matlab的精髓,也就很难发挥matlab的作用了。
Matlab是一个基于矩阵运算的软件,这恐怕是众所周知的事情了,但是,真正在运用的时候(就是在编程的时候),许多人(特别是初学者)往往没有注意到这个问题,因此,for循环(包括while循环)满天飞„„„„..这不仅没有发挥matlab所长,还浪费宝贵时间。我们往往在初始化矩阵的时候注意到这个问题,懂得了使用矩阵而不是循环来赋值,但是,在其他环节上,就很容易疏忽,或者说,仍然没有摆脱C++的思想。因此,以先用循环(基于C++的思想)来编写代码,然后看看能否用matlab的语言(基于矩阵的思想)来改进。当然,这样做的前提是你对matlab提供的一些函数比较熟悉才行,这些函数在matlab的“帮助”那里搜索“FunctionsUsedinVector izing”就可以找到一些。
对MATLAB的认识和了解
语言简洁紧凑,使用方便灵活,库函数极其丰富。与之前学过的C语言相比较。它的语言简练明了,有时候只要一个字符就能表示出整句语句,不用一步步去读。这种语言简单而实用。每个函数建立一个同名的M文件,如上述函数的文件名为fun.m。这种文件简单、短小、高效,并且便于调试。比如说,函数的赋值。在C语言中,它需要一个个去赋值,x=?;y=?;当变量很多的时候,我们不能一次性的去赋值。并且我们需要注意赋值的类型。而在Matlab软件中,我们只需要知道它的初值,自变量的数值,以及它的范围,就可以用矩阵把整个函数赋值。这减去了我们的工作复杂性,也降低了我们时间花费。
运算符丰富,用Matlab软件设计程序,它更加方便快捷。MATLAB 的基本数据单元是既不需要指定维数、也不需要说明数据类型的矩阵,而且数学表达式和运算规则与通常的习惯相同。因此,在MATLAB环境下,数组的操作与数的操作一样简单。对比C语言,Matlab确实简单不少。我们在编写程序时简便了许多。例如,求1 1 2 3 5 8 13„这个算法。C语言得用许多的语句去循环算这个算法。而Matlab软件可以首先数据初始化,然后用while去循环,做出循环体,就可以你要多少数据,它会给你多少数据。还有在Matlab软件设计程序时,少了很多的定义,减少了复杂度,节省了计算机的暂时内存使用率。就和C语言一样,在语句结束时用“{ }”,Matlab软件中一句话结束时,也需要用end。MATLAB既具有结构化的控制语句(如for循环、while循环),又有面向对象编程的特性。
语法限制不严格,程序设计自由度大。程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。Matlab具有一个强大的工具箱,里面的东西,只要你想要的,你可以毫不犹豫的提取出来,不用想C语言编程中,你要的东西你得用函数调用的形式去借用。这些工具箱提供了用户在特别应用领域所需的许多函数,这使得用户不必花大量的时间编写程序就可以直接调用这些函数,达到事半功倍的效果。MATLAB的图形功能强大。不管你二维图形,三维图形,还是现在流行的四维图形。只要你想要,能编写出来函数式。在短短几秒钟之内,它会呈现在你眼前。另外就是图形的直观性,你在绘编图形时,加上一点修饰,它会自动标注你想要图形的阴影部分。MATLAB 具有二维和三维绘图功能,使用方法十分简便。而且用户可以根据需要,坐标图上加标题。坐标轴标记。文本注释及栅格等,也可以指定图线形式(如实线、虚线等)和颜色。常用的快捷键(用【】表示)或命令: 1.在命令窗口(CommandWindow)中:
1)【上、下键】――切换到之前、之后的命令,可以重复按多次来达到你想要的命令
2)clc――清除命令窗口显示的语句,此命令并不清空当前工作区的变量,仅仅是把屏幕上显示出来的语句清除掉
3)clear――这个才是清空当前工作区的变量命令,常用语句clearall来完成 4)【Tab】键――(转自版友心灯)在[email]matlab@hit.edu.cn[/email]看到的:在command窗口,输入一个命令的前几个字符,然后按tab键,会弹出前面含这几个字符的所有命令,找到你要的命令,回车,就可以自动完成。目前讨论结果是:matlab6.5版本中,如果候选命令超过100个,则不显示。而在matlab7以后版本中,则没有这个限制,均可正常提示
5)【Ctrl+C】(或【Ctrl+Break】)――在matlab程序运行过程中,可能由于程序编写的失误,导致程序不停的运行,在命令窗口输入“Ctrl+C”可以将运行的程序停下来,而不需要将整个Matlab程序关掉。不过进行此操作的前提是能够激活切换到命令窗口才行。2.在编辑器(Editor)中:
1)【Tab】(或【Ctrl+]】)――增加缩进(对多行有效)2)【Ctrl+[】--减少缩进(对多行有效)
3)【Ctrl+I】--自动缩进(即自动排版,对多行有效)4)【Ctrl+R】――注释(对多行有效)5)【Ctrl+T】――去掉注释(对多行有效)
6)【Ctrl+B】――括号配对检查(对版本6.5有效,但版本7.0无效,不知道是取消了还是换了另外的快捷键)7)【F12】――设置或取消断点 8)【F5】――运行程序Coming: 1.help:最有效的命令
1)命令窗口直接敲“help”,你就可以得到本地机器上matlab的基本的帮助信息。2)对于某些不是很明确的命令,只知道大体所属范围,譬如说某个工具箱,直接在命令窗口中敲入
Help toolboxname,一帮可以得到本工具箱有关的信息:版本号,函数名等。3)知道函数名,直接用help funname就可以得到相应的帮助信息。2.see also:不可小瞧的关联
在用help命令的时候,可能因为我们开始估计的方向不一定完全正确,在列出的帮助信息中没有直接给出的我们要找的东西,但是我们一定不要忽略了在帮助的最后列出的see also。3.lookfor:matlab中的baidu 当我们很多什么头绪都没有的时候,我们可以求助于它,往往会收到意想不到的效果。
譬如:曾经在gui编程的时候,遇到过这样一个问题:想拖动鼠标时,要出现一个方框,就像你在桌面上拖动鼠标,会出现虚线框一样。4.get,set:GUIobject属性的帮手
在GUI编程中,我们可能有时候想改变某些object的属性,或者想让它安装自己的想法实现,但是我们又不记得这些object的属性,更别提怎么设置他们的值了。这时,可以用get(handles)得到此对象的所有的属性及其当前值。用set(handles)可以得到对象所有可以设置的属性及其可能的取值。找到我们需要的属性名字和可能的取值之后,就意义用get(handles,‘propertyname’)取得此属性的值,用set(handles,‘propertyname’,values)设置此对象此属性的值。
5.Edit:查看m源文件的助手
在应用matlab过程中,可能我们想看看它的m源文件,当然用editor定位打开也行,但是我经常采用的是直接在command窗口中用edit funname.m,就省去了定位的麻烦。
6.其他常用命令:which,what等
which:定位指定的函数和文件,最好带上参数-all,以便显示更加多的信息 what:获得指定目录的m文件,mex文件以及mat文件名列表 MATLAB学习经验
悟性。上小学最喜欢的一个字就是悟,以前以为悟就是一个人的慧根。其实不是这样的,所谓悟就是想。要保持大脑的活力,要不停的想。有很多事情,技术的、非技术的问题,都是可以想明白的。只有不停的想,才能想明白,想透彻。我经常就在想MATLAB的对象属性,所以很熟悉对象属性。
勤奋。我这个人也比较懒惰的,但是我对自己喜欢的事情还是有一种韧性。我对勤奋的理解是,每天多学一些,多积累一些。在别人谈小资的时候,想想一些现实的技术。看看国外倾泻而下的标准、技术、商品,如何突围?只有靠我们每个人的勤奋。每当想起我们那些在国外做了七八年的竞争对手,要在中国打败他们,就只有靠时间、压力和汗水的积累。喜欢上海的一个理由,就是这里的快节奏,可以不会让我那么懒惰。有一些事情我想是可以值得骄傲一下的:有半年时间,平均每天学习MATLAB到半夜两点以后;有两个除夕夜,都是在编写程序。
坚持。做潜力开发的培训,往往要培养一个人永不放弃的斗志和信念。搞MATLAB也是这样,涉及的领域太多,每个领域里面都缺乏足够的专家分布在你周围。那么我们很难有机会接触到真正的高手,对我们的技术细节一一指点。在遇到实际问题时,就只能靠自己去摸索。常常是再坚持一两个小时,就能够解决你的问题。最大的成就感,就在付出了极大的心血和耐心,才取得一个艰难的小胜利。(真的做完一件事情,也许那感觉就是一个字:累)印象很深刻的一件事情,有一次SCIE与我聊起一个混合编程的问题,喋喋不休的讲完了第七种方案(因为好几个我没有听懂),依然不能解决问题,又想到了第八种方案。如果没有坚持,一般人也就能够想到第三步、第四步,如何能够达到圣人的境界?
付出。这也许是一个过时的话题,但是我坚信,付出依然能够给我们带来可观的回报。付出,不是今天老板给了你薪水,你可以继续为他工作一个月。我所理解的付出,是每天为公司、国家多工作两个小时。有一些规则是显性的,有一些规则不是那么容易发现的,是潜规则。我不是倡导无私,我只是希望通过自身的努力,提高公司的竞争力,提高民族的竞争力。在这个过程中,也相应的提高了作为个体的技术工程师的竞争力。现代的竞争是激烈而残酷的,只有熟悉地缘政治的人,才能有深刻的理解。没有朋友感兴趣,就培养这个群体。土壤厚重了,我们这些生物才能生长得更茂盛一些!
也许这就是一种正常的生存状态吧,不知道是否有更好的办法?如果你要做很多事情,就必须协调好。而我不太擅长此事,所以在很多事情之间穿梭。常常是同时做两件事情,计划着第三件事,夜里想着第四件事。时间长了,反倒习惯了一种忙乱的状态,可以做很多事情,做好一件马上就是下一件。只有等到这些都告一段落,就可以好好的放松一下了。
多动手写程序、调试。如果懒得写程序,调试程序,永远无法提高。我个人认为调试程序更重要。有些人可能在一个程序调试几下出不了结果时,就可能喜欢去问别人,我不太赞同这一做法。其实,凡事往往经过痛苦折磨后,才会让你印象深刻,收益更大。我建议在你觉得用尽你努力后,仍然无法有结果时,才去请教别人。我当初一个程序调试过一两个星期都有过。在这论坛上,你可以发现不少好的问题,对这些问题,不要光看别人如果解决,也不要光想怎么解决,自己坐下来,动手自己解决一下,那你就会把不是你的知识变成自己的知识。善于利用MATLAB的帮助。可以这么说,任何问题都可以在MATLAB的帮助里找到解决的办法。问题不论大小,都是由更小的问题组成,把大问题化为小问题,小函数,然后再到MATLAB帮助里去找这种小问题,小函数的用法。说实话,MATLAB里的函数太多,我也经常忘记一些用法,这时HELP就帮忙了。
善于向别人学习。在你解决一个问题后,你可能会发现别人有更简便的方法解决,更强的函数,就是你向别人学习的时候。
遗憾如果我能够与Mathworks的人直接沟通,也许能够了解更多的技术细节。我们对MATLAB的很多困惑,也许就是他们曾经面对的问题。比如Compiler的发展方向,我想当初这些技术工程师也做了很多争论。如果他们能够得到一些其他的反馈信息,也许在编译器方面做得更好。
时间总是一种稀缺资源,与同行的交流还不够充分。比如对某些领域的了解,依然很片面。看到很多朋友,对一些相关行业和领域,都能侃侃而谈,实在是一种羡慕。数学基础实在不好,很多算法问题总是想不明白。数学天才们的思维训练,看来是没有机会接受了。
随着对技术的理解加深,有一些看法在逐步转变。以前以为一个好东西,总能够保持其优势。然而现实生活中,技术发展太块了,仅有这些还不够。不选择更新,只有被淘汰,无论是技术,还是做技术的人。
MATLAB真是一个好工具,也只能是一个好工具。它可以作为一个平台,承载知识和算法,那么核心的竞争力将是它实现的技术和产品。现在的公司,主营业务是通信软件。以后的职业规划,将更多的与通信沾边了。又是一个陌生的领域,又是一个必须要全力以赴的专业。
总的来说,学习任何一门语言,态度决定一切。