アナリシスの作成と編集

MotionViewでは、アナリシスは、コンテナーエンティティの1つであり、モデルでシミュレートするイベントを記述した、荷重、モーション、およびエンティティの集合体を収めることができます。モデルには任意の数のアナリシスが含まれていてもかまいませんが、1つのインスタンスでアクティブにできるのは1つのみです。MotionViewでモデルを実行すると、特定のアナリシスが選択され、MotionViewからソルバーにモデルが送信されるときに、アナリシスに記述された荷重とモーションが共に送信されます。

アナリシスには次のような特徴があります。

  • アナリシスは、ルートシステムのモデルにのみ追加が可能。
  • ポイント、ボディ、ジョイント、フォースといった他のモデリングエンティティを含むことができる
  • 子エンティティとしてシステムをもつ場合がある。
  • 任意の時点でアクティブにすることができるアナリシスは1つのみである。アナリシスをアクティブに設定するMDLステートメントは*Self-analysisである。RunパネルおよびExport Solver Deckはアクティブなアナリシスを予め選択しておく。
  • アナリシスは、システムやアセンブリがアタッチメントを取得する場合と同様にアタッチメントを取得する。
Note: 非アクティブなアナリシスをアクティブに設定すると、その時点でアクティブになっているアナリシスが自動的に非アクティブになります。非アクティブなアナリシスのインスタンスはモデルブラウザツリー内にリストされますが、その子エンティティは表示されず、そのアナリシスがアクティブになるまでは、アクセスすることができません。

システムの拡張バージョンであるアセンブリと同様、アナリシスコンテナーエンティティも、配布ファイルアプローチを持つように拡張されます。ただし、この拡張は、“Analysis”という名前の同じエンティティに含まれます。アナリシスコンテナーには次の2つのバリエーションがあります:

インラインアナリシス

アナリシス機能を使用する既存のスタイルのことで、アナリシスの定義とプロパティはモデルMDLファイルにインラインで保存されています。

  • MDLでは、*DefineAnalysisブロックを参照する*Analysisステートメントを使用して定義をインスタンス化することによってインラインアナリシスが作成されます。

配布アナリシス

アセンブリエンティティに類似の配布ファイルベースのアナリシスです。この形式のアナリシスはアセンブリと同様のコンセプトで機能しますが、いくつかの規則や例外があります:

  • 配布アナリシスはデータファイルを参照し、データファイルは定義ファイルを参照する。これは、アセンブリエンティティと同様である。
  • 配布アナリシスにアセンブリを追加することはできるが、インラインアナリシスには追加できない。
  • アセンブリとは異なり、配布アナリシスにはプレースホルダーが用意されていない。
  • 配布アナリシスには、アナリシスの適用を特定の種類のモデルに制限するために使用できるALLOWED_MODEL_TYPE属性がある。
  • MDLでは、*BeginAnalysisブロックを使用して配布アナリシスがインスタンス化される。このブロックには、データファイルを参照する*DataIncludeステートメントがある。このデータファイルには*BeginAnalysisDataFileブロックがあり、このブロックには定義ファイルを参照する*DefinitionIncludeがある。この定義ファイルには、*DefineAnalysisブロックを持つ*BeginDefinitionFileがある。この構造は、アセンブリエンティティの構造と一致している。

以下のシンプルなモデル例は、アナリシスのコンセプトを表すものです。このモデルは、~hw_install/demos/mv_hv_hg/modeling/container_entities/system_analysis/door.mdlに用意されています。このモデルはハッチバックシステムというシステムにまとめられており、そのシステムには2つの子システムとして、ドアシステムとダンパーシステムがあります。下の図は、乗用車のハッチバックドアを簡略化したモデルで、その横に示されたMDLモデルを使用して作成されています。

上記のモデルに対して実行するアナリシスとして運動学アナリシスがあります。このアナリシスは、ドアシステムのヒンジジョイントにモーションを追加することで実現できます。

もう1つのアナリシスは、ドアの先端に力をかけることによって実現できる動力学アナリシスです。この2つのイベントは排他的です。例えば、ヒンジジョイントのモーションは、ドアの先端に力をかけたときには適用されません。その逆も同様です。

MDLファイル:
  • モデル全体の情報は、door.mdl(モデルファイル)の*BeginMDL - *EndMDLブロックに記述されている。
  • このモデルには、2つのシステムインスタンスとそれらの定義ブロックとは別に、キネマティックアナリシス(ana_kin)をインスタンス化する*Analysisステートメントがある。このアナリシスインスタンスは、モデルファイルの*DefineAnalysisブロックにあるアナリシス定義(def_ana_kin)を参照する。
    • ドアシステムのドアヒンジジョイントは、アナリシスへのアタッチメントとして渡される。このアタッチメントを使用するモーションが定義される。
    • モーションに関連するデータは、*BeginContext(ana_kin)ブロックにある。


      Figure 1.
  • モデルファイルには、動力学アナリシスをインスタンス化する*BeginAnalysisブロックもある。
    • このブロックはデータファイル(dyn_data.mdl)を参照し、そのファイルは定義ファイル(dyn_def.mdl)を参照する。
    • ドアボディとドアの中央端点は、アタッチメントとしてこのアナリシスに渡される。フォースエンティティが、これらのアタッチメントを使用するように定義される。
    • フォースのデータは、データファイルに含まれている。
    • MDL構造は、アセンブリのそれと同様である。データは*BeginAnalysisDataFile内に含まれている。定義ファイルのアナリシス定義ブロック*DefineAnalysis*BeginAnalysisDefinitionFileにある。


      Figure 2.
  • *SetActiveAnalysisステートメントは、そのアナリシスがアクティブかをコントロールする。

