Skip to content

Node Features

Wiki Sync edited this page Feb 28, 2026 · 3 revisions

← Home

ノード特徴量 — Node Features for GNN-SHM

最終更新: 2026-03-01 build_graph.py で構築する 34 次元ノード特徴量の詳細説明と、学術・物理的検証。

関連: Dataset-Format | Defect-Physics-Validation


特徴量ビジュアルガイド

全34次元の一覧マップ

FEMノードごとに持つ34個の特徴量。カテゴリごとに色分けして表示。

34次元特徴量マップ

カテゴリ構成とデータソース

左: 9カテゴリの次元数構成。右: データの取得元(Abaqus ODB / メッシュ計算 / 座標計算 / 境界判定)。

カテゴリ構成

欠陥 vs 健全 — GNNが検出に使う信号

青=健全ノード、赤=欠陥ノード。分布がずれている特徴量ほど、GNNが欠陥検出に活用できる。

欠陥vs健全

構築パイプライン

FEM解析 → CSV抽出 → グラフ構築 → GNN入力 の全データフロー。

パイプライン

特徴量の統計サマリとアクティブ率

上: 各特徴量の平均値と標準偏差。下: 非ゼロ率(Dead特徴量 = 0)。

統計サマリ

フェアリング展開図上の物理量分布

フェアリングを展開した2Dマップ上に、変位・応力・温度・欠陥ラベルを表示。

空間分布


1. 概要

H3 フェアリング FEM メッシュの各ノードを GNN の入力とするため、34 次元のノード特徴量を構築する。物理量(応力・変位・温度)と幾何量(法線・曲率・繊維配向・積層角度)を組み合わせ、欠陥検出に必要な情報を網羅する。


2. 特徴量一覧(34次元)

2.1 位置・幾何(10次元)

Dim 特徴量 説明 情報源
0-2 x, y, z ノードの 3D 座標 (mm)。Abaqus Revolve: Y=軸方向、XZ=半径平面 nodes.csv
3-5 nx, ny, nz 表面法線ベクトル。曲面の向きを表現。ガイド波のモード変換に影響 メッシュから計算
6 κ₁ 第1主曲率。曲面の曲がり具合 メッシュから計算
7 κ₂ 第2主曲率 メッシュから計算
8 H 平均曲率 (κ₁+κ₂)/2。波の集束・発散に影響 メッシュから計算
9 K ガウス曲率 κ₁·κ₂。曲面の局所形状 メッシュから計算

物理的意味: フェアリングは円筒+オジーブの曲面。曲率が大きい領域ではガイド波が集束・発散し、欠陥による散乱パターンが変わる。法線は異方性 CFRP の繊維方向との相対関係に寄与。


2.2 変位(4次元)

Dim 特徴量 説明 情報源
10-12 ux, uy, uz 変位ベクトル (mm)。熱膨張・荷重による節点の移動量 ODB (U)
13 u_mag 変位の大きさ √(ux²+uy²+uz²)。1次元にまとめた変位強度 計算 (ux,uy,uz)

物理的意味: デボンディング領域では剛性低下により変位が局所的に増大。健全ゾーンとのコントラストが欠陥検出の主要シグネチャとなる。


2.3 温度(1次元)

Dim 特徴量 説明 情報源
14 temp 節点温度 (°C)。熱荷重 20→120°C 適用時 ODB (NT)

物理的意味: CTE 不整合 (CFRP vs Al) により熱応力が発生。温度分布は熱負荷の適用確認と、将来の温度補償 SHM に必要。


2.4 応力(5次元)+ 熱応力(1次元)

Dim 特徴量 説明 情報源
15-17 s11, s22, s12 応力テンソル成分 (MPa)。面内応力 ODB (S)
18 smises von Mises 等価応力 (MPa)。応力の大きさの指標 ODB (S)
19 principal_stress_sum 主応力和 σ₁+σ₂ = s11+s22 (MPa)。2D 面内応力のトレース 計算 (s11,s22)
20 thermal_smises 熱応力 von Mises (MPa)。CTE不整合に起因する応力成分 extract_odb で計算

物理的意味: 欠陥ゾーンでは荷重伝達が断たれ、応力が低下または再配分される。thermal_smises は CTE 不整合が主要な駆動力である本プロジェクトで欠陥コントラストに直結する。

