形状リカバリーツール - OSSmooth
構造最適化によって得られた結果を、設計プロセスおよびFEA再解析において使用するための形状情報に戻すことのできる半自動化された形状リカバリーソフトウェア。
OSSmoothはHyperMeshに組み込まれています。
OSSmoothは、以下の3通りの方法で使用できます:OSSmooth for geometry、FEA topology reanalysis、FEA topography reanalysis。
- トポロジー最適化結果を基に、等密度境界サーフェス(アイソサーフェス)作成
- トポグラフィー最適化結果を基に、設計サーフェス上にビードを作成
- 形状最適化からの結果形状を復元し、スムーズ化
- 所定の三角パッチの集合の中で小さなパッチを結合することで、サーフェスデータ量を減らすことができます。
- 三角パッチとしてなめらかなサーフェスデータを生成できます。
- 複数の設計コンポーネントについてのコンポーネントの境界の保持
- 非設計空間周りの要素の人工的な層あり/なしの形状リカバリー
- 'by property'(プロパティ毎)によるアイソサーフェスのテトラメッシュ
- 形状リカバリーに際し、再解析を素早く行うための境界条件の保持
これらOSSmoothの3つの機能のそれぞれに対応するサブパネルが、HyperMeshのOSSmoothパネルに用意されています。OSSmoothは通常、トポロジー、トポグラフィーおよび形状最適化結果を解釈することによる形状リカバリーに使用され、FEA topologyとFEA topographyは、FEA再解析のための境界条件と共にリカバーされた形状を生成するために使用されます。
OSSmoothが稼働するためには、パラメーターファイル(通常、ファイル拡張子.ossを有する)が必要です。このパラメータファイルは、HyperMeshのOSSmoothパネルで生成するか、もしくはテキストエディタを使って手動で作成できます。最適化の実行が完了すると、OptiStructは、最適化実行のタイプに応じたデフォルト設定を含むOSSmoothパラメーターファイル<prefix>.ossを自動的にエクスポートします。
パラメーターファイルに加え、OSSmoothは、OptiStruct実行で用いる入力ファイル(<prefix>.fem)、結果ファイルの1つである形状ファイル(<prefix>.sh)、および/または節点ファイル(<prefix>.grid)も必要とします。節点ファイル<prefix>.gridにはトポグラフィー最適化または形状最適化後の節点の位置情報が記述されており、これらの最適化の実行後に出力されます。形状ファイル<prefix>.shには、トポロジー最適化の要素密度情報が記述されており、トポロジー最適化の実行後に出力されます。
FEA topologyの場合、実行に先駆けて入力モデル(<prefix>.fem)がHyperMeshに読み込まれる必要があり、その点がOSSmoothとは異なります。また、トポロジー最適化によって生成された形状ファイル(<prefix>.sh)も必要です。非設計要素の処理には、形状リカバリーのための2つのオプション(Keep smooth narrow layer aroundとSplit all quads)が用意されています。
OSSmoothにより解釈された設計は、IGESサーフェス、STLファイル、または Config panel Hyper3Dファイルとして、バルクデータフォーマットの有限要素メッシュとしてエクスポートすることが可能です。
パラメーターファイル
OSSmoothパラメータファイルは、幾つかのパラメータステートメントで構成されています。
parameter_name arg1,arg2,...,argn
parameter_name
と引数は、スペースまたはコンマで区切られます。
パラメータファイルでは、大文字と小文字が区別されません。
OSSmoothパラメータファイルのコメント行は、’#’または’$’で始まらなければなりません。
input_file
- OSSmoothによって最適化結果が形状化されるファイルを特定します。
output_file
- OSSmoothにより出力されるファイルの名称
output_code
- 出力のタイプを特定します。
units
- IGESフォーマットの出力単位を定義します。この情報はIGESファイルのヘッダに書き込まれるので、CADシステムで認識できます(使用するCADシステムの種類によります)。
- 引数
- 内容
- 1(デフォルト)
- インチ
- 2
- mm
- 4
- フィート
- 6
- m
- 10
- cm
autobead
- 自動形状作成およびリメッシングを適用することで、トポグラフィー最適化から復元された形状を改良します。
- 引数
- 内容
arg1
- 操作フラグ [整数値]:
arg2
- 自動ビード作成用のしきい値
arg3
- ビード層 [整数値]:
isosurface
- 自動形状作成の適用により、トポロジー最適化結果からしきい値のサーフェスを生成します。
- 引数
- 内容
arg1
- 操作フラグ [整数値]:
arg2
- 作成されるサーフェスのタイプ [整数値]:
arg3
- アイソサーフェス作成用のしきい値
opti_smoothing
- 最適化ベースのスムージング [isosurface C2=1が使用される場合のみ]
- 引数
- 内容
arg1
- 単位なしのサーフェス距離係数
arg2
- 設計空間のスムージングフラグ [整数値]:
laplacian_smoothing
- ラプラシアンスムージング [isosurface C2=3が使用される場合のみ]
- 引数
- 内容
arg1
- ラプラシアンスムージングの反復計算数
arg2
- フィーチャー角度のしきい値(単位=度)
arg3
- 設計空間のスムージングフラグ [整数値]:
remesh
- 自動ビードサーフェスおよび/またはアイソサーフェスフラグをリメッシュ [整数値]:
- 引数
- 内容
-
- 0
- リメッシュなし
- 1
- リメッシュあり
surface_reduction
- 形状を表わすサーフェスの数を削減します。サーフェス数は80%まで削減できます。
- 引数
- 内容
arg1
- サーフェス削減フラグ [整数値]:
arg2
- フィーチャー角度のしきい値(単位=度)
pure_surface_smoothing
- サーフェスのスムージングのみを行います。
- 引数
- 内容
arg1
- 純粋なサーフェスへのスムージングフラグ [整数値]:
arg2
- 反復計算回数 [G1=2の使用時のみ]
arg3
- フィーチャー角度のしきい値(単位=度) [G1=2の使用時のみ]
pure_surface_reduction
- サーフェスの削減のみを行います。
- 引数
- 内容
arg1
- 純粋なサーフェス削減フラグ [整数値]:
arg2
- フィーチャー角度のしきい値(単位=度)
入力ファイルの例
- パラメータ
- 内容
input_file example
- 入力ファイルのルートを例として認識します。したがって、OSSmoothはファイルexample.fem、example.gridおよびexample.shを探します。
output_file
example.stl
- 結果の出力はexample.stlとなります。
output_code 3
- 出力は、stereolithographyフォーマットになります。
Autobead 1 0.3 1
- トポグラフィー結果は、しきい値30%で自動ビード機能を使って形状化され、1層のビードを作成します。
Isosurface 1 3 0.3
- トポロジー結果は、密度値30%の等密度境界サーフェスを作成することにより形状化され、ラプラシアンスムージングを使ってスムージングします。
laplacian_smoothing 10 30 1
- ラプラシアンスムージングは、10回の反復計算を行い、30度のフィーチャー角度を考慮し、スムージングで境界を含めます。
Remesh 1
- メッシュの移行をスムーズにするために、復元された形状周りの2列の要素がリメッシュされます。
OSSmoothの実行
HyperMesh OSSmoothパネルから
トポロジー最適化結果のリカバリー
この機能の目的は、OptiStructで実行したトポロジー最適化の体積密度情報に基づき、等密度サーフェスを生成することです。
#general parameters
input_file mattel
output_file mattel.stl
output_code 3
#specific parameters
isosurface 1 3 0.300
laplacian_smoothing 10 30.000 1
surface_reduction 1 10.000
パラメーターlaplacian_smoothing
は、追加のスムージングに使用されます。ほとんどの場合は、サーフェスのしきい値を設定(isosurface with second argument 0
)するだけで形状がスムージングされます。追加スムージングを指定すると(isosurface with second argument 3
)、OptiStructから提示されたトポロジーが維持されます。ただし、このトポロジーは、指定の密度分布とは異なるものになる可能性があります。このオプションを使用する場合は、OSSmoothによって出力される最大および平均のスムージングエラーを確認してください。surface_reduction
パラメーターは、要素数(サーフェス数)を減らすために使用されます。
ラプラシアンスムージング
トポロジー最適化の結果のスムージングに使用されます。
laplacian_smoothing
ステートメントを使用すると、ラプラシアンスムージング実行時の反復計算回数と、コーナーでの法線の不連続性を維持するためのフィーチャー角度のしきい値を制御できます。OSSmoothパラメータファイル内で下記とおりパラメータが設定されたスムージングの結果を以下に示します。#general parameters
input_file surf
output_file surf.stl
output_code 3
isosurface 1 3 0.300
#specific parameters
laplacian_smoothing 10 30.000 1
laplacian_smoothing
ステートメントには、次のような利点があります:- スムージング反復計算の回数を柔軟に制御し、さまざまなレベルのスムージングを実現できます(場合によっては鋳造可能なレベルのスムージング品質を得ることも可能)。通常、反復計算の回数は5~20です。
- フィーチャー角度設定を有するアイソサーフェスのスムーズな境界作成は、スムージングプロセスにシームレスに組み入れられています。これは、純粋なCADシステムでは困難です。
トポグラフィー最適化結果のリカバリー
OSSmoothの自動ビード機能では、OptiStructトポグラフィー最適化を1層または2層のビードとしてリカバリーします。
#general parameters
input_file decklid
output_file decklid.fem
output_code 1
#specific parameters
autobead 1 0.300 1
remesh 1
#general parameters
input_file decklid
output_file decklid.nas
output_code 1
#specific parameters
autobead 1 0.300 2
形状最適化結果、サーフェス削減およびサーフェススムージング
OSSmoothは、サーフェスのスムージングや領域サーフェスの削減に使用することも可能です。この目的には、パラメーターステートメントpure_surf_reduction
およびpure_surf_smoothing
が使用できます。
input_file
によって定義されたファイルがOptiStruct内にある必要があります。また、OSSmoothはモデルのサーフェスまたは領域サーフェスをスムージングできます。
#general parameters
input_file surf
output_file surf.stl
output_code 3
#specific parameters
pure_surf_smoothing 2 10 30.000
pure_surf_reduction 1 10.000
再解析のためのFEA Topology
この機能の目的は、トポロジー最適化からの体積密度情報に基づき、等密度サーフェスを生成することです。
3次元モデルのテトラメッシングおよび境界条件の継承により、FEA topologyからの結果を使って再解析を素早く行うことが可能です。
FEA topology のサポートは、1次および2次のシェル要素とソリッド要素で利用可能です。3次元モデルに関しては、リカバリーされたアイソサーフェスからプロパティ毎に自動的にテトラメッシングされます。FEA topologyには、非設計要素の処理用に2つのオプション、Keep smooth narrow layer aroundおよびSplit all quadsが用意されています。Keep smooth narrow layer aroundでは、変換において非設計空間周りに要素の人工的な層を保持します。一方、Split all quadsでは、非設計空間内に四角形要素が存在する場合はそれらを分割し、設計空間と非設計空間との間にテトラ(四面体)の結合を生成します。最終的に、FEA topologyは、元のモデル(<prefix>.fem)からの境界条件を継承することによって、それらを保持します。形状リカバリー後に節点 / 要素に付加されない境界条件は、再解析を確実にするために削除されます。
file | block |
density threshold | 0.300 |
Keep smooth narrow layer around | off |
Split all quads | on |
- テトラメッシュはプロパティ毎に実行可能
- テトラメッシングがたまに上手くいかない場合、密度のしきい値を変化させることにより、テトラメッシュの再トライの数を制御する柔軟性
再解析のためのFEA Topography
OSSmoothのFEA topographyオプションでは、OptiStructトポグラフィー最適化からの結果を1層または2層ビードとして解釈し、形状の抽出に際し境界条件をリカバーします。
Grid file | brkt |
Threshold | 0.300 |
Layers | 1 |
Grid file | brkt |
Threshold | 0.300 |
Layers | 2 |