我有
f1[x_, y_] := x^2 - 10 x + y^2 + 8;
f2[x_, y_] := x*y^2 + x - 10 y + 8;
f[x_, y_] := {f1[x, y], f2[x, y]} ;
x0 = {0, 0};
我想评估f[x_, y_]
中的x0
,f[0, 0]
我这样做但不起作用,这是正确的方法吗?
MatrixForm[f[{x0}]]
我得到f[{{0, 0}}]
但希望{8, 8}
改为
答案 0 :(得分:12)
In[61]:= f @@ x0
Out[61]= {8, 8}
出了什么问题?当您评估f[{x0}]
时,这等于f[{{0,0}}]
,这与f
的已定义模式不匹配。 f@@x0
的缩写List[0,0]
替换了x0的头部(内部等于List
,因此其头部为f
),f[0,0]
。然后,您获得与f
的参数模式匹配的{{1}}。然后,您将获得正确的结果。