thermal_smises の現在の実装: 現在のFEMモデルは荷重が 100% 熱荷重(CTE不整合による温度場)のため、thermal_smises = smises として代入している(物理的に等価)。将来、機械荷重(軸圧縮・外圧・音響)を追加した場合は、2ステップ解析(熱のみ → 熱+機械)の差分、または Abaqus の STHERM フィールド分離出力で対応する必要がある。


2.5 ひずみ(3次元)

Dim 特徴量 説明 情報源
21-23 le11, le22, le12 対数ひずみ (LE) の面内成分。損傷と相関が強い ODB (LE, patch_inp で追加)

物理的意味: ひずみは応力と材料定数で関係づけられるが、損傷進展・塑性域では応力より直接的に損傷状態を反映する。ODB に LE 出力があれば抽出。


2.6 繊維配向(3次元)

Dim 特徴量 説明 情報源
24-26 fiber_circum_x, y, z 周方向の単位ベクトル。CFRP の主繊維方向の近似 座標から計算

物理的意味: CFRP は異方性が強く、繊維方向で剛性・波速が異なる。円筒フェアリングでは周方向 (0° 積層) が主方向。ガイド波の伝搬・散乱が繊維方向に依存するため、E(3)-Equivariant GNN 等で重要。

注意: 円筒の周方向を全ノードで近似。積層角度は下記で追加済み。


2.6bis 積層角度(5次元)

Dim 特徴量 説明 情報源
27-30 layup_0, layup_45, layup_minus45, layup_90 [45/0/-45/90]s の4つの積層角度 (rad)。全ノードで同じ モデル定義 (build_graph)
31 circum_angle 周方向角度 θ = atan2(x, -z) (rad)。0° 積層の局所方向 座標から計算

物理的意味: CFRP は [45/0/-45/90]s 準等方性積層。積層角度は laminate 構成を明示。circum_angle はノード位置に応じた 0° 繊維方向の角度で、fiber_circum のスカラー版。


2.7 ノード種別(2次元)

Dim 特徴量 説明 情報源
32 boundary 境界ノードフラグ (0/1)。z 端付近 座標から判定
33 loaded 荷重適用ノードフラグ (0/1) 座標から判定

物理的意味: 境界・荷重付近は応力・変位の勾配が大きく、健全ノードでも異常値になりうる。モデルが境界効果を学習する補助。


3. エッジ特徴量(5-6次元)

Dim 特徴量 説明
0-2 Δx, Δy, Δz 隣接ノード間の相対位置ベクトル
3 距離 ユークリッド距離
4 法線角度 隣接面の法線間角度 (rad)
5 測地線距離 メッシュ上の最短経路長 (optional, 計算重い)

利用: GAT は edge_attr を使用。GCN/GIN/SAGE は現状未使用。


4. 実装状況と今後の課題

4.1 実装済み(以前の候補から追加完了)

候補 状態 備考
主応力和 (σ₁+σ₂) ✅ 追加済 (dim 19) s11+s22 から計算。座標不変量
積層角度 ✅ 追加済 (dim 27-31) [0/45/-45/90]s + circum_angle
thermal_smises ✅ 実装済 (dim 20) 下記注記参照

4.2 thermal_smises の現状と将来対応

項目 内容
現在の実装 thermal_smises = smises(コピー)
物理的正当性 現在のFEMモデルは 100% 熱荷重(CTE不整合)のみなので、全応力 = 熱応力。物理的に等価で正しい
データ品質 ✅ 非ゼロ率 100%、範囲 0.00007–101 MPa。Dead特徴量ではない
将来の課題 機械荷重(軸圧縮・外圧・音響振動)を追加した場合、smises には熱+機械の合計が入るため分離が必要
対応方法 (1) 2ステップ解析: Step-1 熱のみ → Step-2 熱+機械 → 差分で熱応力を分離 (2) Abaqus の STHERM フィールド出力(要 Abaqus/Standard で *OUTPUT, FIELD, VARIABLE=PRESELECT に STHERM 追加)
優先度 Phase 2 で機械荷重を追加するタイミングで対応

4.3 未実装の将来候補

