факториал2#
- scipy.special.факториал2(n, точный=False, расширить='zero')[источник]#
Двойной факториал.
Это факториал с пропуском каждого второго значения. Например,
7!! = 7 * 5 * 3 * 1. Это можно аппроксимировать численно как:n!! = 2 ** (n / 2) * gamma(n / 2 + 1) * sqrt(2 / pi) n odd = 2 ** (n / 2) * gamma(n / 2 + 1) n even = 2 ** (n / 2) * (n / 2)! n evenФормула для нечетных
nявляется основой для комплексного расширения.- Параметры:
- nint или float или complex (или array_like таковых)
Входные значения для
n!!. Нецелые значения требуютextend='complex'. По умолчанию возвращаемое значение дляn < 0равен 0.- точныйbool, необязательно
Если
exactесли установлено True, вычислять ответ точно, используя целочисленную арифметику, иначе использовать указанное выше приближение (быстрее, но даёт числа с плавающей точкой вместо целых). По умолчанию False.- расширитьstring, optional
Один из
'zero'или'complex'; это определяет, как значенияn<0обрабатываются - по умолчанию они равны 0, но можно выбрать комплексное расширение двойного факториала. Это также позволяет передавать комплексные значения вn.Предупреждение
Используя
'complex'расширение также изменяет значения двойного факториала для чётных целых чисел, уменьшая их на множительsqrt(2/pi) ~= 0.79, см. [1].
- Возвращает:
- nfint или float или complex или ndarray
Двойной факториал от
n, как целое, вещественное или комплексное число (в зависимости отexactиextend). Массивные входные данные возвращаются как массивы.
Ссылки
[1]Комплексное расширение двойного факториала https://en.wikipedia.org/wiki/Double_factorial#Complex_arguments
Примеры
>>> from scipy.special import factorial2 >>> factorial2(7, exact=False) array(105.00000000000001) >>> factorial2(7, exact=True) 105