Wolfram mathematica 在多个点上评估函数

Wolfram mathematica 在多个点上评估函数,wolfram-mathematica,Wolfram Mathematica,我想计算f[x,y]=-4x+x^2-4y-y^2在点(1,-2)处的值;(2,-3); (3,-2); (2,-1) 我尝试使用Outer,但由于某些原因,它没有给我实际值。帮助。记住Mathematica有一种定义函数的特定方法。在您的例子中,它将是f[x,y]:=-4x+x^2-4y-y^2。然后您可以简单地使用f[1,-2]等。以下是主题的一些变体: Clear[f] f[{x_, y_}] := -4 x + x^2 - 4 y - y^2 points = {{1, -2}, {2

我想计算f[x,y]=-4x+x^2-4y-y^2在点(1,-2)处的值;(2,-3); (3,-2); (2,-1)


我尝试使用Outer,但由于某些原因,它没有给我实际值。帮助。

记住Mathematica有一种定义函数的特定方法。在您的例子中,它将是
f[x,y]:=-4x+x^2-4y-y^2
。然后您可以简单地使用
f[1,-2]
等。

以下是主题的一些变体:

Clear[f]

f[{x_, y_}] := -4 x + x^2 - 4 y - y^2
points = {{1, -2}, {2, -3}, {3, -2}, {2, -1}};
Map[f, points]
{1,-1,1,-1}

f[x_, y_] := -4 x + x^2 - 4 y - y^2
f[1, -2]
一,


1

例如,您可以使用
Apply
Map
等函数来计算点列表中的函数

f[x_, y_] := -4 x + x^2 - 4 y - y^2 

pts =  {{1, -2}, {2, -3}, {3, -2}, {2, -1}};

Apply[f, pts, {1}]

(* out: {1, -1, 1, -1} *)
或者使用
@@@@code>作为
应用[..,{1}]

f @@@ pts

也许考虑使用一个“纯”函数。例如:

-4 #1 + #1^2 - 4*#2 - #2^2 & @@@ {{1, -2}, {2, -3}, {3, -2}, {2, -1}}
给予


{1,-1,1,-1}

我试过那样做,但我得到的输出是该函数的一个小图形,以及我在它旁边使用的值。真的吗?它应该只返回一个数字。你还记得f[x,y]中的下划线和“:=”而不是“=”?我今天尝试了你的方法,结果成功了。不知道昨天出了什么问题或有什么不同。多斯特,谢谢。您可能已经意识到这一点,但另一种可能性是替换规则。例如:
-4x+x^2-4y-y^2/。线程[{x,y}->#]&/{{1,-2},{2,-3},{3,-2},{2,-1}
或者,对于个别情况,
-4x+x^2-4y-y^2/。{x->1,y->-2}
。是的,谢谢你指出这一点。现在,我可以选择我认为方便的方式从这里发布的一堆。这使这个线程更加完整。再次感谢
f[x_, y_] := -4 x + x^2 - 4 y - y^2
f[1, -2]