このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
異なるフォルダー間で複数のモデルのクローンをプログラムで検出
この例では、プログラムを使用して、異なるフォルダーに配置された複数のモデルのクローンを検出する方法を説明します。クローン検出 API の詳細については、プログラムによるサブシステム クローンの検出と置換を参照してください。
この例では、クローン検出 API を使用し、フォルダー内に存在する 6 つの Simulink® モデル内のクローンを特定する方法を示します。クローンの置換はこのワークフロー例を使用しても実行できません。プログラムにより複数のモデルのクローンを置換するには、プログラムにより複数のモデルのクローン検出と置換をループで実行を参照してください。
1.MATLAB® コマンド ラインで、次のように入力します。
openExample('ex_detect_clones_A') openExample('ex_detect_clones_B') openExample('ex_detect_clones_C') openExample('ex_detect_clones_D') openExample('ex_detect_clones_E')
書き込み可能なフォルダーにモデルを保存します。
2.
クラスを使用してオブジェクトを作成します。Simulink.CloneDetection.Settings
cloneDetectionSettings = Simulink.CloneDetection.Settings();
3.cloneDetectionSettings
オブジェクトにモデルを含むフォルダーのパスを追加します。
cloneDetectionSettings.Folders = {'D:\models'}
4.クローンを検出するには、cloneDetectionSettings
オブジェクトを使用して関数Simulink.CloneDetection.findClones
を実行します。
cloneResults = Simulink.CloneDetection.findClones(cloneDetectionSettings)
cloneResults
は 2 つのプロパティ Clones
と ExceptionLog
をもつ
クラスのオブジェクトです。Simulink.CloneDetection.Results
5.Clones.Summary
フィールドを表示します。
cloneResults.Clones.Summary
この例では、モデルには、サブシステムのパターンが一致する 4 つの異なるクローン グループ (18 個の類似クローン、8 個の厳密クローン、および 26 個のサブシステム クローン) があります。
5.最初のクローン グループの詳細を表示します。
cloneResults.Clones.CloneGroups(1)|
6.最初のクローン グループの概要を表示します。
cloneResults.Clones.CloneGroups(1).Summary
7.最初のクローン グループのクローン リストを表示します。
cloneResults.Clones.CloneGroups(1).CloneList
同様に、上記の手順を使用して他のクローン グループの結果を確認できます。