我正在编写一个数值分析程序,有时微积分会给出一些非常小的系数,即a0=1.234542e-12
如果我计算一个包含 10 个值的数组(其中 6 个是小数字),然后我将它们中的每一个乘以 t^x(仅作为示例)为 x=1:10,那么计算速度更快吗?
- 只保留少数原样
- 检测小于 0.0 的数字
threshold
并将其替换为 0.0
问题主要是因为编译器可能只是不计算一个数字乘以 0,因为它总是 0,或者它可能只是将它相乘,而我让程序变慢以添加if
条件只是为了检查一个数字是否是0 与否。
我正在编写一个数值分析程序,有时微积分会给出一些非常小的系数,即a0=1.234542e-12
如果我计算一个包含 10 个值的数组(其中 6 个是小数字),然后我将它们中的每一个乘以 t^x(仅作为示例)为 x=1:10,那么计算速度更快吗?
threshold
并将其替换为 0.0问题主要是因为编译器可能只是不计算一个数字乘以 0,因为它总是 0,或者它可能只是将它相乘,而我让程序变慢以添加if
条件只是为了检查一个数字是否是0 与否。