文档

createCRLEntry

创建代码替换表条目从概念和实现参数字符串规范

语法

tableEntry = createCRLEntry (crTable conceptualSpecification implementationSpecification)

描述

例子

tableEntry= createCRLEntry (crTable,conceptualSpecification,implementationSpecification)返回代码替换表条目。进入地图的概念表示一个函数或运算符实现表示。的conceptualSpecification参数是一个字符向量定义了名称和概念上的参数,熟悉代码生成器,函数或运算符来代替。的implementationSpecification参数是一个字符向量定义了名称和C / c++实现参数替换功能。

这个函数不支持:金宝app

  • c++实现

  • 数据一致性

  • 操作符替换与净斜率参数

  • 入口参数规范(例如,优先算法,构建信息)

  • 信号量,互斥函数替换

在语法规范,地方空间操作符前后的象征。例如,使用双u1 +双u2而不是双u1 +双u2。星号(*),波浪号(~),和分号(;)有以下意义。

象征 意义
*
  • 后一个受支持的数据类型,金宝app如int32 *通过引用(指针)。如果没有标量概念参数,实现规范,以引用的方式传递它们。

  • 作为一个定点数据类型定义的一部分,等32岁的fixdt (1 *)通配符。

~ 基于符号的位置,斜坡或偏见必须具有相同的数据类型。
; 将尺寸范围。例如,[1 10;1 100年)指定一个向量长度从10到100年。

下面的表显示了语法概念和实现规范基于:

  • 是否要创建一个条目的函数或运算符。

  • 的类型或特征的代码替换。

类型的替代 概念语法 实现语法
函数代码替代语法
典型的 双日元=罪(双u1) 双日元= mySin(双u1)
从概念规范获得实现参数的数据类型 双日元=罪(双u1) 日元= mySin (u1)
从概念规范获得实现参数和数据类型 双日元=罪(双u1) mySin
改变数据类型 单一的日元=罪(单u1) 双日元= mySin(双u1)
重新排序参数 双日元=量化(双u1, u2翻倍) 日元= myAtan (u1, u2)
指定列向量参数 双日元=罪(双u1 [10]) 双日元= mySin(双* u1)
指定列向量参数和尺寸范围 双y₁[1 100;1 100]=罪(双u1 [1 100;1 100年)) mySin(双* u1,双* y1)
重新映射返回值作为输出参数 双日元=罪(双u1) mySin(双u1,双* y1)
指定定点数据类型 fixdt(1、16日3)日元=罪(fixdt(1、16日3)u1) int16日元= mySin (int16 u1)
指定定点数据类型和设置CheckSlope,CheckBias真正的,偏见为0 fixdt(16日*)日元=罪(fixdt(* 1, 16日)u1) int16日元= mySin (int16 u1)
指定定点数据类型和设置SlopesMustBeTheSame真正的,CheckSlope,CheckBias真正的,偏见为0 fixdt(1、16 ~)日元=罪(fixdt u1) (1、16 ~) int16日元= mySin (int16 u1)
指定定点数据类型和设置SlopesMustBeTheSame真正的,BiasMustBeTheSame真正的,CheckSlope,CheckBias fixdt(~ 1, 16日~)日元=罪(fixdt(~ 1, 16日~)u1) int16日元= mySin (int16 u1)
指定多个输出参数 (双y₁双y2) = foo(双u1, u2翻倍) 双日元= myFoo(双u1, u2的两倍,双* y2)
操作员代码替代语法
典型的 int16日元= int16 u1 + int16 u2 int16日元= myAdd (int16 u1, u2乐队int16)
指定定点数据类型 fixdt(1、16日3)日元= fixdt(1、16日3)u1 + fixdt u2(1、16日,3) int16日元= myAdd (int16 u1, u2乐队int16)
指定定点数据类型和设置CheckSlope,CheckBias真正的,偏见为0 fixdt(16日*)日元= fixdt(* 1, 16日)u1 + fixdt u2(* 1, 16日) int16日元= myAdd (int16 u1, u2乐队int16)
指定定点数据类型,通配符,山坡上必须相同,零偏差 fixdt(~ 1, 16日,0)日元= fixdt(~ 1, 16日,0)u1 + fixdt(~ 1, 16日,0)u2 int16日元= myAdd (int16 u1, u2乐队int16)
定型 int16日元= int8 u1 int16日元= myCast (int8 u1)
转变 int16日元= int16 u1 < < int16 u2
int16日元= int16 u1 > > int16 u2
int16日元= int16 u1。> > int16 u2
int16日元= myShiftLeft (int16 u1, u2乐队int16)
int16日元= myShiftRightArithmetic (int16 u1, u2乐队int16)
int16日元= myShiftRightLogical (int16 u1, u2乐队int16)
指定关系操作符 bool日元= int16 u1 < int16 u2 bool日元= myLessThan (int6 u1, u2乐队int16)
指定乘法和除法 int32日元= int32 u1 * in32 u2 / in32 u3 int32日元= myMultDiv (int32 int32 int32 u1, u2, u3)
指定矩阵乘法 双y₁[10][10] =双u1[10][10] *双u2 [10] [10] myMult(双* u1,双* u2,双* y1)
指定element-wise矩阵乘法 双y₁[10][10] =双u1[10][10]。*双u2 [10] [10] myMult(双* u1,双* u2,双* y1)
指定与转置矩阵乘法的一个输入参数 双y₁[10][10] =双u1[10][10]‘*双u2 [10] [10] myMult(双* u1,双* u2,双* y1)
指定与埃尔米特矩阵乘法的一个输入参数 cdouble y1 [10] [10] = cdouble u1 [10] [10]‘* cdouble u2 [10] [10]
cdouble y1 [10] [10] = cdouble u1 [10] [10] * cdouble u2 [10] [10]”
myMult (cdouble * u1, u2乐队cdouble *, cdouble * y1)
指定左矩阵分裂 双y₁[10][10] =双u1[10][10] \双u2 [10] [10] myLeftDiv(双* u1,双* u2,双* y1)
指定正确的矩阵分裂 双y₁[10][10] =双u1[10][10] /双u2 [10] [10] myRightDiv(双* u1,双* u2,双* y1)

