本文整理汇总了Java中org.apache.commons.math3.util.ArithmeticUtils.binomialCoefficient方法的典型用法代码示例。如果您正苦于以下问题:Java ArithmeticUtils.binomialCoefficient方法的具体用法?Java ArithmeticUtils.binomialCoefficient怎么用?Java ArithmeticUtils.binomialCoefficient使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.commons.math3.util.ArithmeticUtils
的用法示例。
在下文中一共展示了ArithmeticUtils.binomialCoefficient方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: howManyPossibleConstraints
import org.apache.commons.math3.util.ArithmeticUtils; //导入方法依赖的package包/类
@Override
public long howManyPossibleConstraints() {
int realBranchingLimit =
(this.branchingLimit < this.taskCharArchive.size()
? this.branchingLimit
: this.taskCharArchive.size() - 1);
long numberOfPossibleConstraintsPerActivity = 0;
for (int i = 1; i <= realBranchingLimit; i++) {
numberOfPossibleConstraintsPerActivity +=
ArithmeticUtils
.binomialCoefficient(
this.taskCharArchive.size(), // n
i); // k
}
return
( MetaConstraintUtils.getAllDiscoverableForwardRelationConstraintTemplates().size() -1 + // out-branching
MetaConstraintUtils.getAllDiscoverableBackwardRelationConstraintTemplates().size() -1 // in branching
)
* tasksToQueryFor.size()
* numberOfPossibleConstraintsPerActivity;
}
示例2: testSize
import org.apache.commons.math3.util.ArithmeticUtils; //导入方法依赖的package包/类
@Test
public void testSize() {
for (int i = 0; i < 6; ++i) {
for (int j = 0; j < 6; ++j) {
long expected = ArithmeticUtils.binomialCoefficient(i + j, i);
Assert.assertEquals(expected, DSCompiler.getCompiler(i, j).getSize());
Assert.assertEquals(expected, DSCompiler.getCompiler(j, i).getSize());
}
}
}
示例3: testJacobiEvaluationAt1
import org.apache.commons.math3.util.ArithmeticUtils; //导入方法依赖的package包/类
@Test
public void testJacobiEvaluationAt1() {
for (int v = 0; v < 10; ++v) {
for (int w = 0; w < 10; ++w) {
for (int i = 0; i < 10; ++i) {
PolynomialFunction jacobi = PolynomialsUtils.createJacobiPolynomial(i, v, w);
double binomial = ArithmeticUtils.binomialCoefficient(v + i, i);
Assert.assertTrue(Precision.equals(binomial, jacobi.value(1.0), 1));
}
}
}
}
示例4: getEntry
import org.apache.commons.math3.util.ArithmeticUtils; //导入方法依赖的package包/类
/**
* Returns the {@code (i, j)} entry of the inverse Hilbert matrix. Exact
* arithmetic is used; in case of overflow, an exception is thrown.
*
* @param i Row index (starts at 0).
* @param j Column index (starts at 0).
* @return The coefficient of the inverse Hilbert matrix.
*/
public long getEntry(final int i, final int j) {
long val = i + j + 1;
long aux = ArithmeticUtils.binomialCoefficient(n + i, n - j - 1);
val = ArithmeticUtils.mulAndCheck(val, aux);
aux = ArithmeticUtils.binomialCoefficient(n + j, n - i - 1);
val = ArithmeticUtils.mulAndCheck(val, aux);
aux = ArithmeticUtils.binomialCoefficient(i + j, i);
val = ArithmeticUtils.mulAndCheck(val, aux);
val = ArithmeticUtils.mulAndCheck(val, aux);
return ((i + j) & 1) == 0 ? val : -val;
}
示例5: calculateN
import org.apache.commons.math3.util.ArithmeticUtils; //导入方法依赖的package包/类
public void calculateN() {
int ret = 0;
if (this.getN() < 1) {
return;
}
for (int k = 1; k <= this.getN(); k++) {
ret += ArithmeticUtils.binomialCoefficient(this.getN(), k);
}
this.setLfNumber(ret);
}