В статье Дж. Брайана Конри «Гипотеза Римана» на рис. 6 приведен график преобразования Фурье члена ошибки в теореме о простых числах . См. График слева на изображении ниже:
В сообщении блога под названием Primes out of Thin Air , написанном Крисом Кингом, есть программа Matlab, которая строит спектр. Смотрите сюжет справа в начале поста.Возможен перевод в систему Mathematica:
Mathematica:
scale = 10^6;
start = 1;
fin = 50;
its = 490;
xres = 600;
y = N[Accumulate[Table[MangoldtLambda[i], {i, 1, scale}]], 10];
x = scale;
a = 1;
myspan = 800;
xres = 4000;
xx = N[Range[a, myspan, (myspan - a)/(xres - 1)]];
stpval = 10^4;
F = Range[1, xres]*0;
For[t = 1, t <= xres, t++,
For[yy=0, yy<=Log[x], yy+=1/stpval,
F[[t]] =
F[[t]] +
Sin[t*myspan/xres*yy]*(y[[Floor[Exp[yy]]]] - Exp[yy])/Exp[yy/2];
]
]
F = F/Log[x];
ListLinePlot[F]
Однако, как я понимаю, это матричная формулировка синусоидального преобразования Фурье, и поэтому ее вычисления очень дороги. Я НЕ рекомендую запускать его, потому что он уже однажды разбил мой компьютер.
Есть ли в системе Mathematica способ, использующий быстрое преобразование Фурье, для построения спектра с пиками при x-значениях, равных мнимой части дзета-нулей Римана?
Я пробовал команды FourierDST
и Фурье
безуспешно. Проблема, похоже, в том, что переменная yy
в коде включена как в Sin [t * myspan / xres * yy]
, так и в (y [[Floor [Exp [ гг]]]] - Срок [гг]) / Срок [гг / 2]
.
РЕДАКТИРОВАТЬ: 20.1.2012, я изменил строку:
Для [yy = 0, yy
] на следующее:
Для [yy = 0 , yy / stpval
EDIT: 22.1.2012, из комментария Heike, изменено:
For [yy = 0, yy / stpval
в:
Для [yy = 0, yy