その式を関数に詰め込みます:
myfun <- function(i, j) {
exp(-sqrt((i-64)^2 + (j-64)^2) / 20)
}
次に、可能なi, j
組み合わせの「マトリックス」を作成します。
n <- 128
combos <- expand.grid(i=1:n, j=1:n)
次に、これらの 2 つのベクトルを使用して関数を呼び出します。
matrix(myfun(combos$i, combos$j), nrow=n)
より小さい数を使用する:
> n <- 5
> combos <- expand.grid(i=1:n, j=1:n)
> matrix(myfun(combos$i, combos$j), nrow=n)
[,1] [,2] [,3] [,4] [,5]
[1,] 0.01162296 0.01203954 0.01246747 0.01290681 0.01335761
[2,] 0.01203954 0.01247458 0.01292166 0.01338085 0.01385221
[3,] 0.01246747 0.01292166 0.01338860 0.01386840 0.01436113
[4,] 0.01290681 0.01338085 0.01386840 0.01436960 0.01488451
[5,] 0.01335761 0.01385221 0.01436113 0.01488451 0.01542247
>