2015-10-04 104 views
3

我使用MathNet並試圖解析2x^2 + x使用Infix.ParseOrUndefined序列順序

Infix.Print(Infix.ParseOrUndefined("2x^2 + x")); 

到epression但它返回x + 2x^2。我想保留源的順序,因爲我要使用LaTeX.Print在LaTex中將其轉換。

解析方程時如何保持順序?

回答

1

不幸的是,保持任意順序是不可能的。按照設計,在Math.NET Symbolics中,所有表達式都是自動簡化的,系統排序是自動簡化的一個關鍵方面。然而,如果這更多地是通過降序指數來排序多項式而不是增加一個,或者通過在打印表達式的點處應用一些其他系統的順序關係,那麼肯定有可能創建這樣的替代Infix.Print(其中,或LaTeX.Print)的實施。畢竟,Infix.Print已經做了不少操作(Infix.PrintStrict除外)。

+0

(我可以幫助提供這樣的變體) –

+0

我明白了。謝謝。我想我會解釋我的目標。我在微積分中創建了一個有限和無限積分的簡單計算器,並且我想將它顯示在LaTex中,用戶的輸入和MathNet庫中的結果中,MathNet.Symbolics能夠擴展方程,如'(2x^2 + x)^ 2'到'x^2 + 4x^3 + 4x^4'。你仍然在等式中掙扎,因爲它必須首先被區分。如果不是話題,我很抱歉。 –

+0

是的,也許在我們的論壇http://discuss.mathdotnet.com/討論這件事更容易。隨意在Math.NET符號類別中打開一個主題。 –