* SALOME [#g0290f71]

 この資料は公開されている英文資料を柴田が学術目的のために非公式に和訳しているものです

SALOME:オープンソースの数値解析シミュレーションのための統合化プラットホーム
公式サイト:http://salome-platform.org

開発:CEA・フランス原子力庁、EDF・フランス電力公社、OpenCASCADE・オープンソース3次元モデリングツール

** SALOME.5 [#s2c3e929]

これまでの10年ほどで、コンピュータのハードウエアやソフトウエアの性能向上は、原子力利用技術の分野におけるシミュレーションソフトウエアに対して、著しく大きな変化をもたらしてきました。
新しいコンピュータの解析能力は、以下に示す画期的なシミュレーションを可能にしてきました。~
より現実に(これまでの簡略化した2次元モデルではなく、複雑な3次元形状をそのまま扱う)~
より複雑に(複合した物理現象やモデル規模のオーダーが異なる場合も考慮できるように)~
より有効に(未確認な現象の関連などを分析する)

2001年より、これらの展開を効果的に促進し活用するために、CEA:フランス原子力庁とEDF:フランス電力公社は、SALOMEと名付けたソフトウエアプラットホーム(解析システムの基盤)を開発してきました。
このSALOMEは、様々な複雑なCAEアプリケーションを統合化するためのツールとして活用されます。
このツールは、CADモジュール、モデルのメッシュ生成、入力ファイルの定義、解析プログラム連携、結果の可視化、などの機能を実現するプログラムとして構築されています。

このプラットホームは、コミュニティでの共同開発を念頭に置いて構築が進められています。そのため、LGPLライセンスに従うことでこれを実現しています。
SALOMEが提供するソフトウエアのモジュールやサービスにより、様々なCAEアプリケーションを可能にしています。
このことは、学術的な解析コードを容易に利用できるようにし、利用者の環境に適合させることにもつながっています。
SALOMEは、EURIWAREとOpenCascadeの支援を受けながら、とても積極的な開発チームの10年にわたる努力の積み重ねにより開発が続けられています。SALOMEは、CEAとEDFにおける原子力の学術研究や工学的開発に関する以下の領域において活用されています。:原子炉物理学、構造解析学、熱流体力学、核燃料物理学、材料科学、地質学や放射性廃棄物シミュレーション、電磁気学や放射線防御
SALOMEは、EURIWAREとOpenCASCADEの支援を受けながら、とても積極的な開発チームの10年にわたる努力の積み重ねにより開発が続けられています。SALOMEは、CEAとEDFにおける原子力の学術研究や工学的開発に関する以下の領域において活用されています。:原子炉物理学、構造解析学、熱流体力学、核燃料物理学、材料科学、地質学や放射性廃棄物シミュレーション、電磁気学や放射線防御

*** 開発状況 [#n017fe43]

プロジェクト開始:2001年  開発チーム:20名・これまでの合計で200人年  解析検証:3700種のテスト  バグの対応:年間で500件を集約し確認  ソフトウエア規模:120万行(9割がC++・1割がPython)  配布計画:2年毎にメジャーバージョン公開・半年毎に修正版の公開

*** 利用者数 [#be316b8f]

EDF・フランス電力公社とCEA・フランス原子力庁:300名利用  外部:4000名利用  ウエブからのダウンロード:年間に12000件

*** SALOMEの重要な特徴 [#t7e9e8b3]
・CAEの標準的な手順に対応した学術的なソフトウエアを開発する(データ変換の形式、技術的な選択)~
・CAEによる形状データと解析ソフトウエアとの間を統合する(CAD=CAE連携)~
・最新の様々な学術的解析ソフトウエアを統合するためのモジュール構造を提供する~
・各種の解析プログラム間の連携可能性を高める~
・標準的で効率的な利用者が使いやすいユーザーインターフェイスを提供する(それにより研究遂行での遅延や手間を低減できる)~
・CEAやEDFでの研究開発や学術研究においてその品質が検証されている~
・共同開発を推進するためにオープンソースの戦略を採用しながら高度な機能を持つアプリケーションを構築している

*** CEAとDEFにおける全体的な目的 [#k449617b]

CEAやEDFにおける多くのプロジェクトが、現在、SALOMEを活用しています。それは以下の目的を実現するために、各種のツールを統合して統合的なシステムを構築するためです。

・物理現象の数値解析を目的とした統合的な開発環境を提供する~
・民間での原子力活用における設計品質を維持する要求に対応する~
・解析システムにおいて過去の蓄積と最先端の成果を連携させる(開発手順やシステム連携)~
・高性能計算機システムや可視化技術の成果を応用する

*** 主要機能と技術的選択 [#d00e5173]

■ユーザーインターフェイス

SALOMEのプラットホームは、解析に関する全ての作業をカバーするような作業環境を提供します。具体的には、CADで定義される形状データの作成から結果の可視化までに対応しており、これを実現するために、共通データ形式や管理ツールや連携ツールなどにより各種のプログラムが統合されています。

・SALOMEの利用にあたっては、2種類の方法が組み込まれ提供されています。~
3次元表示を用いてグラフィカルな利用方法(Qt4,VTKなどを利用)~
キーボードによるコマンド入力による利用方法(Python言語を利用)

SALOMEでは、両方の利用方法では同じ解析機能が利用でき、この切り替えのために簡単な方法が提供されています。

■各種機能の統合と解析ツールの連携

・数値解析のプラットホームとして、SALOMEは非常に多機能で、改良を容易にするためにモジュール化された構成となっています。これより、PythonやC++言語で開発された解析ツールやモジュールを追加することで、容易に機能拡張が可能です。~
・解析プログラムについては、PythonやC++言語やFortranで作られたものであれば、これまで活用されたプログラムの蓄積から最新技術で開発されたものまで、統合することが可能です。~
・各種のプログラムの機能を統合化するために、連携用ツールが利用されています。

■解析手順の管理

・プラットホームの管理機能を用いることで、利用者は、並列処理クラスタを活用して連携はしてはいるものの利用手順が複雑な解析プログラムの実行を、容易に設定し管理することができます。この機能は、対話的に進めることもバッチジョブとして利用することも出来ます。

■メッシュと領域データ管理

・SALOMEでは、解析モデルのメッシュや領域の情報を内部データとして記述するために、HDF5と言う形式を用いています。ここでは、並列処理用の分割したメッシュを考慮することもできます。~
・各種のシミュレーションで利用するための様々なメッシュ情報などを管理するために、変換や補間の機能を持っています。

*** ダウンロード [#yc4ff8f9]

SALOMEは、http://www.salome-platform.org より、いくつかのLinux用とWindows用のソフトウエアをダウンロードすることができます。このサイトでは、利用手順書や質疑応答などが提供されており、また利用者用解説文書も提供しています。

*** サービスとサポート [#ff76accd]

EURIWAREとOpen Cascadeでは、技術的なサポートやトレーニングを含めたSALOMEに関する全般的な利用者支援のサービスを提供しています。さらにサポートサービスは、大学などの学術的組織や大小の企業において、特別に必要とする内容に限定したものも提供されています。具体的には、以下のようなものです。
EURIWAREとOpenCASCADEでは、技術的なサポートやトレーニングを含めたSALOMEに関する全般的な利用者支援のサービスを提供しています。さらにサポートサービスは、大学などの学術的組織や大小の企業において、特別に必要とする内容に限定したものも提供されています。具体的には、以下のようなものです。

・ヘルプデスクへの質問と回答:技術的問題点に関する専門家の支援を受けることができます。これはサポートの契約期間において、電子メールや電話を持ちいて質疑応答を行います。~
・技術的な支援:複雑な問題を解決するためには、専門的な技術を持つ担当者による支援を受けることができます。~
・専門家による導入支援:SALOMEの専門技術者が作成した利用者の手引きが提供されます。~
・カスタマイズ:SALOMEの機能を拡張するモジュールや解析プログラムの統合などを支援します。~
・修正情報の提供:開発チームに対して、直接に不具合の修正を依頼したり、修正版のシステムを入手することができます。

より詳しい内容は、ウエブを参考にしてください。

さらにSALOMEのトレーニング部門では、定期的に講習会を実施しています。ここでは、初心者がSALOMEの利用技術を自主的に修得するための支援を行い、さらに複雑な検討を行うための高度な利用技術を開発しています。~
他には、CAE解析技術のトレーニング部門では、プラットホームのSALOMEに、構造解析ソルバーCode_Asterや流体解析ソルバーCode_Saturneを統合する支援を行っています。この成果は、SALOMEの連携チームに対して提供されています。~
今後の講習会や解説資料については、ウエブを参照してください。

*** SALOMEを取り巻く連携 [#a80b22e1]

SALOMEは、高機能なCADデータ変換ツールや商用のメッシュ生成ツールなどと連携して利用することができます。

これらのツールの提供会社など

・CAE Linux:工学解析用Linuxシステム~
・DISTENE:商用の高機能で可用性の高いメッシュ生成アルゴリズムであるBL-SURFやTetMesh-GHS3Dを提供~
・DISTENE:商用の高機能で可用性の高いメッシュ生成アルゴリズムであるBL-SURFやTet Mesh-GHS3Dを提供~
・CS:SALOMEのソフトウエアの一部を開発~
・DATAKIT:データ変換技術を提供~
・DELTACAD:SALOMEにおけるCode_Aster統合、Code_AsterはEDFの開発した構造解析用の数値解析ソフトウエアです。~
・INCKA:SALOMEにおけるCode_Satrune統合、Code_SaturnはEDFの開発した汎用の流体解析ソフトウエアです。~
・LOGILAB:SALOMEのソフトウエアの一部を開発

*** SALOME 6 とさらなる展開 [#mb3c8d83]

現在のSALOMEの開発チームは、今後の展開として、以下の項目を目標としています。

・並列可視化(Paraviewとの連携)~
・六面体メッシュ生成機能の改良~
・メッシュや領域情報のデータ形式(MED)の機能の提供~
・高性能計算機HPCとの連携機能の拡張~
・既存の解析コードとの連携ツールの提供

*** 謝辞 [#qa320299]

最近のSALOMEの並列解析機能の開発においては、IOLS, EHPOC, OpenHPCなどのプロジェクトにおけるクラスターを活用しており、System@ticの支援を受けています。

** 形状生成:Geometry module [#hce8d571]

SALOMEの形状生成モジュールでは、シミュレーションで用いる3次元形状を定義しています。ここでは、複雑な3次元形状に対して生成・編集・転用・修正などを可能にする豊富な機能を提供しています。

このモジュールは、Open CASCADE で開発された形状処理システムにより機能を実現しており、形状の表面を定義し(BRep)、次のメッシュ生成で必要となるモデルの形状特性の情報を含んでいます。

大きく分けて、形状生成モジュールには2つの目的があります。~
まずはこのツールを使って独自に形状モデルを生成すること、
つぎは既存のCADシステムで事前に設計された形状をSALOMEに取り込んで編集することです。

一般的な形状は、円柱・球・円環などの幾何学的形状や自由曲面などを組み合わせて、空間内に配置されます。より複雑な形状を構成するためには、これらの基本的な形状に対して、「cut:切り取り,fuse:結合,intersect:交差」などの形状操作を利用します。形状の端部に対しては、「fillet:連続化,chamfer:面取り」などの操作が適用できます。

SALOMEは、BREPやACISフォーマットによる、IGESやSTEPによる形状データを読み込むことができます。さらに強力な形状修正機能も備えているため、過剰に複雑なモデルを単純化したり、流用したモデルの形状定義が不十分な場合に修復することも可能です。

形状生成モジュールが持つ機能は、マウスによる直接的な画面操作により容易に利用できます。またこの機能は、SALOMEが持つPythonスクリプト実行機能により、プログラムとして自動的に利用できます。

さらにSALOMEは、利用者の操作手順を、コマンドスクリプトとして記録することができます。この機能は、複雑な形状を自動的に生成するときに非常に有用ですし、SALOMEの形状生成モジュールを利用者が使いこなすための補助になります。

*** 主要機能 [#oc60522e]

■CADモデルの読み込み

・標準的には次のCADデータのフォーマットに対応します。:ACIS, BREP, STEP, IGES~
・他のフォーマットは商用の変換ツールを用いて必要に応じて次の形式に対応します。:CATIA V4 / ProEngineer / SolidWorks / SolidEdge / Parasolid / Nx
・他のフォーマットは商用の変換ツールを用いて必要に応じて次の形式に対応します。:CATIA V4 / Pro Engineer / Soli dWorks / Soli dEdge / Parasolid / Nx

■形状モデルの生成と修正

・基本要素:点、線、円、楕円、弧、曲線、矢印、面~
・自由作図:2次元作図、3次元作図~
・立体要素:箱、円柱、球、円錐、円環、直方体、円盤~
・形状要素:エッジ、ワイヤ、フェイス、シェル、ソリッド、複合体や部分形状への分割形状~
・変換:移動、回転、反転、拡大~
・形状演算:fuse, common, cut~
・拡張操作:押出、回転、面取り、連続化、パイプ~
・要素の複合~

■形状の補正

・不要面の整理、不完全な輪郭の調整、要素内部の線分の削除、欠けた面の除去、面の結合、面の貼付け、自由境界の確認、自由表面の確認、面の法線の変更、点や線の追加

■形状の計測

・点の座標軸、形状の中心、断面の慣性、包含する領域、最短の距離、許容誤差、角度

■CAEモデルの書き出し

・対応するCADフォーマット:ACIS, BREP, STEP, IFES~
・外部CADデータの読み書き機能の統合

■可視化

・表示と削除、配色の変更、透明度の設定、表示モード(面表示・線表示)、等測線の本数、など

** メッシュ:Meshing module [#ed373e1a]

** 可視化:Post-processor module [#z1b78e12]

** データ処理と関連ツール:Mesh and field data model and associated tools [#oa7f125e]

** ジョブの監視と管理:Supervision & job manager module [#wa37bdf2]



[[SALOME-Meca紹介]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS