主要内容

matlabFunctionBlock

符号表达式转换为MATLAB功能块

描述

例子

matlabFunctionBlock (,f)转换f一个MATLAB®在仿真软件功能块,您可以使用万博1manbetx®模型。在这里,f可以是一个符号表达式、函数或一个向量符号表达式或功能。

指定的名称创建或修改的块。

例子

matlabFunctionBlock (,f1,…, fN)将象征性的表达或功能f1,…, fNMATLAB函数块N输出。的每个元素f1,…, fN可以是一个符号表达式、函数或一个向量符号表达式或功能。

例子

matlabFunctionBlock (___,名称,值)转换一个符号表达式、函数或一个向量符号表达式或函数的MATLAB函数块使用由一个或多个指定附加选项名称,值对参数。您可以指定名称,值后在前面的语法使用的输入参数。

例子

全部折叠

创建一个新的模型和符号表达式转换为MATLAB功能块。在块通过指定包含注释评论选择。

创建一个新的模型,并打开它。

new_system (my_system) open_system (“my_system”)

创建一个符号表达式。

信谊x y z f = x ^ 2 + y ^ 2 + z ^ 2;

使用matlabFunctionBlock创建块my_block包含符号表达式。matlabFunctionBlock覆盖现有的块。双击打开生成的块和编辑函数定义的块。

matlabFunctionBlock (my_system / my_block, f)
函数f = my_block (x, y, z) % # codegen %这个函数生成的符号数学工具箱7.3版。% 01 - 1月- 2017就是f = x ^ 2 + y ^ 2 + z。^ 2;

包括发表评论版本1.1的块。

matlabFunctionBlock (my_system / my_block, f,“评论”,“版本:1.1”)
函数f = my_block (x, y, z)…%版本:1.1 f = x ^ 2 + y ^ 2 + z。^ 2;

保存并关闭my_system

save_system (my_system) close_system (“my_system”)

创建一个新的模型和符号函数转换为MATLAB功能块。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建一个符号函数。

信谊xyzf (x, y, z) = x ^ 2 + y ^ 2 + z ^ 2;

转换fMATLAB函数块。双击块的功能。

matlabFunctionBlock (“my_system / my_block”f)
函数f = my_block (x, y, z) % # codegen f = x ^ 2 + y ^ 2 + z。^ 2;

几个符号表达式转换为一个MATLAB与多个输出端口功能块。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建三个符号表达式。

信谊xyzf = x ^ 2;g = y ^ 2;h = z ^ 2;

将其转换成一个MATLAB函数块。matlabFunctionBlock创建一个块有三个输出端口。双击块的功能。

matlabFunctionBlock (“my_system / my_block”,f, g, h)
函数(f, g, h) = my_block (x, y, z) % # codegen f = x ^ 2;如果nargout > 1 g = y ^ 2;如果nargout > 2 h = z结束。^ 2;结束

指定函数的名称定义生成的MATLAB函数块。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建一个符号表达式。

信谊xyzf = x ^ 2 + y ^ 2 + z ^ 2;

生成一组块和函数名my_function。双击块的功能。

matlabFunctionBlock (“my_system / my_block”f“FunctionName”,“my_function”)
函数f = my_function (x, y, z) % # codegen f = x ^ 2 + y ^ 2 + z。^ 2;

当你符号表达式转换为MATLAB功能块,matlabFunctionBlock优化代码默认情况下。这种方法可以帮助简化和加快进一步计算,使用该文件。然而,从一些象征性的表达式和函数生成优化的代码可能非常耗时。使用优化禁用代码优化。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建一个符号表达式。

信谊xr = x ^ 2 * (x ^ 2 + 1);

使用matlabFunctionBlock创建块my_block包含符号表达式。双击块函数定义的块。默认情况下,matlabFunctionBlock创建一个文件包含优化代码。

matlabFunctionBlock (“my_system / my_block”右)
函数r = my_block (x) % # codegen t2 = x ^ 2;r = t2。* (t2 + 1.0);

禁用优化的代码设置的值优化

matlabFunctionBlock (“my_system / my_block”r“优化”假)
函数r = my_block (x) % # codegen r = x ^ 2。* (x ^ 2 + 1.0);

