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函数深入理解的更多相关文章

  1. Gamma函数是如何被发现的?

    学过微积分的人,肯定都接触过Euler积分,按教科书上的说法,这是两种含有参变量的定积分,但其实没那么玄乎,它们只是两个函数.其中第一型Euler积分叫\(B\)-函数,第二型Euler积分叫\(\G ...

  2. LDA-math-神奇的Gamma函数

    http://cos.name/2013/01/lda-math-gamma-function/ 1. 神奇的Gamma函数1.1 Gamma 函数诞生记学高等数学的时候,我们都学习过如下一个长相有点 ...

  3. opengl中对glOrtho()函数的理解

    glOrtho是创建一个正交平行的视景体. 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况.比如,常用的工程中的制图等.需要比较精确的显示. 而作为它的对立情况, glFrustum则产生一个 ...

  4. 回调函数透彻理解Java

    http://blog.csdn.net/allen_zhao_2012/article/details/8056665 回调函数透彻理解Java 标签: classjavastringinterfa ...

  5. 对c语言中malloc和free函数的理解

    最近在复习c语言的时候再次用到了malloc函数和free函数,此处着讲解一下自己对这两个函数的理解和认识. 一. malloc函数和free函数的基本概念和基本的用法 对于malloc函数: 1.  ...

  6. js中的回调函数的理解和使用方法

    js中的回调函数的理解和使用方法 一. 回调函数的作用 js代码会至上而下一条线执行下去,但是有时候我们需要等到一个操作结束之后再进行下一个操作,这时候就需要用到回调函数. 二. 回调函数的解释 因为 ...

  7. JS匿名函数的理解

    js匿名函数的代码如下:(function(){ // 这里忽略jQuery 所有实现 })(); 半年前初次接触jQuery 的时候,我也像其他人一样很兴奋地想看看源码是什么样的.然而,在看到源码的 ...

  8. js回调函数(callback)理解

    Mark! js学习 不喜欢js,但是喜欢jquery,不解释. 自学jquery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函 ...

  9. IIFE-js中(function(){…})()立即执行函数写法理解

    介绍IIFE IIFE的性能 使用IIFE的好处 IIFE最佳实践 jQuery优化 在Bootstrap源码(具体请看<Bootstrap源码解析>)和其他jQuery插件经常看到如下的 ...

随机推荐

  1. 这个zsh超级棒

    https://github.com/robbyrussell/oh-my-zsh wget用法: http://man.linuxde.net/wget https://pan.baidu.com/ ...

  2. 集合求交集 & 去除列表中重复的元素

    集合求交集: set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} 交集:set3 = set1 & set2 print(ste3) #结果为{4,5} 或者ste1. ...

  3. 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化

    一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...

  4. linux init命令

    init命令用于切换到指定的运行级别,用法如下: [root@localhost ~]# init //关机 [root@localhost ~]# init //切换到单用户模式/救援模式 [roo ...

  5. 别让Open Sans字体拖慢wordpress后台速度

    最近打开wordpress后台是不是很慢?国内GG登不上了?这两者有没什么直接的联系?没错,WordPress后台是自动加载的谷歌Open Sans字体,据说gg服务器已经迁移到阿嘛丽可,需要一些小手 ...

  6. mysql连接池不能回避的wait timeout问题(转)

    起因 我们的项目组一直在使用albianj作为开发框架在开发应用.使用至今倒也是没有出现很大的问题,但最近加过监控的接口基本上都会在使用一段时间后,突然之间执行数据库操作变得很慢.虽然会变慢,但持续的 ...

  7. 001-dubbo基础-001-服务化最佳实践、异常处理逻辑

    1.参看地址 http://dubbo.apache.org/zh-cn/ 2.服务化最佳实践 分包 建议将服务接口.服务模型.服务异常等均放在 API 包中,因为服务模型和异常也是 API 的一部分 ...

  8. cxf简单例子

    cxf 这里介绍在web跟非web中的发布以及调用 准备条件: 1,导入cxf的相关jar包,以maven项目为例 pom的配置文件为 <project xmlns="http://m ...

  9. vue axios get请求参数为json对象 而非字符串形式

    axios get请求方式 传递给后台的参数都是字符串下形式,无法传递json对象 或数组对象等    post请求方式则可以实现,   但若后台接口要求必须用get方式传递对象给后台,需要装插件,实 ...

  10. 静态文件link 数据库迁移命令 新建app命令

    <link rel="stylesheet" href="/static/bootstrap-3.3.7-dist/css/bootstrap.css"& ...