正在研究检测到的伽马光子簇,以寻找潜在的伽马射线源
立方体或 tesseract 正在发射伽马辐射。为了找到伽马辐射源(并因此找到 tesseract 的潜在位置),可以使用算法来检测检测到的伽马辐射位置中的簇。
请注意,观察到的光子的估计位置/方向并不那么准确,存在误差,因此统计数据发挥了作用。每当检测到的光子彼此非常接近时,这可能表明它们与辐射伽马光子的源有关。
寻找伽马射线簇是一种确定检测到的伽马射线是背景还是与其他检测到的伽马射线一起属于某个潜在的共同来源的方法。
天文学家一直在使用最小生成树算法来寻找(潜在地)相关的检测到的伽马射线簇(例如参见:Campana 2008 )。
这是如何工作的示例图像
可以使用 R 统计软件生成其工作原理的示例图像(见下文):
它与作品中的图像相似(但我找不到具有明确免费许可的图像):

library(emstreeR)
## 2D artifical data
set.seed(1)
n <- 20
n2 <- 400-n*3
## c1 to c3 are artificial clusters
## c4 is background noise
c1 <- data.frame(y = rnorm(n, 45, sd = 1),
x = rnorm(n, 130, sd = 1))
c2 <- data.frame(y = rnorm(n, 50, sd = 1),
x = rnorm(n, 125, sd = 1))
c3 <- data.frame(y = rnorm(n, 55, sd = 1),
x = rnorm(n, 135, sd = 1))
c4 <- data.frame(y = runif(n2, 40,60),
x = runif(n2, 120,150))
d <- rbind(c1, c2, c3, c4)
## MST:
out <- ComputeMST(d)
## 2D plot of points:
plot(-100,-100,xlim = c(120,150), ylim = c(40,60), xlab="latitude", ylab="longitude")
points(out$x,out$y,
pch = 21, col = 1, bg = 1, cex=0.4)
title("approximate spatial distribution \n of detected signals", cex.main=1)
plot(-100,-100,xlim = c(120,150), ylim = c(40,60), xlab="latitude", ylab="longitude")
points(out$x,out$y,
pch = 21, col = 1, bg = 1, cex=0.4)
title("red lines: small edges \n green dots: connected with n >= 10", cex.main = 1)
# draw clusters seperately with large size
library(igraph)
edgevector <- as.numeric(matrix(cbind(out$from[edgeselect],out$to[edgeselect]),2,byrow=TRUE))
graph <- make_graph(edgevector, directed = FALSE)
groepen <- groups(components(graph))
sizes <- which(components(graph)$csize>=10)
for (s in sizes) {
coordinates <- unlist(groepen[s])
points(out$x[coordinates],
out$y[coordinates],col=3)
}
# draw the tree and use mean distance as boundaries between clusters
boundary = mean(out$distance)
edgeselect = out$distance<boundary
colors = rgb(0.75+edgeselect*0.25,
0.75-edgeselect*0.75,
0.75-edgeselect*0.75)
for (i in 1:400) {
lines(c(out$x[out$from[i]],out$x[out$to[i]]),
c(out$y[out$from[i]],out$y[out$to[i]]),
col = colors[i])
}