候補 説明 取得方法 優先度
主応力方向 σ₁, σ₂ の方向ベクトル。異方性損傷モードの識別に寄与 s11,s22,s12 から固有値分解で計算
等価ひずみ von Mises 相当ひずみ。損傷の直接的指標 le11,le22,le12 から計算
境界までの距離 最近傍境界までの測地線距離。境界効果の連続的表現 メッシュ上の最短経路
反力 (RF) 境界ノードの反力。拘束条件の影響 ODB (RF)
塑性ひずみ (PE) 塑性変形の履歴。非線形解析時のみ ODB (PE)
ひずみエネルギー密度 損傷・疲労の統合指標 σ:ε から計算
機械荷重分離 軸圧縮・外圧・音響による応力成分 2ステップ解析の差分 中(Phase 2)

5. 実装・互換性

  • build_graph.py: 34 次元を構築。既存データ(u_mag, thermal_smises, le11-12 なし)でも動作(0 または計算で補完)
  • extract_odb_results.py: u_mag, thermal_smises, le11, le22, le12 を nodes.csv に出力
  • patch_inp_thermal.py: Element Output に LE を追加(S, LE, TEMP)
  • 正規化: prepare_ml_data で Z-score 適用。新特徴量も同様に正規化

6. 学術・物理的検証

全特徴量の学術的正しさを検証した結果。文献: 連続体力学、微分幾何、Abaqus ドキュメント。

6.1 応力: σ₃ (s33) を使わない理由

項目 内容
要素タイプ S4R 等のシェル要素は 平面応力 (plane stress) を仮定
σ₃ の定義 平面応力では σ₃ = 0(板厚方向の応力はゼロ)が定義
Abaqus 出力 val.data = (S11, S22, S33, S12, S13, S23)。S33 は板厚方向で、薄肉シェルでは ≈ 0
結論 σ₃ を加えても主応力和は変わらない。面内成分 s11, s22, s12 で十分

参考文献: Continuum Mechanics (principal stress), Abaqus Shell Element Overview

6.2 主応力和 (principal_stress_sum) の正しさ

項目 内容
定義 σ₁ + σ₂ = s11 + s22(2D 面内応力のトレース)
不変量 トレースは座標変換に対して不変。任意の直交座標系で同じ値
2D 平面応力 σ₁, σ₂ = (s11+s22)/2 ± √[((s11−s22)/2)² + s12²] より、σ₁+σ₂ = s11+s22
実装 principal_stress_sum = stress_tensor[:,0] + stress_tensor[:,1]

参考文献: eFunda Plane Stress Principal, continuummechanics.org

6.3 全特徴量の検証一覧

特徴量 学術的正しさ 備考
x, y, z 標準的な 3D 座標
nx, ny, nz 面積重み平均の法線。微分幾何の標準
κ₁, κ₂, H, K 離散 Weingarten 写像による主曲率。H=(κ₁+κ₂)/2, K=κ₁κ₂
ux, uy, uz 変位ベクトル。FEM 標準
u_mag |u| = √(ux²+uy²+uz²)。ユークリッドノルム
temp 節点温度。熱伝達・熱応力の標準入力
s11, s22, s12 2D 面内応力成分。Abaqus 標準 (S)
smises von Mises 等価応力。延性材料の降伏基準
principal_stress_sum σ₁+σ₂ = s11+s22。2D トレース不変量
thermal_smises 現モデルは100%熱荷重のため smises と等価。混合荷重時は要分離
le11, le22, le12 対数ひずみ (Logarithmic Strain)。Abaqus LE 標準
fiber_circum 円筒周方向の近似。積層角度と併用で補完
layup_angles [0, 45, -45, 90] deg in rad。モデル定義と一致
circum_angle θ = atan2(x, -z)。0° 積層の局所方向角
boundary, loaded 境界・荷重の幾何的判定。補助特徴量

6.4 補足: 3D の場合

3D ソリッド要素を使う場合、第1応力不変量は I₁ = σ₁+σ₂+σ₃ = s11+s22+s33。本プロジェクトはシェル要素のため σ₃≈0 で、s11+s22 で正しい。


7. 関連

ページ 内容
Dataset-Format CSV・PyG 形式
Defect-Physics-Validation 物理量検証
Architecture GNN アーキテクチャ
Cutting-Edge-ML E(3)-Equivariant 等の特徴量要件

Clone this wiki locally