public AffineStochasticTransformation(OMatrix matrix, OVector freeTerm, OSymmetricMatrix covariance) { _domain = new AffineSpace(matrix.ColumnCount); _codomain = new AffineSpace(matrix.RowCount); _matrix = matrix; _freeTerm = freeTerm; _covariance = covariance; }
private void ExpectMatricesAreAlmostEqual(OMatrix v, OMatrix w) { Expect(v.RowCount, Is.EqualTo(w.RowCount)); Expect(v.ColumnCount, Is.EqualTo(w.ColumnCount)); for (int i = 0; i < v.RowCount; i++) { for (int j = 0; j < v.ColumnCount; j++) { Expect(v[i, j], Is.EqualTo(w[i, j]).Within(_tolerance)); } } }
public AffineIntegralStochasticProcess(IStochasticProcess baseProcess, IManifold fiber, OMatrix gain, OVector offset) : base(baseProcess, fiber) { if (!(baseProcess.StateSpace is AffineSpace)) { throw new ArgumentException("Expected process in affine space", "baseProcess"); } ArgAssert.Equal(baseProcess.StateSpace.Dimension, "baseProcess.StateSpace.Dimension", gain.ColumnCount, "gain.ColumnCount"); ArgAssert.Equal(fiber.Dimension, "fiber.Dimension", gain.RowCount, "gain.RowCount"); ArgAssert.Equal(offset.Dimension, "offset.Dimension", gain.RowCount, "gain.RowCount"); _gain = gain; _offset = offset; }
public OSymmetricMatrix Conjugate(OMatrix matrix) { return(new OSymmetricMatrix(Value.Conjugate(matrix.Value))); }
public StochasticFiberPoint(StochasticManifoldPoint point, OMatrix mixedCovariance) { _point = point; _mixedCovariance = mixedCovariance; }