Method Manager

Method Managerダイアログを使用し、新しいメソッドを作成してライブラリにデータを入力したり、.xmlファイルから既存のライブラリをインポートしたりします(前のチャプターを参照)。

Method Managerは2つのシート(LibraryまたはResources)を有するノートブックです。




図 1. ライブラリエディター(ノーマルおよび編集モード)

Settings

初めてMethod Managerが起動される際は、デフォルトのライブラリのみが表示され、リソースは表示されません。Sessionと呼ばれる空のライブラリがリストに追加されます。これは、ライブセッションのみで使用される一時的なメソッド定義を格納することを目的としています。

HyperMeshセッションを終了すると、設定ファイルが保存されます。設定ファイルには、終了前に読み込まれたライブラリとリソースのリストが含まれます。Sessionライブラリのコンテンツは削除されます。設定ファイルは、Windowsの場合user/.altair/StressTool/settings.xmlLinuxの場合/home/.altair/StressTool/settings.xmlに保存されます。

HyperMeshの新しいインスタンスを開始する場合、設定ファイルを削除せずに、前に読み込まれたすべてのライブラリとリソースがスキャンされます。このため、これらはMethod Managerで使用可能で、最新の状態です。

フィーチャー

Method ManagerAssign MethodRun Methodなどの別のツールから起動された場合、実行できるのは、メソッド定義の確認と、ブラウザで選択したメソッドからデータベース内でdesignpointmethodエンティティを作成することのみです。

ただし、Method ManagerがCreate Methodsツールから起動された場合、これは編集モードで開かれ、以下のようないくつかのオプションが提供されます:
  • リソースのインポートまたは削除(OMLPythonTclファイル)
  • 既存ライブラリのインポート(.xmlファイルから)
  • 新規ライブラリの作成(空のライブラリ)
  • ライブラリの削除
  • ライブラリの編集(デフォルトライブラリを除く)
    • ライブラリでのメソッドの追加または削除
    • メソッド入力 / 出力の定義

リソースの管理

ファイル内で定義された関数(OMLPythonTcl)が、メソッドの作成に使用できるリソースと見なされます。これらはResourcesタブ(図 2)で管理できます。

コンテキストメニューオプションは次のとおりです:

Add Resource
フォルダーレベル(ComposePythonTcl)または空白領域。
選択したタイプのファイルの入力を求めるプロンプトが表示され、そのファイルで関数をスキャンします(Pythonの場合はdef、Tclの場合はprocs)。有効な関数が見つかった場合、これらはリソースノードの下にリストされます。
をクリックしてリソースを追加することもできます。
Delete
リソースレベル
選択したリソースを削除します。ただし、そのいずれかの関数がライブラリ内のメソッドで使用されている場合を除きます。
をクリックしてリソースを削除することもできます。
Edit
リソースレベル
システムコマンドを実行して、ファイルを関連付けられたエディターで開きます。
Create Method & Assign Method
関数レベル
Createは、ライブラリが編集モードの場合にのみ有効になります。これは、呼び出し元の関数 / リソースを使用して、現在のライブラリに新しいメソッドを追加します。メソッドが現在編集されている場合、Assignが有効になります。結果として、現在のメソッドが更新され、メニューの呼び出し元の関数を参照するようになります。
*.omlファイルがAltair Composeで編集されている場合、ComposeでRegister Functionを使用して、Resourcesタブの登録済み関数のリストで直接これを使用できるようにすることもできます。


図 2. OML関数の登録

ライブラリの管理

デフォルトでは、Libraryブラウザはレビューモードのみです。リストでメソッドを選択すると、メソッドエディターに詳細が表示されます。
  • 入力引数リストとマッピング
  • 出力引数リスト
  • ブロックのソート
  • オプション


