Main Content

シミュレーションのビッグ データの解析

MATLAB® で解析するために MAT ファイルに記録されたデータにアクセスするには、MAT ファイル内のデータへの参照を使用します。

ログ記録されたデータセットにアクセスするための DatasetRef オブジェクトの作成

MAT ファイルにログ記録する場合、Simulink®Simulink.SimulationData.Dataset オブジェクトを指定された MAT ファイルに保存します。ファイル内の Dataset オブジェクトの要素は Dataset オブジェクトです。ログ記録されたシミュレーション データセットそれぞれに対して 1 つの Dataset オブジェクトがあります。たとえば、ファイルには、ログ記録された信号データ用の Dataset オブジェクトと、ログ記録された状態データ用の別の Dataset オブジェクトを含む Dataset オブジェクトが含まれる可能性があります。

シミュレーションの Dataset 形式のデータにアクセスし、ログ記録されたシミュレーション データセットを取得するには、Simulink.SimulationData.DatasetRef オブジェクトを作成します。DatasetRef オブジェクトを使用すると、データセットの個々の要素にアクセスできます。詳細については、DatasetRef オブジェクトからの個別の信号の読み込みを参照してください。

信号データにアクセスするための SimulationDatastore オブジェクトの使用

ログ記録された Dataset オブジェクト内のリーフ信号にアクセスするには、信号が含まれている Dataset オブジェクトの DatasetRef オブジェクトに基づいて、信号の matlab.io.datastore.SimulationDatastore オブジェクトを作成します。詳細については、以下を参照してください。

SimulationDatastore オブジェクトを使用した個別の信号のストリーミング.

SimulationDatastore オブジェクトによって参照されたデータを操作できます。たとえば、チャンク内のデータを取得し、MAT ファイルからメモリに読み込むことができます。例については、matlab.io.datastore.SimulationDatastore を参照してください。

MATLAB 解析のための timetable の作成

read メソッドまたは readall メソッドを使用して SimulationDatastore オブジェクトを読み取る場合、出力は MATLAB timetable 形式になります。timetable 形式の詳細については、データセットの信号形式を参照してください。

SimulationDatastore オブジェクトを使用して、信号値の timetable を作成し、メモリ内データをもつ timetable オブジェクトを読み取ることができます。たとえば、SimulationDatastore オブジェクト dst1 の場合は次のようになります。

tt = dst1.Values.read;
ttt = tall(dst1.Values);

tall timetable の作成

tall timetable を作成することができます。

mapreducer(0);
ttt = tall(dst1.Values);

永続ストレージ メタデータへのアクセス

いくつかのシミュレーションで永続ストレージを使用する場合、複数の MAT ファイルをもつことができます。バッチ処理を使用して複数のシミュレーションを実行するとき、各シミュレーションに対して異なる永続ストレージ MAT ファイルを指定した場合は、複数の MAT ファイルが得られます。並列シミュレーションの場合、Simulink はシミュレーション実行ごとに個別の MAT ファイルを生成します。MAT ファイルに含まれるシミュレーション データのコンテキストを特定し、理解できるようにするために、Simulink は永続ストレージへのログ記録に関するメタデータを保存します。

Simulink.SimulationMetadata オブジェクトの ModelInfo 構造体には、2 つのフィールドを備えた LoggingInfo 構造体が含まれています。

  • LoggingToFile — 永続ストレージへのログ記録が有効かどうかを示す ('on' または 'off')。

  • LoggingFileName — 永続ストレージの MAT ファイルの解決済みのファイル名を指定する (LoggingToFile'on' の場合)。

永続ストレージに使用される MAT ファイルには、変数 SimulationMetadata が含まれます。この変数には、Simulink.SimulationMetadata オブジェクトと同じシミュレーション メタデータが格納されています。SimulationMetadata は、ユーザーが指定した変数名ではなく、システムによって生成された名前です。

永続のログ記録ストレージ メタデータにアクセスするには、次のいずれかを行います。

  • SimulationOutput オブジェクトの SimulationMetadata プロパティを使用して、シミュレーション メタデータを表示する。

  • タブ補完を使用して、SimulationMetadata オブジェクトのプロパティ (ModelInfo など) やフィールド名にアクセスする。

  • シミュレーション メタデータを変数エディターに表示する。SimulationOutput オブジェクトをクリックし、次のいずれかの方法を使用します。

    • [SimulationMetadata の探索] チェック ボックスを選択する (データがツリー構造で表示されます)。

    • [SimulationMetadata] 行をダブルクリックする。

エラー情報へのアクセス

SimulationOutput オブジェクトの ErrorMessage プロパティを使用することで、シミュレーション データのスタックや原因に関するエラー メッセージと情報を確認できます。並列シミュレーションでは、ファイルにログ記録している場合は、Simulink でシミュレーション用の CaptureErrors 引数が有効になります。

参考

関数

モデル設定

関連するトピック