1、能用矩阵计算的就用矩阵计算,不能用矩阵计算的想方设法也要往矩阵计算上靠。
2、少用循环,尤其是避免多重循环嵌套,尽量用向量化的运算来代替循环操作。在必须使用多重循环的情况下,若各层循环执行的次数不同,则在循环的外层执行循环次数少的,内层执行循环次数多的。
3、在定义数组变量时先预定义数组的大小能大大提高计算效率。
4、对于多核CPU,使用parfor比用for更节约时间。
5、定义循环变量时,尽量不要使用i和j,因为i和j是matlab预留的虚数单位。
6、在m文件前面使用clear,close,clc等命令可以释放内存、清理窗口。
7、对于三角函数计算,在系统默认函数前后面加"d"是直接进行角度计算,这里"d"代表"degree",例如sind(30) = 0.5,效果与sin(30*pi/180)一样,其他的有cosd、tand等。
8、使用mod可以将多重循环改成单重循环,但总的循环次数不变。例如:
for u = 1:M
for v = 1:N
for w = 1:K
.....;
end
end
end
可以改为:
for k = 1:M*N*K
u = mod(k-1, M) + 1;
v = mod(k-1, N) + 1;
w = mod(k-1, K) + 1;
.....;
end
9、在程序运行结束后,使用clearvars可以清掉不需要的变量而保留结果变量,例如,clearvars -except varA varB,意思是清除变量空间中除了变量varA,varB以外的所有变量。
10、使用Ctrl+C可以中止正在运行的程序。
11、doc + 函数名,直接打开相应函数的matlab帮助文档。help + 函数名,在命令窗口中显示相应函数的帮助信息。
12、在M脚本编辑器或在命令窗口中按"Tab"键可以补全函数名或变量名。
13、选中代码按"Ctrl + R"键是一键注释代码,选中代码按"Ctrl + T"键是一键取消注释。
14、选中代码按"Ctrl + I"键是一键智能对齐代码。
15、在进行绘图操作时,多使用figure命令,其作用是新建一个空的绘图窗口,接下的绘图命令可以将图绘制在它里面,而不会覆盖其他绘图窗口。
16、在命令窗口输入edit或open+函数名可以快速打开m文件。
17、元胞数组可以存储不同类型和大小的数据。
18、使用单精度 single替代双精度 double可以节约内存开销。