
明明N[]默认的就是16位精度,凭什么N[,$MachinePrecision] 就慢了500多倍?甚至连N[,5]都比N[]慢了300倍。为什么啊。
L = 50;
mat = SparseArray[{Band[{2, 1}] ->
RandomPrime[15, L - 1]/RandomPrime[40, L - 1],
Band[{1, 2}] ->
RandomPrime[15, L - 1]/RandomPrime[40, L - 1]}, {L, L}];
Eigensystem[N[mat]]; // AbsoluteTiming
Eigensystem[N[mat, MachinePrecision]]; // AbsoluteTiming
Eigensystem[N[mat, $MachinePrecision]]; // AbsoluteTiming
Eigensystem[N[mat, 5]]; // AbsoluteTiming