Beispiel #1
0
        public bool TryGetInverse(out Matrix2F inverse)
        {
            var inverter   = new GaussJordanInverter <Matrix2F, float>(new Matrix2F(this), CreateIdentity());
            var successful = inverter.Invert();

            inverse = inverter.Inverse;
            return(successful);
        }
Beispiel #2
0
        public void Invert()
        {
            var inverter = new GaussJordanInverter <Matrix2F, float>(new Matrix2F(this), CreateIdentity());

            if (!inverter.Invert())
            {
                throw new NoInverseException();
            }

            CopyFrom(inverter.Inverse);
        }
Beispiel #3
0
        public bool TryInvert()
        {
            var inverter   = new GaussJordanInverter <Matrix2F, float>(new Matrix2F(this), CreateIdentity());
            var successful = inverter.Invert();

            if (successful)
            {
                CopyFrom(inverter.Inverse);
            }

            return(successful);
        }
Beispiel #4
0
        public bool TryGetInverse(out MatrixF inverse)
        {
            if (!IsSquare)
            {
                inverse = null;
                return(false);
            }

            var inverter   = new GaussJordanInverter <MatrixF, float>(new MatrixF(this), CreateIdentity(Rows));
            var successful = inverter.Invert();

            inverse = inverter.Inverse;
            return(successful);
        }
Beispiel #5
0
        public Matrix2F GetInverse()
        {
#if HAS_CODECONTRACTS
            Ensures(Result <Matrix2F>() != null);
#endif

            var inverter = new GaussJordanInverter <Matrix2F, float>(new Matrix2F(this), CreateIdentity());
            if (!inverter.Invert())
            {
                throw new NoInverseException();
            }

            return(inverter.Inverse);
        }
Beispiel #6
0
        public void Invert()
        {
            if (!IsSquare)
            {
                throw new NotSquareMatrixException();
            }

            var inverter = new GaussJordanInverter <MatrixF, float>(new MatrixF(this), CreateIdentity(Rows));

            if (!inverter.Invert())
            {
                throw new NoInverseException();
            }

            CopyFrom(inverter.Inverse);
        }
Beispiel #7
0
        public bool TryInvert()
        {
            if (!IsSquare)
            {
                return(false);
            }

            var inverter   = new GaussJordanInverter <MatrixF, float>(new MatrixF(this), CreateIdentity(Rows));
            var successful = inverter.Invert();

            if (successful)
            {
                CopyFrom(inverter.Inverse);
            }

            return(successful);
        }
Beispiel #8
0
        public MatrixD GetInverse()
        {
#if HAS_CODECONTRACTS
            Ensures(Result <MatrixD>() != null);
#endif

            if (!IsSquare)
            {
                throw new NotSquareMatrixException();
            }

            var inverter = new GaussJordanInverter <MatrixD, double>(new MatrixD(this), CreateIdentity(Rows));
            if (!inverter.Invert())
            {
                throw new NoInverseException();
            }

            return(inverter.Inverse);
        }