23 Expression * MatrixInverse::shallowReduce(
Context& context, AngleUnit angleUnit) {
24 Expression * e = Expression::shallowReduce(context, angleUnit);
29 #if MATRIX_EXACT_REDUCING 36 if (mat->numberOfRows() != mat->numberOfColumns()) {
49 Expression * MatrixInverse::templatedApproximate(Context& context, AngleUnit angleUnit)
const {
53 Complex<T> *
c =
static_cast<Complex<T> *
>(input);
57 result =
static_cast<Matrix *
>(input)->createInverse<T>();
59 if (result ==
nullptr) {
static Complex< T > Cartesian(T a, T b)
Expression * replaceWith(Expression *newOperand, bool deleteAfterReplace=true)
Expression * approximate(Context &context, AngleUnit angleUnit=AngleUnit::Default) const
static bool IsMatrix(const Expression *e, Context &context)
Expression * clone() const override
Expression * editableOperand(int i)
static Complex< T > compute(const Complex< T > c, const Complex< T > d)
const Expression * m_operands[T]
Type type() const override
static Complex< T > Float(T x)
void detachOperand(const Expression *e)
friend class MatrixInverse
const Expression * operand(int i) const