![]() |
Home | Libraries | People | FAQ | More |
#include <boost/math/special_functions/factorials.hpp>
namespace boost{ namespace math{ template <class T> calculated-result-type rising_factorial(T x, int i); template <class T, class Policy> calculated-result-type rising_factorial(T x, int i, const Policy&); }} // namespaces
返回x 和 i的遞增階乘:
rising_factorial(x, i) = Γ(x + i) / Γ(x);
或者
rising_factorial(x, i) = x(x+1)(x+2)(x+3)...(x+i)
注意:x 和 i 可以是正數也可以是負數:.
最後一個策略 參數是可選的並且可以用來控制函數的行為: 如何處理錯誤, 使用哪種層次的精度等等. 參見策略文檔瞭解更多信息。
如果計算結果太大以至於T類型無法表示,那麼就可能返回溢出錯誤 .
函數返回值的類型使用返回值類型推導法則來確定:如果T是int型,那麼返回值的類型是double, 否則返回值類型為T.
這個函數的精確性與tgamma_delta_ratio 函數的精確性一樣.
遞減階乘的的抽樣測試數據由 functions.wolfram.com生成
遞增和遞減階乘函數以作為γ函數的比的形式使用tgamma_delta_ratio來實現。由tgamma_delta_ratio函數內部實現針對較小的參數的優化。