1
感謝R對函數參數的評估,可以指定一組一致的輸入參數,並且可以自動計算其他參數。對輸入參數的一致評估
考慮下面的函數,連接濃度,質量,體積和摩爾量爲化學稀釋,
concentration <- function(c = m/(M*V), m = c*M*V, V = m/(M*c), M = 417.84){
cat(c("c=", c*1e6, "micro.mol/L\n",
"m=", m*1e3, "mg\n",
"M=", M, "g/mol\n",
"V=", V*1e3, "mL\n"))
## mol/L, g, g/mol, L
invisible(list(c=c, m=m, M=M, V=V))
}
是否有隻指定方程之一和具有R搞清楚其他的方式通過倒置?我意識到這僅限於簡單的線性關係,因爲通常不能通過分析來表示反演。
concentration <- function(c = m/(M*V), m, V, M = 417.84){
## { magic.incantation }
## mol/L, g, g/mol, L
invisible(list(c=c, m=m, M=M, V=V))
}
聽起來不錯 - 你有一個簡單的例子嗎? – baptiste
Baptiste:啓動w/BBsolve幫助頁面,然後嘗試ktsolve.R函數標題中的示例函數。 #yfunc - 是如下形式的函數: #\t yfunc <-function(x)的{ #\t \tÝ<維矢量() #\t \t Y [1] < - F1(x)的 #\t \t Y [2] < - F2(x)的 #\t \t Y [長度(X)] < - FN(X) #\t \tý #\t \t} #\t其中,y [j]的被假人這將是驅動爲零, #\t和x [j]是一個虛擬矢量,將填入'猜' #因此,例如:d = a + sqrt(b)和a = sin(a/b)+ g *的格式必須輸入爲y [j] < - f(x) exp(f * a)變成 #y [1] <-a-d + sqrt(b)和y [2] <-sin(a/b)+ g * exp(f * a)-a, –
和...#和例如 #known < - list(a = 3,d = 5,g = .1)是固定參數,並且是BBsolve() –