软件基础与计算物理(1)MATLAB入门简介
下载去北邮人吧(免费申请一个账号,一定要用NKUWLAN六维网)
https://bt.byr.cn/details.php?id=246172&hit=1 有详细的破解文件和破解方法,看着安装就行
对于一个刚刚打开matlab的人来说,看看下面的视频教程,2倍速了解一下基本操作,别看着软件蒙
https://www.bilibili.com/video/av32871022?from=search&seid=8079888308868856227
Matlab基本操作
1.打开当前目录文件

点击此处,剩下的就都没问题了
2.用脚本写代码,别用交互界面写

3.会看help文档,其实我推荐还是看英语的比较好,直接help name
但是但是。。。一旦发现了更好的还是用的,我以前都是用Google浏览器直接网页翻译,都是看中文的,不过一次偶然的机会发现了它专门为中文的开了网站,o( ̄︶ ̄)o,可能市场比较大吧,网站,直接在上面搜就很合适了
https://ww2.mathworks.cn/help/matlab/index.html

4.剩下的边学边找吧
一个精简版的快速入门(主要是数学部分)
1.+-*/ ^(多少次方) ,运算顺序和规则完全符合数学规则 ,特殊变量的表示:
i或j 复数; Inf 正无穷; eps 很小很小的一个数; pi π
编程什么的基本思想同C++,此处略去一年级学的编程(主要是C++事太多,忘了),忘了的就help
2.矩阵部分
划重点:matlab所有的数据都是矩阵,无论怎么变化都离不开矩阵的基本用法,例如两个数组放一块了,就是线代上分块数组,是高度符合数学规则的,不要记忆太多,想清楚关键。
用中括号输入,行向量每个向量之间用空格和逗号,换行成多列时用“;”
矩阵的所有运算同线性代数所学,不加赘述
size(A)是求矩阵的大小,若是size(A,1)求行数;若size(A,2)求列数
关于索引部分,和python有很大的差距,我还是觉得python好用
对于数组的索引(1*n矩阵)
1.python用[] ,此处用()
2.python的切片法是从0开始不包含最后一个,此处从1开始且包含最后一个
3.python步长在最后,此处步长在中间,如a(2:3:8),构建等差数列,中间3不写默认1
对于矩阵(二维数组),用法是
a(row,column) 若row和column是数值,就是取出某个数(实际是1*1矩阵,同下)
若row和column是矩阵,则返回的也是矩阵,是row和column而定,要多看看help理解精髓,多说无益,如下图

如果不把它当矩阵运算了,单单看作数组,前面加“.”就是当成数组,每个数都单独按照法则运算,加.运算可以实现对数据的批量处理
如 A.*B就是每个对应的数运算,数量不够补齐,没有A.+B
特殊矩阵:https://jingyan.baidu.com/article/76a7e40906d896fc3b6e15f8.html
常用函数:sum mean max min sort sortrow size length find 详见help
它都是按照一列一列的来的,而且编号也是按照列开始数的
3.语法指令部分,常用的见下:
https://www.cnblogs.com/yhjoker/p/7702634.html
简洁直观的struct(结构体)&cell(元组)用法:
https://blog.csdn.net/jxlijunhao/article/details/18048359
struct结构体是可以出现struct层层嵌套的,感受一下:
https://blog.csdn.net/yyyllla/article/details/83040210
绘图功能:
plot描点绘图,LineSpec 线条设定,legend 标注,title 标题,xlabel坐标轴,标题坐标轴上写数学公式时支持LaTeX语法,text和annotation箭头标注,set 设置图形属性 subplot 分区绘图,hold on、hold off 一区多图,plotyy两个y轴,plot3 3D绘图。
画完了图像进行设置最直观的方法就是在figure里面编辑,如下图:多点点看看就知道怎么操作了

常规操作就上述这些,直接在help文件里输入查看具体用法就行,未加描述的百度一下
matlab图库网址:https://ww2.mathworks.cn/products/matlab/plot-gallery.html
看着想要什么样的图,然后找到英文的函数名,在help文档里面查看,help查看时小写输入,界面大概这样,在右上角自由切换中英文。


文件读写补充:(就这些名,详细内容看help文档,最常用的加粗那俩,因为剩下的我也没用过)
textread(字母和数值每行格式一致)
xlsread和 xlswrite (读写excel文件)
importdata(字母和数值分开,以数字为主,字母只存在前几行)
load和save(读写纯数据)
dlmread(单一分隔符的纯数据或ASCII数据文件)
textscan(类似于textread,但使用前必须fopen打开文件)
csvread(类似于xlsread,读取.csv格式的文件)
fscanf(读取已知文件格式的文本文件)
图像操作:
https://ww2.mathworks.cn/help/matlab/images_btfntr_-1.html
最常用的就是 读imread,写imwrite,显示imshow,看怎么用直接help
图像读到matlab中其本质就是三维数组 [R G B],对图像的一切变换都是对数据的运算
某些实用小技巧
1.在编辑器中%注释,%%表示分节,可以分节运行程序用于检测bug
2.会用clc、clear、close,主要是没了历史代码看着心情好,也防止变量出错
3.在每行的最后加“;”,防止在命令行窗口出那么多的结果。 在行末用“...”表示继续在下一行写
4.Ctril+C 强制停止程序的执行,死循环的时候不用关了软件重开了
5.edit(which('函数名.m')) 呼叫某个函数,尤其是在学习算法的时候,参考一下人家内置的函数代码是怎么写的,忘了怎么写函数的时候也可以参考一下