タグ付けされた質問 「discontinuous-galerkin」

2
不連続ガラーキン:節点とモードの長所と短所
不連続ガラーキン法で解を表す一般的なアプローチには、ノードとモーダルの2つがあります。 モーダル:解は、モーダル係数の和に多項式のセットを掛けたもので表されます。たとえば、ここで、ϕ iu (x 、t )= ∑Ni = 1あなたは私(t )ϕ私(x )あなたは(バツ、t)=∑私=1Nあなたは私(t)ϕ私(バツ)u(x,t) = \sum_{i=1}^N u_i(t) \phi_i(x)ϕ私ϕ私\phi_iは通常、直交多項式、たとえばルジャンドル。この利点の1つは、直交多項式が対角質量行列を生成することです。 節点:セルは、ソリューションが定義される複数のノードで構成されます。セルの再構築は、補間多項式のフィッティングに基づきます。たとえば、ここで、l iはラグランジュ多項式です。この利点の1つは、ノードを直交点に配置して積分をすばやく評価できることです。u (x 、t )= ∑Ni = 1あなたは私(x 、t )l私(x )あなたは(バツ、t)=∑私=1Nあなたは私(バツ、t)l私(バツ)u(x,t) = \sum_{i=1}^N u_i(x,t) l_i(x)l私l私l_i 大規模の文脈では、複合( - 10 910610610^610910910^9のDOF)3Dは、柔軟性、実装の明瞭さ、および効率の目標と構造化/非構造化並列アプリケーションを混合し、各方法の比較長所と短所は何ですか? すでに優れた文献が存在していると確信しているので、誰かが私にも素晴らしいものを教えてくれるとしたら。

3

1
不連続ガラーキン/有限要素データの視覚化
ParaView内で不連続ガラーキン(DG)アプローチを使用して得られたシミュレーション結果を視覚化したいと思います。有限体積法と同様に、問題領域は立方体のセル(「要素」)に分割されます。有限体積法とは異なり、各セル内には解ベクトル値が1つだけではありませんが、各セルには複数のガウス積分点で解が含まれます。あなたはあなたは\mathbf{u}あなたはあなたは\mathbf{u} 私の質問は、ParaView / VTKを使用してそのようなデータを効率的に視覚化した経験があるかどうか、およびVTKでデータを表すために選択したアプローチです。考えられるいくつかの方法が思い浮かびますが、どれが最も有望かはわかりません。 (1)ボクセルを 使用する各統合ポイントに1つのボクセルを使用します。 Pro:標準のVTK非構造化セルタイプで動作するすべてのプラグインは、何も変更せずに引き続き動作します。欠点 :統合ポイントが均等に分散されていないため、頂点の正しい位置を見つけるのが難しい場合があります。また、DGフレームワークでは不連続なソリューションが許可されるため、セル表面でソリューションを2回定義できます。また、階層情報(要素に分割されたドメイン、各要素に複数のポイントが含まれる)も失われます。 (2)多角形の 使用統合ポイントごとに1つの頂点を使用します。利点 :実装が最も簡単で、異なるソリューションを使用して同じ場所に複数のポイントを簡単に指定できます。欠点 :データを「セル」として視覚化する機能が失われ、さらに上記と同じ欠点があります。 (3)VTK直交方式を 使用する直交方式の組み込みサポートを使用します。 利点:むしろ簡単な実装で、元のソリューションのすべての関係とプロパティを保持します。 欠点:これは完全に新しいセルタイプであるため、既存のプラグインの多く(ほとんど)は機能しなくなり、おそらく書き直さなければならないでしょう。

