а матрица 8х8 - это максимум для С=12?
У вас в матрице отсутствует унитарный квадрат №8. Почему?
А для С=15 что даёт этот метод?
Для С=10 нашел матрицу 7х7
Для С=12 нашел матрицу 8х8
Для С=15 нашел матрицу 9х9
Все это очень мало. Для получения решения C^2 необходимо найти матрицу (С-1)х(С-1). Еще С добавляется с помощью обрамления. На крайний случай, скажем для С=10, можно попытаться построить матрицу 8х8. Тем самым получить решение C10N190. А затем тряской чего то добавить. Ну и  для С=15, матрица 12х12 дает решение C15N195.
Мой опыт исследований, показывает, что очень опасна погоня за миражами. Это когда поменял исходные данные и кажется что разрабатываешь что то новое. Но на самом деле, поменялся только язык задачи, и в результате приходишь к решениям давно известным.
Похоже здесь тот самый случай. Я уже писал, что подход с заполнением матрицы унитарными ЛК, дает квадраты, которые после небольших преобразований можно представить ввиде сильноокрашенного прямоугольника с последующей репликацией. То есть алгоритм принципиально ничем не отличается от алгоритма изложеннего в энциклопедии для ежиков.
С другой строны, вот исходный ЛК для С=10
Код:
1   2   3   4   5   6   7   8   9   10
10   1   2   3   4   5   6   7   8   9
9   10   1   2   3   4   5   6   7   8
8   9   10   1   2   3   4   5   6   7
7   8   9   10   1   2   3   4   5   6
6   7   8   9   10   1   2   3   4   5
5   6   7   8   9   10   1   2   3   4
4   5   6   7   8   9   10   1   2   3
3   4   5   6   7   8   9   10   1   2
2   3   4   5   6   7   8   9   10   1
А это матрица заполнения унитарными ЛК квадрата
Код:
1   1   1   1   1   1   1
1   2   3   4   5   6   10
1   3   2   6   8   4   7
1   4   6   5   3   10   9
1   5   8   10   9   7   2
1   9   7   3   10   2   8
1   10   4   9   2   5   6
Дык это таблицы сложения и умножения конечных полей! То есть это вариант алгоритма Сергея! То есть мы гуляем среди миражей!