В Scilab вы должны указать как количество строк, так и количество столбцов. Итак, если вы хотите создать матрицу 500x500, вам нужно сказать нули (500, 500). Если вы хотите вектор 500х1, вам нужно сказать нули (500, 1).
Если вы хотите создать матрицу нулей, в которой ровно столько строк и столбцов, сколько в другой матрице (скажем, A), вам нужно сказать нули (A). Отсюда и неразбериха.
В Scilab нули (500) принимают 500 в качестве матрицы 1x1 и генерируют матрицу нулей размером 1x1, то есть [0]. В MATLAB для нулей (500) в качестве размера требуемой матрицы было бы 500, предполагая квадратную матрицу.