Optimization 方程是主要关注对象的软件?

Optimization 方程是主要关注对象的软件?,optimization,logging,equations,Optimization,Logging,Equations,我正在做一个程序,其中主要的实体是数学方程。 方程式只能返回双精度或布尔结果 问题是: 1-大量的方程式。(每个文件约300个) 2-最后必须有一个计算日志,所以每个方程都应该能够以某种方式记录自己 它必须是快的,尽可能快,因为那几百个方程可能被触发一百万次。(将其视为一个大的优化循环) 4-我想对记录的方程式强制执行某种外观顺序,但不一定与代码的顺序相似 目前,我正在使用C(或C,加上一点C++),并将每个方程都写成类似宏的函数。我想知道这是否是正确的方法。这种问题以前解决过吗?有没有其他语言

我正在做一个程序,其中主要的实体是数学方程。 方程式只能返回双精度或布尔结果

问题是:

1-大量的方程式。(每个文件约300个)

2-最后必须有一个计算日志,所以每个方程都应该能够以某种方式记录自己

它必须是快的,尽可能快,因为那几百个方程可能被触发一百万次。(将其视为一个大的优化循环)

4-我想对记录的方程式强制执行某种外观顺序,但不一定与代码的顺序相似


目前,我正在使用C(或C,加上一点C++),并将每个方程都写成类似宏的函数。我想知道这是否是正确的方法。这种问题以前解决过吗?有没有其他语言比C更适合这种情况?对于这类特定的问题,我是否需要了解任何设计模式或实践?

因此,这些公式正在变成编译代码,而不是解释代码? 如果是这样,那是最快的

但是,如果您的日志记录涉及I/O,那么这可能是最耗时的,您可以通过关闭它并比较执行时间来确定这一点。 如果是,可能的解决方法是:

  • 生成二进制输出,而不是格式化数字

  • 不要写太多的东西,像事件而不是长记录

  • 尽量不要被旋转磁盘绑定,比如写入内存文件或固态磁盘


谢谢。然而,主要的问题是如何正确地记录计算本身,以及是否已经为这类问题设计了一些实体模型。