Вычисление сумм. Вычисление сумм в аналитическом виде.
В этом уроке описаны основные операции математического анализа, детали которых можно найти в любом справочнике по высшей математике. Эти операции чаще всего используются при проведении математических и научно-технических расчетов и потому описаны достаточно полно.
В числе операций математического анализа прежде всего надо отметить суммы:
Сумма от i
=
min до imax по fi
В этих операциях индекс i принимает целочисленные значения от минимального (начального) imin до максимального (конечного) imax с шагом, равным +1.
Суммы и произведения легко вычисляются численными математическими системами, такие вычисления просто описываются на всех языках программирования. Однако важным достоинством систем символьной математики, включая Маthematica, является вычисление сумм и произведений в аналитическом виде (если это возможно) и при большом числе членов – вплоть до стремящегося к бесконечности.
Для вычисления сумм в системе Mathematica предусмотрена функция Sum, используемая в ряде форм:
- Sum [ f, {i, imax} ] – вычисляет сумму значений f при изменении индекса i от 1 до imax с шагом +1;
- Sum[f, {i, imin, imax}] – вычисляет сумму значений f при изменении индекса i от минимального значения i=imin до максимального i=imax с шагом +1;
- Sum[f, {i, imin, imax, di}] – вычисляет сумму значений f при изменении управляющей переменной вещественного типа от минимального значения i=imin до максимального i=imax с шагом di;
- Sum[f, {i, imin, imax}, {j, jmin, jmax},…] – вычисляет многократную сумму значений f при изменении индексов i от imin до imax с шагом +1, j от jmin до jmax с шагом +1 и т. д. (число индексов не ограничено).
Таким образом, эта функция обеспечивает расширенные возможности вычисления сумм – как при целочисленных, так и при вещественных значениях управляющих переменных, задающих циклы вычислений. Примеры использования функций суммирования:
Sum[i
^
2
, {i,
10
}]
385
Sum[i
*
2
, {i,
1
,
10
}]
385
Sum[i
^
2
, {
1
,
1
,
2
,
0.25
}]
11.875
Sum[i
*
j, {i,
1.10
}, {j,
2
,
5
}]
770
В последнем примере использована стандартная форма вывода – при ней функция суммирования представляется в виде оператора суммирования.
Обычно в математических системах недопустима перестановка imin и imax, хотя в математике известно школьное правило – от перестановки слагаемых сумма не изменяется. Рискнем проверить это:
Sum[i, {i,
1
,
100
}]
5050
Sum[i, {
1
,
100
,
1
}]
0
Sum[i, {
1
,
100
,
1
,
-
1
}]
5050
Второй пример тут дал явно ошибочный результат, хотя третий с честью оправдал указанное правило.
Примечание:
Не применяйте установки параметров, противоречащие синтаксису записи той или иной функции – в частности, Sum. Это чревато возникновением серьезных ошибок.
Приведем еще ряд примеров выполнения операции суммирования:
Sum[xn
/
n!, {n,
0
,
8
}]
1
+
X
+
X2
/
2
X3
/
6
X4
/
24
X5
/
120
X6
/
720
X7
/
5040
X8
/
40320
Sum[xn
/
n!, {n,
1
,
9
,
2
}]
X
+
X3
/
3
X5
/
120
X7
/
5040
X9
/
362880
Sum[xi yi, {i,
1
,
4
}, {j,
1
, i}]
xy
+
x2 y
+
x3 y
+
x4 y
+
x2:
/
2
+
x3 y2
+
x4y2
+
x3 y3
+
x4 y3
+
x4y4
Sum[
1
/
n
*
n, {n,
1
, бесконечность}]
n2
/
6
Sum[i4 {i,
1
, n}]
1
/
30n
(
1
-
n)(
1
+
2n
)(
-
l
+
3n
+
3n2
)
1
/
3
(
3
-
3
EulerGamma
+
2
n
+
n3)
-
PolyGamma[
0
,
2
+
n]
Из этих примеров видно, что Mathematica 3/4 обеспечивает возможность символьного вычисления сумм, в том числе с бесконечным пределом суммирования. Вычисляются даже суммы, выраженные через специальные математические функции (см. последний пример). При этом для вычисления сумм в символьном виде, в отличие от предшествующих версий Mathematica, уже не требуется загрузка специального пакета для расширенных (символьных) операций с суммами.