サポートされるインターフェース

ユーザ関数

mhb3d フローまたは warp3d ソルバーによって実行される 3D 解析では、ソルバーが粘性モデル、pvT モデル、コア シフト モデル(ユーザの選択に準じる)を呼び出したときには常に呼び出される関数を提供することができます。また、モデル内の特定のノード、またはモデル内のビーム ノードの特定のラミネートでのプロパティを計算する関数も提供できます。

Solver API の機能は、次のとおりです。
3D フローのユーザ粘度関数
温度、せん断速度、圧力の関数としての粘度を計算するには、ユーザ独自の関数を提供します。
3D フローのユーザ pvT 関数
比容積とその導関数を、現在の圧力、温度に基づいて、ユーザ独自のコードからフロー ソルバーに提供します。
3D 反りのユーザ pvT 関数
比容積を、現在の圧力と温度に基づいて、ユーザ独自のコードから反りソルバーに提供します。
3D フローのユーザ コア シフト
ノードの変位を、現在の圧力、温度、拘束に基づいて、ユーザ独自のコードからフロー ソルバーに提供します。

これらの関数を提供すると、関数がメモリを割り当てたりファイルを開いたりする必要がある場合に、ソルバーは解析の開始時に初期化関数を呼び出し、解析の終了時にクリーンアップ関数を呼び出します。流動解析の場合、ソルバーは各時間ステップの最後にもユーザ関数を呼び出します。

アドバンス ソルバー パラメータの[パラメータのテキスト]フィールドに構成文字列を入力すると、ユーティリティ関数で利用可能になります。モデルの係数、または追加構成を含むファイルの名前をこの文字列に入力することができます。

3D フローの場合、pvT、コア シフト、粘度オプションをオンにしなくても、解析中にユーザ独自のコードを呼び出すことさえもできます。たとえば、標準解析から追加のデータを抽出し、ユーザ独自の特殊なニーズに合わせて処理し、そのデータをファイルに書き込むことができます。

注: 一部のユーザ関数(粘度や pvT のユーザ関数など)は、ソルバーで並列ループ内から呼び出されます。このようなユーザ関数がスレッドセーフであることを確認してください。他のユーザ関数(初期化、時間ステップの終わり、クリーンアップなど)は、並列コードからは呼び出されません。

ユーティリティ関数

ユーザ関数は、ソルバー パラメータまたはモデル内のノードの位置のようなメッシュ情報を知る必要がある場合、ソルバーを再び呼び込んでこの情報を取得することができます。これらの関数は、『Solver API リファレンス』マニュアルに記載されています。このマニュアルには、ユーザ インターフェースの右上にある[ヘルプ]ドロップダウン メニューからアクセスできます。? の横の小さな三角形をクリックして、[Solver API リファレンス]を選択します。マルチショット成形の場合、第 2 ショット用に別個のパラメータ文字列があり、ショット数を取得するためのユーティリティ関数があります。

3D フロー ソルバー
メッシュ情報やテキスト文字列以外にも、コア シフト拘束や約 20 個の異なる節点の結果も取得できます。
3D 反りソルバー
解析中に、反りソルバーからメッシュ情報やテキスト文字列を取得することができます。