次のコマンド
syms x real;
f = @(x) log(x^2)*exp(-1/(x^2));
fp(x) = diff(f(x),x);
fpp(x) = diff(fp(x),x);
と
solve(fpp(x)>0,x,'Real',true)
結果を返す
solve([0.0 < (8.0*exp(-1.0/x^2))/x^4 - (2.0*exp(-1.0/x^2))/x^2 - (6.0*log(x^2) *exp(-1.0/x^2))/x^4 + (4.0*log(x^2)*exp(-1.0/x^2))/x^6], [x == RD_NINF..RD_INF ]))
これは私が期待するものではありません。
最初の質問: Matlabにすべての解のセットを返すように強制することは可能ですか?solve
(これはこの質問に関連しています。)さらに、方程式を解こうとすると
solve(fpp(x)==0,x,'Real',true)
返す
ans =
-1.5056100417680902125994180096313
すべての解が返されていないので満足できません (WolframAlpha から取得した約 -1.5056、1.5056、-0.5663、および 0.5663 です)。
私は、vpasolve
最初の推測でこれを処理できることを知っています。しかし、2 番目の質問である、すべての解を取得するための初期推定値を一般的に見つける方法がわかりません。
これらの問題を解決するための他の解決策または提案を歓迎します。