1. 程式人生 > >完美解決:出現root與變數z,matlab求解方程(方程組)

完美解決:出現root與變數z,matlab求解方程(方程組)

用solve解一個方程時。發現結果出現root和變數z,什麼??

原始碼:

syms b m y
eqn = (-b-2)* y^3+ 3* b *m*y^2-3*b*m^2*y+b*m^3== 0;
y = solve(eqn, y)

結果:

好吧,上面這個結果完全看不懂??

解決方案:

只需用roots()解析結果就行:在結尾加上roots(y);

syms b m y
eqn = (-b-2)* y^3+ 3* b *m*y^2-3*b*m^2*y+b*m^3== 0;
y = solve(eqn, y);
roots(y)

結果:

成功用引數b,m來表達y;

百度了一下,發現出現這個問題的一般都是新版本matlab,為什麼?上面兩個解,結果很長,完整結果都沒能截下來,一般這種解的意義不大,matlab會採用新的root的形式表示;想要獲取真實表達值,可用roots()函式解析;