为适应可变数组指定上界
为一个数组指定上界时:
动态内存分配是禁用的。
如果禁用动态内存分配,你必须指定数组的上界。
你不希望代码生成器使用动态内存分配的数组。
指定上界,导致一个数组的大小(以字节为单位),小于阈值的动态内存分配。
指定上界MATLAB函数块的输入和输出
看到声明适应输入和输出。
为局部变量指定上界
当使用静态分配,代码生成器使用一个复杂的分析计算上界的本地数据。然而,当分析未能检测到一个上界或不够精确的计算一个上界为您的应用程序,您必须显式地指定上界为局部变量。
限制变量的值指定的尺寸适应可变数组
限制变量的值指定的尺寸适应可变数组,使用断言
函数关系运算符。例如:
函数y = dim_need_bound (n)% # codegen断言(n < = 5);L = 1 (n, n);M = 0 (n, n);M = [L;M];y = M;
这断言
声明约束输入n
5的最大大小。l
是适应5每个维度的上界。米
是适应的上限10在第一维度和5在第二个维度。
指定的所有实例的上界一个局部变量
指定的所有实例的上界函数局部变量,使用coder.varsize
函数。例如:
函数Y = example_bounds1 (u)% # codegenY = (1 2 3 4 5);coder.varsize (“Y”10 [1]);如果(u > 0) Y = (Y Y + u);其他的Y = [Y Y * u];结束
第二个参数的coder.varsize
指定的上限为每一个实例变量中指定的第一个参数。在这个例子中,论点10 [1]
表明每一个实例Y
:
第一个维度是固定尺寸1。
第二个维度可以长到10的一个上界。