例子

全部折叠

创建一个表定义文件,它包含一个函数定义。

函数crTable = crl_table_sinfcn ()

函数体中创建的代码替换表。

crTable = RTW.TflTable;

创建一个表条目函数。

tableEntry = createCRLEntry (crTable,“双日元=罪(双u1) ','双日元= mySin(双u1) ');

设置输入参数函数。指定生成替换代码,代码生成器使用头文件和源文件mySin.hmySin.c

setTflCFunctionEntryParameters (tableEntry“ImplementationHeaderFile”,“mySin.h”,“ImplementationSourceFile”,“mySin.c”);

将条目添加到表中。

addEntry (crTable tableEntry);

创建一个表定义文件,它包含一个函数定义。

函数crTable = crl_table_addfcn ()

函数体中创建的代码替换表。

crTable = RTW.TflTable;

加法操作符创建一个表条目。

tableEntry = createCRLEntry (crTable,“int16 y1 = int16 u1 + int16 u2”,' int16 y1 = myAdd (int16 u1, u2乐队int16) ');

设置输入参数,输入指定cast-after-sum加法。指定生成替换代码,代码生成器使用头文件和源文件myAdd.hmyAdd.c

setTflCOperationEntryParameters (tableEntry“EntryInfoAlgorithm”,“RTW_CAST_AFTER_OP”,“ImplementationHeaderFile”,“myAdd.h”,“ImplementationSourceFile”,“myAdd.c”));

将条目添加到表中。

addEntry (crTable tableEntry);

创建一个表定义文件,它包含一个函数定义。

函数crTable = crl_table_intaddfcn ()

函数体中创建的代码替换表。

crTable = RTW.TflTable;

创建一个表条目签署了定点加法操作要求跨类型相同的斜率。

tableEntry = createCRLEntry (crTable,“fixdt(~ 1, 16日,0)日元= fixdt(~ 1, 16日,0)u1 + fixdt(~ 1, 16日,0)u2’,' int16 y1 = myAdd (int16 u1, u2乐队int16) ');

设置输入参数。设置算法参数对cast-after-sum加法和饱和度和舍入模式。指定生成替换代码,代码生成器使用头文件和源文件myIntAdd.hmyIntAdd.c

setTflCOperationtionEntryParameters (tableEntry“EntryInfoAlgorithm”,“RTW_CAST_AFTER_OP”,“SaturationMode”,“RTW_SATURATE_ON_OVERFLOW”,“RoundingMode”,“RTW_ROUND_SIMPLEST”,“ImplementationHeaderFile”,“myIntAdd.h”,“ImplementationSourceFile”,“myIntAdd.c”);

将条目添加到表中。

addEntry (crTable tableEntry);

创建一个表定义文件,它包含一个函数定义。

函数crTable = crl_table_sinfcn ()

函数体中创建的代码替换表。

crTable = RTW.TflTable;

创建一个表条目函数,实现参数的概念是一样的参数。

tableEntry = createCRLEntry (crTable,“双日元=罪(双u1) ',“日元= mySin (u1) ';

设置输入参数。指定生成替换代码,代码生成器使用头文件和源文件mySin.hmySin.c

setTflCFunctionEntryParameters (tableEntry“ImplementationHeaderFile”,“mySin.h”,“ImplementationSourceFile”,“mySin.c”);

将条目添加到表中。

addEntry (crTable tableEntry);

输入参数

全部折叠

代码替换表存储一个或多个条目,每个代表一个潜在的替代函数或运算符。每个条目映射的概念表示一个函数或运算符表示和实现优先级。

表示的名称或符号和概念上的输入和输出参数的函数或操作软件替换指定为一个特征向量。概念参数观察命名约定(“日元”,u1, u2,…)和数据类型熟悉代码生成器。使用语法表描述为你的概念论证确定使用的语法规范。

例子:“双日元=罪(双u1) '

例子:“int16 y1 = int16 u1 + int16 u2”

表示的名称和实现输入和输出参数C或c++替代函数,指定为一个特征向量。实现参数观察C / c++名称和数据类型规范。使用语法表描述确定您的实现参数的语法规范。

例子:'双日元= my_sin(双u1) '

例子:' int16 y1 = myAdd (int16 u1, u2乐队int16) '

输出参数

全部折叠

代码替换表条目代表一个潜在的代码替代函数或运算符,作为一个对象返回。地图的概念表示一个函数或操作符,conceptualSpecificationC / c++实现,表示,implementationSpecification

介绍了R2015a

这个主题有帮助吗?