3
DG-FEMにおける数値フラックスの役割
私はHesthaven / Warburtonの本を使用してDG-FEMメソッドの背後にある理論を学んでおり、「数値フラックス」の役割について少し混乱しています。これが基本的な質問であればおIびしますが、満足のいく答えが見つかりませんでした。 線形スカラー波動方程式を考えます。 ここで、線形フラックスはとして与えられます。、F(U)=AU∂あなたは∂t+ ∂f(u )∂バツ= 0∂あなたは∂t+∂f(あなたは)∂バツ=0\frac{\partial u}{\partial t} + \frac{\partial f(u)}{\partial x} = 0f(u )= a uf(あなたは)=aあなたはf(u) = au Hesthavenの本で紹介されているように、各要素、基底関数ごとに1つの方程式があり、残差が弱くなることを強制します。NkkkNNN Rh(x 、t )= ∂あなたはh∂t+ ∂Uh∂バツRh(バツ、t)=∂あなたはh∂t+∂aあなたはh∂バツR_h(x,t) = \frac{\partial u_h}{\partial t} + \frac{\partial au_h}{\partial x} ∫DkRh(x 、t )ψn(x )dx = 0∫DkRh(バツ、t)ψn(バツ)dバツ=0\int_{D^k} R_h(x,t) \psi_n(x) \, dx = 0 いいよ したがって、パーツによる統合を1回行って「弱いフォーム」に到達し(1)、パーツによる統合を2回行って「強いフォーム」を取得します(2)。Hesthavenの一種の行き過ぎだが、簡単に一般化された1Dの表面積分形式を採用します。 (1)∫Dk(∂あなたはkh∂tψn- …

1
DGローカル方程式、平均平均テスト関数の解釈方法
論文http://www.sciencedirect.com/science/article/pii/S0045782509003521で、HDG要素ローカル方程式は584ページの方程式(4)で説明されており、次の形式を取る方程式の1つが含まれます。 − (uh、∇ Q)K= - ⟨ U^h⋅ N 、Q− q¯⟩∂K−(uh,∇q)K=−⟨u^h⋅n,q−q¯⟩∂K-(u_h,\nabla q)_K = -\left\langle\hat{u}_h \cdot n, q - \bar{q}\right\rangle_{\partial K} これは、連続式に変近似であるスカラー値テスト機能で、qは理にかなった空間インチ∇ ⋅ U = 0∇⋅u=0\nabla \cdot u = 0qqq 紙定義。q¯=1|∂K|∫∂Kqq¯=1|∂K|∫∂Kq\bar{q} = \frac{1}{|\partial K|} \int_{\partial K} q これは有限要素の意味でどのように解釈されますか?私の理解から、我々乗算両側テスト機能により、、その後は満たすソリューションのすべての可能な選択肢のための方程式を見つけるしようとqと。この方法でテストスペースを変更するにはどうすればよいですか?qqqqqq 論文はまた、これはアイデンティティ施行する必要があると述べて 私はこの声明に同意しますが、どのようにテスト機能かもしれませんQ - ˉ qはコードで実装できますか?要素の局所線形システムを組み立てるとき、要素の基底関数を取り、それらの平均を差し引く必要がありますか?⟨u^h⋅n,q−q¯⟩∂K=0⟨u^h⋅n,q−q¯⟩∂K=0\left\langle\hat{u}_h\cdot n, q - \bar{q}\right\rangle_{\partial K} = 0q−q¯q−q¯q - \bar{q}

1
不連続ガラーキンスキームのCFL条件
私は、のタイプの保存則の線形システムの解決のためにADER-Discontinuous Galerkinスキームを実装し、CFL条件が非常に制限的であることを観察しました。参考文献では、時間ステップの上限を見つけることができます。ここで、はセルサイズ、は次元およびは多項式の最大次数です。∂tU+ A ∂バツU+ B ∂yU= 0∂tU+A∂xU+B∂yU=0\partial_t U + A \partial_x U + B \partial_y U=0 時間DNΔのT ≤ Hd(2 N+ 1 )λmは、XがΔt≤hd(2N+1)λmax\Delta t \leq \frac{h}{d(2N+1)\lambda_{max}}hhhdddNNN この問題を回避する方法はありますか?私はWENO-ADER有限ボリュームスキームを使用しており、CFLの制限ははるかに緩和されました。たとえば、5次のスキームでは、DGを使用する場合は0.04未満のCFLを課す必要がありますが、WENO-ADER FVスキームではCFL = 0.4を使用できます。 たとえば、計算空気力学(線形化オイラー方程式)または同様のアプリケーション(ガス力学、浅水域、電磁流体力学)で、ADER-FVではなくDGスキームを使用する理由は何ですか。スキームの全体的な計算コストは​​、はるかに低いタイムステップにもかかわらず、ADER-FVの計算コストと同じですか? これについての考えや提案は大歓迎です。


1
大きなインデックス配列のテストと視覚化
節点不連続ガラーキン法をすぐに実装し、メッシュと多項式データを前提として、計算する必要がある基本的なインデックス配列を知る前にこれを実行します。 前のコードで遭遇した問題は、内部/外部トレースのインデックス付けなどの計算で行った微妙な間違いでした。単純なテストケースでは発生しなかった問題が大きなメッシュで発生し、境界条件が適切に課されていないため、通常はこれにより不安定なスキームが生成されます(10ステップごとにシミュレーションを監視するだけで、局所的な問題が発生する可能性はありません)。 。 私は、経験豊富な人々が、インデックス配列に対して実行して、それらが正しいことを確信するための優れたテストを知っていることを望んでいます。求積法、導関数などは非常に簡単にテストできますが、他のことはわかりません。 私が過去に行ったいくつかのテストでは、内部法線を外部法線に追加しています。これにより、0または+ -2が得られます。コード変更の結果をすばやく確認できると便利ですが、インデックス作成でこれを行う意味のある方法は考えられません。 また、これらは四角形や六角形にも適用され、曲線要素の可能性があります。動作中のライブラリと比較する既存のコードはあまりありません。 比較するために既存の正解に依存しない、私が書ける優れた単体テストがある場合のボーナスポイント。私は多くの優れたヒューリスティックスで解決します。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.