Main Content

プログラムの依存関係の特定

作成したプログラムが、どの関数またはスクリプトに依存しているかを知る必要がある場合は、以下のいずれかの方法を使用します。

プログラム ファイル依存関係の簡単な表示方法

ある関数から参照されるすべてのプログラム ファイル名を簡単に表示するには、以下の手順に従います。

  1. clear functions と入力して、メモリからすべての関数をクリアします (下のメモを参照)。

    メモ

    clear functions では、mlock によってロックされている関数はクリアされません。ロックされている関数 (inmem を使用して調査可能) がある場合は、munlock を使用してロックを解除してから、ステップ 1 を再度行ってください。

  2. 調べたい関数を実行します。異なった引数を使用すると同じ関数を呼び出しても結果が異なるため、このステップでは選択する関数の引数が重要になります。

  3. inmem」と入力して、この関数の実行時に使用されるすべてのプログラム ファイルを表示します。使用される Mex ファイルも調べる場合は、次のように追加の出力を指定します。

    [mfiles, mexfiles] = inmem

プログラム ファイル依存関係の詳細な表示方法

依存する関数についての情報の詳細を表示するには、関数 matlab.codetools.requiredFilesAndProducts を使用します。プログラム ファイルの他に、matlab.codetools.requiredFilesAndProducts は特定の関数がどの MathWorks® 製品に依存するかを表示します。Image Processing Toolbox™ の関数 edge を呼び出す関数 myFun がある場合、次のようになります。

[fList,pList] = matlab.codetools.requiredFilesAndProducts('myFun.m');
fList
fList = 

    'C:\work\myFun.m'

必要なプログラムファイルは、関数ファイル myFun だけです。

{pList.Name}'
ans = 

    'MATLAB'
    'Image Processing Toolbox'

ファイル myFun.m には、MATLAB® と Image Processing Toolbox の両方が必要です。

フォルダー内での依存関係

依存関係アナライザーを使用して、フォルダー内のすべてのファイルの間の依存関係を解析できます。依存関係アナライザーでは以下の依存関係を特定できます。

  • フォルダー内で、そのフォルダー内の他のファイルが必要とするファイルはどれか

  • ファイルを削除すると実行できなくなるファイルが現在のフォルダー内にあるか

  • 呼び出されたファイルが現在のフォルダーからなくなっていないか

フォルダー内の依存関係を解析するには、[アプリ] タブに移動し、[MATLAB][依存関係アナライザー] アイコン をクリックすることで、依存関係アナライザーを開きます。次に、[フォルダーを開く] ボタンをクリックし、解析するフォルダーを選択します。依存関係アナライザーでは、依存関係グラフの形式で結果が表示されます。

フォルダー内の依存関係を調べる方法の詳細については、Dependency Analysis for Folders and Filesを参照してください。

メモ

特定のファイルを実行するために別のユーザーが必要とする MATLAB コード ファイルを判断するには、代わりに関数 matlab.codetools.requiredFilesAndProducts を使用します。

参考

関数

アプリ

関連するトピック