多语言展示
当前在线:1042今日阅读:138今日分享:34

matlab入门教程,如何快速学会matlab软件?

对于大多数刚接触matlab软件的学员来说,我相信你们和我当初一样,走过很多弯路,买过许多书籍,在网上通宵下载过好几十G的资料或者视频,结果还是一头雾水。我从事matlab软件分析接近6年了,在此给你们说一下matlab的学习方法和思路,希望你们不要走以往的弯路,有希望我的建议对你们有所帮助。
工具/原料

个人觉得比较好的自学教程:10天学会matlab教程 --- 10matlab.com

方法/步骤
1

如何选择学习资料?   由于matlab是一款功能强大的软件,涉及的领域很广,学习难道较大,目前市场上matlab的教程权威的并不多,个人推荐使用《10天学会matlab教程》,以我的经验个人觉得这套教程对学习matlab帮助是很大的,我们除了能对软件有一个操作有很详细的了解,还详细的讲解了理论知识的视频,我刚接触到这套教程的时候,给了我很多帮助。我推荐这套教程给大家的主要原因不主要是因为教程讲解的详细,而是使用matlab处理具体的问题时,我们经常会遇到大量ERROR提示,但我们却不能时刻的去问老师,而购买这套教程后我们可以随时与在线辅导老师沟通寻求帮助,这是很可贵的。 但想要精通matlab其实并不是一件容易的事情,我们不得不从理论开始,在结合软件的操作和帮助文档去帮助我们快速入门,有好的教程也需要我们有耐心去学习,我身边有无数学习ANSYS的同事,但最终能完全学好的没有几个,所以找到正确的方法,坚持学习很重要。

3

matlab的一些特点A.Matlab是一个基于矩阵运算的软件,这恐怕是众所周知的事情了,但是,真正在运用的时候(就是在编程的时候),许多人(特别是初学者)往往没有注意到这个问题,因此,for循环(包括while循环)嵌套了十几层,这不仅是暴殄天物(没有发挥matlab所长),还浪费了你宝贵的时间,就只见左下角一直busy。 B.友好的界面,易于操作 ,虽然matlab一打开总看到命令行窗口,其实matlab有很多的GUI工具箱,可以很方便实现很多功能,对于一些不喜欢写代码的人来说,使用起来非常方便。举些例子曲线拟合工具箱cftool,曲面拟合工具箱sftool ,遗传算法工具箱gatool…等等 C.matlab绘图功能,matlab可以非常方便的绘制二维,三维,四维,矢量图形。 例如: plot: x轴和y轴均为线性刻度(Linear scale) loglog: x轴和y轴均为对数刻度(Logarithmic scale) semilogx: x轴为对数刻度,y轴为线性刻度 semilogy: x轴为线性刻度,y轴为对数刻度 bar 长条图 errorbar 图形加上误差范围 fplot 较精确的函数图形 polar 极座标图 hist 累计图 rose 极座标累计图 stairs 阶梯图 stem 针状图 fill 实心图 feather 羽毛图 compass 罗盘图 quiver 向量场图 下面给几个matlab绘出一些特殊图形看看matlab绘图的效果

4

D.丰富的库函数(而且比较好用),这个看自己专业相关工具箱,涉及太广无法一一介绍。

5

学习matlab心得体会 我觉以下几点对于学好matlab很重要:兴趣、悟性、勤奋、坚持。 兴趣,不知道哪位名人说过“兴趣是最好的老师。”我觉得非常有道理,我曾对于matlab制作动画很感兴趣,并收集了很多例子,在小木虫贴出来后很多人对于matlab制作动画都很感兴趣,计算模拟版活动---程序模拟动画展示 ,一个人一旦对某事物有了浓厚的兴趣,就会主动去求知、去探索、去实践,并在求知、探索、实践中产生愉快的情绪和体验。这样才能主动学习,并且学好到精通。 悟性,通常人认为指顿悟,慧根,我觉得就是对一个问题不断的思索,将自己的体会和感受融合,获得属于自己的知识。有很多事情、问题,都是可以想明白的。只有不停的想,才能想明白,想透彻。就像我自己解决matlab编程进行DGGE电泳图谱多样性相似性分析,当时没有工具,而且问题必须解决,于是我不停的想,吃饭时,睡觉前,最终终于解决。 勤奋,一勤天下无难事。从古到今,有多少名人不是有勤奋而得来成功的。现在的年轻人,一代比一代聪明。要不被别人淘汰,要超越别人,只有靠时间堆出来。每天多学一些,多积累一些。学习matlab也一样,想要学会,使用熟练,不花时间练习,写代码,亲自运行调试,是很难掌握好的。 坚持,认准了的事情,就坚持做到底,直到有所收获。事实上,很多人实现不了自己的目标,很大程度上就是少了一种坚持、非要把事情干到底的精神,他们往往浅尝辄止,因此眼睁睁失去了可能到手的成功。光有兴趣,只有三分钟的热情是很难成事的。很多事情的成功取决于踏平坎坷地坚持的毅力。看准了的事情,如果没有百折不挠的坚持,绝难取得成功。看准的事情就不屈不挠地坚持干下去直至成功,才是智者的唯一选择。每一个人都明白所有梦想的实现都需要努力,然而,很多人只所以没有实现心中的梦想,就在于多了空想、犹豫,少了努力坚持。

