Gamma函数深入理解
Gamma函数
当n为正整数时,n的阶乘定义如下:n! = n * (n - 1) * (n - 2) * … * 2 * 1。
当n不是整数时,n!为多少?我们先给出答案。

容易证明,Γ(x + 1) = x * Γ(x),当n为正整数时,显然有Γ(n) = (n – 1)!。
计算(1/2)!
先给一个神奇的公式,证明不详述。
(1)
定义如下函数

令上式p = 1,q = 1/2,同时根据对称性原理,有
(2)
同时容易证明
(3)
令p = 1/2,结合(2)(3)式,有



由于B关于q递增,则

对m取极限,有

根据夹逼定理,则

即

结合公式(1),有

即

n!的通用公式
整数n!序列如下
|
n |
1 |
2 |
3 |
4 |
5 |
|
n! |
1 |
2 |
6 |
24 |
120 |
我们把这些点用光滑曲线连接起来,得到如下图形

求n!的通用公式,即求该曲线的函数表达式。由于需要把阶乘推广到实数,所以最终求得的函数中不能包含阶乘运算。
欧拉最终解决了n!通用公式的问题,他通过研究如下函数找到了解决办法

此处 n 为正整数,e 为正实数。利用分部积分法,很容易证明

连续使用上面递推公式,有

于是欧拉得到如下重要公式。

欧拉应用各种参数替换数学技巧与极限思想,成功推导出Gamma函数。

Gamma函数图像如下

Gamma函数的应用
由于Gamma函数在实数域具有阶乘性质:Γ(x + 1) = x * Γ(x),所以可以把很多具有阶乘性质得自然数应用推广到实数域,离散特性推广为连续特性。比如对函数的整数次求导推广到实数次求导,二项分布推广为Beta分布。Gamma函数与泊松分布等共轭,Gamma函数在数论以及高维空间计算球体积中也有应用。
参考:
http://www.flickering.cn/%E6%95%B0%E5%AD%A6%E4%B9%8B%E7%BE%8E/2014/06/%E7%A5%9E%E5%A5%87%E7%9A%84%E4%BC%BD%E7%8E%9B%E5%87%BD%E6%95%B0%E4%B8%8A/
http://www.flickering.cn/%E6%95%B0%E5%AD%A6%E4%B9%8B%E7%BE%8E/2014/07/%E7%A5%9E%E5%A5%87%E7%9A%84%E4%BC%BD%E7%8E%9B%E5%87%BD%E6%95%B0%E4%B8%8B/
Gamma函数深入理解的更多相关文章
- Gamma函数是如何被发现的?
学过微积分的人,肯定都接触过Euler积分,按教科书上的说法,这是两种含有参变量的定积分,但其实没那么玄乎,它们只是两个函数.其中第一型Euler积分叫\(B\)-函数,第二型Euler积分叫\(\G ...
- LDA-math-神奇的Gamma函数
http://cos.name/2013/01/lda-math-gamma-function/ 1. 神奇的Gamma函数1.1 Gamma 函数诞生记学高等数学的时候,我们都学习过如下一个长相有点 ...
- opengl中对glOrtho()函数的理解
glOrtho是创建一个正交平行的视景体. 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况.比如,常用的工程中的制图等.需要比较精确的显示. 而作为它的对立情况, glFrustum则产生一个 ...
- 回调函数透彻理解Java
http://blog.csdn.net/allen_zhao_2012/article/details/8056665 回调函数透彻理解Java 标签: classjavastringinterfa ...
- 对c语言中malloc和free函数的理解
最近在复习c语言的时候再次用到了malloc函数和free函数,此处着讲解一下自己对这两个函数的理解和认识. 一. malloc函数和free函数的基本概念和基本的用法 对于malloc函数: 1. ...
- js中的回调函数的理解和使用方法
js中的回调函数的理解和使用方法 一. 回调函数的作用 js代码会至上而下一条线执行下去,但是有时候我们需要等到一个操作结束之后再进行下一个操作,这时候就需要用到回调函数. 二. 回调函数的解释 因为 ...
- JS匿名函数的理解
js匿名函数的代码如下:(function(){ // 这里忽略jQuery 所有实现 })(); 半年前初次接触jQuery 的时候,我也像其他人一样很兴奋地想看看源码是什么样的.然而,在看到源码的 ...
- js回调函数(callback)理解
Mark! js学习 不喜欢js,但是喜欢jquery,不解释. 自学jquery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函 ...
- IIFE-js中(function(){…})()立即执行函数写法理解
介绍IIFE IIFE的性能 使用IIFE的好处 IIFE最佳实践 jQuery优化 在Bootstrap源码(具体请看<Bootstrap源码解析>)和其他jQuery插件经常看到如下的 ...
随机推荐
- wordpress用Elementor拖拽生成酷炫页面
很多朋友看到wordpress网站做得很高大上,想知道是怎么做到的,其实很简单,用Elementor就能拖拽生成酷炫页面,ytkah就直接上干货了. 1.安装Elementor,到wordpress后 ...
- Python-Log-note.md
#LOG - https://www.cnblogs.com/yyds/p/6901864.html - logging - logging模块提供模块级别的函数记录日志 - 包括四大组件 ## 1. ...
- visual tudio 2017--发布
- 微信小程序:wx.navigateBack页面返回传参
场景(比如:商城选地址,选优惠券): 在[页面A]中调用wx.navigateTo方法跳转到[页面B] 然后从[页面B]返回[页面A], 并将[页面B]中的一些数据传回[页面A] wx.navigat ...
- keras后端设置【转载】
转自:https://keras.io/backend/ At this time, Keras has three backend implementations available: the Te ...
- Centos7系统防火墙上开端口
//permanent 永久生效 没有此参数重启失效 firewall -cmd --zone=public --add -port=80/tcp --permanent //开 ...
- Stephen Wolfram自述
Stephen Wolfram自述 作者: 阮一峰 大家听说过Stephen Wolfram(斯蒂芬·沃尔夫勒姆)吗? 了解他的经历和成就吗? 我对他了解不多,但是读了下面这篇2005年的演讲,联 ...
- Cocos Creator 动作(动画)笔记
动作cc.ActionInterval 和cc.ActionInstant; var action = cc.moveTo(2, 100, 100); // 创建一个移动动作node.runActio ...
- iOS - (集成支付宝第三方SDK大坑总结)
其实集成支付宝相对于集成微信支付来说,支付宝算是简单的了,后续有空再去研究微信支付,现目前先总结一下集成支付宝所遇到的坑,其实支付宝的坑也不算太多,细算下来大概5-6个左右,但是其报错方式有点恶心,不 ...
- UGUI之Slider使用,制作血条
用Slider来控制Cube旋转 Slider是滑动条.