2020-11-09 07:13:32 +01:00
|
|
|
|
updateGlobalVariables <- function(ind, i2, diffInCounts, adjprior, priorTerm) {
|
|
|
|
|
|
# % Suorittaa globaalien muuttujien muutokset, kun yksil<69> ind
|
|
|
|
|
|
# % on siirret<65><74>n koriin i2.
|
2020-11-19 08:09:04 +01:00
|
|
|
|
i1 <- PARTITION[ind]
|
|
|
|
|
|
PARTITION[ind] <- i2
|
2020-11-09 07:13:32 +01:00
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
|
|
|
|
|
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
2021-02-15 10:15:25 +01:00
|
|
|
|
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - colSums(diffInCounts)
|
|
|
|
|
|
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + colSums(diffInCounts)
|
2020-11-09 07:13:32 +01:00
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
POP_LOGML[c(i1, i2)] <- computePopulationLogml(
|
2020-11-09 07:13:32 +01:00
|
|
|
|
c(i1, i2), adjprior, priorTerm
|
|
|
|
|
|
)
|
|
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
LOGDIFF[, c(i1, i2)] <- -Inf
|
2020-11-09 07:13:32 +01:00
|
|
|
|
inx <- c(find(PARTITION == i1), find(PARTITION==i2))
|
2020-11-19 08:09:04 +01:00
|
|
|
|
LOGDIFF[inx, ] <- -Inf
|
2020-11-09 07:13:32 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
updateGlobalVariables2 <- function(i1, i2, diffInCounts, adjprior, priorTerm) {
|
|
|
|
|
|
# % Suorittaa globaalien muuttujien muutokset, kun kaikki
|
|
|
|
|
|
# % korissa i1 olevat yksil<69>t siirret<65><74>n koriin i2.
|
|
|
|
|
|
|
|
|
|
|
|
inds <- find(PARTITION == i1)
|
2020-11-19 08:09:04 +01:00
|
|
|
|
PARTITION[inds] <- i2
|
2020-11-09 07:13:32 +01:00
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
|
|
|
|
|
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
2021-02-15 10:15:25 +01:00
|
|
|
|
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - colSums(diffInCounts)
|
|
|
|
|
|
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + colSums(diffInCounts)
|
2020-11-09 07:13:32 +01:00
|
|
|
|
|
|
|
|
|
|
POP_LOGML[i1] <- 0
|
|
|
|
|
|
POP_LOGML[i2] <- computePopulationLogml(i2, adjprior, priorTerm)
|
|
|
|
|
|
|
|
|
|
|
|
LOGDIFF[, c(i1, i2)] <- -Inf
|
|
|
|
|
|
inx <- c(find(PARTITION == i1), find(PARTITION == i2))
|
|
|
|
|
|
LOGDIFF[inx, ] <- -Inf
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
updateGlobalVariables3 <- function(
|
|
|
|
|
|
muuttuvat, diffInCounts, adjprior, priorTerm, i2
|
|
|
|
|
|
) {
|
|
|
|
|
|
# % Suorittaa globaalien muuttujien p<>ivitykset, kun yksil<69>t 'muuttuvat'
|
|
|
|
|
|
# % siirret<65><74>n koriin i2. Ennen siirtoa yksil<69>iden on kuuluttava samaan
|
|
|
|
|
|
# % koriin.
|
|
|
|
|
|
|
|
|
|
|
|
i1 <- PARTITION[muuttuvat(1)]
|
2020-11-19 08:09:04 +01:00
|
|
|
|
PARTITION[muuttuvat] <- i2
|
2020-11-09 07:13:32 +01:00
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
|
|
|
|
|
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
2021-02-15 10:15:25 +01:00
|
|
|
|
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - colSums(diffInCounts)
|
|
|
|
|
|
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + colSums(diffInCounts)
|
2020-11-09 07:13:32 +01:00
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
POP_LOGML[c(i1, i2)] <- computePopulationLogml(
|
2020-11-09 07:13:32 +01:00
|
|
|
|
c(i1, i2), adjprior, priorTerm
|
|
|
|
|
|
)
|
|
|
|
|
|
|
2020-11-19 08:09:04 +01:00
|
|
|
|
LOGDIFF[, c(i1, i2)] <- -Inf
|
2020-11-09 07:13:32 +01:00
|
|
|
|
inx <- c(find(PARTITION == i1), find(PARTITION == i2))
|
2020-11-19 08:09:04 +01:00
|
|
|
|
LOGDIFF[inx, ] <- -Inf
|
2020-11-09 07:13:32 +01:00
|
|
|
|
}
|