6

至于具体方法: 1.多动手写程序、调试这里有些常见错误提示信息供大家参考 1.Subscript indices must either be real positive integers orlogicals 中文解释:下标索引必须是正整数类型或者逻辑类型 出错原因:在访问矩阵(包括向量、二维矩阵、多维数组,下同)的过程中,下标索引要么从 0 开始,要么出现了负数。注:matlab的语法规定矩阵的索引从 1 开始,这与 C 等编程语言的习惯不一样。 解决办法:自己调试一下程序,把下标为 0 或者负数的地方修正。 2.Undefined function or variable "a" 中文解释:函数或变量 a 没有定义 3.Input argument "x" is undefined 中文解释:输入变量 x 没有定义 4.Matrix dimensions must agree Inner matrix dimensions must agree 中文解释:矩阵的维数必须一致 出错原因:这是由于运算符(= + - / * 等)两边的运算对象维数不匹配造成的,典型的出错原因是错用了矩阵运算符。matlab通过“.”来区分矩阵运算和元素运算 5.Function definitions are not permitted at the prompt or inscripts 中文解释:不能在命令窗口或者脚本文件中定义函数 出错原因:一旦在命令窗口写 function c = myPlus(a,b),此错误就会出现,因为函数只能定义在 m 文件中 6. 1) X must have one or two columns    2)Vectors must be the samelengths 中文解释: 1. X 必须是 1 或者 2 列 2. 向量长度必须一致 7.One or more output arguments not assigned during call to'...' 中文解释:在调用...函数过程中,一个或多个输出变量没有被赋值 8.??? Error using ==> mpower Matrix must be square 中文解释:错误使用mpwoer函数,要求矩阵必须是方阵 9.Explicit integral could not be found. 中文解释:显式解没有找到 10.Index exceeds matrix dimensions. Attempted to access b(3,2); index out of bounds becausesize(b)=[2,2]. 中文解释:索引超出矩阵的范围 11.In an assignment   A(I) =B, the number of elements in B and I must be the same 中文解释:在赋值语句 A(I) = B 中,B 和 I 的元素个数必须相同 12.To RESHAPE the number of elements must not change 中文解释:矩阵变换时,变换前和变换后的总元素不能改变

7

善于利用MATLAB的帮助 一遇到什么问题,通常我的第一反应是:help,就先说说自己对help的一些常用方法吧。 1)命令窗口直接敲“help”,你就可以得到本地机器上matlab的基本的帮助信息。 2)对于某些不是很明确的命令,只知道大体所属范围,譬如说某个工具箱,直接在命令窗口中敲入 Help toolboxname,一帮可以得到本工具箱有关的信息:版本号,函数名等。 3)知道函数名,直接用help funname就可以得到相应的帮助信息。

8

善于向别人学习,多看牛人写的代码并消化 三人行,必有我师,一个人很难什么都精通,取长补短是最快的进步方法。Matlab的File exchange和pudn上都用很多代码,多看看牛人写的代码,了解他们编程技巧和思想,并消化,对于提高自己的编程水平非常有利。

9

时间积累 “冰冻三尺非一日之寒”,学习需要日积月累,多积累一些matlab的技巧,对于编程是很有利的,比如求序列中的极值,下面一些正是小代码体现大智慧的典范!

推荐信息