2012-10-06 58 views
4

我想用uniroot()解決方程式,但在此之前我必須區分表達式。表達式到功能

我創建了表達式,然後用D()將其與D()區分開來,但我不知道如何將所述表達式返回給我可以取其根的函數。

到目前爲止,我有:

eq<-expression((w^2)*3+((1-w)^2)*2.5+2*w*(1-w)*0.9) 
f<-D(eq, name="w") 

預先感謝您的幫助!

回答

4

試試這個(感謝flodel爲有用的註釋):

g = function(w) eval(f) 
uniroot(g, c(0,1000)) 
+1

或只是'g^< - 函數(W)的eval(F)' – flodel

+0

它的工作原理正是我需要它,非常感謝你許多! –