matlab+sqrtm太耗时

作者&投稿:康盼 (若有异议请与网页底部的电邮联系)

徵毕13540558182问: 关于simulink建模的 -
老边区尼美回答: 有几种原因可能导致仿真运行速度很慢:1. 模型中有一个 MATLAB 函数块 :当存在 MATLAB Fcn 模块时,在每个采样时间都会调用 MATLAB 解释器.这会大大降低仿真速度.所以,应尽可能使用内置Simulink模块.2. MATLAB S函数(S-...

徵毕13540558182问: 我在matlab/simulink里建了系统模型进行控制,可以仿真时间总是很慢很慢,是e的 - 9次方 -
老边区尼美回答: 你的系统过于复杂,matlab需要调小步长才能够达到所需的精度收敛. 解决方法:更换算法,比如可以试试变步长的其它算法,如ode23t之类的.或者直接采用定步长的算法,如ode4之类的,然后更改步长值为1e-5等等.如果都试过了还是不行,那就只能改进一下系统模型了.

徵毕13540558182问: matlab 三次嵌套循环,时间复杂度太高了,matlab执行时间很长.不知道有没有办法优化? -
老边区尼美回答: 能向量化就向量化,如果不好处理:1.尽量把循环次数少的嵌套放在外面2.将矩阵预先定义

徵毕13540558182问: MATLAB 程序运行特别慢,求大神解决!!!!!!!!! -
老边区尼美回答: 程序中用for循环比矩阵算法慢得多,特别是循环次数多时,更是慢得出奇.可改为矩阵运算.

徵毕13540558182问: matlab 矩阵开方运算 -
老边区尼美回答: matlab中的sqrtm(Y)是找这样的矩阵X,它满足X*X=Y,并且X的特征值都具有非负实部,而如果X的特征值中有任意一个有负的实数根,结果将会很复杂,所以matlab只执行并且显示特征值均有非负实部的X.如果Y是一个奇异矩阵,它可能没有方根.因而如果MATLAB探查到一个奇异矩阵,就会显示warning.

徵毕13540558182问: 如何提高MATLAB的运算速度 -
老边区尼美回答: 根据我的一些经验和相关的参考资料,要想提高其运算的速度,以下的方法可以试一下:(1)尽可能地用向量化的数组运算代替循环,尽可能地减少使用户for或while循环,这是因为matlab执行循环运算效率很低而数组运算效率较高.举个最经...

徵毕13540558182问: MATLAB 并行计算效率很低,怎么办 -
老边区尼美回答: 并行计算的原理就是将代码分配到多个处理器中进行运算.例如8核的机器,就可以同时调动8个处理器来运算.不过为了在运算时你不至于太无聊,还是留下一个给自己做其他事情用吧. 1、启动和关闭并行计算功能 启动: CoreNum=7; %调用的处理器个数.

徵毕13540558182问: 关于matlab使用数组计算内存耗费太大,怎么解决 -
老边区尼美回答: 一般来说,向量化之所以快就是牺牲了空间来换取时间.如果数组太大,使用向量化内存溢出的话,那就尽量还是用for循环来解决.

徵毕13540558182问: matlab程序的优化,目前的程序运行时间太长了 求大神帮忙加快速度 -
老边区尼美回答: k=2*pi/(532e-9); z=0.1; m=2; l=1; theta=0; r0=0.005; nnx=256; xx=-0.005:0.01/255:0.005; yy=-0.005:0.01/255:0.005; %{ for nn=1:nnxfor mm=1:nnxphi=atan2(yy(mm), xx(nn));rho=sqrt(yy(mm).^2+xx(nn).^2);f1(nn,mm)=quad(@(r)r.*exp(-0.1*i*k*r.^1...

徵毕13540558182问: 为什么在matlab命令窗口运行已经定义M,文件 运行不出来 还不能关闭命令窗口 是不是需要很长时间才能出结果 -
老边区尼美回答: 运行之后你看一下程序是不是还在运行,如果还在运行说明你的程序算起来太耗时间,没有显示错误的话程序应该是对的


本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网