josdejong/mathjs

Simplify not working with matrix multiplication?

オープン

#2,614 opened on 2022/07/01

 (3 件のコメント) (0 件のリアクション) (0 人の担当者)JavaScript (1,314 件のフォーク)batch import
bughelp wanted

Repository metrics

Stars
 (15,065 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Shouldn't the following produce the same result?

import * as math from 'mathjs'

let scope = {
  A: math.matrix([
    [1, 2],
    [3, 4],
  ]),
  v: math.matrix([5, 6]),
}

const r0 = math.evaluate('A * v', scope)
console.log('Evaluate:', r0) // Evaluate: DenseMatrix {_data: [17, 39]}

//const A = new math.SymbolNode('A')
//const v = new math.SymbolNode('v')
//const expr = new math.OperatorNode('*', 'multiply', [A, v])
const expr = math.parse('A * v')

const r1 = math.simplify(expr, scope)
console.log('Simplify:', r1) // Simplify: ConstantNode {value: 0}

When I run the code, evaluate produces the expected output ([17, 39]), but simplify does not (it instead produces 0 which doesn't seem right).

コントリビューターガイド