3

我正在阅读这篇论文(旨在使用贝叶斯分层方法对纳米线 (NW) 生长进行建模)。在第 7 页,作者提出了一个模型来描述纳米线的生长。我正在尝试编写 WinBUGS 代码(请参见下文),但我不确定它是否正确。

我从论文中引用了这一点作为摘要:

案例研究将展示不确定性下 NW 增长过程的分层建模和估计过程。...其中的数据是在六种生长条件(T = 365°C、380°C、400°C、420°C、430° C,440°C)。前四个条件用于模型构建。我们不考虑这两种高温条件,因为在 180 秒和 900 秒时没有观察到。“</p>

所以我们要处理三个变量,包括时间(以秒为单位)、温度(以摄氏度为单位)和纳米线的长度(以厘米为单位)。有四个温度级别(365°C、380°C、400°C 和 420°C)和四个时间点(15 秒、30 秒、180 秒、900 秒)。我没有每个条件下的确切长度值,因此我通过查看论文中的图 6 生成了一些值。

这是 WinBUGS 代码。它运行完美,但我不确定它是否正确。我很感激任何意见。谢谢!

model
{
    for(j in 1 : 4) {
        for(i in 1 : 4) {
            X[i,j] ~ dnorm(mu[i,j], tau)
            mu[i,j] <- (step(t0[j] - t[i]))  * ((a1[j]*(exp(-alpha2[j]/t[i])))) + (step(t[i] - t0[j])) * ((a3[j]*t[i]) + (a1[j]*(exp(-alpha2[j]/t0[j]))) -a3[j]*t0[j])
        }

        t0[j] ~ dunif(1,40)
        alpha2[j] ~ dunif(1,20)

        a1[j]~ dnorm(mua1[j], tau1)
        a3[j]~ dnorm(mua3[j], tau3)

        alpha1[j] <- exp(a11)
        alpha3[j] <- exp(a33)

        log(mua1[j]) <- log(alpha1[j]) - (230/(T[j]*1.3806503*pow(10, -23)))
        log(mua3[j]) <- log(alpha3[j]) - (230/(T[j]*1.3806503*pow(10, -23)))
    }

    a11~ dnorm(0,0.001)
    a33~ dnorm(0, 0.001)

    tau1 <- pow(sigma1, -2)
    sigma1 ~ dunif(0,10)

    tau3 <- pow(sigma3, -2)
    sigma3 ~ dunif(0,10)

    tau <- pow(sigma, -2)
    sigma ~ dunif(0,20)
}

list(X= structure(.Data= c(0.00011E+00, 0.00022E+00, 2.00000E-02, 3.50000E-02, 7.00000E-03, 7.00000E-03, 3.00000E-01, 3.00000E-01, 3.50000E-02, 7.00000E-02, 2.50000E-01, 5.00000E-01, 2.00000E-01, 2.25000E-01, 5.50000E-01, 2.30000E+00), .Dim=c(4, 4)), T=c(3.65000E+02, 3.80000E+02, 4.00000E+02, 4.20000E+02), t=c(1.50000E+01, 3.00000E+01, 1.80000E+02, 9.00000E+02))
4

0 回答 0