タグ付けされた質問 「advection」

2
完全に閉じたノイマン境界条件(境界での反射)を伴う有限差分によって移流方程式を解くときの奇妙な振動
私は移流方程式を解こうとしていますが、境界から波が反射すると、解に奇妙な振動が現れます。私が原因とその回避方法を知りたいと思う前に誰かがこの人工物を見たなら! これはアニメーションGIFで、別のウィンドウで開いてアニメーションを表示します(キャッシュされているのは一度だけ再生されるか、一度に再生されないかです!) 波が最初の境界から反射し始めるまで、伝播は非常に安定しているように見えることに注意してください。ここで何が起こると思いますか?数日かけてコードを再確認しましたが、エラーが見つかりません。奇妙なのは、2つの伝播ソリューションがあるように見えることです。1つはポジティブなソリューションで、もう1つはネガティブなソリューションです。最初の境界からの反射後。ソリューションは、隣接するメッシュポイントに沿って移動しているようです。 実装の詳細は次のとおりです。 移流方程式 ∂あなたは∂t= V ∂あなたは∂バツ∂u∂t=v∂u∂x\frac{\partial u}{\partial t} = \boldsymbol{v}\frac{\partial u}{\partial x} ここで、は伝播速度です。vv\boldsymbol{v} Crank-Nicolsonは、が空間でゆっくりと変化する(フーリエ変換時に低周波数成分のみを含む場合、移流方程式の無条件(pdfリンク)の 安定した離散化です。u (x )u(x)u(x) 私が適用した離散化は、 ϕn + 1j− ϕnjΔ トン= V [ 1 - β2 Δ X(φnj + 1− ϕnj − 1) + β2 Δ X(φn + 1j + 1− ϕn + 1j − 1) …

2
Crank-Nicolsonは、反応-拡散-移流(対流)方程式の安定した離散化スキームですか?
私は、PDEの一般的な離散化スキームにあまり精通していません。Crank-Nicolsonは拡散方程式を離散化するための一般的なスキームであることを知っています。移流項にも適していますか? 私は反応-拡散-移流方程式を解くのに興味があります。 ∂u∂t+∇⋅(vu−D∇u)=f∂u∂t+∇⋅(vu−D∇u)=f\frac{\partial u}{\partial t} + \nabla \cdot \left( \boldsymbol{v} u - D\nabla u \right) = f ここで、は物質拡散係数で、は速度です。DDDvuuuvv\boldsymbol{v} 私の特定のアプリケーションでは、方程式は次の形式で記述できます。 ∂u∂t=D∂2u∂x2Diffusion+v∂u∂xAdvection (convection)+f(x,t)Reaction∂u∂t=D∂2u∂x2⏟Diffusion+v∂u∂x⏟Advection (convection)+f(x,t)⏟Reaction\frac{\partial u}{\partial t} = \underbrace{D\frac{\partial^2 u}{\partial x^2}}_{\textrm{Diffusion}} + \underbrace{\boldsymbol{v}\frac{\partial u}{\partial x}}_{\textrm{Advection (convection)}} + \underbrace{f(x,t)}_{\textrm{Reaction}} これが私が適用したクランク・ニコルソン方式です、 あなたはn + 1j- UnjΔ トン= D [ 1 - β(Δは、xは)2(unj − 1− 2 unj+ …

1
移流拡散方程式に適用されるノイマン境界条件を使用する場合の物理量の保存
異なる境界条件を適用すると、移流拡散方程式の異なる動作が理解できません。私の動機は、拡散と移流のもとでの実際の物理量(粒子密度)のシミュレーションです。粒子密度は、端から流出しない限り、内部で保存する必要があります。この論理により、システムの両端に(左側および右側)などのノイマン境界条件を適用すると、システムは「閉じる」、つまり境界でのフラックスがゼロの場合、粒子は逃げることができません。∂ϕ∂x=0∂ϕ∂x=0\frac{\partial \phi}{\partial x}=0 以下のすべてのシミュレーションでは、Crank-Nicolson離散化を移流拡散方程式に適用し、すべてのシミュレーションには境界条件があります。ただし、行列の最初と最後の行(境界条件の行)については、内部値に関係なくを変更できます。これにより、エンドポイントが完全に暗黙的になります。∂ϕ∂x=0∂ϕ∂x=0\frac{\partial \phi}{\partial x}=0ββ\beta 以下に4つの異なる構成について説明しますが、そのうちの1つだけが期待したものです。最後に、実装について説明します。 拡散のみの制限 ここでは、速度をゼロに設定すると移流項がオフになります。 拡散のみ、すべてのポイントでββ\boldsymbol{\beta} = 0.5(Crank-Niscolson) パルス面積が減少することからわかるように、量は保存されません。 拡散のみ、内部ポイントで = 0.5(クランクニコルソン)、境界で = 1(完全暗黙)ββ\boldsymbol{\beta}ββ\boldsymbol{\beta} 境界で完全に暗黙的な方程式を使用することで、期待どおりの結果が得られます。粒子が逃げません これは、粒子が拡散するにつれて保存される領域で確認できます。なぜ選択する必要があり境界点では、状況の物理学に影響を与えますか?これはバグですか、それとも予想ですか?ββ\beta 拡散と移流 移流項が含まれる場合、境界のの値は解に影響を与えないようです。ただし、境界が「開いている」ように見えるすべての場合、つまり粒子は境界から逃げることができます。これはなぜですか?ββ\beta すべてのポイントでの = 0.5(Crank-Niscolson)による移流と拡散ββ\boldsymbol{\beta} 内点での = 0.5(Crank-Niscolson)、および境界での = 1(完全暗黙)による移流と拡散ββ\boldsymbol{\beta}ββ\boldsymbol{\beta} 移流拡散方程式の実装 移流拡散方程式から始めて、 ∂ϕ∂t=D∂2ϕ∂x2+v∂ϕ∂x∂ϕ∂t=D∂2ϕ∂x2+v∂ϕ∂x \frac{\partial \phi}{\partial t} = D\frac{\partial^2 \phi}{\partial x^2} + \boldsymbol{v}\frac{\partial \phi}{\partial x} Crank-Nicolsonを使用して書くと、 ϕn+1j−ϕnjΔt=D[1−β(Δx)2(ϕnj−1−2ϕnj+ϕnj+1)+β(Δx)2(ϕn+1j−1−2ϕn+1j+ϕn+1j+1)]+v[1−β2Δx(ϕnj+1−ϕnj−1)+β2Δx(ϕn+1j+1−ϕn+1j−1)]ϕjn+1−ϕjnΔt=D[1−β(Δx)2(ϕj−1n−2ϕjn+ϕj+1n)+β(Δx)2(ϕj−1n+1−2ϕjn+1+ϕj+1n+1)]+v[1−β2Δx(ϕj+1n−ϕj−1n)+β2Δx(ϕj+1n+1−ϕj−1n+1)] \frac{\phi_{j}^{n+1} - \phi_{j}^{n}}{\Delta t} …

2
移流方程式の陰的有限差分スキーム
移流方程式のための多数のFD制度がありウェブで議論します。例:http: //farside.ph.utexas.edu/teaching/329/lectures/node89.html∂T∂t+u∂T∂x=0∂T∂t+u∂T∂x=0\frac{\partial T}{\partial t}+u\frac{\partial T}{\partial x}=0 しかし、次のような「暗黙の」風上スキームを提案する人はいません。 。Tn+1i−Tniτ+uTn+1i−Tn+1i−1hx=0Tin+1−Tinτ+uTin+1−Ti−1n+1hx=0\frac{T^{n+1}_i-T^{n}_i}{\tau}+u\frac{T^{n+1}_i-T^{n+1}_{i-1}}{h_x}=0 私が見た風上のスキームはすべて、空間微分の前のタイムステップのデータを扱っていました。その理由は何ですか?古典的な風上のスキームは、私が上で書いたものと比較してどうですか?

4
有限差分法によって離散化された移流方程式の境界条件
有限差分法を使用してPDEを解くときに境界条件を選択する方法を説明するのに役立つリソースを見つけようとしています。 私が現在アクセスできるすべての本とメモは、同様のことを言っています: 境界が存在する場合の安定性を管理する一般規則は、入門テキストとしては複雑すぎます。彼らは洗練された数学的な機械を必要とします (A.イセル微分方程式の数値解析の最初のコース) たとえば、移流方程式に2段階のリープフロッグ法を実装しようとする場合: あなたはn + 1私= あなたn − 1私+ μ (uni + 1- Uni − 1)あなたは私n+1=あなたは私n−1+μ(あなたは私+1n−あなたは私−1n)u_i^{n+1} = u_i^{n-1} + \mu (u_{i+1}^n - u_{i-1}^n) MATLABを使用して M = 100; N = 100; mu = 0.5; c = [mu 0 -mu]; f = @(x)(exp(-100*(x-0.5).^2)); u = zeros (M, N); x = …

1
可変速度の移流方程式は保守的ですか?
速度係数が可変の移流方程式をもう少し良く理解しようとしています。特に、方程式がどのように保守的であるかはわかりません。 移流方程式、 ∂u∂t+∂∂x(vu)=0∂u∂t+∂∂x(vu)=0 \frac{\partial u}{\partial t} + \frac{\partial}{\partial x}(\boldsymbol{v}u) = 0 u(x,t)u(x,t)u(x,t)を、物理種(cm−3cm−3cm^{-3})の濃度または作成または破壊できない物理量として解釈してみましょう。ドメイン上でu(x、t)を統合する場合、u(x,t)u(x,t)u(x,t)定数を取得する必要があります。 ∫xmaxxminu(x,t)dx=constant∫xminxmaxu(x,t)dx=constant \int_{x_{\text{min}}}^{x_{\text{max}}} u(x,t) dx = \text{constant} (これは保守的であることの意味です。) ここで、速度を空間(および時間)の関数v(x,t)v(x,t)\boldsymbol{v}(x,t)にすると、チェーンルールを適用して、 ∂u∂t+v∂u∂x+u∂v∂x?=0∂u∂t+v∂u∂x+u∂v∂x⏟?=0 \frac{\partial u}{\partial t} + \boldsymbol{v}\frac{\partial u}{\partial x} + \underbrace{u\frac{\partial \boldsymbol{v}}{\partial x}}_{\text{?}} = 0 最後の用語はソース用語のように「見え」ますが、これは紛らわしいものです。速度場の発散に応じて、量uuu増減します。 この質問に続いて、保存境界条件を課す方法を理解しています。ただし、可変速度移流方程式については、チェーンルールを適用することによって導入される追加の「ソース項」のために、保存境界条件をどのように導出できるかがわかりません。この方程式は保守的ですか?もしそうなら、どのように正しい境界条件を適用できますか?

5
1D移流方程式の数値解でスプリアス振動の限界をどのようにして導き出すことができますか?
次の周期的な1D移流問題があったとします。 Ω=[0、1]U(0、T)=U(1、T)、U(X、0)=G(X)G(X)のx*∈(0、1)∂u∂t+c∂u∂x=0∂u∂t+c∂u∂x=0\frac{\partial u}{\partial t} + c\frac{\partial u}{\partial x} = 0 in ここで、はでジャンプの不連続性を持っています。 Ω=[0,1]Ω=[0,1]\Omega=[0,1] u(0,t)=u(1,t)u(0,t)=u(1,t)u(0,t)=u(1,t) u(x,0)=g(x)u(x,0)=g(x)u(x,0)=g(x)g(x)g(x)g(x)x∗∈(0,1)x∗∈(0,1)x^*\in (0,1) 一次以上の線形有限差分スキームでは、不連続な振動が時間とともに移流されるときに不連続点の近くでスプリアス振動が発生し、その結果、予想される波形から解が歪みます。ウィキペディアの説明によると、これらの振動は通常、不連続関数が有限フーリエ級数で近似されるときに発生するようです。 どういうわけか、このPDEの解で有限フーリエ級数がどのように観測できるのか理解できません。特に、「オーバーシュート」の限界を分析的にどのように推定できますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.