フリー形状最適化

Altair Engineering, Inc.によって開発された独自仕様の特性最適化テクニックを使用します。フリー形状最適化には、従来のタイプとフリー形状の頂点モーフィングの2つのタイプがあります。

フリー形状最適化の本質的な観念は、他の形状最適化技術とは異なり、外側境界(形状輪郭線)の許容動作(変形)は自動的に決定され、形状基底ベクトルを定義するユーザーの負担を軽減します。

フリー形状設計領域は、DSHAPEバルクデータエントリで定義します。
  • 従来のフリー形状最適化(TYPE=CLASSIC

    フリー形状設計領域は、構造(シェル構造のエッジまたはソリッド構造のサーフェス)上の節点によって認識されます。これらの節点は、DSHAPEエントリ上でリストされます。

    構造の外側境界は、予め定義された目的関数および制約条件を満たすように変更されます。これらの設計節点が下記のいずれかの方法で動くことができます:
    1. シェル構造の場合: 節点は接平面内のサーフェスエッジに垂直に動きます。
    2. ソリッド構造の場合: 節点はサーフェスに垂直に動きます。

    フリー形状最適化の間に、法線方向は構造の形状変化と共に変化し、各繰り返し計算で、設計節点は更新された法線に沿って動きます。

  • フリー形状の頂点モーフィング最適化(TYPE=VERTEXM

    形状の頂点モーフィング最適化は、Bletzinger博士とその共同研究者によって導入されました。1 この方法では、すべてのFEメッシュ節点の頂点が設計変数として扱われます。ユーザー定義のフィーチャーサイズ半径内で機能結合節点をフィルタリングすることにより、形状が平滑化されます。CLASSICの定式化に比べ、GRIDオプションでは設計自由度が大きく高まります。また、シェル構造の平面内形状の変化のみに対応可能という従来のフリー形状定式化での制限も解除されます。ただし、関与する設計変数の数が非常に多くなるため、VERTEXM手法の計算の手間が非常に大きくなる可能性があります。この定式化では、随伴法による感度解析が導入されています。したがって、ユーザーは、含めるアクティブな制約条件の数を、トポロジー最適化の適用と同程度にすることが重要です。

    フリー形状の頂点モーフィング最適化では、最適化設計空間を次のように定義できます:
    • シェルの場合 – 設計空間全体の節点を選択できます。シェル設計領域のエッジ節点のみにする必要はありません。
    • ソリッドの場合 – 節点は、ソリッド設計空間のサーフェスで選択する必要があります。内部節点が選択されても、これらは設計変数の作成で無視されます。
      注: 内部ソリッド節点のみが選択されている稀なケースでは、実行がエラーになります。

フリー形状設計領域の定義

理想的には、フリー形状設計領域は、構造の形状が関連する応答に最も影響を及ぼすと仮定し得る箇所に選択されるべきです。

例えば、目的関数が応力の低減である場合、応力の大きい領域の節点を選択するのは適切です。

フリー形状設計領域は、形状が独立して変化することが望ましい構造上の異なる位置に定義されるべきです。ソリッド構造については、特徴線がフリー形状設計領域の自然境界を定義する場合が多くあります。フリー形状設計領域内に特徴線を含むことは、最適化中に特徴線をスムーズ化することを目的にしていない限り、避けるべきです。同様にシェル構造においても、鋭角コーナーをスムーズ化する意図がない限り、フリー形状設計領域内に鋭角コーナーを含むべきではありません。

DSHAPEカードは、以下に示すGRID継続カードによって設計領域を認識します。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  GRID GID1 GID2 GID3 GID4 GID5 GID6 GID7
    GID8 GID9 同様 同様      
フリー形状設計領域は、エッジの節点群を選択することによってプレートの湾曲エッジ上に定義されています。節点群は、接平面上で法線方向に自由に動くことができます。

FSregion1
図 1.
フリー形状設計領域は、フェイス面の節点群を選択することによってソリッド構造のサーフェス上に定義されています。節点群は、サーフェスに垂直に自由に動くことができます。

FSregion2
図 2.

フリー形状パラメータ

フリー形状設計領域が変形する方法に影響を及ぼすパラメーターには、方向タイプ、移動係数、メッシュスムージングのための層数、縮小の最大値および拡大の最大値の5つがあります。

方向タイプ

方向タイプは、フリー形状設計領域の移動の方向に一般的な制約条件を与えます。方向タイプは以下のとおり、DSHAPEエントリのPERT継続行のDTYPEフィールドで定義されます。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  PERT DTYPE MVFACTOR NSMOOTH MXSHRK MXGROW SMETHOD NTRANS  
DTYPEには下記の3つの異なるオプションがあります:
GROW
節点は、初期製品境界の内側に動くことができません。
SHRINK
節点は、初期製品境界の外側に動くことができません。
BOTH
節点は制約されません。

fsgrow
図 3. GROW

fsshrink
図 4. SHRINK

fsboth
undeformed_blueline
変形前
def_redline
変形後
図 5. BOTH

移動係数

フリー形状設計領域を定義する節点群の1回の反復計算内で許容され得る最大移動は、以下のように指定されます:
MVFACTOR * mesh_size
ここで、
"mesh_size"
同じDSHAPEカード内で定義されている設計領域の平均メッシュサイズです。
MVFACTORは、DSHAPEエントリのPERT継続行で定義されます。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  PERT DTYPE MVFACTOR NSMOOTH MXSHRK MXGROW SMETHOD NTRANS  
MVFACTORのデフォルトの値は0.5です。MVFACTORが小さいほど、フリー形状最適化の実行スピードは落ちますが、より安定します。逆に、MVFACTORが大きければ、フリー形状最適化の実行スピードは上がりますが、安定性は低下します。

fsmovefactor
図 6.
MVFACTORは、1回の反復計算での最大移動に影響を及ぼします。
blue
変形前の形状
green
MVFACTOR = 0.5(デフォルト)での反復計算1における形状
red
MVFACTOR = 1.0での反復計算1における形状

メッシュスムージングのための層数

フリー形状最適化では、設計領域を定義する節点群に隣接した内部節点群は、メッシュの歪みを回避するために移動されます。メッシュスムージングバッファに含まれるべき節点群の層数は、DSHAPEエントリのPERT継続行のNSMOOTHフィールドで定義することができます。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  PERT DTYPE MVFACTOR NSMOOTH MXSHRK MXGROW SMETHOD NTRANS  
NSMOOTHのデフォルトの値は10です。NSMOOTHが大きいほど、スムージングバッファはより大きくなり、メッシュの歪みはより良く回避されますが、最適化のスピードは遅くなります。

fsnsmooth5
図 7. =5: 5層の節点群が設計境界に沿って動きます

fsnsmooth1
図 8. =1: 1層の節点群のみが設計境界に沿って動きます

縮小と拡大の最大値

縮小と拡大の最大値は、フリー形状設計領域の変形の総量を制限するシンプルな方法を提供します。これらのパラメータは、DSHAPEエントリのPERT継続行で定義されます。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  PERT DTYPE MVFACTOR NSMOOTH MXSHRK MXGROW SMETHOD NTRANS  
設計領域は、MXSHRK(縮小方向のオフセット)とMXGROW(拡大方向のオフセット)の2つのバリアを形成するためのオフセットです。設計領域はここで拘束され、これらの2つのバリア間で変形します。

mxshrk
図 9. 最大拡大/縮小距離によって定義された変形空間

詳細および例については、後述のメッシュバリア制約条件の項をご参照ください。

遷移ゾーン内の節点に対する付加的な取り扱い

システムのサーフェスまたはエッジ全体が設計ゾーンではなく、設計領域と非設計領域の両方が相互に隣接して存在している場合、遷移を滑らかにするために役立つNTRANSを使用して、遷移ゾーンを定義できます。設計領域では最適化中に急激な変化が発生する可能性があり、非設計領域に最も近い設計領域のセクションが遷移ゾーンに指定されます。そこでは、設計領域から非設計領域への滑らかな遷移が可能になるように、隣接する非設計領域の対応する位置が考慮されます。

NTRANSは、非設計領域への遷移ゾーン内のグリッド層の数を定義します。ここで滑らかな遷移を作り出すために付加的な取り扱いが適用されます。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  PERT DTYPE MVFACTOR NSMOOTH MXSHRK MXGROW SMETHOD NTRANS  

ntrans
図 10. 設計領域と非設計領域の間の滑らかな遷移のための遷移ゾーンの節点の定義(NTRANS=3)
結果として最適化された設計は、遷移ゾーンの節点を移動するときに非設計領域の効果を組み込み、滑らかな最終設計に到達します。上記の図に示された3つの領域は、次のハイライト表示された節点で構成されます。
  • 非設計節点(黄色い円で表示)。これはフリー形状最適化の間には移動しません。
設計節点は次の2つのグループに分かれます:
  • 遷移ゾーン内の設計節点遷移ゾーン内の設計節点(赤色の円で囲まれてハイライト表示された節点で、NTRANS=3によって定義される)
  • 遷移ゾーン以外の設計節点(黒色の円で囲まれてハイライト表示された節点)
遷移ゾーン内の設計節点はフリー形状最適化の間に調整され、“(1)非設計節点”と“(3)遷移ゾーン以外の設計節点”の間の滑らかな遷移を構築します。そうでない場合、不連続なセクションや鋭いセクションが発生する場合があります。このことは図 11で説明できます。

ntrans2
図 11. 設計領域と非設計領域の間の滑らかな遷移のための遷移ゾーンの節点の定義(NTRANS=3)

設計領域内の節点の制約

フリー形状設計領域内のいくつかの節点について追加の制約条件を特定することは可能です。

指定した節点群に3つのタイプの制約条件を使用することができ、DSHAPEエントリのGRIDCON継続行のCTYPE#によって定義されます。
FIXED
フリー形状最適化の故に、節点は動くことができません。
DIR
節点は、指定されたベクトルに沿って動くよう強制されます。
NORM
節点は、指定したベクトルが法線方向を定義するプレーン上に留まるよう強制されます。
注: VECTORは、節点がラインに沿って動くよう制約するために使用されます。したがって、ベクトルを180度回転させても違いはありません。
制約条件は、GRIDCON継続行で以下のように定義されます:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  GRIDCON GCMETH GCSETID1 /

GDID1

CTYPE1 CID1 X1 Y1 Z1  
    GCMETH GCSETID2 /

GDID2

CTYPE2 CID2 X2 Y2 Z2  

例: CTYPE=VECTOR

この例は、予め定義された方向に節点が動くよう強制するために"DIR"制約タイプを使う必要のある簡単なケースを説明するものです。

フリー形状最適化は、穴のあいた四角形プレートの4分の1モデルについて実行されます。

fsEx1
図 12.
湾曲エッジは、フリー形状設計領域です。フリー形状設計領域に対する制約がないと、湾曲エッジの終端の節点は、真っ直ぐなエッジのラインにぴったり沿ってではなく、多少外側に動きます。

fsEx2
図 13.
この現象を回避するために、湾曲エッジの終端の節点(下の図で黄色で示す節点)を両方共、赤い矢印で示すベクトルに沿って動くよう制約します。

fsEx3
図 14.
これらの制約条件を使用し、コーナー節点が制約された方向に動くと、湾曲エッジの終端の節点は希望どおり、真っ直ぐなエッジのラインに沿って動くようになります(下の図参照)。

fsEx4
図 15.

例: CTYPE=PLANAR

梁のフリーエンド位置における荷重方向の変位制約下で、片持ち張りの全体積を最小化します。

fsEx5
図 16.
この例では、2つのフリー形状設計領域が定義されます。梁の垂直な面は共に設計領域として選択され、フリー形状最適化が実行されます。

fsEx6
図 17.
フリー形状設計領域の制約なしでは、梁の上部と下部のサーフェスはX-Z面上に厳密には留まりません。

fsEx7
図 18.
上部と下部のサーフェスはX-Z面上に確実に留まるようにするためには、設計領域DSHAPE1およびDSHAPE2のエッジに沿った節点群がX-Z面上のみで動くよう制約します。

fsEx8
図 19.
これらの制約条件を使用し、節点群がX-Z面上のみで動くよう制約すると、梁の上部と下部のサーフェスは希望どおり、X-Z面上に留まります。

fsEx9
図 20.

1 Plane対称性制約条件

この制約条件の利点は、初期メッシュ、荷重または境界条件に関係なく、対照的な設計が可能になる点です。

対称性のある設計を行うことが求められる場合がよくあります。荷重および境界条件が完全に対称であっても、結果の設計が完全に対称であることは保証できません。対称設計を確実にするには、対称性制約条件を定義する必要があります。

対称性制約条件は、PATRN継続行で定義されます:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  PATRN TYP AID/

XA

YA ZA FID/

XF

YF ZF  

例:2次元の1-plane対称性制約条件の例

目的は、フリー形状最適化を使用し、応力の制約条件下、全体積を最小化することです。結果は、対称性制約条件を用いた場合と用いない場合について、示されています。

1_pln_symma
図 21. フリー形状設計節点を示す2次元モデル

1_pln_symmb
図 22. 対称性制約条件を用いない場合の結果

1_pln_symmc
図 23. 対称性制約条件(XZ面)を用いた場合の結果

例:3次元の1-plane対称性制約条件の例

目的は、フリー形状最適化を使用し、体積の制約条件下、コンプライアンスを最小化することです。結果は、対称性制約条件を用いた場合と用いない場合について、示されています。

3d_freea
図 24. フリー形状設計節点を示す3次元モデル

3d_freeb
図 25. 対称性制約条件を用いない場合の結果

3d_freeb
図 26. 対称性制約条件(XZ面)を用いた場合の結果

押し出し制約条件

フリー形状最適化で押し出しの製造性制約条件を適用することにより、初期メッシュ、荷重、境界条件に関係なく、一定の断面を持つソリッドモデルの設計が可能です。

指定したパスに沿って一定の断面を持つような設計を生成することが必要な場合がよくあります。特に、押し出しプロセスで製造する部品がこの状況に該当します。

押し出しの制約条件は、EXTR継続行で定義されます:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  EXTR ECID XE YE ZE        

フリー形状最適化には、直線と円形の2つの押し出しパスタイプがあります。

例:直線に沿った押し出し制約条件

FEモデル、最適化問題および設計変数定義は、前述の例と同じです。したがって、押し出し制約条件なしの結果は上記と同じになります。押し出し制約条件(直線)を使用した結果を以下に示します。

xextrusion
図 27. 押し出しパス(X軸に沿った)を用いた結果

例:円形パスに沿った押し出し制約条件

目的は、フリー形状最適化を使用し、体積の制約条件下、フォンミーゼス応力を最小化することです。円形の押し出しパスは、円形座標系( θ 方向)を使って定義されます。結果は、対称性制約条件(円形)を用いた場合と用いない場合について、示されています。

free_grids
図 28. フリー形状設計節点を示すモデル

free_gridsb
図 29. 押し出しパスを用いない場合の結果

free_gridsc
図 30. 押し出しパス(円形)を用いた場合の結果

型抜き方向制約条件

型抜き方向制約条件は、最適化された形状でダイを指定の方向にスライドさせることが可能となるよう、設計領域について定義することができます。

鋳造プロセスでは、ダイのスライド方向に開かずに並んでいる空洞状の形状というものは実現不可能です。各設計領域(各DSHAPEカードで定義)について1つのダイのみが考慮され、非設計領域はこの制約条件について考慮されません。

型抜き制約条件は、DRAW継続行で定義されます:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  DRAW DTYP DAID/

XDA

YDA ZDA DFID/

XDF

YDF ZDF  

例:型抜き方向制約条件

FEモデル、最適化問題および設計節点定義は、前述の3次元の1-plane対称性制約条件の例と同じです。

drawdircon
図 31. 型抜き制約条件(Y軸に沿った)を用いた場合の結果

例:1-plane対称性制約および型抜き方向制約を組み合わせた例

FEモデル、側面制約条件最適化問題および設計節点定義は、前述の3次元の1-plane対称性制約条件の例と同じです。

drawdirand1plane
図 32. 型抜き方向制約(Y軸)と対称性制約(XY面)を共に用いた場合の結果

側面制約条件

側面制約条件では、変形空間を成分の範囲として定義できます。

PERT継続行で定義される最大縮小および最大拡大パラメータと同様、側面制約条件によって設計領域の変形の総量を制限することが可能です。側面制約条件では、変形空間を成分の範囲、すなわち(x1, y1, z1)および(x2, y2, z2)として定義することが可能です。これらの範囲は、直交、円筒または球座標系のいずれかに関してです。

例:側面制約条件

目的は、フリー形状最適化を使用し、体積の制約条件下、フォンミーゼス応力を最小化することです。結果は、側面制約条件を用いた場合と用いない場合について、示されています。

side_cona
図 33. 半径R1およびR2(円形座標系の1方向)により定義された側面制約条件を示すモデル

side_conb
図 34. 側面制約条件を用いない場合の結果

side_conc
図 35. 側面制約条件を用いた場合の結果

メッシュバリア制約条件

メッシュバリアは特別なシェル要素群(BMFACE)で構成され、計算の手間を最小限に留めるため、その定義には出来る限り少数の要素が使用されるべきです。

縮小および成長パラメーターと側面制約条件は別として、設計領域の変形の総量を制限するためのより一般的な機能は、メッシュバリア制約条件を定義することにより利用できます。

メッシュバリアは、BMESH継続行で定義されます。
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
  BMESH BMID              

例:メッシュバリア制約条件

FEモデル、最適化問題および設計節点定義は、前述の3次元の1-plane対称性制約条件の例と同じです。メッシュバリア(大きい赤色の三角形要素)が追加されます。

model_w_mesh
図 36. メッシュバリアを有したモデル

results_wo_mesha
図 37. メッシュバリア制約条件を用いない場合の結果

results_w_mesha
図 38. メッシュバリア制約条件を用いた場合の結果

results_combined_mesh
図 39. メッシュバリア制約条件と1-plane対称性制約条件を組み合わせて用いた場合の結果

これらの結果より、メッシュバリアがどのようにモデルの変形を制約するかを確認することができますが、メッシュバリアが十分大きくない場合、設計領域の変形はこの制限を越えては制約されません。

例:最大縮小および拡大パラメータ

FEモデル、最適化問題および設計節点定義は、前述の3次元の1-plane対称性制約条件の例と同じです。加えて、最大縮小および拡大パラメータ(2.0)と1-plane対称性制約条件(XZ面)が定義されています。

res_shrk_gra
図 40. 縮小および拡大パラメータを用いた場合の結果. 最大拡大距離 = 2.0; 最大縮小距離 = 2.0

res_shrk_grb
図 41. 縮小および拡大パラメータと1-plane対称性制約条件(XZ-面)を用いた場合の結果. 最大拡大距離 = 2.0; 最大縮小距離 = 2.0

コメント

  1. 複数の制約条件が同じ設計領域について定義されている場合、最適化エンジンは、異なるすべての制約条件を満足するようベストを尽しますが、それらすべての条件を整合させることができない場合もあります。
  2. メッシュバリア、最大拡大および縮小、または側面制約などの制約条件が構造パート間の干渉を回避するために適用される場合、ユーザーは、製造上の許容値および構造変形のもとで、余裕が保証されるよう制約条件を定義する必要があります。すなわち、バリアのサーフェスは、干渉する可能性のあるパートからのオフセットを含まなくてはなりません。
1 KU Bletzinger 2014, Regularization of shape optimization problems using FE-based parametrization.Struct.Multidisc Optim.
2 M Firl, R Wüchner, KU Bletzinger 2013, Regularization of shape optimization problems using FE-based parametrization.Struct.Multidisc Optim.
3 M Hojjat, E Stavropoulou, KU Bletzinger 2014, The vertex morphing method for node-based shape optimization.Comp Meth Appl Mech Eng.