Дело было в том, что пример создавался на компьютере с американской локализацией, а потому запятая там является разделителем аргументов функций, а у нас запятая - разделитель целой и дробной частей числа, т.е. когда Вы написали matrix(21,1) в скобках получилось десятичное число 21,1 вместо двух аргументов функции.
С уважением, Андрей Ивашов.