アナリシスの追加

モデルにアナリシスを追加するにはAnalysisツールを使用します。

  1. Project Browserで、Modelラベル(または任意のシステム)を右クリックしてAdd > analysisの順に選択します。
    Add Analysisダイアログが表示されます。
  2. 追加するアナリシスのタイプを選択します。
  3. Uses data and definition fileを選択した場合は次の手順を実行します。
    1. アナリシスの追加方法を選択します。
    2. 選択した方法に応じて、新しいファイルを作成するための各欄に入力するか、既存のファイルを参照して選択します。
  4. アナリシスに変数名とラベルを割り当てます。
  5. システムの定義名を指定します。
  6. OKをクリックしてウィンドウを閉じるか、Applyをクリックしてエンティティの作成を継続します。
    アナリシスがモデルに追加されます。

アナリシスの編集

アタッチメントの修正、初期条件の設定、オプションの定義、アナリシスのインポートやエクスポートなどができます。

  1. 各アナリシスは、Attachmentsタブで他のシステムまたはアセンブリと結合するためのアタッチメントのリストを備えています。アタッチメントは、Attachmentsリスト内でハイライト表示させ、リストの右側にあるエンティティコレクターを使って修正することが可能です。
    1. Attachmentsタブを選択します。
    2. Addをクリックします。
    3. ダイアログで、ラベルと変数名を指定します。
    4. ドロップダウンメニューからアタッチメントエンティティを選択します。
    5. TypeとしてSingle onlyまたはPair or singleを選択します。
      Note: 特定のエンティティはペアでモデル化できないため、これらのオプションが無効になっている場合があります。
    6. 注記を入力します。
    7. OKをクリックしてダイアログを閉じます。
  2. Optionsタブをクリックします。
    現在のアナリシスに属しているオプションのリストが表示されます。アナリシスのエンティティ定義をカスタマイズするにはオプションを使用します。オプションは、エンティティの表示のオン / オフ切り替え、コンプライアントから非コンプライアントへのアナリシス内のジョイントの変換等の操作を行います。
  3. 各アナリシスには、デフォルトでCompliantオプションがついています。このオプションは、システム内のジョイントの状態を切り替えるために使うことができます。ドロップダウンメニューで、アナリシスをコンプライアントにするか、非コンプライアントにするかを指定します。
    Yesを選択すると、アナリシスにあるすべてのコンプライアントジョイントがコンプライアントになり、Noを選択すると、すべてのコンプライアントジョイントが非コンプライアントになります。
  4. Initial Conditionsタブを選択します。
    1. アナリシスにあるすべてのボディの初期並進速度と初期回転速度を設定するために、そのx、y、およびzの各方向の値を入力します。
      Note: 初期条件は、モデル内の任意のアナリシスに適用できます。アナリシスに適用する初期条件は、その下位にある各サブアナリシスにも自動的に適用されます。サブアナリシスの初期条件を別途設定すると、その設定が上位のシステムでの設定より優先されます。サブアナリシスによってオーバーライドされた各初期設定は、親アナリシスのInitial Conditionsタブの右側に一覧表示されます。
  5. System Translationタブをクリックします。
    対称性(symmetry)がオンである場合、システムの対称性が保持されます。対称性(symmetry)がオフである場合は、システム全体が指定の方向に移動します。
    1. 移動方向を定義します。
    2. Translation distanceテキストボックスに、座標に沿ってシステムを移動させる距離を入力します。

ファイルからアナリシスへのシステムのインポート

パネルのImport/Exportタブを使用して、.mdlファイルからアナリシスにシステムをインポートできます。

Note: 既存のファイルからインラインアナリシスをインポートするには、モデルのImport/Exportタブを使用します。
  1. Project Browserで、アナリシスを選択します。
    Analysisパネルが自動的に表示されます。
  2. Import/Exportタブをクリックします。
  3. Importラジオボタンを選択します。
  4. File browserアイコンを使用してシステム定義を選択します。
  5. Importをクリックします。
    選択されたファイル内で使用可能なシステム定義のリストを含むSpecify entity detailsダイアログが表示されます。
  6. ドロップダウンメニューでSystemを選択します。
  7. Select a definitionリストからシステム定義を選択します。
  8. システム定義のラベルと一意な変数名を指定します。
  9. 必要に応じて注記を追加します。
  10. OKをクリックします。
    アナリシスにシステムが追加されます。

インラインアナリシスのエクスポート

パネルのImport/Exportタブをクリックすることによって、個々のアナリシスを.mdlファイルにエクスポートできます。トポロジー情報を含むアナリシス全体をファイルにエクスポート、もしくは、別のモデルに読み込むためにモデル特性のみをエクスポートすることも可能です。定義ファイルにエクスポートできるのは、インラインアナリシスのみです。

  1. Project Browserで、保存するインラインアナリシスを選択します。
    Analysisパネルが自動的に表示されます。
  2. Import/Exportタブをクリックします。
  3. Exportラジオボタンを選択します。
  4. ファイルブラウザのアイコンをクリックします。
    Export system definitionファイルブラウザが表示されます。
  5. パスとファイル名を選択してSaveをクリックします。
    システムがエクスポートされます。
Tip:
  • ブラウザを開かずに同じファイルに再エクスポートするにはQuick Exportをクリックします。
  • Export topology as:ドロップダウンメニューを使用して、エンティティ定義ステートメントと定義ブロック(システム、データセット、テンプレートなどを定義するブロック)を指定します。
  • Property Dataオプションは、エンティティに値を割り当てる*Setステートメントを参照します。