指定的顺序输入端口的输入变量形式生成的块。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建一个符号表达式。

信谊xyzf = x ^ 2 + y ^ 2 + z ^ 2;

将表达式转换为一个MATLAB函数块。默认情况下,matlabFunctionBlock使用字母顺序输入参数的转换符号表达式。

matlabFunctionBlock (“my_system / my_block”f)
函数f = my_block (x, y, z) % # codegen f = x ^ 2 + y ^ 2 + z。^ 2;

使用var参数指定的顺序输入端口。

matlabFunctionBlock (“my_system / my_block”f“var”[y z x])
函数f = my_block (y, z、x) % # codegen f = x ^ 2 + y ^ 2 + z。^ 2;

当生成一个街区,重命名输出变量和相应的端口。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建一个符号表达式。

信谊xyzf = x ^ 2 + y ^ 2 + z ^ 2;

将表达式转换为一个MATLAB函数块和指定输出变量的名称和端口。双击块函数定义的块。

matlabFunctionBlock (“my_system / my_block”f, f, f + 1, + 2,“输出”,{“name1”,“name2”,“name3”})
函数(name1、name2 name3] = my_block (x, y, z) % # codegen t2 = x ^ 2;t3 = y ^ 2;t4 = z。^ 2;name1 = t2 + t3 + t4;如果nargout > 1 name2 = t2 + t3 + t4 + 1.0;如果nargout > 2 name3 = t2 + t3 + t4 + 2.0;结束

调用matlabFunctionBlock同时使用几个参数名称-值对。

创建一个新的空模型并打开它。

new_system (“my_system”)open_system (“my_system”)

创建一个符号表达式。

信谊xyzf = x ^ 2 + y ^ 2 + z ^ 2;

调用matlabFunctionBlock使用名称-值对参数指定的函数名称,订单输入端口和输出端口的名称。双击块函数定义的块。

matlabFunctionBlock (“my_system / my_block”f, f, f + 1, + 2,“FunctionName”,“my_function”,“var”[y z x],“输出”,{“name1”,“name2”,“name3”})
函数(name1、name2 name3] = my_function (y, z、x) % # codegen t2 = x ^ 2;t3 = y ^ 2;t4 = z。^ 2;name1 = t2 + t3 + t4;如果nargout > 1 name2 = t2 + t3 + t4 + 1.0;如果nargout > 2 name3 = t2 + t3 + t4 + 2.0;结束

输入参数

全部折叠

块创建,修改,指定为一个特征向量。

符号输入转换为MATLAB功能块,作为符号表达式,指定函数向量或矩阵

符号输入转换为MATLAB功能块N输出,指定为几个符号表达式、函数、向量或矩阵,由逗号隔开。

名称-值对的观点

指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

例子:matlabFunctionBlock (my_system / my_block, f,‘FunctionName’,‘myfun’)

评论中包含文件头,指定为一个特征向量,单元阵列的特征向量,或字符串向量。

的函数名称,指定为一个特征向量。默认情况下,matlabFunction(块,…)使用函数名。

看到指定生成函数的函数名

国旗防止代码优化、指定为真正的

当写入一个文件,matlabFunctionBlock优化代码使用中间变量命名t0,t1,....

看到禁用代码优化

输入变量和相应的输入端口顺序生成的块,指定为一个特征向量,向量符号变量,或一维单元阵列的特征向量,向量符号变量或符号变量。

指定输入端口的数量必须等于或超过自由变量的数量f。不要使用相同的名称所指定的输入端口吗var和指定的输出端口输出

默认情况下,当你转换符号表达式,秩序是字母。当你转换符号函数,输入参数出现在前面的其他变量,和所有其他变量按字母顺序排序。

看到指定输入端口生成的块

输出端口的名字,指定为一维单元阵列的特征向量。如果你不指定输出端口名称,matlabFunctionBlock使用的名字,包括这个词其次是输出端口号,例如,out3

不要使用相同的名称所指定的输入端口吗var和指定的输出端口输出。看到指定输出端口

介绍了R2009a