public AffineStochasticTransformation(OMatrix matrix, OVector freeTerm, OSymmetricMatrix covariance)
        {
            _domain   = new AffineSpace(matrix.ColumnCount);
            _codomain = new AffineSpace(matrix.RowCount);

            _matrix     = matrix;
            _freeTerm   = freeTerm;
            _covariance = covariance;
        }
Exemple #2
0
        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;
        }
Exemple #4
0
 public OSymmetricMatrix Conjugate(OMatrix matrix)
 {
     return(new OSymmetricMatrix(Value.Conjugate(matrix.Value)));
 }
Exemple #5
0
 public StochasticFiberPoint(StochasticManifoldPoint point, OMatrix mixedCovariance)
 {
     _point           = point;
     _mixedCovariance = mixedCovariance;
 }