
math
toolbox是随matlab安装时就装好的。
出现undefined
command/function
'sym'错误,
一种可能是路径没设置对,可以在file菜单里选择set
path,里面有个default恢复试试,或者手动添加symbolic
math
toolbox的目录也可以。
还有一种可能是你前面定义过sym,matlab认了你的sym不去找toolbox里的sym了。
如果都不对,那可能是少了文件了,重装一下matlab吧。
另外你的用法根本就是错的。
不能用syms,syms类似于定义变量,可以用syms
x
而不能用exp(x)这样的表达式。所以要用sym()
还有矩阵不能作为sym()的参数,只能是字符串。
应该这样写
b=[
sym('exp(t)')
sym('exp(2*t)')
sym('exp(3*t)')
]
每一个式子都要用一个sym,不能先组成矩阵再sym
simulink
toolbox在安装matlab时是选装的,不过好像你不改动的话是选中的吧,默认应该是都装上的,除非你安装时去掉了。
matlab定义函数有3大种方法:1、M文件函数(M file function)2、内联函数(Inline Function)3、匿名函数(Anonymous Function)。M文件函数定义方式有两种:1、函数文件+调用函数文件:需单独定义一个自定义函数的M文件2、函数文件+子函数:定义一个具有多个子函数的M文件。内联函数无需M文件,直接定义,inline命令用来定义一个内联函数:f=inline(‘函数表达式’, ‘变量1’,’变量2’,……)。调用方式:y=f(数值列表) %注意:代入的数值列表顺序应与inline()定义的变量名顺序一致。匿名函数即使用matlab函数句柄 *** 作符@,可以定义指向matlab内置函数和用户自定义函数的函数句柄。
matlab定义函数还有无需M文件,直接定义(Syms+subs)方式。即用syms定义一个符号表达式,用subs调用。注意:对于在syms中已经定义过的符号变量,在subs中进行替代时,单引号可以省略。但是,如果在syms后又被重新定义为其他类型,则必须加单引号,否则不可替换。这种函数定义方法的特点是,可以用符号进行替换。matlab定义函数最后一种方法就是直接通过@符号定义。
扩展资料:Matlab函数的基本结构
function[输出形参表: output1, ……,outptn] = 函数名(输入形参表: input1, …… , inputn)
函数名:需要和m文件名保持一致
输入形参列表:即函数的各输入参数,用逗号隔开;
函数体:完成函数的具体功能,是根据具体需要编写的;通过使用“函数的输入参数”、“自定义变量”、“流程控制结构”来实现;
end:表示此函数结束,也可省略。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)