本文整理汇总了Java中org.ujmp.core.Matrix.isSparse方法的典型用法代码示例。如果您正苦于以下问题:Java Matrix.isSparse方法的具体用法?Java Matrix.isSparse怎么用?Java Matrix.isSparse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.ujmp.core.Matrix
的用法示例。
在下文中一共展示了Matrix.isSparse方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: calc
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public final void calc(final Matrix source1, final Matrix source2, final Matrix target) {
if (source1.isSparse() && source1 instanceof SparseMatrix && source2.isSparse()
&& source2 instanceof SparseMatrix) {
Mtimes.SPARSEMATRIXBOTH.calc((SparseMatrix) source1, (SparseMatrix) source2, target);
} else if (source1.isSparse() && source1 instanceof SparseMatrix) {
Mtimes.SPARSEMATRIX1.calc((SparseMatrix) source1, source2, target);
} else if (source2.isSparse() && source2 instanceof SparseMatrix) {
Mtimes.SPARSEMATRIX2.calc(source1, (SparseMatrix) source2, target);
} else if (source1 instanceof DenseDoubleMatrix2D && source2 instanceof DenseDoubleMatrix2D
&& target instanceof DenseDoubleMatrix2D) {
Mtimes.DENSEDOUBLEMATRIX2D.calc((DenseDoubleMatrix2D) source1,
(DenseDoubleMatrix2D) source2, (DenseDoubleMatrix2D) target);
} else if (source1 instanceof DenseMatrix2D && source2 instanceof DenseMatrix2D
&& target instanceof DenseMatrix2D) {
Mtimes.DENSEMATRIX2D.calc((DenseMatrix2D) source1, (DenseMatrix2D) source2,
(DenseMatrix2D) target);
} else if (source1 instanceof DenseMatrix && source2 instanceof DenseMatrix
&& target instanceof DenseMatrix) {
Mtimes.DENSEMATRIX.calc((DenseMatrix) source1, (DenseMatrix) source2,
(DenseMatrix) target);
} else {
gemm(source1, source2, target);
}
}
示例2: testSparseSetToZero
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testSparseSetToZero() throws Exception {
Matrix m = createMatrix(2, 2);
if (isTestSparse() && m.isSparse()) {
m = createMatrix(800000, 900000);
m.setAsDouble(1.0, 3, 4);
m.setAsDouble(2.0, 334, 2214);
m.setAsDouble(3.0, 335, 2215);
m.setAsDouble(4.0, 334232, 3434);
assertEquals(1.0, m.getAsDouble(3, 4), TOLERANCE);
assertEquals(2.0, m.getAsDouble(334, 2214), TOLERANCE);
assertEquals(3.0, m.getAsDouble(335, 2215), TOLERANCE);
assertEquals(4.0, m.getAsDouble(334232, 3434), TOLERANCE);
m.setAsDouble(0.0, 335, 2215);
assertEquals(1.0, m.getAsDouble(3, 4), TOLERANCE);
assertEquals(2.0, m.getAsDouble(334, 2214), TOLERANCE);
assertEquals(0.0, m.getAsDouble(335, 2215), TOLERANCE);
assertEquals(4.0, m.getAsDouble(334232, 3434), TOLERANCE);
}
}
示例3: testSparseMultiplySmall
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testSparseMultiplySmall() throws Exception {
Matrix m1 = createMatrix(2, 2);
Matrix m2 = null;
if (isTestSparse() && m1.isSparse()) {
m1 = createMatrix(8, 9);
m2 = createMatrix(9, 4);
m1.setAsDouble(5.0, 0, 0);
m1.setAsDouble(4.0, 1, 1);
m1.setAsDouble(1.0, 3, 4);
m1.setAsDouble(2.0, 4, 2);
m1.setAsDouble(3.0, 3, 5);
m1.setAsDouble(4.0, 4, 4);
m2.setAsDouble(7.0, 0, 0);
m2.setAsDouble(6.0, 1, 1);
m2.setAsDouble(1.0, 3, 4);
m2.setAsDouble(2.0, 4, 1);
m2.setAsDouble(3.0, 3, 2);
m2.setAsDouble(4.0, 2, 3);
Matrix m3 = m1.mtimes(m2);
Matrix m4 = m1.mtimes(Ret.LINK, true, m2);
assertEquals(m3, m4);
}
}
示例4: calc
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public final void calc(final Matrix source, final Matrix target) {
if (source == target) {
throw new RuntimeException("cannot transpose into original matrix");
}
if (source.isSparse() && source instanceof SparseMatrix && target.isSparse()
&& target instanceof SparseMatrix) {
Transpose.SPARSEMATRIX.calc((SparseMatrix) source, (SparseMatrix) target);
} else if (source instanceof DenseDoubleMatrix2D && target instanceof DenseDoubleMatrix2D) {
Transpose.DENSEDOUBLEMATRIX2D.calc((DenseDoubleMatrix2D) source,
(DenseDoubleMatrix2D) target);
} else if (source instanceof DenseMatrix2D && target instanceof DenseMatrix2D) {
Transpose.DENSEMATRIX2D.calc((DenseMatrix2D) source, (DenseMatrix2D) target);
} else if (source instanceof DenseMatrix && target instanceof DenseMatrix) {
Transpose.DENSEMATRIX.calc((DenseMatrix) source, (DenseMatrix) target);
} else {
VerifyUtil.verify2D(source);
VerifyUtil.verify2D(target);
VerifyUtil.verifyEquals(source.getRowCount(), target.getColumnCount(),
"matrices have wrong size");
VerifyUtil.verifyEquals(source.getColumnCount(), target.getRowCount(),
"matrices have wrong size");
for (long[] c : source.allCoordinates()) {
Object o = source.getAsObject(c);
target.setAsObject(o, Coordinates.transpose(c));
}
}
}
示例5: testSparseMultiplyLarge
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testSparseMultiplyLarge() throws Exception {
Matrix m1 = createMatrix(2, 2);
Matrix m2 = null;
if (isTestSparse() && m1.isSparse()) {
m1 = createMatrix(800000, 900000);
m2 = createMatrix(900000, 400000);
m1.setAsDouble(5.0, 0, 0);
m1.setAsDouble(4.0, 1, 1);
m1.setAsDouble(1.0, 3, 4);
m1.setAsDouble(2.0, 4, 2);
m1.setAsDouble(3.0, 3, 5);
m1.setAsDouble(4.0, 4, 4);
m1.setAsDouble(2.0, 334, 2214);
m1.setAsDouble(3.0, 335, 2215);
m1.setAsDouble(4.0, 334232, 3434);
m2.setAsDouble(7.0, 0, 0);
m2.setAsDouble(6.0, 1, 1);
m2.setAsDouble(1.0, 3, 4);
m2.setAsDouble(2.0, 4, 1);
m2.setAsDouble(3.0, 3, 2);
m2.setAsDouble(4.0, 2, 3);
m2.setAsDouble(2.0, 2214, 334);
m2.setAsDouble(3.0, 2215, 335);
m2.setAsDouble(4.0, 334232, 3434);
Matrix m3 = m1.mtimes(m2);
assertEquals(35.0, m3.getAsDouble(0, 0), TOLERANCE);
assertEquals(24.0, m3.getAsDouble(1, 1), TOLERANCE);
assertEquals(2.0, m3.getAsDouble(3, 1), TOLERANCE);
assertEquals(8.0, m3.getAsDouble(4, 1), TOLERANCE);
assertEquals(8.0, m3.getAsDouble(4, 3), TOLERANCE);
}
}
示例6: testSparseTranspose
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testSparseTranspose() throws Exception {
Matrix m = createMatrix(2, 2);
if (isTestSparse() && m.isSparse()) {
m = createMatrix(800000, 900000);
m.setAsDouble(1, 3, 4);
m.setAsDouble(1, 334534, 4454);
assertEquals(1.0, m.getAsDouble(3, 4), TOLERANCE);
assertEquals(1.0, m.getAsDouble(334534, 4454), TOLERANCE);
m = m.transpose();
assertEquals(1.0, m.getAsDouble(4, 3), TOLERANCE);
assertEquals(1.0, m.getAsDouble(4454, 334534), TOLERANCE);
}
}
示例7: testAvailableCoordinateIterator2D
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testAvailableCoordinateIterator2D() throws Exception {
Matrix m = getTestMatrix();
List<Coordinates> clist = new ArrayList<Coordinates>();
for (long[] c : m.availableCoordinates()) {
clist.add(Coordinates.wrap(c).clone());
}
if (m.isSparse()) {
assertEquals(getLabel(), 5, clist.size());
assertTrue(getLabel(), clist.contains(Coordinates.wrap(0, 0)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(1, 0)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(1, 1)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(2, 1)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(1, 2)));
} else {
assertEquals(getLabel(), 9, clist.size());
assertTrue(getLabel(), clist.contains(Coordinates.wrap(0, 0)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(0, 1)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(0, 2)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(1, 0)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(1, 1)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(1, 2)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(2, 0)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(2, 1)));
assertTrue(getLabel(), clist.contains(Coordinates.wrap(2, 2)));
}
if (m instanceof Erasable) {
((Erasable) m).erase();
}
}
示例8: testContains
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testContains() throws Exception {
Matrix m = getTestMatrix();
assertTrue(m.containsCoordinates(0, 0));
if (m.isSparse()) {
assertFalse(m.containsCoordinates(0, 1));
} else {
assertTrue(m.containsCoordinates(0, 1));
}
if (m.isSparse()) {
assertFalse(m.containsCoordinates(0, 2));
} else {
assertTrue(m.containsCoordinates(0, 2));
}
assertTrue(m.containsCoordinates(1, 0));
assertTrue(m.containsCoordinates(1, 1));
if (m.isSparse()) {
assertFalse(m.containsCoordinates(0, 1));
} else {
assertTrue(m.containsCoordinates(1, 2));
}
if (m.isSparse()) {
assertFalse(m.containsCoordinates(0, 1));
} else {
assertTrue(m.containsCoordinates(2, 0));
}
assertTrue(m.containsCoordinates(2, 1));
if (m.isSparse()) {
assertFalse(m.containsCoordinates(0, 1));
} else {
assertTrue(m.containsCoordinates(2, 2));
}
assertFalse(m.containsCoordinates(7, 7));
if (m instanceof Erasable) {
((Erasable) m).erase();
}
}