You don't say how you want to assess the pairs of matrices, but if you have your matrices as per the code you showed with those names, then
g <- c("g11", "g12", "g13", "g21", "g22", "g23", "g31", "g32", "g33", "g2")
cmb <- combn(g, 2)
which gives:
> cmb
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
[1,] "g11" "g11" "g11" "g11" "g11" "g11" "g11" "g11" "g11" "g12" "g12" "g12"
[2,] "g12" "g13" "g21" "g22" "g23" "g31" "g32" "g33" "g2" "g13" "g21" "g22"
[,13] [,14] [,15] [,16] [,17] [,18] [,19] [,20] [,21] [,22] [,23] [,24]
[1,] "g12" "g12" "g12" "g12" "g12" "g13" "g13" "g13" "g13" "g13" "g13" "g13"
[2,] "g23" "g31" "g32" "g33" "g2" "g21" "g22" "g23" "g31" "g32" "g33" "g2"
[,25] [,26] [,27] [,28] [,29] [,30] [,31] [,32] [,33] [,34] [,35] [,36]
[1,] "g21" "g21" "g21" "g21" "g21" "g21" "g22" "g22" "g22" "g22" "g22" "g23"
[2,] "g22" "g23" "g31" "g32" "g33" "g2" "g23" "g31" "g32" "g33" "g2" "g31"
[,37] [,38] [,39] [,40] [,41] [,42] [,43] [,44] [,45]
[1,] "g23" "g23" "g23" "g31" "g31" "g31" "g32" "g32" "g33"
[2,] "g32" "g33" "g2" "g32" "g33" "g2" "g33" "g2" "g2"
are the set of combinations of your matrices taken 2 at a time.
Then iterate over the columns of cmb
doing your assessment, e.g.:
FUN <- function(g, ...) {
## get the objects for the current pair
g1 <- get(g[1])
g2 <- get(g[2])
## bind together
dat <- rbind(g1, g2)
## something here to assess this combination
cpr2(dat)
}
assess <- apply(cmb, 2, FUN = FUN, ....)