2011-02-11 2 views
7
내가 표현 D[f[x, y], x]

에 함수의 치환을 위해, 나는 x*yf[x,y]을 대체 할, 나는 다음 시도했다. 도와 주셔서 감사합니다! 감사. 표현식에는 f[x,y] 더 이상 없다 - 당신의 표현에서 파생 상품의 FullForm방법 티카

답변

12

은 첫 번째 규칙이 실패한 이유를 설명해야한다

In[145]:= D[f[x,y],x]//FullForm 

Out[145]//FullForm= Derivative[1,0][f][x,y] 

입니다. 두 번째 규칙은 Derivativef을 함수로 간주하므로 식으로 대치합니다. 할 수있는 일은 다음과 같습니다.

In[146]:= D[f[x,y],x]/.f->(#1*#2&) 

Out[146]= y 

우선 순위 관련 버그를 방지하려면 순수 함수를 둘러싼 괄호가 필수입니다.

다른 방법으로는 패턴을 통해 우를 정의 할 수 없었다 :

In[148]:= 
fn[x_,y_]:=x*y; 
D[f[x,y],x]/.f->fn 

Out[149]= y 

HTH를

+0

감사합니다. 처음에는 FullForm을 완전히 이해하지 못했습니다. :) –

+0

HTH는 무엇을 의미합니까? 나는 이것을 여러 번 보았지만 그 의미를 결코 알지 못했다. –

+0

"희망이 있습니다" – joebolte

5

아무것도 새로운, 다만 방법 나는 보통의 생각 :

D[f[x, y], x] /. f -> Function[{x, y}, x y] 

y 

아웃
2

Y ou는 또한 보류 및 해제 또는 연기 등을 시도 할 수 있습니다.

[email protected][f[x, y], x] /. {f[x, y] -> x*y} 

D[x y, x]  


[email protected][f[x, y], x] /. {f[x, y] -> x*y} // Release 

y