MATLAB Answers

非線形方程式の解法で虚数解が出ないようにする方法

2 views (last 30 days)
Kohei
Kohei on 21 May 2019
Answered: Etsuo Maeda on 27 May 2019
2変数の非線形連立方程式を解く為,fsolveやlsqnonlinを使用しようと考えているのですが,解に虚数解が出てきてしまいます.
虚数解が出ないように制約条件を付けることは可能でしょうか?
方法を知っている方がいましたら教えて頂きたいです.

  1 Comment

Image Analyst
Image Analyst on 22 May 2019
Google Translation Japanese to English:
I'm thinking of using fsolve or lsqnonlin to solve a nonlinear simultaneous system of two variables, but an imaginary solution will appear in the solution.
Is it possible to add constraints so that there are no imaginary solutions?
I would like to know if you know how.

Sign in to comment.

Answers (1)

Etsuo Maeda
Etsuo Maeda on 27 May 2019
fsolveとlsqnonlinには、解を実数に制限するオプションは無かったはずですので、Symbolic Math Toolboxを使って
syms x
vpasolve(x^8 - x^2 == 3, x, [-Inf Inf])
のようにして実数解に制限する方法はどうでしょうか。
assume(x, 'real')
もよいかと思います。
HTH

  0 Comments

Sign in to comment.

Sign in to answer this question.