如何在Matlab中的某个点评估函数?

时间:2013-05-20 16:22:30

标签: function math matlab evaluate

例如,如果我有一个函数f(x)=x^2,我如何在x=2评估它? 我尝试使用符号工具箱并在命令窗口中使用以下代码:

syms x;
f = sym(x^2);
subs(f,x,2);

但是我在第一行遇到了这个错误: Undefined function 'syms' for input arguments of type 'char'.

我对Matlab完全不熟悉并且仍在研究语法,所以我可能会遇到语法错误。但是,我也有学生试用版,所以我认为不能使用符号工具箱。有什么方法可以定义f(x)并在x=2进行评估吗?

4 个答案:

答案 0 :(得分:10)

您可以使用匿名函数:

>> f = @(x) x^2;

然后写

>> f(2)

ans =

     4

答案 1 :(得分:4)

如果没有Symbolic Math Toolbox,你仍然可以做类似的事情。一种方法是将x定义为离散值的向量,并计算f

x = 0:0.01:10; %// lower bound, step size, upper bound
f = x.^2;      %// use the element-wise power operator .^
y = f(x == 2); %// get the value for f where x is 2

答案 2 :(得分:2)

当然你只需在.m文件中定义它:例如在f.m:function [x] = f(x);x = x ^ 2;

>> f(2)

ans =

     4

答案 3 :(得分:0)

你可以这样做

  
    

syms x

         

f = x ^ 2

         

subs(f,2)

         

ANS

  

4