matlab 的优化问题 10
minf(x)=0.033x5(x1+x2)-0.016x5*x2+4.29*0.001*x5*x3+0.13x4*x5c=1.2cos11*10000/(x1x2-(x...
min f(x)=0.033x5(x1+x2)-0.016x5*x2+4.29*0.001*x5*x3+0.13x4*x5
c=1.2cos11*10000/(x1x2-(x1-2x5)(x2-2x5))-133<0 展开
c=1.2cos11*10000/(x1x2-(x1-2x5)(x2-2x5))-133<0 展开
2个回答
展开全部
远不如其他基本语言。但还是有些方法可以提高运行速度的:
1,MATLAB擅长于矩阵运算,但并不适用于循环,能不用循环的地方尽量用矩阵运算代替;
2,对于大维度的矩阵,要预先确定它的维度,比如用zeros(a,b,c)预先定义好,这样每次给矩阵赋值的时候就不用改变维度了,对运算速度的提高很明显,这点你可以用MATLAB自带的tic和toc命令测试。
3.对于多重循环的将长的循环放在内循环。还有对有相似功能的命令的选择也对速度有影响。
如果对于计算量特别大的程序,用MATLAB是不怎么合适的哦,你可以把计算部分用其他语言,比如FORTRAN来实现。
1,MATLAB擅长于矩阵运算,但并不适用于循环,能不用循环的地方尽量用矩阵运算代替;
2,对于大维度的矩阵,要预先确定它的维度,比如用zeros(a,b,c)预先定义好,这样每次给矩阵赋值的时候就不用改变维度了,对运算速度的提高很明显,这点你可以用MATLAB自带的tic和toc命令测试。
3.对于多重循环的将长的循环放在内循环。还有对有相似功能的命令的选择也对速度有影响。
如果对于计算量特别大的程序,用MATLAB是不怎么合适的哦,你可以把计算部分用其他语言,比如FORTRAN来实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询