NSolve
詳細とオプション
- 系 expr は以下の任意の論理結合でよい.
-
lhs==rhs 等しい lhs!=rhs 等しくない lhs>rhs または lhs>=rhs 不等式 expr∈dom 領域指定 {x,y,…}∈reg 領域指定 ForAll[x,cond,expr] 全称記号 Exists[x,cond,expr] 存在記号 - NSolve[{expr1,expr2,…},vars]とNSolve[expr1&&expr2&&…,vars]は等価である.
- 単一の変数または変数のリストを指定することができる.
- NSolveは,次の形式の規則によって解を与える.
-
{} 解がない {{x->solx,y->soly,…},…} 複数の解 {{}} 解集合は全次元である - 指定された変数が1つの場合,ある方程式で特定の根が1より大きい重複性を示すときにはNSolveは相当する解の複数のコピーを返す.
- NSolve[expr,vars]は,デフォルトで,不等式に代数的に現れる数量は実数値であるが,その他の数量は複素数値であると仮定する.
- NSolve[expr,vars,Reals]では,変数,パラメータ,定数,関数のすべての値が実数に限られる.
- NSolve[expr&&vars∈Reals,vars,Complexes]は変数の実数値について解くが,関数の値は複素数値でもよい.
- NSolve[…,x∈reg,Reals]は,x を領域 reg 内に制限する.Indexed[x,i]を使って異なる座標の x に言及することができる.
- NSolveは主として線形方程式と整方程式を扱う.
- 使用可能なオプション
-
MaxRoots Automatic 返す根の最大数 Method Automatic 使用されるべきメソッド RandomSeeding 1234 乱数生成器のシード VerifySolutions Automatic 解を確かめるかどうか WorkingPrecision Automatic 計算に使われる精度 - Methodの可能な設定値には,"EndomorphismMatrix","Homotopy","Monodromy","Symbolic"がある. »
例題
すべて開くすべて閉じるスコープ (48)
一変数複素方程式 (10)
多変数の複素方程式系 (9)
一変数実方程式 (11)
多変数実方程式系と実不等式系 (9)
オプション (10)
MaxRoots (4)
Method (4)
この系には個の根があるが,これは,Bernstein-Khovanskii-Kushnirenkoの定理で与えられたの境界よりも厳密には少ない:
デフォルトで使われる"Homotopy"法は,いくつかの根の複数のコピーを返す:
この場合は"Monodromy"法の方が速く,根の複数のコピーも返さない:
Methodオプションは,"NSolveOptions"群からシステムオプションをローカルに設定するために使うこともできる:
デフォルトで,NSolveは劣決定複合系をスライスする超平面を導入する:
Method->{"UseSlicingHyperplanes"->False}とすると,NSolveはパラメトリック解を返す:
VerifySolutions (1)
NSolveは,非等価変換を使って得られた解を検証する:
VerifySolutions->Falseでは,NSolveは解の検証は行わない:
VerifySolutions->Falseで返される解の中には,正しくないものもある:
WorkingPrecision (1)
デフォルトで,NSolveは機械精度計算を用いて厳密な方程式の解を求める:
アプリケーション (17)
幾何学 (11)
InfiniteLine[{0,0},{1,1}]とInfiniteLine[{{0,1},{1,0}}]の交点を求める:
InfiniteLine[{0,0},{1,1}]とCircle[{0,0},1]の交点を求める:
BooleanCountingFunctionを使って,厳密に2つの条件が真であることを表明する:
円Circle[{1/3 Cos[k 2π/5],1/3 Sin[k 2π/5]}]で,ペアの円ごとの交点を k=0,…,4について求める:
InfiniteLine[{{-1,1,1},{1,1,1}}]とInfinitePlane[{{2,0,0},{0,2,0},{0,0,2}}]の交点を求める:
InfiniteLine[{{-1,1,1},{1,1,1}}]とSphere[{0,0,0},3]の交点を求める:
InfiniteLine[{{-1,1/3,1/2},{1,1/3,1/2}}]とTetrahedron[{{0,0,0},{1,0,0},{0,1,0},{0,0,1}}]の境界の交点を求める:
球Sphere[{1/3 Cos[k 2π/3],1/3 Sin[k 2π/3],0}]の交点を k=0,1,2について求める:
ランダムな10の平面のうち,厳密に3平面のすべての交点を求める:
BooleanCountingFunctionを使って厳密に3つのことが真となる条件を求める:
化学 (1)
変数は化学種の量を表すため,すべての成分が負ではない実数値の解に興味がある:
見かけの多重度はAutomaticメソッドの成果物であり,高速になる傾向があるが,多重度が誇張される場合がある:
力学 (3)
Gough-Stewart平行の自由度6のプラットフォームの順運動学:
この解集合は複数の解があるとするが,複数のコピーを削除する:
カメラの姿勢推定手順から生じる4変数の6つの方程式の過剰決定系を設定する:
各解について,解の接続による最初の4つの残差は小さいが,最後の2つは無視できない:
次に,残差の二乗和を最小化するための開始点として使用して各解を完成させる:
経済 (1)
経済学に生じる縮小された8次元系.精度を高めるためにデフォルト以外の方法を使用する:
差分方程式 (1)
特性と関係 (8)
考えられる問題 (7)
WorkingPrecisionを高くすると,より正確な結果が生成される:
WorkingPrecisionを高くすると,許容度の低い解が得られる:
多項式系解集合が無限の場合,NSolveは解集合とランダムな超平面との交点を与える:
ContourPlotとContourPlot3Dを使って解の実部を見る:
NSolveは,デフォルトで,実際の数よりも多くの解を主張することができる:
残差の差にもかかわらず,2つの解はMachinePrecision精度におけるすべての桁が一致する:
領域としてRealsを指定すると,NSolveは解の近傍で関数が実数値ではない解は求めないかもしれない:
NSolveはすべての解を与えないことがある:
テキスト
Wolfram Research (1991), NSolve, Wolfram言語関数, https://reference.wolfram.com/language/ref/NSolve.html (2024年に更新).
CMS
Wolfram Language. 1991. "NSolve." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/NSolve.html.
APA
Wolfram Language. (1991). NSolve. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NSolve.html