matlab自定义函数问题
请问matlab自定义函数的时候symsx;y=x^2-1与y=inline('x^2-1')以及y='x^2-1'有什么区别?应该它们有什么共同点,在解方程的时候应该怎...
请问matlab自定义函数的时候syms x;y=x^2-1 与 y=inline('x^2-1') 以及y='x^2-1'有什么区别?应该它们有什么共同点,在解方程的时候应该怎么引用它们? 没分了
展开
1个回答
展开全部
不同点:
1、三者属于不同的数据类型,第一个是sym对象,第二个是inline对象,第三个是字符串。另外,用以表示函数的还有一种匿名函数会经常用到(Matlab 7.0以上)。
2、某个特定的函数(如solve、ezplot等)是否支持这几种函数形式,取决于函数自身对输入的处理方式。例如对于字符串,ezplot会先将其转换为inline对象然后再处理,而solve则将其转为sym对象进行处理。solve不支持对inline求解。
3、如果对给定x求y的值,sym对象用subs函数,inline可以直接用函数的方式调,而第三种则没法直接计算函数值,需要转换之后才行。
共同点:
三者都描述了函数的形式,从所包含的关键信息方面来说可以认为是等同的。相互之间也可以进行转换,例如,用char(y)可以由sym对象或inline对象得到字符串,而用sym和inline可以由字符串转换为前二者。
大概就想到这些,希望对楼主有帮助。
1、三者属于不同的数据类型,第一个是sym对象,第二个是inline对象,第三个是字符串。另外,用以表示函数的还有一种匿名函数会经常用到(Matlab 7.0以上)。
2、某个特定的函数(如solve、ezplot等)是否支持这几种函数形式,取决于函数自身对输入的处理方式。例如对于字符串,ezplot会先将其转换为inline对象然后再处理,而solve则将其转为sym对象进行处理。solve不支持对inline求解。
3、如果对给定x求y的值,sym对象用subs函数,inline可以直接用函数的方式调,而第三种则没法直接计算函数值,需要转换之后才行。
共同点:
三者都描述了函数的形式,从所包含的关键信息方面来说可以认为是等同的。相互之间也可以进行转换,例如,用char(y)可以由sym对象或inline对象得到字符串,而用sym和inline可以由字符串转换为前二者。
大概就想到这些,希望对楼主有帮助。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询