许多数值算法(积分、微分、插值、特殊函数等)在GSL等科学计算库中可用。但我经常看到这些函数的“手动”实现的代码。对于不一定用于公共分发的小程序,计算科学家的常见做法是在需要时自己实现数值算法(我的意思是从网站、数值食谱或类似网站复制或转录)?如果是这样,是否有特别的理由避免链接到 GSL 之类的东西,或者它只是比其他任何东西都更“传统”?
我问是因为我是代码重用的忠实粉丝,这表明我应该尽可能尝试使用现有的实现。但我很好奇是否有理由认为原则在科学计算中的价值不如在一般编程中的价值。
忘了提一下:我特别问的是 C 和 C++,而不是像 Python 这样的语言,使用库有明显的好处(执行速度)。