単位立方体への規定変位
1 目的
immersed単位立方体の6面に、ゼロおよび非ゼロの規定変位境界条件をそれぞれ独立に適用できることを検証します。得られる変位場を面ベースのmulti-point probeと、Abaqus output databaseに生成されたsurface-element setから直接確認します。さらに、3次元内部probe gridで一定応力場を確認します。
2 形状
解析領域は
\[ x\in[0,1],\qquad y\in[0,1],\qquad z\in[0,1]. \]
立方体は軸に整列した直交背景グリッド内に埋め込まれています(図1)。spline gridはAbaqusの有限要素meshとは独立に生成され、立方体の6面すべてが背景離散化をtrimします。
3 材料
立方体は均質・等方で、微小ひずみ線形弾性の材料特性を 表1に示します。Abaqusでは、ヤング率とポアソン比で指定する等方線形弾性として定義し、 Linear Elastic Behavior (Abaqus Materials Guide) [1]に従います。生成されるinput deckでは、これは *ELASTIC optionに対応します。Abaqus Keywords Guideでは、 TYPE parameterを省略すると既定の TYPE=ISOTROPIC 挙動が選択されることを確認できます。 [2].
| 特性 | 値 |
|---|---|
| ヤング率 | \(1\) |
| ポアソン比 | 0 |
4 荷重・境界条件
力またはtractionは作用させません。6つの標準的な一様分布の変位境界条件により、各面の法線方向成分を1つずつ規定します。残りの成分は、交差する面の条件が辺または角で重なる箇所を除き、拘束しません。
| 面 | 規定成分 | 値 |
|---|---|---|
| X-Min | \(U1\) | \(0\) |
| X-Max | \(U1\) | \(1\) |
| Y-Min | \(U2\) | \(0\) |
| Y-Max | \(U2\) | \(2\) |
| Z-Min | \(U3\) | \(0\) |
| Z-Max | \(U3\) | \(3\) |
対向する境界条件により、3座標方向に独立な伸びを与えます。値は順に1、2、3で、対応する方向は \(x\)、 \(y\)、 \(z\).
5 メッシュと離散化
edge-centered background gridでは、要素間隔を \(0.6\) として3方向すべてに適用し、frame originを立方体中心に置きます。各軸のgrid planeは \(-0.4\), \(0.2\), \(0.8\)、 \(1.4\)に位置します。したがって各幾何面はtrimmed boundary elementの内部にあり、一方で要素
\[ [0.2,0.8]\times[0.2,0.8]\times[0.2,0.8] \]
は立方体内部に完全に含まれます。
次数1〜3について許容されるすべての連続性を網羅します。最大平滑spline spaceと連続性を低減したspline spaceの両方を含み、組合せを 表3.
| 次数 | 連続性 | basis class |
|---|---|---|
| \(1\) | \(C^0\) | 最大平滑 |
| \(2\) | \(C^0\) | 連続性低減 |
| \(2\) | \(C^1\) | 最大平滑 |
| \(3\) | \(C^0\) | 連続性低減 |
| \(3\) | \(C^1\) | 連続性低減 |
| \(3\) | \(C^2\) | 最大平滑 |
6ケースすべてで同一の背景要素配置を使用します。次数と連続性は、 図2に示す要素境界を変えずに近似空間だけを変更します。代表的な \(p=2\), \(C^1\) の図では、trimmed Bézier element edgeをCarnation色、CAD edgeを黒で示します。
各面には、441点のmulti-point probeを \(21\times21\) gridとして配置し、面の辺・中心、および投影されたbackground-grid plane \(0.2\) と \(0.8\)を含めます。また、別の \(3\times3\times3\) 内部probeでは27点で6つの応力成分を要求します。各軸の座標は \(0.1\), \(0.5\)、 \(0.9\) であり、立方体中心を含み、trimmed boundary elementと非trimmed内部要素の両方をsamplingします。
変換後のAbaqus modelでは、各trimmed面を SFM3D3 surface elementのelement setと対応するnode setで表現します。testではsurface-element typeを確認したうえで、対応setから最終nodal displacementをjobのAbaqus output databaseから独立に読み取ります。
6 参照解・受理解
解析ではStatic, General stepを使用し、 NLGEOM=OFFとします。Abaqusではこれによりsmall-displacement formulationが選択され、幾何学的非線形性は無視され、element kinematicsは初期形状まわりで線形化され、微小ひずみ尺度が用いられます。詳細は General and Perturbation Procedures (Abaqus Analysis Guide) [3]に記載されています。この設定はkinematic formulationを制御するもので、等方線形弾性の材料定義自体は変更しません。
受理する変位場は
\[ \mathbf{u}(x,y,z) = \begin{bmatrix} x\\ 2y\\ 3z \end{bmatrix}. \]
微小ひずみ尺度については Strain Measures (Abaqus Theory Guide) [4]を用いるため、ひずみtensorは一定で次式となります。
\[ \boldsymbol{\epsilon} = \begin{bmatrix} 1 & 0 & 0\\ 0 & 2 & 0\\ 0 & 0 & 3 \end{bmatrix}. \]
Abaqusの等方線形弾性では [1],
\[ \boldsymbol{\sigma} = \lambda\,\operatorname{tr}(\boldsymbol{\epsilon})\mathbf{I} + 2\mu\boldsymbol{\epsilon}, \qquad \lambda=\frac{E\nu}{(1+\nu)(1-2\nu)}, \qquad \mu=\frac{E}{2(1+\nu)}. \]
ここで \(E=1\) と \(\nu=0\), \(\lambda=0\) と \(\mu=\tfrac12\)なので
\[ \boldsymbol{\sigma} = \begin{bmatrix} 1 & 0 & 0\\ 0 & 2 & 0\\ 0 & 0 & 3 \end{bmatrix}. \]
規定変位gradientは、受理tensor成分を直ちに識別できるよう意図的に大きく設定しています。これは物理的に現実的な大ひずみ材料testを表すものではなく、このstudyでは次の設定で選択される線形化応答を検証します: NLGEOM=OFF.
face-probeとODBのcheckでは、3つの変位成分すべてを受理変位場と比較します。内部probeでは、3つのゼロせん断成分を含む6つの独立応力成分すべてを比較します。
7 結果
表4 に、各強制比較クラスで観測された最大誤差を示します。face-probe列とODB列は6面すべてにわたる最大誤差を集約していますが、基礎となるverification testでは各面を独立に確認しています。
| basis | probe位置の最大絶対誤差 | face probe \(U\) 最大絶対誤差 | ODB surface \(U\) 最大絶対誤差 | 内部 \(S\) 最大絶対誤差 |
|---|---|---|---|---|
| \(p=1,\ C^0\) | \(0\) | \(6.45 \times 10^{-6}\) | \(6.85 \times 10^{-6}\) | \(8.11 \times 10^{-6}\) |
| \(p=2,\ C^0\) | \(0\) | \(13.2 \times 10^{-6}\) | \(13.2 \times 10^{-6}\) | \(32.2 \times 10^{-6}\) |
| \(p=2,\ C^1\) | \(0\) | \(9.89 \times 10^{-6}\) | \(7.05 \times 10^{-6}\) | \(23.3 \times 10^{-6}\) |
| \(p=3,\ C^0\) | \(0\) | \(15.1 \times 10^{-6}\) | \(14.2 \times 10^{-6}\) | \(54.6 \times 10^{-6}\) |
| \(p=3,\ C^1\) | \(0\) | \(7.26 \times 10^{-6}\) | \(7.94 \times 10^{-6}\) | \(11.8 \times 10^{-6}\) |
| \(p=3,\ C^2\) | \(0\) | \(9.67 \times 10^{-6}\) | \(3.93 \times 10^{-6}\) | \(27.8 \times 10^{-6}\) |
7.1 代表結果
図3 は、 \(p=2\), \(C^1\) caseを代表例として、study内の各caseで得られる結果の全体像を示します。形状は計算変位を倍率1で変形表示しています。 \(U_z\) 場は \(0\) ( \(z=0\) )から \(3\) ( \(z=1\))へ増加し、一方、 \(S_{zz}\) はおよそ一様に \(3\)です。orientation triadはview方向を示し、変形後のCAD edgeとtrimmed Bézier element edgeが結果surface上の離散化を示します。
これらのviewにより、期待されるaffine変位解と一定応力解の形は確認できますが、それだけではverificationの根拠として十分に焦点化されていません。以降では、検証した各basisについて境界条件残差と応力残差を示します。
7.2 境界条件残差
trimmed boundaryでは変位条件を弱形式で課すため、個々のsurface点の計算変位が規定値とmachine precisionで一致するとは限りません。その挙動を明確にするため、 図4 に、各面の \(21\times21\) probeにおける規定法線成分の符号付き誤差を示します。残差は「計算変位-規定変位」であり、相対誤差ではなく変位単位の符号付き差です。各tabは1つのspline basisを独立した図として示し、行は \(x\), \(y\)、 \(z\) 方向に対応します。左が最小座標面、右が最大座標面です。各basisには個別の対称color limitを用いて空間誤差分布を見えるようにしています。重ねた線はbackground mesh plane \(0.2\) と \(0.8\) が各面と交差する位置を示します。
7.3 境界法線応力残差
図5 では、同じface probeを用いて対応する法線応力を示します。すなわち、 \(S_{xx}\) ( \(x\) 面)、 \(S_{yy}\) ( \(y\) 面)、さらに \(S_{zz}\) ( \(z\) 面)です。プロットした残差は受理値 \(1\), \(2\)、 \(3\)を基準にそれぞれ算出するため、ほぼ一様な応力場に隠されず空間変動を確認できます。これらは相対誤差ではなく、応力単位の符号付き差です。各basisにはここでも個別の対称color limitを用い、tab選択は境界条件残差図と同期します。
内部grid比較( 表4 )は完全tensor checkのままで、3つの法線成分と3つのせん断成分をすべて含みます。
8 考察
このstudyでは、すべての変位条件をtrimmed boundary element上に配置しつつ、立方体内部には完全に非trimmedな要素を1つ保持します。したがって6面すべてでの一致を確認することで、user subroutineに依存せず、ゼロ・非ゼロの独立な規定成分の変換と適用を検証できます。
Abaqus output databaseとの比較はCoreform IGA probe出力とは独立であり、各名前付きface element setが SFM3D3 個のelementを含むこと、および対応nodeの変位が受理変位場を再現することを確認します。さらに内部gridにより、検証した各degree-continuity組合せで、変位拘束がvolume全体に期待される一定の法線応力とゼロせん断応力を生成することを確認します。
参考文献
付録
8.1 検証対象機能
この表は、現在passしているartifactから生成されます。各行はリンク先のcapability cardのevidence contractを満たす必要があり、test内でcapabilityを宣言しただけではevidenceにはなりません。
| 機能 | evidence level |
|---|---|
| 線形静解析 | 数値検証済み |
| 静的応力解析 | 数値検証済み |
| 境界条件と拘束 | 数値検証済み |
| 規定変位境界条件 | 数値検証済み |
| 線形弾性材料挙動 | 数値検証済み |
| 材料・section assignment | 数値検証済み |
| meshing | 数値検証済み |
| 線形 C0 spline basis | 数値検証済み |
| 2次 C0 spline basis | 数値検証済み |
| 2次 C1 spline basis | 数値検証済み |
| 3次 C0 spline basis | 数値検証済み |
| 3次 C1 spline basis | 数値検証済み |
| 3次 C2 spline basis | 数値検証済み |
| immersed直交mesh | 数値検証済み |
| spline basisの次数と連続性 | 数値検証済み |
| 明示的なfield-output選択 | 数値検証済み |
| field output request | 数値検証済み |
| 応力field output (S) | 実行確認 |
| 変位field output (U) | 数値検証済み |
| 個別field-output変数 | 数値検証済み |
| multi-point probe | 数値検証済み |
| Coreform IGA result probe | 数値検証済み |
| dependent part instance | 数値検証済み |
8.2 artifactのダウンロード
すべてのverification artifactをダウンロード(ZIP)
8.2.1 形状CADファイル
この問題では個別のCAD fileは不要です。形状はAbaqus/CAE journal file内で完全に定義されています。
8.2.2 Abaqus/CAE journal file
生成済みAbaqus/CAE journalを6件利用できます。
6件のjournalを個別表示
- p1c0 — prescribed_displacement_cube_p1c0_model.jnl
- p2c0 — prescribed_displacement_cube_p2c0_model.jnl
- p2c1 — prescribed_displacement_cube_p2c1_model.jnl
- p3c0 — prescribed_displacement_cube_p3c0_model.jnl
- p3c1 — prescribed_displacement_cube_p3c1_model.jnl
- p3c2 — prescribed_displacement_cube_p3c2_model.jnl
8.3 対応Abaqus keyword
以下のdeckは、 \(p=1\), \(C^0\) testのAbaqus input fileからcommentを除去し、instance固有名を次の表記に置換して再掲したものです: <placeholders>.
*Heading
*Preprint, echo=NO, model=NO, history=NO, contact=NO
*Include, input=<iga-mesh-inp>
*System
*Material, name=<material>
*Elastic
1.,0.
*User Output Variables
1,
*Step, name=<step>, nlgeom=NO, inc=1, unsymm=YES
*Static, direct
1., 1.,
*Boundary
<node-set>, 1, 1, 1.
*Boundary
<node-set>, 1, 1
*Boundary
<node-set>, 2, 2, 2.
*Boundary
<node-set>, 2, 2
*Boundary
<node-set>, 3, 3, 3.
*Boundary
<node-set>, 3, 3
*Restart, write, frequency=0
*Output, field
*Node Output
U,
*Element Output, position=AVERAGED AT NODES, directions=YES
S,
*Node Output
U
*Output, history, variable=PRESELECT
*End Step8.4 来歴
以下のrecordは、このページに掲載する各CTest artifactについて、実行環境とverification basisを特定するものです。
| parameter | 値 |
|---|---|
| evidence type | 数値verification |
| CTest結果 | 合格(Release) |
| verification結果 | 合格 — 強制判定基準15/15をすべて通過 |
| test日 | 30-Sep-2026 16:33:27 |
| OS | Ubuntu 22.04.4 LTS |
| Coreform IGA version | 2026.10+70894 |
| source revision | 733d3350b486 |
| Abaqus version | Abaqus 6.26-4 |
| parameter | 値 |
|---|---|
| evidence type | 数値verification |
| CTest結果 | 合格(Release) |
| verification結果 | 合格 — 強制判定基準15/15をすべて通過 |
| test日 | 30-Sep-2026 16:33:25 |
| OS | Ubuntu 22.04.4 LTS |
| Coreform IGA version | 2026.10+70894 |
| source revision | 733d3350b486 |
| Abaqus version | Abaqus 6.26-4 |
| parameter | 値 |
|---|---|
| evidence type | 数値verification |
| CTest結果 | 合格(Release) |
| verification結果 | 合格 — 強制判定基準15/15をすべて通過 |
| test日 | 30-Sep-2026 16:33:27 |
| OS | Ubuntu 22.04.4 LTS |
| Coreform IGA version | 2026.10+70894 |
| source revision | 733d3350b486 |
| Abaqus version | Abaqus 6.26-4 |
| parameter | 値 |
|---|---|
| evidence type | 数値verification |
| CTest結果 | 合格(Release) |
| verification結果 | 合格 — 強制判定基準15/15をすべて通過 |
| test日 | 30-Sep-2026 16:32:55 |
| OS | Ubuntu 22.04.4 LTS |
| Coreform IGA version | 2026.10+70894 |
| source revision | 733d3350b486 |
| Abaqus version | Abaqus 6.26-4 |
| parameter | 値 |
|---|---|
| evidence type | 数値verification |
| CTest結果 | 合格(Release) |
| verification結果 | 合格 — 強制判定基準15/15をすべて通過 |
| test日 | 30-Sep-2026 16:32:45 |
| OS | Ubuntu 22.04.4 LTS |
| Coreform IGA version | 2026.10+70894 |
| source revision | 733d3350b486 |
| Abaqus version | Abaqus 6.26-4 |
| parameter | 値 |
|---|---|
| evidence type | 数値verification |
| CTest結果 | 合格(Release) |
| verification結果 | 合格 — 強制判定基準15/15をすべて通過 |
| test日 | 30-Sep-2026 16:33:19 |
| OS | Ubuntu 22.04.4 LTS |
| Coreform IGA version | 2026.10+70894 |
| source revision | 733d3350b486 |
| Abaqus version | Abaqus 6.26-4 |