哪个Java包包含高级数学函数?

时间:2014-05-23 12:34:02

标签: java math packages mathematical-optimization

任何人都可以告诉我需要导入哪个包来使用数学函数,例如导数,和,指数。我将开展一个关于与高斯混合相关的期望和最大化算法的项目。

您建议使用哪些其他套餐?

我是Java编程的初学者,这是我作为新生的第一个项目。

2 个答案:

答案 0 :(得分:4)

Apache Commons Math库包含许多可以使用的高级数学函数和算法。它有一个Numerical Analysis部分,它有许多常见数学问题的算法,例如根发现衍生物积分。< / p>

有关该库的更多信息和文档,请参阅超链接。


表达式y = f(x)的导数的计算工作流程如下。

首先,我们配置DerivativeStructure类型的输入参数x,以便它驱动函数来计算例如3阶的所有导数。

然后我们通常通过将此参数传递给f函数来计算y = f(x)。

最后,我们从y中提取我们想要的价值和衍生物。

由于我们在构建x时指定了第3个订单,因此我们可以从y检索最多3阶的导数。

int params = 1;
int order = 3;
double xRealValue = 2.5;
DerivativeStructure x = new DerivativeStructure(params, order, 0, xRealValue);
DerivativeStructure y = f(x);

然后,您可以获得衍生物:

System.out.println("y    = " + y.getValue();
System.out.println("y'   = " + y.getPartialDerivative(1);
System.out.println("y''  = " + y.getPartialDerivative(2);
System.out.println("y''' = " + y.getPartialDerivative(3);

答案 1 :(得分:-8)

您不需要导入任何内容,静态类java.lang.Math将满足您的需求。

示例:

double result = Math.sqrt(112);