Матрица m1 для каждого вычисления генерируется заново.
Это можно увидеть, если поставить несколько выводов m1.
Мне первое что приходит в голову - это костыль в виде записи сгенерированного массива в файл и последующее создание массива через чтение сгенерированного файла.