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); }
public void Invert() { var inverter = new GaussJordanInverter <Matrix2F, float>(new Matrix2F(this), CreateIdentity()); if (!inverter.Invert()) { throw new NoInverseException(); } CopyFrom(inverter.Inverse); }
public bool TryInvert() { var inverter = new GaussJordanInverter <Matrix2F, float>(new Matrix2F(this), CreateIdentity()); var successful = inverter.Invert(); if (successful) { CopyFrom(inverter.Inverse); } return(successful); }
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); }
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); }
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); }
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); }
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); }