Создание рядов Рамануджанат-Дирихле (Ramanujan). Рационализация чисел (Rationalize).
В подпакете Ramanujan определены следующие функции:
- RamanujanTau [n] – n-й коэффициент ряда Рамануджана т-Дирйхле (т n );
- RamanujanTauGeneratingFunction [z] – производящая функция ряда Рамануджана т-Дирихле;
- RamanujanTauDirichletSeries [s] – ряд Рамануджана т-Дирихле f(s);
- RamanujanTauTheta [t] – функция Рамануджана т-Дирихле o(t)
- RamanujanTauZ [t] – функция Рамануджана т-Дирихле z(t).
Это довольно редкие функции, представляющие интерес для специалистов в теории чисел. Достаточно подробные их определения даны в справочной базе данных. Ограничимся приведением примеров их использования:
<
<
NumberTheory`Ramanujan`
RamanujanTau[
5
]
4830
Sum[RamanujanTau[n] z
^
n, {n,
5
}]
z
-
24
z2
+
252
z3
-
1472
z4
+
4830
z5
RamanujanTauGeneratingFunction[.
1
]
0.00610209
RamanuJanTauGeneratingFunction[.
99
]
4.10287803703
x
-
1673
RamanujanTauDirichletSeries[
6
+
9.221
]
0.00040309
-
0.002390131
z
=
RamanujanTauZ[
9.22
]
0.00242388
theta
=
RamanujanTauTheta[
9.22
]
1.40372043366323
z Exp[
-
I theta]
0.00040309
-
0.00239013
I
Рационализация чисел (Rationalize)
Подпакет Rationalize расширяет возможности представления чисел в рациональном виде. Он содержит определения следующих функций:
- ProjectiveRationalize [ {х0, x1,…, хn} ] – возвращает список целых чисел, дающих рациональные представления для чисел заданного списка;
- ProjectiveRationalize [ {х0, x1,…, хn},ргес] – возвращает список целых чисел, дающих рациональные представления с погрешностью не более 10-рreк
- AffineRationalize [ {х0, x1,…, хn} ] – возвращает список рациональных приближений для чисел заданного списка;
- AffineRationalize [ {х0, x1,…, xn},prec] – возвращает список рациональных приближений для чисел заданного списка, вычисленных с погрешностью не более 10-ргес.
Встроенная в ядро функция Rationalize дает рациональное представление для одиночных вещественных чисел. Приведенные функции выполняют рационализацию для списков чисел. Примеры их применения представлены ниже:
<
<
NumberTheory` Rationalize`
Rationalize[N[
3
Pi],
6
]
/
Rationalize[N[
11
Pi],
6
]
9
/
35
ProjectiveRationalize[{N[
3
Pi], N[
11
Pi]}]
{
3
,
11
}
AffineRationalize[{N[
3
Pi], N[
11
Pi]},
6
]
{
1065
/
113
,
3905
/
113
}