MATLAB学习与使用:定义函数(3种方法)
的有关信息介绍如下:函数是数学研究的重要对象。像S=1/2gt^2,E=mc^2,f(x)=x^2+2x+1等函数表达式,如何用MATLAB定义呢?MATLAB定义函数通常有3种方法:一是符号定义法(syms x ...或者 sym('f(x)')),二是内联函数定义法(incline),三是匿名函数定义法(f=@x f(x)),下面逐一介绍。
第一,分别用符号定义法(syms x ...或者 sym('f(x)')),内联函数定义法(incline),匿名函数定义法(f=@x f(x))定义下图函数f(x)=x+sin(x)。
第二,用符号定义法(syms)定义函数f(x)=x+sin(x),在命令行窗口输入如下代码:
syms x
fx=x+sin(x)
回车得到:
fx =
x + sin(x)
同时可以使用置换函数subs()计算x取pi/2时,fx的值。
subs(fx,x,pi/2)
ans =
pi/2 + 1
第三,用符号定义法sym('f(x)')定义函数f(x)=x+sin(x),先用clc清空命令行窗口,然后在命令行窗口输入如下代码:
fx=sym('x+sin(x)')
回车得到:
fx =
x + sin(x)
同样地,使用置换函数subs()计算x取pi/2时,fx的值。
subs(fx,x,pi/2)
ans =
pi/2 + 1
第四,用内联函数定义法(incline)定义函数f(x)=x+sin(x),先用clc清空命令行窗口,然后在命令行窗口输入如下代码:
fx=inline('x+sin(x)')
回车得到:
fx =
内联函数:
fx(x) = x+sin(x)
同样地,使用置换函数subs()计算x取pi/2时,fx的值。
subs(fx(x),x,pi/2)
ans =
pi/2 + 1
值得注意的,此时使用置换函数subs(),括号中要写fx(x),不能再写fx,否则会出错。
第五,用匿名函数定义法(f=@x f(x))定义函数f(x)=x+sin(x),先用clc清空命令行窗口,然后在命令行窗口输入如下代码:
fx=@(x) x+sin(x)
回车得到:
fx =
@(x)x+sin(x)
同时,分别输入fx(pi/2)和subs(fx,x,pi/2),分别得到如下结果:
>> fx(pi/2)
ans =
2.5708
>> subs(fx,x,pi/2)
ans =
pi/2 + 1
可以看出,使用匿名函数定义法(f=@x f(x))定义函数时,即可以使用定义的函数计算取值,也可以使用置换函数subs()计算取值。其实,使用内联函数定义法(incline)定义函数时,也可以使用定义的函数计算取值。