実数拡張の二重階乗x!!を最大201点でグラフ・表計算
xの初期値、非0増分、1〜201点を入力し、整数の二重階乗をcos因子とGamma関数で実数拡張したx!!を計算します。
計算結果
- x!!の標本系列
-
計算するとグラフと数値表を表示します。
- x!!
数値表を表示(キーボード・読み上げ対応)
x!!の標本系列。同じx格子で計算したx!!の1系列です。グラフ、表、TSVは同じ点を使います。 x x!!
使い方
- xの初期値、増分、点数を入力します。既定値は1から12まで1刻みで、整数の積を一覧できます。
- 表で1!!=1、2!!=2、6!!=48、12!!=46080を確かめ、非整数を含める場合は刻みを小数へ変えます。
- 負の範囲では極の行が未定義になることを確認し、別ソフトと比較するときは実数拡張の規約を明記します。
計算式・考え方
x!!=(2/π)^((1−cos(πx))/4)×2^(x/2)×Γ(x/2+1)を使います。非負整数では(2n)!!=2^n n!、(2n−1)!!=(2n)!/(2^n n!)と一致します。Γの引数が非正整数となる負の偶数x=−2,−4,…は極なので未定義セルとし、線を分断します。
注意事項
- NIST DLMF §5.4の二重階乗とGamma関数による偶奇の関係、§5.2の極、§5.5の反射公式を2026年7月13日に照合しました。DLMFが示す整数の関係を土台にし、非整数では掲載式のcos(πx)因子を含む実数拡張を採用しています。
- 二重階乗は整数ならn,n−2,n−4,…を掛ける積です。偶数列と奇数列は別々に進むため、通常の階乗n!と取り違えないでください。既定表では3!!=3、4!!=8、5!!=15と交互に列が現れます。整数値だけが目的なら積の定義が直接的で、実数拡張は整数間の形も調べたいときに使います。
- 非整数への拡張は一意ではありません。SciPyのfactorial2で負整数を0とする規約や、複素拡張とは対象が異なります。このページではcos補間式を明記し、負の偶数をGammaの極としてnullにします。負の奇数では−1!!=1、−3!!=−1、−5!!=1/3となりますが、別規約と数値が違う可能性があります。
- Gamma値は正の引数ではlog Gammaを指数へ戻し、負の非整数ではΓ(z)=π/{sin(πz)Γ(1−z)}を使います。これにより共有エンジンに一般Gamma関数を追加せず、既存のpositive_log_gamma、sin、cos、expだけで評価します。非正整数の近傍1e−12以内は浮動小数点格子の誤差を考慮して極として扱います。
- 極に非常に近い有限点では絶対値が急増し、縦軸の大部分を占めます。未定義点そのものを無限大の座標にせず線を切ることが重要です。極の左右を観察する場合は一つの粗いグラフで結ばず、左区間と右区間を分け、表の符号と大きさを確認してください。大きい正数では急速に増えるため上限100へ制限しています。
- サンプル番号i=0,1,…,点数−1に対し、x_i=初期値+i×増分を端末内で生成します。点数には両端を含み、負の増分なら降順です。増分0は同じxの重複になるため拒否し、点数は処理量と表の長さを抑えるため1〜201に限定します。最終点が許可範囲から外れる組合せも入力欄の近くで知らせます。
- 折れ線は隣接する標本点を結んだ表示であり、点間を追加評価した連続曲線そのものではありません。極、零点、急変部を調べるときは刻みを小さくし、重要なxが格子点に入るよう初期値を調整してください。未定義点は有限値へ置き換えず表で未定義とし、線を分断するため、極をまたぐ線が描かれることを避けます。
- グラフの下には同じ計算結果の表を置き、全行をTSVとしてコピーできます。図の高さや線色だけで値を判断せず、列見出しと表の数値を正本として確認してください。非常に大きい値と小さい値が同居すると小さい変化が見えにくくなるため、区間を分けた再計算が有効です。表示桁は読みやすく丸めますが、内部計算はJavaScriptの倍精度です。
- schema v4のsampled-series-v1と許可制ASTだけで各点を評価します。eval、new Function、外部API、CDN、fetch、XHR、WebSocketを使わず、入力値も生成系列もサーバーや第三者へ送信・保存しません。数式の確認と学習、実装の代表点比較を目的とし、任意精度計算や複素数計算を代替するものではありません。
- 有限個の実数標本による学習・検算用グラフです。複素数、任意精度、理論証明を扱いません。
よくある質問
通常の階乗との違いは?
x!!は2ずつ減らす積で、x!は1ずつ減らす積です。例えば6!!=48、6!=720です。
負の偶数が未定義なのはなぜですか?
採用式のΓ(x/2+1)が0以下の整数を引数に取り、Gamma関数の極になるためです。
負数を0とするソフトと結果が違います
拡張規約が違います。このページはcos因子を使う掲載式で、負数を一律0にはしません。
極をまたいだ線は表示されますか?
極のセルを未定義にして線を分断するため、無限大をまたぐ偽の線は結びません。
入力した数値と生成した系列は利用者の端末内だけで計算・表示されます。個人情報の入力欄はなく、外部への送信、保存、WordPressへの書込み、下書き作成、公開を行いません。