2017-11-24 4 views
-1

enter image description hereRの複雑な代数方程式をどのように並べ替えるか?

非線形方程式は、A、B、C、D、Eが分かっています。私は方程式の形成を再構成したいと思う。 Xを方程式の左に置き、他のパラメータをすべて方程式の右に置きます。このようないくつかのソフトウェアがありますか?Rなど

+0

コンピュータ代数システムを探します。 YacasはR:http://www.yacas.org/ – Roland

+0

ありがとう。この問題の例をいくつか教えていただけますか? yacasパッケージのどの機能を使うべきですか? – Revo

+1

どのように非線形を定義しますか?私は答えを知っています;私はあなたのことを見たいと思います。代数的複雑さを非線形性と混同しないでください。 Wolfram Alphaを試してみてください。 – duffymo

答えて

1

これを試してください - 最近開始したXMLパッケージの警告を無視してください。

library(Ryacas) 
A <- Sym("A") 
B <- Sym("B") 
C <- Sym("C") 
D <- Sym("D") 
E <- Sym("E") 
X <- Sym("X") 
Solve(E == A * B * (X + C)/(A + B * (X + C)) - A * B * (X + D + C)/(A + B * (X + D + C)), X) 

を与える:

expression(list(X == (root((2 * (E * A * B) + (2 * (E * B^2 * 
    C) + E * B^2 * D))^2 - 4 * (E * B^2 * (E * A^2 + (2 * (E * 
    A * B * C) + E * A * B * D) + (E * B^2 * C^2 + E * B^2 * 
    C * D) + A^2 * B * D)), 2) - (2 * (E * A * B) + (2 * (E * 
    B^2 * C) + E * B^2 * D)))/(2 * (E * B^2)), X == -(2 * (E * 
    A * B) + (2 * (E * B^2 * C) + E * B^2 * D) + root((2 * (E * 
    A * B) + (2 * (E * B^2 * C) + E * B^2 * D))^2 - 4 * (E * 
    B^2 * (E * A^2 + (2 * (E * A * B * C) + E * A * B * D) + 
    (E * B^2 * C^2 + E * B^2 * C * D) + A^2 * B * D)), 2))/(2 * 
    (E * B^2)))) 

あなたはA、B、C、Dの特定の値を持っている場合、上記の代替、Eは数値的に、unirootは、例えば、それを使用して解決することであろう。

+0

ありがとうございました。それは動作します。パッケージ "Ryacas"は素晴らしいです。 – Revo

関連する問題