CAEデータ処理サンプル事例:CAE結果をExcelに出力
バイナリファイルから指定した出力項目をExcelに書き出し
Altair ComposeはグラフプロットツールHyperGraphと同様のCAEリーダを搭載しています。これにより、CAE計算結果のバイナリファイルの構成を自動で認識し、値を読み込むことが可能です。
Abf(Altair Binary Fomat)形式サンプルスクリプトを示します(stc_hg2xlsx.oml)。
まずはExcelに出力したいType、Request、Componentの項目を別のExcelファイルで定義しておきます(ms_door_slam.abf_req.xlsx)。
次に、Altair Composeでstc_hg2xlsx.omlを開きます。
- 8行目のfilenameに.abfのファイル名
- 9行目のfilename_reqに先に定義した出力項目のExcelのファイル名
を記述し、開始ボタンをクリックします。
実行後、ファイル名+_out.xlsxのファイルが作成されます(ms_door_slam.abf_out.xlsx)。
1~3行目にType、Request、Componentのラベルが書き出され、4行目以降に値が書き出されます。
あとは、ご自身で用意したExcelグラフのフォーマットを利用し、お好みのグラフを作成してください。
また、本スクリプトは複数シートにも対応しています。出力項目のExcelファイルにて、Sheet2以降にも出力項目を指示できます。
サンプルスクリプトstc_hg2xlsx.omlの7行目のnsにて最大シート数を記述しておけば、シート1から順にシートnsまで連続で処理します。
出力ファイル_out.xlsxのシート2以降に出力項目のラベルおよび値が書き出されます。
全ラベルリストの出力
先の例では、事前に出力項目を定義していましたが、そのためには、CAE結果ファイルの中にどの出力が含まれるのかを知る必要があります。そのためのスクリプトを紹介します。
Altair Composeでstc_get_label.omlを開き、9行目のfilenameに.abfのファイル名を記述し、開始ボタンをクリックします。
ラベルリスト出力スクリプトの実行(Stc_get_label.oml)
実行後、ファイル名+_label.xlsxのファイルが作成されます(ms_door_slam.abf_label.xlsx)。
このラベルリストをもとに、先の出力項目指定ファイルを作成しましょう。
Type毎にRequest数、Component数は異なります。また、H3D等のアニメーションファイルを読み込んだ場合は、Requestの要素数や節点数の数が膨大となり、リストの出力に時間がかかりますので、スクリプト7行目のmax_req で上限を設定してください。
まとめ
今回紹介したスクリプトはabfファイルのみでなく、アニメーション用のH3Dファイルの他、NASTRAN、LS-DYNA、Abaqus等、HyperGraphで読み込み可能なすべてのCAE計算結果ファイルがご利用いただけます。本ページで紹介したabfのサンプルスクリプトおよびサンプル入出力ファイルの他、h3dファイルの例も以下のボタンからダウンロード可能です。是非、ご自身でご利用のCAE計算結果のデータ処理に、Altair Composeおよび本サンプルスクリプトを利用してみてください。
NEW
ファイル選択のダイアログボックスを追加して、使いやすくしたスクリプトはこちらをご覧ください。
サンプル事例一覧に戻る