找回密码
 欢迎注册
楼主: ysr

[讨论] 几个VB小程序

[复制链接]
发表于 2013-8-25 18:27:55 | 显示全部楼层
没弄明白多伽马函数olyGamma[n,z]如何计算,n不是整数时,太让人费解。
n表示n阶导数,n可以是非整数?表达的是什么意思?
PolyGamma[Pi,Pi],Pi阶?不可思议,也没有找到n为小数时的计算公式。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-8-25 18:42:10 | 显示全部楼层
PolyGamma与Zeta之间有(-1)^(n+1)关系,但当n有小数时PolyGamma与Zeta就无关系可言了。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-8-28 10:37:49 | 显示全部楼层
黎曼函数优化完成。
∑1/k^n,{k,1,800}
1.建立不大于890的素数对数表。经测算,k=890时,能够满足Zeta[n],1024位精度。
2.建立1/p^n表,p为素数。
2.在循环中对k进行因子分解。
3.计算1/k^n可以表成1/p1^n*1/p2^n.....
这样就可以把计算量大大降低,把1/k^n变成乘法,大大降低运行时间。
计算64位Zeta[Pi]需要0.4s
4.如果同精度下计算过Zeta[n]函数,再计算时省去了建立素数对数表的时间。第二次计算Zeta[Pi]只需要0.26s
5.如果计算过更高精度的Zeta[n]值,则转换为低精度计算时同样不用再建立素数对数表。

点评

你把这当成是版本控制的地方了  发表于 2013-8-28 11:20
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-8-28 16:50:47 | 显示全部楼层
终于完成了不完全黎曼函数。下一步是对Zeta[n,z],n,z都是大数时的高精度计算。
这个地方虽然很少有人关顾,但可以记载我的VB编程记录。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2013-9-23 18:10:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-9-26 14:30:26 | 显示全部楼层
1.Dim Dx As Chen
自i定义数据类型:
Private Type Chen      '主数据类型
    Bz As String       '+/-
    st As String       '数值串
    zs As Variant      '指数
End Type
该数据类型由符号,字符串和指数部分组成。
如 - 24.567
Dx.bz="-"
Dx.st="24567"
Dx.zs=1
2.Gsw 是整型常数,指字符串转数据型时每次从字符串截取的字符长度。通常为12.应用于乘法时就是12位数字相乘。
3.Result 以字符串形式输出数据的结果。
4.Zero 是n个“0"组成的字符串。这里Zero="00000......00000" 是1024个”0“或更多。

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-9-26 14:36:07 | 显示全部楼层
对于高精度运算,采用了数组。字符需要转换成指定长度的数组才可运算。
Result :每次显示的结果保存在计算机内部,用于连续运算,以保持预设精度。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-19 12:14 , Processed in 0.044852 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表