24小时热门版块排行榜    

CyRhmU.jpeg
查看: 341  |  回复: 2
当前主题已经存档。

pizi7880

木虫 (正式写手)

[交流] 【讨论】发现 2F1 函数的一个大问题,欢迎讨论。

我最近关注2F1函数,Hypergeometric function,超几何函数,发现一个很有意思的东西:

我分别用 matlab,mathematica,和fortran编程,实现这个函数,结果居然不同。
(1) 求 2F1(0.5, 1., 1.5, 5)
matlab的结果:0.2152    + 0.7025 i           (只需注意虚部的正负号)
mathmatica :  0.215204- 0.702481 i
我计算的结果:0.215204+0.702481 i
(2) 求 2F1(2,3,4,5)
matlab的结果:   0.1565   + 0.1508 i
mathmatica:     0.156542+ 0.150796 i
我计算的结果:  0.156542- 0.150796 i

看了这个结果之后,我纳闷了,不知道相信谁。
那个fortran程序来源于  http://jin.ece.uiuc.edu/routines/mhygfz.for
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pizi7880

木虫 (正式写手)

★ ★
fegg7502(金币+2):thank you very much! 2010-03-07 21:01
答案是:Hypergeometric function是一个多值函数。不同的取法,有不同的结果。
2楼2010-03-06 20:52:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tfl03

木虫 (职业作家)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
fegg7502(金币+1):thank you very much! 2010-03-07 21:02
把matlab的取值精度提高,还可以更精确。。
此处回帖者,声名水上流。
3楼2010-03-06 21:23:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 pizi7880 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见