タグ付けされた質問 「nonlinear-equations」

方程式の非線形システムの解。方程式は代数方程式または微分方程式の場合があります。

1
Newton-Krylovが適切なソルバーではないのはいつですか?
最近、私はscipyのさまざまな非線形ソルバーを比較しており、Scipy CookbookのNewton-Krylovの例に特に感銘を受けました。約20行のコードで非線形反応項を持つ2階微分方程式方程式を解きます。 半導体ヘテロ構造の非線形ポアソン方程式(ポアソン-ボルツマン方程式とも呼ばれ、これらのノートの17ページを参照)を解くためにサンプルコードを修正しました。 d2ϕdバツ2− k (x )( p (x 、ϕ )− n (x 、ϕ )+ N+(x )) = 0d2ϕdバツ2−k(バツ)(p(バツ、ϕ)−n(バツ、ϕ)+N+(バツ))=0 \frac{d^2\phi}{dx^2} - k(x) \left(p(x,\phi) - n(x,\phi) + N^{+}(x)\right) = 0 (これはソルバーに渡される残差関数です。) これは、静電気の問題である及びP (X 、φは)フォームの非線形関数であり、N I(X )E - (E I(X 、φ )- E 、F)。ここでの詳細は重要ではありませんが、ポイントは非線形関数がϕで指数関数的に変化するため、残差関数は巨大な範囲(10 − 6 − 10 16)にわたって変化する可能性があることです。n (x 、ϕ )n(バツ、ϕ)n(x,\phi)p …

3

