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


Java Matrix.plus方法代码示例

本文整理汇总了Java中org.ujmp.core.Matrix.plus方法的典型用法代码示例。如果您正苦于以下问题:Java Matrix.plus方法的具体用法?Java Matrix.plus怎么用?Java Matrix.plus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.ujmp.core.Matrix的用法示例。


在下文中一共展示了Matrix.plus方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testPlusScalar

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public void testPlusScalar() {
	Matrix matrix1 = Matrix.Factory.zeros(M2ROWS, M2ROWS);
	for (int i = 0; i < M2ROWS; i++) {
		matrix1.setAsDouble(1, i, i);
	}
	Matrix result = matrix1.plus(PRODUCT);
	for (int row = 0; row < result.getRowCount(); ++row) {
		for (int col = 0; col < result.getColumnCount(); ++col) {
			if (row == col) {
				assertEquals(1 + PRODUCT, result.getAsDouble(row, col), 0.001);
			} else {
				assertEquals(PRODUCT, result.getAsDouble(row, col), 0.001);
			}
		}
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:18,代码来源:TestGinv.java

示例2: testPlusScalarSmall

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testPlusScalarSmall() throws Exception {
	Matrix m = createMatrixWithAnnotation(2, 2);
	m.setAsDouble(1.0, 0, 0);
	m.setAsDouble(2.0, 0, 1);
	m.setAsDouble(3.0, 1, 0);
	m.setAsDouble(4.0, 1, 1);
	Matrix r = m.plus(1.0);

	assertEquals(getLabel(), 2.0, r.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 3.0, r.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 4.0, r.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 5.0, r.getAsDouble(1, 1), TOLERANCE);

	assertEquals(getLabel(), 1.0, m.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 2.0, m.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 3.0, m.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 4.0, m.getAsDouble(1, 1), TOLERANCE);

	if (m instanceof Erasable) {
		((Erasable) m).erase();
	}
	if (r instanceof Erasable) {
		((Erasable) r).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:27,代码来源:AbstractMatrixTest.java

示例3: test0PlusXMatrix

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void test0PlusXMatrix() throws Exception {
	Matrix m1 = createMatrixWithAnnotation(5, 7);
	Matrix m2 = createMatrixWithAnnotation(5, 7);
	m2.randn(Ret.ORIG);
	Matrix m3 = m1.plus(m2);
	assertEquals(getLabel(), m2, m3);
	if (m1 instanceof Erasable) {
		((Erasable) m1).erase();
	}
	if (m2 instanceof Erasable) {
		((Erasable) m2).erase();
	}
	if (m3 instanceof Erasable) {
		((Erasable) m3).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:18,代码来源:AbstractMatrixTest.java

示例4: testXPlus0MatrixMatrix

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testXPlus0MatrixMatrix() throws Exception {
	Matrix m1 = createMatrixWithAnnotation(5, 7);
	Matrix m2 = createMatrixWithAnnotation(5, 7);
	m1.randn(Ret.ORIG);
	Matrix m3 = m1.plus(m2);
	assertEquals(getLabel(), m1, m3);
	if (m1 instanceof Erasable) {
		((Erasable) m1).erase();
	}
	if (m2 instanceof Erasable) {
		((Erasable) m2).erase();
	}
	if (m3 instanceof Erasable) {
		((Erasable) m3).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:18,代码来源:AbstractMatrixTest.java

示例5: test0Plus0Matrix

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void test0Plus0Matrix() throws Exception {
	Matrix m1 = createMatrixWithAnnotation(5, 7);
	Matrix m2 = createMatrixWithAnnotation(5, 7);
	Matrix m3 = m1.plus(m2);
	assertTrue(getLabel(), m3.isEmpty());
	if (m1 instanceof Erasable) {
		((Erasable) m1).erase();
	}
	if (m2 instanceof Erasable) {
		((Erasable) m2).erase();
	}
	if (m3 instanceof Erasable) {
		((Erasable) m3).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:17,代码来源:AbstractMatrixTest.java

示例6: main

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public static void main(String[] args) throws Exception {

		// create a dense empty matrix with 4 rows and 4 columns
		Matrix dense = DenseMatrix.Factory.zeros(4, 4);

		// set entry at row 2 and column 3 to the value 5.0
		dense.setAsDouble(5.0, 2, 3);

		// set some other values
		dense.setAsDouble(1.0, 0, 0);
		dense.setAsDouble(3.0, 1, 1);
		dense.setAsDouble(4.0, 2, 2);
		dense.setAsDouble(-2.0, 3, 3);
		dense.setAsDouble(-2.0, 1, 3);

		// print the final matrix on the console
		System.out.println(dense);

		// create a sparse empty matrix with 4 rows and 4 columns
		Matrix sparse = SparseMatrix.Factory.zeros(4, 4);
		sparse.setAsDouble(2.0, 0, 0);

		// basic calculations
		Matrix transpose = dense.transpose();
		Matrix sum = dense.plus(sparse);
		Matrix difference = dense.minus(sparse);
		Matrix matrixProduct = dense.mtimes(sparse);
		Matrix scaled = dense.times(2.0);

		Matrix inverse = dense.inv();
		Matrix pseudoInverse = dense.pinv();
		double determinant = dense.det();

		Matrix[] singularValueDecomposition = dense.svd();
		Matrix[] eigenValueDecomposition = dense.eig();
		Matrix[] luDecomposition = dense.lu();
		Matrix[] qrDecomposition = dense.qr();
		Matrix choleskyDecomposition = dense.chol();

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

示例7: testPlusScalarLarge

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testPlusScalarLarge() throws Exception {
	if (!isTestLarge()) {
		return;
	}
	Matrix m = createMatrixWithAnnotation(119, 119);
	m.setAsDouble(1.0, 0, 0);
	m.setAsDouble(2.0, 0, 1);
	m.setAsDouble(3.0, 1, 0);
	m.setAsDouble(4.0, 1, 1);
	Matrix r = m.plus(1.0);

	assertEquals(getLabel(), 2.0, r.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 3.0, r.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 4.0, r.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 5.0, r.getAsDouble(1, 1), TOLERANCE);

	assertEquals(getLabel(), 1.0, m.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 2.0, m.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 3.0, m.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 4.0, m.getAsDouble(1, 1), TOLERANCE);

	if (m instanceof Erasable) {
		((Erasable) m).erase();
	}
	if (r instanceof Erasable) {
		((Erasable) r).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:30,代码来源:AbstractMatrixTest.java

示例8: testPlusMatrixSmall

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testPlusMatrixSmall() throws Exception {
	Matrix m1 = createMatrixWithAnnotation(2, 2);
	Matrix m2 = createMatrixWithAnnotation(2, 2);
	m1.setAsDouble(1.0, 0, 0);
	m1.setAsDouble(2.0, 0, 1);
	m1.setAsDouble(3.0, 1, 0);
	m1.setAsDouble(4.0, 1, 1);
	m2.setAsDouble(1.0, 0, 0);
	m2.setAsDouble(1.0, 0, 1);
	m2.setAsDouble(1.0, 1, 0);
	m2.setAsDouble(1.0, 1, 1);
	Matrix r = m1.plus(m2);

	assertEquals(getLabel(), 2.0, r.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 3.0, r.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 4.0, r.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 5.0, r.getAsDouble(1, 1), TOLERANCE);

	assertEquals(getLabel(), 1.0, m1.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 2.0, m1.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 3.0, m1.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 4.0, m1.getAsDouble(1, 1), TOLERANCE);

	assertEquals(getLabel(), 1.0, m2.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 1.0, m2.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 1.0, m2.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 1.0, m2.getAsDouble(1, 1), TOLERANCE);

	if (m1 instanceof Erasable) {
		((Erasable) m1).erase();
	}
	if (m2 instanceof Erasable) {
		((Erasable) m2).erase();
	}
	if (r instanceof Erasable) {
		((Erasable) r).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:40,代码来源:AbstractMatrixTest.java

示例9: testPlusMatrixSmall

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public void testPlusMatrixSmall() throws Exception {
	Matrix ref1 = DenseDoubleMatrix2D.Factory.randn(11, 10);
	Matrix ref2 = DenseDoubleMatrix2D.Factory.randn(11, 10);
	Matrix ref3 = ref1.plus(Ret.LINK, true, ref2);

	for (Class<? extends Matrix> mclass : ALLFLOATMATRIXCLASSES) {
		Matrix m1 = getMatrix(mclass, ref1);
		Matrix m2 = getMatrix(mclass, ref2);
		Matrix m3 = m1.plus(m2);
		assertEquals(mclass.toString(), 0.0, ref3.minus(m3).getRMS(), TOLERANCE);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:14,代码来源:TestCompareMatrices.java

示例10: testPlusMatrixLarge

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public void testPlusMatrixLarge() throws Exception {
	Matrix ref1 = DenseDoubleMatrix2D.Factory.randn(101, 100);
	Matrix ref2 = DenseDoubleMatrix2D.Factory.randn(101, 100);
	Matrix ref3 = ref1.plus(Ret.LINK, true, ref2);

	for (Class<? extends Matrix> mclass : ALLFLOATMATRIXCLASSES) {
		Matrix m1 = getMatrix(mclass, ref1);
		Matrix m2 = getMatrix(mclass, ref2);
		Matrix m3 = m1.plus(m2);
		assertEquals(mclass.toString(), 0.0, ref3.minus(m3).getRMS(), TOLERANCE);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:14,代码来源:TestCompareMatrices.java

示例11: testPlusScalarSmall

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public void testPlusScalarSmall() throws Exception {
	Matrix ref1 = DenseDoubleMatrix2D.Factory.randn(11, 10);
	double ref2 = MathUtil.nextDouble();
	Matrix ref3 = ref1.plus(Ret.LINK, true, ref2);

	for (Class<? extends Matrix> mclass : ALLFLOATMATRIXCLASSES) {
		Matrix m1 = getMatrix(mclass, ref1);
		Matrix m3 = m1.plus(ref2);
		Matrix delta = ref3.minus(m3);
		assertEquals(mclass.toString(), 0.0, delta.getRMS(), TOLERANCE);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:14,代码来源:TestCompareMatrices.java

示例12: testPlusScalarLarge

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public void testPlusScalarLarge() throws Exception {
	Matrix ref1 = DenseDoubleMatrix2D.Factory.randn(101, 100);
	double ref2 = MathUtil.nextDouble();
	Matrix ref3 = ref1.plus(Ret.LINK, true, ref2);

	for (Class<? extends Matrix> mclass : ALLFLOATMATRIXCLASSES) {
		Matrix m1 = getMatrix(mclass, ref1);
		Matrix m3 = m1.plus(ref2);
		assertEquals(mclass.toString(), 0.0, ref3.minus(m3).getRMS(), TOLERANCE);
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:13,代码来源:TestCompareMatrices.java

示例13: train

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public void train(ListDataSet dataSet) throws Exception {

		List<Sample> samples = new FastArrayList<Sample>(dataSet);
		for (int t = 0; t < tMax; t++) {

			double epsilon = epsilonStart * Math.pow(epsilonEnd / epsilonStart, (double) t / tMax);
			double delta = deltaStart * Math.pow(deltaEnd / deltaStart, (double) t / tMax);

			System.out.println((int) ((double) t / tMax * 100) + "%");

			Collections.shuffle(samples);

			for (Sample s : samples) {
				Matrix input = s.getAsMatrix(getInputLabel());

				// find best match
				double bestDistance = Double.MAX_VALUE;
				int bestRow = -1;
				int bestCol = -1;
				Matrix distanceMatrix = Matrix.Factory.zeros(rows, cols);
				for (int row = 0; row < rows; row++) {
					for (int col = 0; col < cols; col++) {
						Matrix m = weightVectors[row][col];
						if (m == null) {
							m = Matrix.Factory.randn(input.getSize());
							weightVectors[row][col] = m;
						}
						double distance = input.euklideanDistanceTo(m, true);
						distanceMatrix.setAsDouble(distance, row, col);
						if (distance < bestDistance) {
							bestDistance = distance;
							bestRow = row;
							bestCol = col;
						}
					}
				}

				for (int row = 0; row < rows; row++) {
					for (int col = 0; col < cols; col++) {
						double dist = Math.sqrt((row - bestRow) * (row - bestRow) + (col - bestCol)
								* (col - bestCol));
						double h = MathUtil.gauss(0, delta, dist);
						Matrix w = weightVectors[row][col];
						w = w.plus(input.minus(w).times(epsilon * h));
						weightVectors[row][col] = w;
					}
				}

				if (t == tMax - 1) {
					s.put("Projection", distanceMatrix);
				}

			}

		}

	}
 
开发者ID:jdmp,项目名称:java-data-mining-package,代码行数:58,代码来源:SelfOrganizingMap.java

示例14: testPlusMatrixLarge

import org.ujmp.core.Matrix; //导入方法依赖的package包/类
@Test
public final void testPlusMatrixLarge() throws Exception {
	if (!isTestLarge()) {
		return;
	}
	Matrix m1 = createMatrixWithAnnotation(121, 111);
	Matrix m2 = createMatrixWithAnnotation(121, 111);
	m1.setAsDouble(1.0, 0, 0);
	m1.setAsDouble(2.0, 0, 1);
	m1.setAsDouble(3.0, 1, 0);
	m1.setAsDouble(4.0, 1, 1);
	m2.setAsDouble(1.0, 0, 0);
	m2.setAsDouble(1.0, 0, 1);
	m2.setAsDouble(1.0, 1, 0);
	m2.setAsDouble(1.0, 1, 1);
	Matrix r = m1.plus(m2);

	assertEquals(getLabel(), 2.0, r.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 3.0, r.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 4.0, r.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 5.0, r.getAsDouble(1, 1), TOLERANCE);

	assertEquals(getLabel(), 1.0, m1.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 2.0, m1.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 3.0, m1.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 4.0, m1.getAsDouble(1, 1), TOLERANCE);

	assertEquals(getLabel(), 1.0, m2.getAsDouble(0, 0), TOLERANCE);
	assertEquals(getLabel(), 1.0, m2.getAsDouble(0, 1), TOLERANCE);
	assertEquals(getLabel(), 1.0, m2.getAsDouble(1, 0), TOLERANCE);
	assertEquals(getLabel(), 1.0, m2.getAsDouble(1, 1), TOLERANCE);

	if (m1 instanceof Erasable) {
		((Erasable) m1).erase();
	}
	if (m2 instanceof Erasable) {
		((Erasable) m2).erase();
	}
	if (r instanceof Erasable) {
		((Erasable) r).erase();
	}
}
 
开发者ID:ujmp,项目名称:universal-java-matrix-package,代码行数:43,代码来源:AbstractMatrixTest.java


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