当前位置: 首页>>代码示例>>Java>>正文


Java Matrix.isSparse方法代码示例

本文整理汇总了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);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:25,代码来源:Mtimes.java

示例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);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:21,代码来源:AbstractMatrixTest.java

示例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);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:25,代码来源:AbstractMatrixTest.java

示例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));
		}
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:28,代码来源:Transpose.java

示例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);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:34,代码来源:AbstractMatrixTest.java

示例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);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:15,代码来源:AbstractMatrixTest.java

示例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();
	}

}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:36,代码来源:AbstractMatrixTest.java

示例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();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:48,代码来源:AbstractMatrixTest.java


注:本文中的org.ujmp.core.Matrix.isSparse方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。