numerical-computing相关内容

浮点加法与浮点乘法的相对速度是多少

一两年前,编写数字代码以避免使用乘法和除法而使用加法和减法是值得的.一个很好的例子是使用前向差异来评估多项式曲线,而不是直接计算多项式. 情况是否仍然如此,或者现代计算机架构已经发展到 *,/不再比 +,- 慢很多倍的地步? 具体来说,我对在具有大量板载浮点硬件的现代典型 x86 芯片上运行的已编译 C/C++ 代码感兴趣,而不是试图在软件中执行 FP 的小型微型计算机.我意识到流水线 ..
发布时间:2022-01-06 12:52:12 其他开发

如何将对角矩阵沿轴之一分成相等数量的项目?

我有一个非常大的对角矩阵,我需要将其拆分以进行并行计算.由于数据局部性问题,遍历矩阵并在 n 个线程之间拆分每个 n 次计算是没有意义的.目前,我正在按以下方式划分 k x k 对角矩阵,但它在计算数量方面产生不相等的分区(最小的部分计算比最大的). def split_matrix(k, n):split_points = [round(i * k/n) for i in range(n + ..
发布时间:2021-12-30 21:37:16 Python

使用python查找管道的中心线

我目前正在用 Python 编写用于通过管道的流的代码.在这方面,我必须找到一条穿过由 nastran 网格定义的 3D 管道几何形状的中心线(具有三个或四个边缘的单元,我可以访问其坐标).我在 Python 中使用 pyNastran 模块来获取所有相关数据和函数.我的问题是找到管道中心线的最有效方法是什么.管道是一个 3d 管道,在所有方向都有弯曲.(我有一个数组中网格上每个点的所有坐标) ..
发布时间:2021-06-02 20:27:13 其他开发

快速,轻松的安装和安装在Linux/Windows上使用IT ++库?

IT ++ 是流行的GPL库(在我的Linux/Windows系统上安装此库似乎很困难.而且安装指南似乎很难. 除了花时间进行此安装外,我还有很多事情要做.有人可以通过快速安装以及一些你好,世界!输入说明来节省我一些时间吗? 解决方案 TL; DR $ wget https://sourceforge.net/projects/itpp/files/latest -O itp ..
发布时间:2020-11-29 04:01:57 其他开发

符号数学与数值数学-性能

与数值计算相比,符号数学计算(尤其是用于求解非线性多项式系统)是否会导致巨大的性能(计算速度)劣势?是否有与此相关的基准/数据? 找到了一个相关问题: https://scicomp.stackexchange.com/questions/21754/symbolic-computation-vs-numerical-computation 另一种:正向模式自动计算效率vs数值vs符号 ..

通过使用16位算术求序列来计算π时避免溢出?

我正在尝试编写一个计算π到1000位或更多的十进制数字的程序。 要练习低级编程,最终的程序很有趣将以汇编形式写在没有乘法或除法且仅执行16位加法的8位CPU上。为了简化实现,希望只能使用16位无符号整数运算,并使用迭代算法。 速度不是主要问题。快速乘法和除法不在此问题的范围内,因此也不要考虑这些问题。 在组装之前,我要我仍然试图找出台式计算机上C语言中的可用算法。到目前为止,我发现以下 ..

如何将对角矩阵沿一条轴分成相等数量的项?

我有一个非常大的对角矩阵,需要将其拆分以进行并行计算.由于数据局部性的问题,没有必要遍历矩阵并在 n 个线程之间划分每个第 n 个计算.目前,我正在按以下方式对 k x k 对角矩阵进行划分,但它在计算数量方面产生了不相等的分区(最小的部分计算的时间比计算时间长几倍).最大). def split_matrix(k, n): split_points = [round(i * k / ..
发布时间:2020-05-24 20:55:55 Python

浮点加法与浮点乘法的相对速度是多少?

几十年前,写数字代码是值得的,以避免使用乘法和除法,而是使用加法和减法。一个很好的例子是使用转发差异来评估多项式曲线,而不是直接计算多项式。 这是否仍然如此,或者现代计算机体系结构提前到*,/不再比+, - ? b $ b 具体而言,我对运行在现代典型x86芯片上的编译C / C ++代码感兴趣,这些代码有大量的板上浮点硬件,而不是试图在软件中执行FP的小型微代码。我意识到流水线和其他架 ..
发布时间:2017-12-19 22:43:17 其他开发

任意precision号(GMP级)

非常大的浮点数是如何重新在内存psented $ P $?我可以想象,如果比如你想计算PI或欧拉恒说,200万的数字,你会分配一个字节数组庞大的数字的小数点的右侧。每个字节将存储2小数位的值与阵列将与数字和用于存储值中的字节数的数目的数据结构的一个成员。这究竟是怎么运作的? 解决方案 目前的计算机有32位或64位的寄存器,这样做对字节计算是非常低效的。此外,计算机二进制工作,所以使用碱是一 ..
发布时间:2016-08-19 14:34:16 C/C++

什么是过度阵列使用Ruby NArray的优势是什么?

我对面的NArray库红宝石来到 - 请在问这个问题时,请原谅我的无知:) 什么是使用的NArray库比标准的Ruby数组实现的优势是什么? 我见过NArray是面向数字计算,而是看API,它看起来像有对数值面向阵列上只有少数几个扩展 - 什么是你不能用数组做.. 为什么不直接使用数组? 有一个巨大的速度优势? 有一个巨大的内存优势? 在使用普通的Ruby Array类?任何其他优 ..
发布时间:2016-06-01 20:50:30 其他开发

给定一个数列,找到校验位算法...?

假如我有一系列指标的数字是由校验位。如果我有一个公平的足够的样本(说250样本指数的数字),我有一个方法来提取已被用来生成校验位的算法? 我觉得应该有一个纲领性的方法ATLEAST找到一组可能的算法。 更新:一个索引编号的长度是8位数字,包括校验位。 解决方案 没有,不是在一般的情况下,由于数量的可能的算法是远远超过你的想象。 250的样本空间可能不足以做适当的数值分析。 对于一个极端的 ..
发布时间:2015-11-30 22:00:33 C/C++