A. matlab 程序运行很慢,怎么改进
提高matlab程序运行速度,可以用以下方法:
1、更改MATLAB启动快捷方式
在缺省配置下,MATLAB有一个启动闪屏,去掉它可以节省一定的内存消耗,从而加快启动。
在MATIJAB启动快捷方式后添加命令行参数 一nos-plash”即可_去掉闪屏。
缺省配置 MATLAB会启动虚拟机,这会消耗大量内存。添加命令行参数"-nojvm”可禁用JAVA虚拟机。
MATLAB启动快捷方式命令形如:
"%MATLABROOT%\bin\win32\matlab.exe -nosplash -nojvm”。
经过以上配置,MATLAB启动和运行速度会得到大幅提升。
注意:禁用JAVA虚拟机后,MATLAB中有些功能,诸如:调试功能、可视化界面设计功能不能使用,但大多数其它功能可正常运行。如果使用的功能需要JAVA虚拟机支持,启动时将命令行参数 一nojvm 去掉即可。
2、更改MATLAB搜索路径
MATLAB启动时会添加搜索路径。如果安装了多个工具箱,搜索路径会很多。过多的搜索路径除了减缓启动速度外,还会影响MATLAB执行效率。因为MATLB执行程序时会在这些路径中寻找M文件。而实际上我们不会为完成某个任务使用所有的工具箱。为提高启动和运行速度,可以修改pathdef.m文件,将暂时不用的工具箱和其它搜索路径注释掉(MATLAB程序以%为注释标识),从而加快启动和运行。
B. 如何让自己的matlab程序跑的更快
1、一定要利用好M-file编辑器,因为会有一些着重标示的优化建议。
例如,你在编辑器里输入以下代码:
for k = 1:NumTrials
r = rand;
x(k) = runsim(r);
end
hist(x);
它会用红色波浪线表示出来,提示你最好先预设x的值。
另外:
最好在一个单独的文件夹里运行程序;
写好程序代码的注释,利人利己;
将常用的命令存下来,方便以后调用。
2、在运行循环的时候,一定要预设变量值!
可以用 cell 和zeros这两个矩阵命令,对变量进行预设。
例如,
a(1) = 1;
b(1) = 0;
for k = 2:8000
a(k) = 0.99803 * a(k -1)-0.06279 * b(k-1);
b(k) = 0.06279 * a(k-1) + 0.99803 * b(k-1);
end
,没有预设,大约耗费0.47秒;
a = zeros(1,8000); % Preallocation
b = zeros(1,8000);
a(1) = 1;
b(1) = 0;
for k = 2:8000
a(k) = 0.99803 * a(k -1)-0.06279 * b(k-1);
b(k) = 0.06279 * a(k-1) + 0.99803 * b(k-1);
end
有预设,大约耗费0.14秒!
C. matlab编程如何设置断点、如何单步调试、如何提高程序运行速度
1、设置断点:在行号处点击有小红点出现,即可作为断点进行调试(F5是继续调试)。如图:
D. matlab程序运行太慢,请大神帮看看,如何优化加快运算速度!
建议:取消syms,用数值积分方法先计算积分号里面的东西,而不要用符号积分算法。将下面这段:
symsz
w1=mt*t0/(4*pi*M*ne*(DL*DT)^0.5);
w2=exp(x.*u/(2*DL));
B=((u*x./(2*DL)).^2+(u*y).^2/(4*DL*DT)).^0.5;
w3=2*besselk(0,B);
w5=int((1/z)*exp(-z-(B.^2/(z*4))),t*u^2/(4*DL),inf);
w4=double(w5);
替换为
w1=mt*t0/(4*pi*M*ne*(DL*DT)^0.5);
w2=exp(x.*u/(2*DL));
B=((u*x./(2*DL)).^2+(u*y).^2/(4*DL*DT)).^0.5;
w3=2*besselk(0,B);
ifun=@(z,B)(1./z).*exp(-z-(B.^2./(z*4)));
w5=integral(@(z)ifun(z,B),t*u^2/(4*DL),inf);
w4=w5;
E. matlab编程如何设置断点、如何单步调试、如何提高程序运行速度
1、打开Matlab软件,【打开】或新建调试文件。
F. matlab中,如何加快数据运算速度
matlab中,如何加快数据运算速度?建议如下:
1、能用数组形式计算,尽可能使用数组点运算。
2、尽量减少循环运算,能不用循环过程尽量不用。
3、使用全局变量和临时变量,尽可能减少内存消耗。
。。。。。。
等等