[~,col] = find(ocpRefPt(2,:)>x1 & ocpRefPt(2,:)<x2 & ocpRefPt(1,:)>y1 & ocpRefPt(1,:)<y2);
关于编译失败的行。上面的一行是循环的。
x1
,x2
,x3
,x4
是标量(自然数)
ocpRefPt
是2x16矩阵
Error: FIND requires variable sizing
这是什么意思。如何克服这个错误?
答案 0 :(得分:2)
因此,您似乎正在尝试使用emlmex
进行编译以生成嵌入式代码。错误是说find
的输出大小未知,显然编译器需要固定大小的输出。有关一种解释,请参阅this newsgroup post。
这种编译方法似乎已过时 - 请改用MATLAB coder(codegen
命令):
emlmex
从MATLAB代码生成C-MEX文件。emlmex [-options] fun1 [fun2 ...]
此功能已过时。用于通用加速 和代码生成使用
CODEGEN
。