図 3. 属性マッピングの確認
リストで属性を選択すると、そのマッピングとタイプが表示されます。行にマウスカーソルを合わせると、ツールチップにエンジンで照会された解決済みのキーが表示されます。属性タイプには以下を使用できます:
  • 未定義
    • 未解決のパラメータ
    • 赤色のステータスカラー
    • メソッド選択は無効(テンプレートから作成できません)
  • User
    • ライブラリファイル内でローカルに定義されるパラメータ
    • ツールチップとしてのみ表示される値
    • 組み込みのパラメータより優先される
  • Model
    • 事前定義済みのモデル属性リストにあるパラメータ
    • Modelタブに入力される
    • ライブラリファイル内でローカルに上書きされない
  • Result
    • 事前定義済みの結果属性リストにあるパラメータ
    • Resultタブに入力される
    • ライブラリファイル内でローカルに上書きされない
  • Metadata
    • ユーザー入力
    • Metadataタブに入力される
  • Method
    • 別のメソッドからのパラメータ
    • このメソッドは選択されたメソッドに沿って実行されることを示す
    • ステータスカラーは依存性によりオレンジ色
      • 独立メソッドは呼び出し元の下の階層にリストされる


        図 4.

ライブラリのインポート / 新規作成 / 削除

Import Library
*.xmlファイルのインポートを促します。これはスキーマ(詳細についてはカスタムメソッドの作成を参照)に従う必要があります。選択したファイルの形式が不正な場合、ブラウザには何も追加されません。インポートに成功すると、新しいライブラリフォルダーがブラウザに追加され、メソッドのリストが表示されます。さらに、新しいメソッドで使用される関数の自動スキャンにより、新しいリソースが追加されます(Resourcesタブに表示)。
New Library
新しいライブラリを追加し、これを編集モードにしてメソッドを追加できるようにします。
Import LibraryまたはNew Libraryから追加されたライブラリには自動で名前が付けられます。これは、ライブラリノードのRename Libraryオプションを使用して変更できます。
Delete Library
ライブラリとそのメソッドをリストから削除します。ただし、データベースのdesignpointmethodエンティティがそのライブラリで定義されているメソッドを参照している場合を除きます。
リソースは削除されません。

ライブラリのスキャン / オープン

Scan Library
ライブラリノードで使用できます。ライブラリファイルを再スキャンして、更新されているかどうかをチェックします。この操作は、Libraryタブを開くたびに自動的に実行されます。
Open Library
ライブラリ.xmlファイルを開き、関連するファイルエディターを呼び出します。

ライブラリの編集

Edit Libraryは、ライブラリノード(Defaultを除く)またはメソッドで使用でき、Libraryタブを編集モードにします。ブラウザには、指定のライブラリのみが表示されます(Sessionでも機能します)。代わりに、メソッド / ライブラリをダブルクリックしても同じ状態になります。
注: 編集機能は、ブラウザの表示メソッドが階層ビューに存在する場合にのみ使用可能です。
/アイコンは、それぞれメソッドを追加 / 削除します。新しいメソッドは、表示フィルターに設定されたコンフィグからカテゴリを継承します。
  • デフォルトのエンジンは“COMPOSE”です。
  • デフォルトの関数は、最初に登録された関数(存在する場合)です。
  • 登録されていない場合は、デフォルトで最初のCOMPOSEリソースとなり、その最初の関数を指します。
この時点で、完全にメソッドを編集できます(メソッドの編集を参照)。

現在のライブラリがSessionの場合、Saveを使用するとセッションライブラリの変更がコミットされ、編集モードを離れます。Save asを使用すると、Session内のメソッドを保存されたライブラリに変換するように変更されます。これにより、.xmlファイルがLibrary Managerに書き込まれ、インポートされます。Sessionライブラリはクリーンになります。

現在編集されているライブラリが通常のライブラリの場合、Saveを使用すると元の.xmlファイルを上書きしてもよいかどうか確認を行います。確定すると、ライブラリファイルに対して行われた変更は永続的となり(Undoなし)、ライブラリ表示モードに戻ります。確定しなければ、操作はキャンセルされます。Save asを使用すると、新しい.xmlファイルを保存し、このファイルを新しいライブラリとしてインポートします。新たにインポートされたライブラリのメソッド名が既存のライブラリのメソッド名と競合する場合、そのメソッドは選択から削除されます。問題を解決するには、編集モードでメソッド表示名を変更するか、メソッドが重複しているリストから前のライブラリを削除します。これはSession以外のすべてのライブラリにあてはまります。SessionからSave asを使用した場合、新たに保存されたライブラリがインポートされると、Sessionのメソッドは削除されます。

