为什么matlab中新建的脚本不支持作为函数执行

为什么matlab中新建的脚本不支持作为函数执行,第1张

不支持将脚本 syms 作为函数执行 E:\数学实验保存程序\s答1、第一步我们首先需要知道syms是定义符号变量的函数,可以输入“help syms”,看一下syms的使用方法。 2、第二步我们在命令行窗口中输入“syms m”,定义符号变量m。 3、第三步输入“n=m^2+3*m-2”,可以拿符号变量m进行运算。 4、第四步输入diff(n,m),可以进行求导。 5、第五步按回车键,可以看到求导结果。syms就是定义一些符号变量,用来进行符号运算用的。 比如:syms x y %就是定了符号变量x y以后x y就可以直接使用了,有他们运算出来的结果也是符号变量。 上面的也可以x=sym('x'),y=sym('y') sys('a+b')%就是将a+b转化为符号表达式 使用syms显示MATLAB工作区中当前存在的所有符号对象的列表。则符号变量是:A A f x;

通常symbolic

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:表示此函数结束,也可省略。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/8084512.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存