☆☆如何学习MATLAB☆☆
大多数朋友第一次接触MATLAB一般都是在大学里面开设的MATLAB课程,第一次真正使用MATLAB是在自己的毕业论文中用到。所以对于MATLAB可以说是既爱又恨。爱,是因为使用MATLAB几乎可以实现目前大多数专业领域的几乎所有的算法、系统的仿真验证。恨,是因为对于初学的我们,几乎无从下手,不知道如何学习。参考各类数据,照着写一遍,写完之后,感觉还是不知道在写什么,我相信大多数同学会有这个感触。这里和大家分享下个人以及几个同事朋友的学习经历。
☆第一阶段、刚接触MATLAB。
大学二年级的时候,第一次接触了MATLAB这个课程,当时的感觉是,这个M语言太神奇了,因为原来大一的时候,只学过VB/C/C++这类语言,任意一个简单的功能,都需要大量的程序去实现。对于一些理论公式的仿真显得非常的麻烦。当接触到MATLAB的时候,感觉原来的问题都不是问题了。但是新的问题又来了,看了课本的MATLAB知识,完全不知道怎么去学习,因为几乎都是新的领域,而且每一个知识点,MATLAB都几乎自带的各类工具箱toolbox供用户调用。整个大二一年,几乎都是在抄写课本MATLAB案例中度过,而对于一个新的问题,就又不会了。这个过程确实非常痛苦,想学,没捷径,想不学,但是很多仿真分析又少不了他。记得大学老师提过,学习MATLAB,并不是学习M语言本身,而是要对自己研究的理论公式要有充分的认识。有了理论知识之后,再去学习对应的MATLAB,才会更容易理解MATLAB的编程方式。
这个阶段,会基本掌握MATLAB的各种数学表达式的编程方式,如积分,微分,方程组等等,以及基础的画图方式plot,semilogy,imshow等等。然后会使用MATLAB对简单的案例进行编程仿真,如通信专业的同学,使用matlab设计FIR滤波器,图像处理专业的,使用matlab设计简单的图像增强处理等,控制类专业会使用matlab编写PID控制器等等。
当然,这个阶段,也会有大量的同学放弃学习,因为随着MATLAB课程的结束,就很少回去使用MATLAB。
这个阶段,常用的参考资料,有学校的MATLAB书本,MATLAB宝典,并学会几种自己专业领域的函数工具箱。
☆第二阶段、会使用MATLAB做一些简单的数据分析。
一般在大学里,大四的时候,会在毕设过程中,第二次接触MATLAB,这个时候,一般会有导师带着学生研究理论,并提供一部分参考代码供学生学习和研究。这个过程其实是对matlab的一个巩固,有了第一阶段的学习基础之后,有能力逐步看明白老师提供的代码,并尝试自己调试系统参数,或者开发自己课题的程序。
这个阶段,同学们应该会自己上网搜索各种资料,查找各种源码,然后自己修改程序或者调试参数。
☆第三阶段、会使用MATLAB复现各类参考文献的仿真图。
这个阶段,大多数在读研阶段,为了完成导师的各种科研论文,需要参考大量的文献期刊,并对其中的算法进行仿真分析,由于大多数文献是不提供程序的,这就需要首先学习文献的理论,吃透每一个公式的含义以及各个参数设置的物理意义。然后结合MATLAB自带的各种工具箱进行编程实现算法。
记得当初自己学习过程中,第一篇独立完成的参考文献是一个关于通信中载波同步的文献,现在看来当然很简单,但是当时做的时候,感觉难度极大。基本上从中频信号的输入,解调,匹配滤波,鉴相器,环路滤波等多个环节都进行了详细的推导验算,反复修改MATLAB程序,大概折腾了2个多星期才勉强得到参考文献中的仿真结果图。相信大多数同学也有类似的经历。这里,我想说的是,这个过程很痛苦,但是千万别放弃,在你独立完成第一个参考文献的算法仿真之后,你会发现,做第二个,第三个,第N个文献,会越来越顺手。这是因为MATLAB的编程是一种完全基于理论公式的编程方式,掌握了理论知识以及基础的矩阵编程技巧以及工具箱之后,相同专业领域的算法编程都会觉得非常的简单。
那么到了硕士毕业阶段,也可以独立应付核心期刊发表,毕设论文中涉及到的各种仿真图的仿真实现了。
☆第四阶段、会使用MATLAB做各种实际系统项目的理论论证、算法预研等。
这个阶段,部分同学在读博阶段,也有部分同学在实际的工作阶段,会使用MATLAB辅助完成各种方案的论证,创新算法的仿真等工作。到了这个阶段,基本的编程技巧,工具箱,以及理论基本都以掌握,MATLAB更像是自己的第二语言一样,用来描述各种自己的理论设想,或者是项目方案的论证。
综上所述,学习MATLAB没有捷径,只能在不断的练习中不断的进步,逐渐掌握MATLAB。
☆☆如何学习MATLAB☆☆的更多相关文章
- 深度学习Matlab DeepLearningToolBox 工具包最常见错误解决办法\
deeplearningtoolbox 下载链接github : https://github.com/rasmusbergpalm/DeepLearnToolbox,只需要解压到matlab当前工 ...
- MATLAB数字图像处理学习笔记
我们都知道一幅图片就相当于一个二维数组,可以用一个矩阵来表示,而MATLAB可以说就是为矩阵运算而生的,所以学习图像处理,学习MATLAB势在必行! 一. MATLAB基础知识 1. 读取图像 %im ...
- 【转】取模(mod)与取余(rem)的区别——Matlab学习笔记
昨天在学习Matlab的数学函数时,教程中提到取模(mod)与取余(rem)是不同的,今天在网上具体查了一下: 通常取模运算也叫取余运算,它们返回结果都是余数.rem和mod唯一的区别在于: 当 ...
- MATLAB入门学习(七)
开始,线性代数和微积分了,不怕.不怕. 背命令就行了... 线性代数 解线性方程组: Ax=b A是系数矩阵,x未知数,b是列向量 如果有唯一解,直接x=b\A 第二 B=null(A,'r')求Ax ...
- 数字图像处理学习笔记之一 DIP绪论与MATLAB基础
写在前面的话 数字图像处理系列的学习笔记是作者结合上海大学计算机学院<数字图像处理>课程的学习所做的笔记,使用参考书籍为<冈萨雷斯数字图像处理(第二版)(MATLAB版)>,同 ...
- matlab GUI封装exe文件
学习matlab过程中,有时有些程序处理数据时老是看着代码,也会觉得疲倦,那么要试一试matlab的GUI吗?我就是这么使用matlab的GUI制作一个小程序,并且使用matlab封装成了exe文件. ...
- 《量化投资:以MATLAB为工具》连载(2)基础篇-N分钟学会MATLAB(中)
http://www.matlabsky.com/thread-43937-1-1.html <量化投资:以MATLAB为工具>连载(3)基础篇-N分钟学会MATLAB(下) ...
- 《量化投资:以MATLAB为工具》连载(1)基础篇-N分钟学会MATLAB(上)
http://blog.sina.com.cn/s/blog_4cf8aad30102uylf.html <量化投资:以MATLAB为工具>连载(1)基础篇-N分钟学会MATLAB(上) ...
- MATLAB for循环优化三例
最近一周,对MATLAB有进行了新一轮的学习,对其矩阵化编程的思维有了更深入的了解.确实精妙! 例1: 将矩阵A= [1 2 3; 2 4 3; 3 4 5]中所有的数字3替换为33. 如果还停留在C ...
随机推荐
- Java读写XML代码示例
采用技术:dom4j 需要jar包:dom4j-1.6.1.jar 主类如下---- public class dom4jTestXML { /** * * 方法描述:读取XML文件示例 备 注 ...
- 第10组 Beta冲刺 总结(组长)
1.基本情况 组长博客链接:https://www.cnblogs.com/cpandbb/p/14050808.html 答辩总结: ·因为alpha阶段的产品做得偏离了方向,所以beta冲刺大家非 ...
- 一文了解Flink State Backends
原文链接: 一文了解Flink State Backends 当我们使用Flink进行流式计算时,通常会产生各种形式的中间结果,我们称之为State.有状态产生,就必然涉及到状态的存储,那么Flink ...
- Flutter 2022 产品路线图发布
为了提升产品的透明性,每年年初 Flutter 团队都会发布今年度的产品路线图,以帮助使用 Flutter 的团队和开发者们根据这些优先事项制定计划. 2022 年 Flutter 团队将重点通过关注 ...
- day4 对偶数、偶数位的操作
1.函数fun()的功能:从低位开始取出整形变量s中偶数位上的数,依次构成一个新数放在t中.高位仍在高位. 效果理想:但是经测试的时候出现了错误 输入987654321时,打印出来的却是18681.经 ...
- 达索CATIA许可证(License)管理使用和优化
现下主流的V6版本CATIA,是由达索公司提供授权的浮动型License,其客户端通过企业内网从许可证服务器获得许可证,最少要有一个服务器端DS License Server提供一定数量的Licens ...
- LATEX图片位置
常用选项[htbp]是浮动格式: -『h』当前位置.将图形放置在正文文本中给出该图形环境的地方.如果本页所剩的页面不够,这一参数将不起作用. -『t』顶部.将图形放置在页面的顶部. -『b』底部.将图 ...
- leetcode 120. 三角形最小路径和 及 53. 最大子序和
三角形最小路径和 问题描述 给定一个三角形,找出自顶向下的最小路径和.每一步只能移动到下一行中相邻的结点上. 例如,给定三角形: [ [2], [3,4], [6,5,7], [4,1,8,3] ] ...
- 【笔记】论文阅读:《Gorilla: 一个快速, 可扩展的, 内存式时序数据库》
英文:Gorilla: A fast, scalable, in-memory time series database 中文:Gorilla: 一个快速, 可扩展的, 内存式时序数据库
- MyCms 自媒体 CMS 系统 v2.6,SEO 优化升级
MyCms 是一款基于Laravel开发的开源免费的自媒体博客CMS系统,助力开发者知识技能变现. MyCms 基于Apache2.0开源协议发布,免费且不限制商业使用,欢迎持续关注我们. V2.6 ...