2
Newton-Raphson反復を使用せずに非線形PDEを解くことは可能ですか?
私はいくつかの結果を理解しようとしていますが、非線形問題への取り組みに関する一般的なコメントをいただければ幸いです。 フィッシャーの方程式(非線形反応拡散PDE)、 あなたはt= dあなたはx x+ βu (1 − u )= F(u )あなたはt=dあなたはバツバツ+βあなたは(1−あなたは)=F(あなたは) u_t = du_{xx} + \beta u (1 - u) = F(u) 離散化された形式で、 あなたは′j= L u + βあなたはj(1 − uj)= F(u )あなたはj′=Lあなたは+βあなたはj(1−あなたはj)=F(あなたは) u_j^{\prime} = \boldsymbol{L}\boldsymbol{u} + \beta u_j (1 - u_j) = F(\boldsymbol{u}) ここで、は微分演算子で、は離散化ステンシルです。u = (u j − 1、u …

1
困難な方程式系を数値的に解く
数値的に解きたいの非線形方程式のシステムがあります。んnn f = (f 1、… 、f n)f(x)= af(x)=a\mathbf{f}(\mathbf{x})=\mathbf{a} f= (f1、… 、fん)x =( x1、… 、xん)f=(f1,…,fn)x=(x1,…,xn)\mathbf{f}=(f_1,\dots,f_n)\quad\mathbf{x}=(x_1,\dots,x_n) このシステムには、取り扱いを特に困難にする多くの特性があります。より効率的にシステムに対処する方法についてのアイデアを探しています。 なぜシステムが難しいのですか? 関数はこれに似ています(もちろん多次元です): 彼らは滑らかな変化の領域で区切られた平らな台地を持っています。2Dでは、1つのに対して次のようなものを想像できます。f私fif_i 一般に、各は、次元超平面の周りの滑らかな変化によって分離された2つのプラトーがあります。 n − 1f私fif_in − 1n−1n-1 このような関数は、導関数がプラトーで実質的にゼロになるため、ニュートンのような方法で処理することが困難です。多次元では、いずれにもf私fif_i n=1プラトーがない領域を簡単に見つけることができません。問題を解決できるとしたら。二分法は場合にうまく機能しますが、複数の次元にうまく一般化できません。n = 1n=1n=1 関数の計算は非常に遅いです。可能な限り少ない反復で根の妥当な近似を得ることができる方法を探しています。 関数はモンテカルロ法で計算されます。これは、それらが計算されるたびに、わずかに異なるランダム値を取得することを意味します。デリバティブは推定が困難です。ルートに十分近づくと、ノイズが支配的になり始め、精度を上げるために平均化を使用する必要があります。理想的には、この方法を同等の確率近似バージョン(たとえば、ニュートン→ロビンスモンロ)に一般化できるはずです。 システムは高次元です。は10〜20の大きさにすることができます。場合、効果的な方法は、おそらく次のようになります。トライによって定義された輪郭追従するととどこが交差参照します。これがどのように高次元に一般化されるかは明らかではありません。n = 2 f 1(x 1、x 2)= 0 f 2(x 1、x 2)= 0nnnn=2n=2n=2f1(x1,x2)=0f1(x1,x2)=0f_1(x_1,x_2) = 0f2(x1,x2)=0f2(x1,x2)=0f_2(x_1,x_2)=0 システムについて他に何を知っていますか? (理論的な結果から)正確に1つのルートがあります。 高原のの値を知っています(どのでも0と1だとしましょう)。 Ififif_iiii xは私をfはI(... …

2
確率的に計算された関数で機能する方程式解法の数値法
タイプ方程式を解くための多くのよく知られた数値的方法があります たとえば、二分法、ニュートン法などです。f(x )= 0 、X ∈ Rん、f(バツ)=0、バツ∈Rん、 f(x) = 0, \quad x \in \mathbb{R}^n, 私のアプリケーションでは、は確率的方法で計算されます(結果は平均です)。f(x )f(バツ)f(x) この状況をうまく処理する数値方程式解法はありますか?同様の状況の議論へのリンクも高く評価されます。 計算できる精度はに強く依存し、計算時間を大幅に増加させなければ精度を上げることができない壁に簡単にぶつかる可能性があります。したがって、の結果が正確でないという事実を無視することはできません。これは、が実際に見つかる精度にも影響します。f(x )f(バツ)f(x)バツバツxfffバツバツx

3
四次方程式の解
四次方程式の解のためのオープンなC実装はありますか? ax⁴+bx³+cx²+dx+e=0ax⁴+bx³+cx²+dx+e=0ax⁴+bx³+cx²+dx+e=0 フェラーリのソリューションの実装を考えています。ウィキペディアで、係数の可能​​な符号の組み合わせの一部に対してのみ、解が計算的に安定していることを読みました。しかし、私は幸運かもしれません...コンピュータ代数システムを使用して分析的に解決し、Cにエクスポートすることによって実用的な解決策を得ました。しかし、テスト済みの実装がある場合、これを使用したいと思います。私は高速な方法を検索し、一般的なルートファインダーを使用しないことを好みます。 本当の解決策だけが必要です。


3
ニュートン・ラフソンを超えて非線形移流拡散システムを解く方法は?
私は、それぞれのソース項を介して2つのadv-diff結合ドメインがあるプロジェクトに取り組んでいます(1つのドメインは質量を加算し、他のドメインは質量を減算します)。簡潔にするために、定常状態でモデル化しています。方程式は、次のようなソース項を持つ標準の移流拡散輸送方程式です。 ∂c1∂t=0=F1+Q1(c1,c2)∂c2∂t=0=F2+Q2(c1,c2)∂c1∂t=0=F1+Q1(c1,c2)∂c2∂t=0=F2+Q2(c1,c2) \frac{\partial c_1}{\partial t} = 0 = \mathcal{F}_1 + \mathcal{Q}_1(c_1,c_2) \\ \frac{\partial c_2}{\partial t} = 0 = \mathcal{F}_2 + \mathcal{Q}_2(c_1,c_2) ここで、は種iの拡散および移流フラックスであり、Q iは種iのソース項です。FiFi\mathcal{F}_iiiiQiQi\mathcal{Q}_iiii Newton-Raphson法を使用して問題のソルバーを記述でき、ブロック質量行列を使用して2つのドメインを完全に結合しました。 Fcoupled=[A100A2][c1,ic2,i]xi−[b1(c1,i,c2,i)b2(c1,i,c2,i)]Fcoupled=[A100A2][c1,ic2,i]⏟xi−[b1(c1,i,c2,i)b2(c1,i,c2,i)] F_{coupled} = \left[\begin{array}{c c} A_1 & 0 \\ 0 & A_2 \\ \end{array}\right]\underbrace{ \left[\begin{array}{c} c_{1,i} \\ c_{2,i} \\ \end{array}\right] }_{x_i} - \left[\begin{array}{c} b_1(c_{1,i}, c_{2,i}) \\ …

2
フォンノイマンの安定性分析は、非線形有限差分方程式について何を教えてくれますか?
以下の非線形方程式u t + u x + u u x − u x x t = 0 を有限差分法を使って解く論文[1]を読んでい ます。また、フォンノイマンの安定性分析を使用してスキームの安定性を分析します。ただし、作成者が認識しているように、これは線形PDEにのみ適用できます。したがって、著者は非線形項を「フリーズ」することでこれに対処します。つまり、u u x項をU u xに置き換えます。ここで、Uは「あなたt+ uバツ+ u uバツ− Ux x t= 0あなたt+あなたバツ+あなたあなたバツ−あなたバツバツt=0\begin{equation} u_t + u_x + uu_x - u_{xxt} = 0 \end{equation}U Uバツあなたあなたバツuu_xUあなたバツUあなたバツUu_xUUU。」あなたあなたu だから私の質問は2つあります: 1:この方法を解釈する方法となぜそれが機能しない(しない)のか? 2:項をu U x項で置き換えることもできます。ここで、U xは「u xの局所的に一定の値を表すと見なされます」?U Uバツあなたあなたバツuu_xu UバツあなたUバツuU_xUバツUバツU_xあなたバツあなたバツu_x 参考文献 …

1
非線形PDEに適用されるニュートン反復
ニュートン反復法を非線形PDEに適用し、完全に陰的なスキームを使用してタイムステップを計算する方法を理解できません。たとえば、バーガース方程式を解きたい あなたt+ u uバツ- Ux x= 0ut+uux−uxx=0u_{t} + u u_{x} - u_{xx} = 0 バックワードオイラーを使用して時間を離散化する あなたt= un + 1- Uんhut=un+1−unhu_{t} = \frac{u^{n+1} - u^{n}}{h} 私たちはそれを見つけます あなたn + 1- Uんh+ un + 1(un + 1)バツ− (un + 1)x x= 0あなたn + 1− h (un + 1)x x+ H Un + 1(un …

2
シューティング法は、非線形境界値ODEを解くための唯一の一般的な数値法ですか?
Mathematica.seをさまよいながら、ある種の微分方程式を解く問題が常に私たちを「悩ませている」、つまり非線形常微分方程式(ODE)の境界値問題(BVP)に徐々に気づきました。 撮影方法で使用され、Mathematicaの機能はNDSolve、Mathematica.SEのユーザーが知っていることを唯一の方法であると思われます。時々それはうまくいきますが、多くの場合(私の個人的な感情によると)、適切な初期推測を見つけるのは苦痛です。 多くの場合、適切な推測を見つけることができません。ここに私がこの質問を投稿させた例があります。 では、シューティング法は、非線形ODEのBVPを解くための唯一の一般的な数値法ですか? もしそうなら、適切な初期推測を得るための良い方法はありますか? そうでない場合、代替手段は何ですか?可能であれば、これらの代替案を実装する既存のソルバーの紹介またはリンクを提供してください。

1
F(x)= 0対|| F(x)|| ^ 2->分
F(x)=0.F(x)=0. F(x) = 0. ∥F(x)∥2→min‖F(x)‖2→min \|F(x)\|^2 \to\min x^x^\hat{x}F(x)=0F(x)=0F(x)=0 問題は、どの処方が特定の問題により適しているかをアプリオリに教えられるかどうかです。以前にこれに取り組んだことはありますか? 一例 関数 F(x、y)= \ begin {pmatrix} x ^ 3-3x y ^ 2-1 \\ 3 x ^ 2 y-y ^ 3 \ end {pmatrix}について考え ます。 F(x,y)=(x3−3xy2−13x2y−y3).F(x,y)=(x3−3xy2−13x2y−y3). F(x, y) = \begin{pmatrix} x^3 - 3x y^2 - 1\\ 3 x^2 y - y^3 \end{pmatrix}. …

1
非線形波動方程式-有限要素または有限差分
非線形双曲線方程式、有限要素法または有限差分法を解くときに、どちらがより有利であるか知りたいのですが?衝撃をとらえるにはどちらの方法が良いでしょうか 詳細な回答/参照を提供することは可能ですか? また、無限導波路の非反射境界条件の問題を解決したいのですが、そのような場合にゾンマーフェルト放射条件を使用できますか?

5
非線形方程式の反復解
この質問がばかげている場合は、事前にお詫び申し上げます。の根を計算する必要があります u − f(u )= 0u−f(u)=0\begin{equation} u -f(u) =0 \end{equation} ここで、は実数ベクトルで、は実数ベクトル値関数です。私はニュートンの方法(うまくいった)から始めましたが、もっと簡単な方法が反復的な解決策になることに気付きましたf (u )あなたuuf(u )f(u)f(u) あなたi + 1= f(u私)ui+1=f(ui)\begin{equation} u_{i+1} = f(u_{i}) \end{equation} これははるかに速く、明らかにニュートンの方法と同じくらい正確/安定です。 今の質問: これは正しいアプローチですか、それとも別の方法を使用する必要がありますか? 収束率、安定性、加速度などについて言えることはありますか? グローバルに収束していますか? ご清聴ありがとうございました。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.