2012-04-26 70 views
5

我想在點(1,-2)評估f [x,y] = - 4 x + x^2 - 4 y - y^2。 (2,-3); (3,-2); (2,-1)。在幾點評價函數

我試過使用但由於某些原因,它不給我實際值。幫幫我。

回答

8

請記住,Mathematica有定義函數的特定方法。在你的情況下,它將是f[x_,y_]:=-4 x + x^2 - 4 y - y^2。然後,你可以簡單地使用f[1,-2]

+0

我嘗試這種方式,但輸出I得到的是功能和值I使用的有點圖形在它的旁邊。 – Koba 2012-04-26 01:54:52

+0

真的嗎?它應該只是返回一個數字。你記得f [x_,y_]中的下劃線和「= =」而不是「=」嗎? – arshajii 2012-04-26 03:08:02

+0

今天我嘗試了你的方式,它工作。不知道昨天發生了什麼錯誤或不同。謝謝。 – Koba 2012-04-26 16:16:27

3

下面是對主題的一些變化:

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}

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

您可以使用功能,如ApplyMap來評價點的列表的功能,例如

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} *) 

或使用@@@爲短手Apply[ ...., {1}]

f @@@ pts 
+0

謝謝。另外,有用的技術 – Koba 2012-04-26 16:17:14

5

或許可以考慮使用「純'功能。例如:

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

給出

{1,-1,1,-1}

+0

另外,工作。感謝您的幫助。 – Koba 2012-04-26 16:17:46

+1

@Dostre。您可能已經意識到這一點,但另一種可能性是更換規則。例如:'-4 x + x^2 - 4 y - y^2 /。線程[{x,y} - >#]&/ {{1,-2},{2,-3},{3,-2},{2,-1}}' ,-4 x + x^2 - 4 y - y^2 /。 {x - > 1,y - > -2}'。 – tomd 2012-04-27 14:34:52

+0

是的,謝謝你指出這一點。現在,我可以從這裏發佈的一堆內容中選擇我認爲便捷的方式。這使得這個線程更完整。再次感謝 – Koba 2012-04-27 14:44:05