Cancelを実行すると、すべての変更はキャンセルされ、ライブラリ編集モードを離れます。

メソッドの編集

メソッド名またはライブラリ名をダブルクリックして既存のメソッドを編集するか、編集モードに入ります。メソッドはその後アクティブになります。


図 5.
ライブラリが編集モードである場合は、Resourcesタブで使用可能なリソースから関数を割り当てることができます。それ以外の場合は、メソッドリストのメニューからEngine > Resource > Functionをクリックします。


図 6.

入力引数のマッピング

選択した関数が引数の明示的なリスト(例: func(a,b,c)=)で定義されている場合、入力の数はデフォルトで引数の数に設定されます。入力の数は、関数の引数の数を下回らない範囲で増減できます。最後の引数名がargで始まる場合、これはオプションの引数と見なされます。関数定義にargsが使用されている場合、入力はデフォルトでゼロになります。


図 7.

入力テーブルにリストされている各入力引数には、複数の列(最初は関数の変数名)があります。これには、関数定義で読み取られた変数名が入力されますが、影響を与えることなく上書きできます。これは参照専用です。

入力をデータベース値とマップします:
  1. 入力行を選択します。
  2. タブ(Model/Result)を選択します。
    1. ツリー内の引数を選択し、ダブルクリックしてマップします。
  3. 拡張データについては以下のとおりです:
    1. Metadataタブを選択します。
    2. エンティティタイプを選択します。
    3. データタイプを設定します。
    4. 必要に応じてShow asを変更します。
      • 未指定に設定し、許容値を削除します。
      • コンボボックスを設定し、許容値を有効にして、事前定義の値にスペースで区切られた値を入力します。
    5. デフォルト値を設定します。
  4. メソッドチェインの場合は、Methodタブを選択します。
    1. 使用可能なリストでMethodを選択します。
    2. Column値(選択したメソッドから入力された値)を選択します。
    3. 引数の名前を変更します(オプション)。
各行について、以下を選択して入力の集約を定義できます。
  • ソートタイプ
  • 集約のレベル

行のメニューオプションにより、集約を伝播できます。

このメニューオプションでは、現在の行またはすべての入力のマッピングをリセットすることもできます。
ヒント: 属性を、前にマップした引数に近いキーにマップするには、以下を実行します:
  • Model/Resultタブに入力する、マップされた引数を選択します。
  • マップする引数を選択します(最初にリセットする必要があります)。
  • 属性ツリーは前の状態で開いたままです。
    • Stress XXからStress YYを定義すると便利です。

メソッド出力の定義

Outputsタブを選択し、出力の数を変更します。
  • すべての出力の名前を意味のある名前に変更します。

評価後のソートの定義

  1. Sortタブを選択します。
  2. Sorting値を集約メトリックとして使用するメソッドの任意の入力 / 出力に変更します。この値を使用してエンティティすべてを比較し、最小値(または最大値)を保持します。
  3. Aggregationタイプを選択します。
  4. 荷重ケースエンベロープが必要な場合は、Envelopeを選択します。
    • オフの場合、荷重ケースごとの結果が保持されます。
    • 空間的な集約のみが発生します。
  5. 出力場所を選択します。
    • 内部的にドメインを管理し、最終的に選択内容に結び付けられた値を保持します。
  6. 必要に応じてサブオプションを選択します。
    • レイヤーを維持または集約します。
    • 節点 / コーナーを維持します。


      図 8.

オプションの定義

Optionsタブでは、コーナーのデフォルト値、平均化、および非表示にする必要があるオプションを選択できます。
注: Averageのsimpleモードはスカラー平均化を意味するわけではありません。これは、平均化の後にインバリアントが抽出される、真のテンソル平均化です。


図 9.