3

私はこの論文を読んでいます(ベイズ階層アプローチを使用してナノワイヤ(NW)の成長をモデル化することを目的としています)。7 ページで、著者はナノワイヤの成長を説明するモデルを提案しました。WinBUGS コードを書こうとしています (以下を参照してください) が、それが正しいかどうかわかりません。

私は要約として論文からこれを引用しました:

ケーススタディでは、階層モデリングの手順と、不確実性の下での北西部の成長プロセスの推定について説明します。... その中のデータは、6 つの成長条件 (T = 365 ◦ C、380 ◦ C、400 ◦ C、420 ​​◦ C、430 ◦) の下で、経時的に (t = 15 秒、30 秒、180 秒、900 秒) 収集されました。 C、440 ℃)。最初の 4 つの条件は、モデルの構築に使用されます。180 秒と 900 秒では観測がないため、2 つの高温条件は考慮しません。「</p>

つまり、時間 (秒)、温度 (摂氏)、ナノワイヤーの長さ (cm) の 3 つの変数を扱っています。4 つのレベルの温度 (365 ℃、380 ℃、400 ℃、および 420 ℃) と 4 つの時間ポイント (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