josdejong/mathjs

Simplify not working with matrix multiplication?

開放

#2,614 建立於 2022年7月1日

 (3 則留言) (0 個反應) (0 位負責人)JavaScript (1,314 個分叉)batch import
bughelp wanted

倉庫指標

星標
 (15,065 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

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).

貢獻者指南