shetcslion的个人博客分享 http://blog.sciencenet.cn/u/shetcslion

博文

最近做了个任意精度数值计算功能,不常用,但很有用

已有 293 次阅读 2025-5-18 11:31 |个人分类:中文编程|系统分类:科研笔记

花了两天时间,终于为我编写的科学计算软件墨言增添了任意精度数值计算能力。

周二早晨的豆浆还没喝完,手机屏幕一亮,一位朋友的信息跃入眼帘:"急!我的项目要精确计算特别大的数值,但电脑只给出了浮点数,关键数字竟然被扔掉了。我要所有数字,不要误差,有办法吗?"放下手机,我就开始构思解决方案。

惊喜总是让人猝不及防!两天以后,一个优雅的解决方案诞生了,能算到任意精度,小数点前后10000位都能瞬间算出结果!

最开心的是,从构思到实现只用了两天时间!周五一早,那位朋友发信息说"太精准了!你是我的神!",真是满满的成就感。

其中,加法和减法的实现没啥好写的,除法等我整理好再写。

乘法的计算思路是分段计算,为了内存分配的灵活性,分段长度可以调整。科学网编辑器数学公式编辑功能很有Word风范,感觉不是很趁手,不如手写:

微信图片_2025-05-18_104445_217.jpg

这段推导不复杂,但是要把它写成高效执行的计算机程序可要动些脑子哦。

另外,前段时间做了矩阵求逆功能,跟Matlab对比了一下,在一些接近奇异的极端情形下的表现优于Matlab,但我现在不想写它了。

接近奇异的情形在生产生活中看似用不到,大多数人也就不会去重视它。但实际上真的有些重要的应用场景,计量经济学有一个现代分支叫空间计量经济学,它所应用的各种数学模型依赖于一个被称为空间权重矩阵的量,但这个领域的经典应用几乎全部建立在对空间权重矩阵进行主观设定的基础上,这种可笑的做法实际上也是学界的无奈之举、权宜之计。这是因为,想要依据样本数据去计算出空间权重矩阵,就无可避免地要处理接近奇异的矩阵的求逆运算,而这方面的数值计算研究少之又少,最后限制了整个领域的理论发展。

为什么这方面的研究很少?无非是没有很多人去重视而已,很正常。我的贴子都发不出来,这种小众领域继续苟着就行了。眼看他起高楼,眼看他楼塌了。在人类文明的长河中,发生什么都是正常的。

不过呢,好心情还是有的,简单做个了计算:

任意精度数值计算示例.png

看到这样密密麻麻的计算结果,竟然感受到了一丝丝变态的快感。完结撒花,这么好的太阳,出门去种菜了。



https://wap.sciencenet.cn/blog-3433133-1486161.html

上一篇:别再迷信Matlab了,计算错得离谱!不信你来看
收藏 IP: 117.61.192.*| 热度|

1 郑永军

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2025-5-19 12:14

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部