Вычисление произведений в численном виде
Для вычисления численных значений произведения используются следующие функции:
- NProduct [f, {i, imax }]– возвращает численное значение произведения значений f [i] для значений i, изменяющихся от 1 до imax;
- NProduct [f, {i, imin, imax}] – возвращает численное значение произведения значений f [i] при изменении i от imin до imax с шагом +1;
- NProduct [f, {i, imin, imax, di }]– возвращает численное значение произведения значений f [i] при i, меняющемся от значения imin до значения imax с шагом di;
- NProduct[f, {i, imin, imax}, {j, jmin, j max },…]– вычисляет численное значение многократного произведения (произведение по нескольким переменным).
Эти функции применяются с теми же опциями, которые используются для функции Nsum, что позволяет управлять вычислительным процессом. Ознакомиться с опциями можно, выполнив команду Options [NProduct]. Ниже представлен пример на использование функции Nproduct. Сначала вычисляем точное значение произведения для использования в качестве эталона:
trueproduct
=
Product[j
/
(
1
+
j), {j,
1
,
50
}]
1
/
51
Пример вычисления того же произведения с помощью функции NProduct – погрешность велика:
NProduct[j
/
(
1
+
j), {j,
1
,
50
}, Method
>
SequenceLimit, NProductFactors
>
2
, NProductExtraFactors
>
4
]
-
trueproduct
0.188235
В следующем примере опции подобраны лучше – погрешность мала:
NProduct[j
/
(
1
+
j), {j,
1
,
50
}, Method
>
SequenceLimit, NProductFactors
>
50
, NProductExtraFactors
>
4
]
-
trueproduct
-
1.38778
*
10
-
17
Применение функции NProduct оправдано высокой скоростью производимых ею вычислений. Однако, как показывают приведенные примеры, к такому применению надо относиться с осторожностью из-за возможности возникновения больших вычислительных погрешностей.