NDSolve`FEM`
NDSolve`FEM`

BoundaryUnitNormal

BoundaryUnitNormal[x,y,]

領域に対して外向きの単位法線ベクトル を表す.

詳細とオプション

  • BoundaryUnitNormalは,境界の単位法線ベクトル に従属する,偏微分方程式の境界条件を構築するために使える.
  • BoundaryUnitNormalは,NeumannValueDirichletConditionNIntegrateと一緒に使える.
  • BoundaryUnitNormalは,AcousticAbsorbingValueHeatFluxValueMassOutflowValue等の境界条件によって生成できる.
  • BoundaryUnitNormalは,境界上の接線を指定するために使える.
  • BoundaryUnitNormalは,境界条件が離散化される場合には,領域の埋込み次元の長さのベクトルに評価する.
  • 境界の単位法線成分 には,Indexedを使ってアクセスできる.
  • 有限要素の近似には,偏微分方程式に検定関数 が掛けられ,上で積分される.部分積分で が得られる.境界の積分における被積分関数 は,NeumannValue で置き換えられる.
  • 偏微分方程式がノイマン値を と指定する場合には,NeumannValue と指定することによって,代りにBoundaryUnitNormalを使って をモデル化することができる.
  • 逆に,偏微分方程式がノイマン値を と指定する場合には,NeumannValue と指定することによって,代りにBoundaryUnitNormalを使って をモデル化することができる.
  • 領域の内部境界においては,境界の単位法線成分は一意的には定義されない.
  • 境界の単位法線の値 は,領域全体で内部境界を含むすべての境界について,のディリクレ条件で を解くことによって計算される.すると,境界の単位法線成分は で正規化された の勾配になる.

例題

すべて開くすべて閉じる

  (1)

パッケージをロードする:

単位Diskについてポワソン方程式を解く:

解を可視化する:

領域の境界を通る流束の合計を,境界領域の二次近似で計算する:

部分領域の境界を通る流束の合計を計算する:

スコープ  (6)

単位Diskについてポワソン方程式を解く:

外側の境界を通る流束の合計を計算する:

領域の境界を通る流束の合計を,境界領域の二次近似で計算する:

微分方程式と領域を指定する:

左に,境界の単位法線成分でNeumannValueを設定し,方程式を解く:

解を可視化する:

この範囲について,左のBoundaryUnitNormalの等価はである:

解が等しいことを示す:

NeumannValueについて接線成分を作成する:

BoundaryUnitNormalIndexed成分を利用してNeumannValueを計算する:

ある形状についてポワソン方程式を解く:

解をプロットする:

境界を通る流束の合計を計算する:

境界の法線成分でNeumannValueを設定する:

ノイマンゼロ境界条件を使って方程式をもう一度解く:

時間の経過につれて解がどのように変わるかを調べる:

この領域では,左のBoundaryUnitNormalの等価はである:

解が同じであることをチェックする:

アプリケーション  (1)

以下の例では,環帯領域において指定された表面力境界条件を持つストークス流を考える.辺の外側では において粘着境界条件が存在する.これらが の方向での流速を0,つまり に設定する.内側の境界では において表面力が指定される.応力ベクトル の表面力は以下で与えられる:

    

ここでは, として与えられる動径単位ベクトルであり, として与えられる接線単位ベクトルである. はそれぞれ の方向でのデカルト単位ベクトルである.この例では,表面力は法線方向には ,接線成分の表面力は に設定される.言い換えれば,内側の境界では,速度は指定されず,表面力 のみが指定される.

流動応力テンソル は以下で与えられる:

    

ストークス方程式は

    

と以下の連続方程式で与えられる:

    

パラメータ,形状,細分化されたメッシュを設定する:

ストークス流の演算子を設定する:

外側の境界での粘着条件を設定する:

内側の表面では,外向きの単位法線 とクロス積から接線単位法線を計算することができる.クロス積を使って,単位法線ベクトル から単位接線を計算する:

の方向それぞれについてクロス積の第1成分と第2成分を抽出するためには,Indexedを使う.

表面力境界条件を設定する:

接線単位法線も同じように として与えられることが可能であることに注意する.内側の表面の単位法線ベクトルは であり,すると単位接線は になるからである:

圧力に対する境界条件を指定しなければ,圧力値が浮いてしまい,NDSolveは十分な境界条件が指定されていないと警告を発する:

圧力溶解と速度場を可視化する:

表面力境界条件がうまく使えることを確かめるためには,速度の動径成分と接線成分を計算し,それらを においてすべての についてプロットすることができる.動径速度については に比例する解が期待され,接線速度については に比例する解が期待される.

関数を定義して,速度の動径成分と接線成分を計算する:

速度の動径成分と, に比例する関数をプロットする:

速度の接線成分と, に比例する関数をプロットする:

次に内側の境界での法線応力と剪断応力を計算し,それらが指定された表面力境界条件と一致することを確かめる.応力テンソルは以下で与えられる:

    .

表面力ベクトルの法線と接線の成分は

    

および

    

によって計算される.

応力テンソル を計算する関数を作成する:

単位法線ベクトルを計算する:

接線ベクトルの関数を定義する:

法線応力を計算する関数を定義する:

剪断応力を計算する関数を定義する:

において計算された法線応力と剪断応力を可視化する:

境界条件から における法線応力と剪断応力の境界条件との差を可視化する:

特性と関係  (2)

境界単位の法線場を計算する:

境界単位法線を可視化する:

境界のみにおける境界単位法線を可視化する:

境界単位法線は,領域上でポワソン方程式を解き,ゼロディリクレ条件を指定することによって計算される.単位Disk上でのポワソン方程式を計算する:

ポテンシャルの正規化された勾配を計算する:

単位法線を可視化する:

これは,ElementMeshの境界単位法線を計算することと同じである:

Wolfram Research (2023), BoundaryUnitNormal, Wolfram言語関数, https://reference.wolfram.com/language/FEMDocumentation/ref/BoundaryUnitNormal.html.

テキスト

Wolfram Research (2023), BoundaryUnitNormal, Wolfram言語関数, https://reference.wolfram.com/language/FEMDocumentation/ref/BoundaryUnitNormal.html.

CMS

Wolfram Language. 2023. "BoundaryUnitNormal." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/FEMDocumentation/ref/BoundaryUnitNormal.html.

APA

Wolfram Language. (2023). BoundaryUnitNormal. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/FEMDocumentation/ref/BoundaryUnitNormal.html

BibTeX

@misc{reference.wolfram_2024_boundaryunitnormal, author="Wolfram Research", title="{BoundaryUnitNormal}", year="2023", howpublished="\url{https://reference.wolfram.com/language/FEMDocumentation/ref/BoundaryUnitNormal.html}", note=[Accessed: 21-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_boundaryunitnormal, organization={Wolfram Research}, title={BoundaryUnitNormal}, year={2023}, url={https://reference.wolfram.com/language/FEMDocumentation/ref/BoundaryUnitNormal.html}, note=[Accessed: 21-November-2024 ]}