berryhaw 发表于 2009-6-6 21:36

matlab 自定义函数效率问题

都说logical效率比find高,我的程序里仍无法避免的用了很多find函数,运行之后用Profiler查看了一下,find函数竟然占了3/4的计算时间,实在无法接受啊。由于find是matlab的嵌入式函数(Built-in function)无法根据自己的需要进行修改,而编了自定义的myfind.m函数,但由于主程序中的循环会调用几十万次myfind函数,这样运行下来效率反来比用find的效率更低了。
    我用到的find的主要功能有:
   1、找出非零元素的位置;
   2、找出符合条件元素的位置
   (如:找出一维数组A(1*n)中等于i的元素所在位置,
         调用格式为:B=find(A==i);)。:@Q
   试了一天都没什么成效,大虾们给支个招呀!!:@Q

ChaChing 发表于 2009-6-7 12:19

不懂! 无法帮忙
但自定义的函数应该没嵌入式函数有效率吧
页: [1]
查看完整版本: matlab 自定义函数效率问题