InitializeBoundaryConditions[vd,sd,{{bc11,…},{bc21,…},…}]
境界条件 beqni の系を,変数データ vd と解データ sd に従って初期化し,BoundaryConditionDataオブジェクトを生成する.
InitializeBoundaryConditions
InitializeBoundaryConditions[vd,sd,{{bc11,…},{bc21,…},…}]
境界条件 beqni の系を,変数データ vd と解データ sd に従って初期化し,BoundaryConditionDataオブジェクトを生成する.
詳細とオプション
- 境界条件 bcij は,DirichletCondition,NeumannValue,PeriodicBoundaryConditionのいずれでもよい.
- 境界条件 bcij の i
番目の集合は,以下からの i
番目の方程式に関連付けられる. - 境界条件は,空間の関数でも時間の関数でもよい.
- 変数データ vd と解データ sd は,変数と値の対応するリストである.vd と sd のテンプレートは,NDSolve`VariableDataとNDSolve`SolutionDataを使って生成することが可能であり,成分はNDSolve`SetSolutionDataComponentを使って設定することができる.
- InitializeBoundaryConditionsは,変数データ vd と解データ sd に従って,境界条件を確かめ,最適化する.
- vd と sd の"Space"成分は,それぞれNumericalRegion オブジェクトとして表される空間変数と空間メッシュに設定されなければならない.
- vd の"DependentVariables"成分は,引数を持たない未知の関数名のリストに設定されなければならない.
- 時間依存問題については,vd と sd の"Time"成分は,それぞれ時間変数と初期時間に設定されなければならない.
- パラメトリック問題については,vd と sd の"Parameters"成分は,それぞれパラメトリック変数と初期パラメトリック値に設定されなければならない.
- 以下のオプションを与えることができる.
-
"BoundaryTolerance" Automatic 境界条件の述語の許容範囲 "ScaleFactor" Automatic ディリクレ(Dirichlet)境界条件の非定常処理のスケール係数 - NDSolveおよび関連の関数からオプションを設定することについては,有限要素のためのNDSolveオプションに説明がある.
例題
すべて開く すべて閉じる例 (1)
Needs["NDSolve`FEM`"]NumericalRegionを設定する:
nr = ToNumericalRegion[Rectangle[{0, 0}, {1, 1 / 2}]]vd = NDSolve`VariableData[{"DependentVariables", "Space"} -> {{u}, {x, y}}];
sd = NDSolve`SolutionData[{"Space"} -> {nr}];InitializeBoundaryConditions[vd, sd, {{DirichletCondition[u[x, y] == 0., x == 0]}}]スコープ (2)
vd2 = NDSolve`VariableData[{"DependentVariables", "Space"} -> {{u, v}, {x, y}}];
sd = NDSolve`SolutionData[{"Space"} -> {nr}];InitializeBoundaryConditions[vd2, sd, {{DirichletCondition[u[x, y] == 0., x == 0]}, {DirichletCondition[v[x, y] == 0., x == 0], NeumannValue[-1, x == 1]}}]1つ目の方程式について u と v のディリクレ(Dirichlet)条件を,2つ目の方程式について v のディリクレ条件,およびノイマン(Neumann)条件を初期化する:
InitializeBoundaryConditions[vd2, sd, {{DirichletCondition[u[x, y] == 0., x == 0], DirichletCondition[v[x, y] == 0., x == 1]}, {DirichletCondition[v[x, y] == 0., x == 0], NeumannValue[-1, x == 1]}}]オプション (1)
"BoundaryTolerance" (1)
bcdata = InitializeBoundaryConditions[vd, sd, {{DirichletCondition[u[x, y] == 0., x == 0], DirichletCondition[u[x, y] == 1., y == 0]}}, "BoundaryTolerance" -> None]DirichletConditionの境界条件が一貫していない場合には,境界条件の離散化段階中に警告が発せられる:
mdata = InitializePDEMethodData[vd, sd];
dbc = DiscretizeBoundaryConditions[bcdata, mdata, sd];デフォルトの"BoundaryTolerance"はAutomaticであり,一貫性のない境界条件についての警告は発せられないが,一貫性のない境界条件の分析中に見付かった重複する境界条件は削除される."BoundaryTolerance"をInfinityに設定すると,一貫性があるかどうかのチェックは行われない.
テクニカルノート
関連するガイド
-
▪
- 有限要素法
テキスト
Wolfram Research (2014), InitializeBoundaryConditions, Wolfram言語関数, https://reference.wolfram.com/language/FEMDocumentation/ref/InitializeBoundaryConditions.html (2020年に更新).
CMS
Wolfram Language. 2014. "InitializeBoundaryConditions." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/FEMDocumentation/ref/InitializeBoundaryConditions.html.
APA
Wolfram Language. (2014). InitializeBoundaryConditions. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/FEMDocumentation/ref/InitializeBoundaryConditions.html
BibTeX
@misc{reference.wolfram_2026_initializeboundaryconditions, author="Wolfram Research", title="{InitializeBoundaryConditions}", year="2020", howpublished="\url{https://reference.wolfram.com/language/FEMDocumentation/ref/InitializeBoundaryConditions.html}", note=[Accessed: 09-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_initializeboundaryconditions, organization={Wolfram Research}, title={InitializeBoundaryConditions}, year={2020}, url={https://reference.wolfram.com/language/FEMDocumentation/ref/InitializeBoundaryConditions.html}, note=[Accessed: 09-August-2026]}