主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

find_system.

システム,ブロック,ライン,端子,注釈の検索

变体オプションオプションは削除される予定予定代わり代わりにMatchFilterをを使てください。详细详细について,互换性についての考虑事项を参照してください。

说明

对象= find_systemは,サブシステムを含む,読み込ま読み込またシステムとそれらのを返します。

对象= find_system (系统は,指定指定されたたシステムそのブロックを返し返し

对象= find_system (名称,价值は,読み込まれたシステムと,1つ以上の名称,价值のペアの引数で指定された基準を満たすそれらのシステム内のオブジェクトを返します。この構文を使用して検索条件を指定し,特定のパラメーター値を検索できます。検索条件はパラメーターと値のペアの前に指定します。

对象= find_system (系统名称,价值は,指定されたシステムの指定された基準を満たすオブジェクトを返します。

すべて折りたたむ

読み込まれたすべてのシステムそのそのブロックブロックブロックをを返します。

load_system(“vdp”) find_system
ans =.15 x1细胞{vdp的}{‘vdp /常数’}{' vdp /更多信息'}{vdp /信息/模型信息的}{的vdp /亩}{的vdp / Mux} {vdp /产品的}{vdp /范围的}{vdp /平方的}{vdp /总和的}{的vdp / Sum1} {vdp / x1的}{vdp / x2的}{vdp /着干活的}{' vdp / Out2 '}

vdpを含む,読み込まれたシステムとライブラリ返します。

vdpシステムとそのブロックを返します。

load_system({“vdp”“ex_sldemo_clutch”})find_system(“vdp”
ans =.15 x1细胞{vdp的}{‘vdp /常数’}{' vdp /更多信息'}{vdp /信息/模型信息的}{的vdp /亩}{的vdp / Mux} {vdp /产品的}{vdp /范围的}{vdp /平方的}{vdp /总和的}{的vdp / Sum1} {vdp / x1的}{vdp / x2的}{vdp /着干活的}{' vdp / Out2 '}

読み込まれたモデル,サブシステム,およびライブラリの名前を返します。サブシステム名は,サブシステムを個別に読み込むことができる場合にのみ返されます。

load_system(“vdp”);find_system ('类型'“block_diagram”
ans =.1 x1单元阵列{' vdp '}

ex_sldemo_clutchシステム内の解锁サブシステムの子であるの转到ブロックブロック名前を返します。

load_system(“ex_sldemo_clutch”);find_system (“ex_sldemo_clutch /解锁”“SearchDepth”,1,“BlockType”'去'
ans =.2 x1细胞{“ex_sldemo_clutch /解锁/ Goto”}{' ex_sldemo_clutch /解锁/ Goto1 '}

The MathWorks, Inc.版权所有

vdpシステムを検索し,获得値が1に設定されているすべての获得ブロックの名前を返します。

load_system(“vdp”);find_system (“vdp”“BlockType”“获得”“获得”'1'
ans =.1 x1单元阵列{'vdp / mu'}

vdpシステム内ののすべてののと注釈のハンドルハンドルを取得し'找到所有'を使用すると,指定したシステムの検索方法に関係なく,ハンドルが返されます。

load_system(“vdp”);l = find_system(“vdp”'找到所有''在''类型'“行”
l =19×134.0044 33.0044 32.0044 31.0044 30.0044 29.0044 28.0044 27.0044 26.0044 25.0044⋮
a = find_system(“vdp”'找到所有''在''类型'“注释”
A =2×136.0044 35.0044

vdpシステムとex_sldemo_clutchシステムで値が0.のブロックダイアログボックスパラメーターを検索します。

load_system({“vdp”“f14”find_system ({})“vdp”“f14”},'blockdialogparams''0'
ans = 32×1单元阵列{' vdp /更多信息'}{vdp /信息/模型信息的}{vdp /范围的}{vdp / x2的}{vdp /着干活的}{vdp /着干活的}{的vdp / Out2}{的vdp / Out2} {f14 /飞机↵↵动态模型的}{' f14 /飞机↵动力学↵模型/垂直速度↵w(英国《金融时报》/ /秒)”}{' f14 /飞机↵动力学↵模型/垂直速度↵w(英国《金融时报》/ /秒)”}{' f14 /飞机↵动力学↵模型/速率↵q (rad//sec)'} {'f14/Aircraft↵Dynamics↵Model/Pitch Rate↵q (rad//sec)'}…

3.で始まるブロックダイアログパラメーター値をもつ,現在読み込まれているシステムの最上位にあるすべてのブロックを検索します。

load_system({“ex_sldemo_clutch”“vdp”});find_system (“SearchDepth”'1'“正则表达式”'在''blockdialogparams'' ^ 3 '
ans =.4x1细胞{' vdp /范围'}{vdp /范围的}{vdp /平方的}{' ex_sldemo_clutch / w '}

正規表現を使用して検索する場合は,一致させる文字ベクトルの一部を指定して,その文字ベクトルが含まれるすべてのオブジェクトを返すことができます。ex_sldemo_clutchモデルのすべての尺寸ブロックと外港ブロックを検索します。

load_system(“ex_sldemo_clutch”);find_system (“ex_sldemo_clutch”“正则表达式”'在'“blocktype”“端口”
ans =.39x1细胞{' ex_sldemo_clutch /摩擦……'}{“ex_sldemo_clutch /摩擦……'}{“ex_sldemo_clutch /摩擦……'} {'ex_sldemo_clutch/Friction Mode Logic/Tin'} {'ex_sldemo_clutch/Friction Mode Logic/Tfmaxs'} {'ex_sldemo_clutch/Friction Mode Logic/Break Apart…} {'ex_sldemo_clutch/Friction Mode Logic/Break Apart…} {'ex_sldemo_clutch/Friction Mode Logic/Break Apart…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…} {'ex_sldemo_clutch/Friction Mode Logic/Lockup…”}{' ex_sldemo_clutch /摩擦模式逻辑/禁售FSM /锁'}{' ex_sldemo_clutch /摩擦模式逻辑/ FSM锁定/解锁”}{' ex_sldemo_clutch /摩擦模式逻辑/禁售FSM /锁’}{' ex_sldemo_clutch /摩擦模式逻辑/必要的摩擦/锡'}{' ex_sldemo_clutch /摩擦模式逻辑/必要的摩擦/ Tf '} {' ex_sldemo_clutch /摩擦模式逻辑/锁'}{ex_sldemo_clutch /摩擦模式逻辑锁的}{ex_sldemo_clutch /摩擦模式逻辑/解锁的}{ex_sldemo_clutch /摩擦模式逻辑/ Tf的}{ex_sldemo_clutch /锁定/锡的}{ex_sldemo_clutch /锁定/ w的}{' ex_sldemo_clutch /解锁/ Tfmaxk '} {ex_sldemo_clutch /解锁/锡的}{ex_sldemo_clutch /解锁/我们的}⋮

この例では,mymodel.に,ライブラリリンクである単一のサブシステムが含まれています。モデルが最後に開かれた後に,ライブラリ内の対応するサブシステムに获得ブロックが加载されています。

モデルを开启ます。find_system.を,“关闭”に設定した'跟随链接'このコマンドは,サブシステムへライブラリリンク従わ,最上位サブシステムを返し返し返し返し返し返し返し返し返し返し

open_system (“myModel”)find_system(bdroot,“LookUnderMasks”'在''跟随链接'“关闭”
ans = 'myModel' 'myModel/子系统'

find_system.を,'在'に設定した'跟随链接'と共に使用します。find_system.はライブラリリンクを更新し,サブシステムのブロックを返します。

find_system(bdroot,“LookUnderMasks”'在''跟随链接''在'
更新链接:myModel/子系统/增益ans = 'myModel' 'myModel/子系统' 'myModel/子系统/增益'

find_system.にシステムをハンドルとして指定します。0.の値をもつブロックダイアログボックスパラメーターを検索します。同じブロックに対するget_paramを複数回呼び出す場合,ブロックハンドルを使用する方が,ブロックの絶対パスを文字ベクトルとして指定するよりも効率的です。

load_system(“vdp”);sys = get_param(“vdp”“处理”);find_system(sys,'blockdialogparams''0'
ans =.8×114.0046 14.0046 15.0046 15.0046

入力引数

すべて折りたたむ

検索検索システム。システムシステムの绝対名,システムシステムパス名の细胞配列,ハンドル,ハンドルのベクトルとしてします。

例:“MyModel / Subsystem1”

例:{“vdp”、“ex_sldemo_clutch”}

名前と値のペアの引数

オプションのコンマ区切りされた名称,价值ののペアを指定ますますここここ,的名字は引数名,价值は対応する値です。的名字は引用符で囲まなければなりません。Name1, Value1,…,的家のように,复数の名前とのペアののを任意の顺序で指定ますます。

例:‘SearchDepth’,‘0’,‘LookUnderMasks’,‘没有’,‘BlockType’,“转到”は,マスクマスクサブシステムを,読み込まれたシステムで转到ブロックを検索します。

关节find_system.を使用する場合,名称,价值のペアの引数には,検索条件およびパラメーター名と値のペアを含めることができます。検索条件は任意の順序で指定できますが,パラメーター名と値のペアの前に宣言しなければなりません。

ブロックパラメーターのリストの詳細については,ブロック固有のパラメーターを参照してください。

指定された値のブロックダイアログボックスパラメーターを検索するオプション。'blockdialogparams'と文字ベクトルまたは字符串スカラーで构成さコンマ区切りのペア指定しし。このペアは他検索検索条件に従わ従わなければなりませませんんませませ。

比较时代大文字と小文字を区别するオプション。'区分大小写'と,大文字と小文字を区别して検索ことを表す'在'または“关闭”で構成されるコンマ区切りのペアとして指定します。

システム内のライン,端子,注釈を検索に含めるオプション。'找到所有''在'または“关闭”このでオプションののししオプションオプションオプションオプションオプションオプションオプションオプションオプションオプションオプションオプションオプション'在'に设定されてている合书,系统引数の指定かかわらず,find_system.はハンドルのベクトルをますます。

最初の結果のみを返して検索を停止するオプション。“FirstResultOnly”'在'または“关闭”で構成されるコンマ区切りのペアとして指定します。

モデルで参照サブシステム内を確認し,“LookInsideSubsystemReference”'在'または“关闭”ででのののののの子ブロックリストオプションたたたオプションオプションオプションするオプション

ライブラリライブラリブロック内へへリンクをたどるたどる'跟随链接''在'または“关闭”で構成されるコンマ区切りのペアとして指定します。検索するシステムを指定しない場合,'跟随链接''在'または“关闭”のどちらに设定されてても,find_system.の结果には読み込まれたライブラリが含まれます。'跟随链接'“LookUnderMasks”と共に使用すると,サブシステムでライブラリリンクを更新できます。サブシステムのライブラリリンクを更新するを参照してください。

コメントコメント付きブロックをを検索に含める含める'包括''在'または“关闭”で構成されるコンマ区切りのペアとして指定します。

部部に読み込まれ任意モデルををオプション。“LoadFullyIfNeeded”と,モデルを読み込む'在'または読み込みを无效にする“关闭”で構成されるコンマ区切りのペアとして指定します。たとえば,読み込み関連の警告が表示されるのを防ぐために,このオプションを使用します。

マスク内を検索するオプション。“LookUnderMasks”と次のいずれかのでで成さコンマ切り切り切り

  • “图形”——ワークスペースやダイアログをもたないマスクサブシステムも検索します。

  • '没有任何'- マスクサブシステムを検索しません。

  • “功能”- ダイアログダイアログをもたないないマスクシステムも検索し

  • '全部'- すべてのマスクサブシステムををします。

  • '在'- すべてのマスクサブシステムををします。

  • “关闭”- マスクサブシステムを検索しません。

検索式を正規表現として取り扱うオプション。'regexp'と,検索式を正式表现として取り扱う'在'または“关闭”で构成される区切りののとして指定し.matlab®正規表現の詳細については,正規表現を参照してください。

指定されたレベルにの深さををするするするオプションオプション。“SearchDepth”と正の数量の文ベクトルベクトル字符串スカラーで构成さコンマコンマ区切りのペアとしてしししししししししししししするますするするするするする'0',最上位システムを構成するブロックとサブシステムを検索する場合は'1',最上位システムとその子システムを検索する場合は'2'を指定し。既定既定で,すべてのレベルを検索ますます。

バリアントを検索するオプション。'变体'と次のいずれかのでで成さコンマ切り切り切り

  • “ActiveVariants”-变体子系统内のアクティブなバリアントの选択のみを検索します。

  • “AllVariants”-变体子系统内内のすべてののバリアントのを検索しし选択を検索し

  • 'ActivePlusCodevariants'- シミュレーション内でアクティブであり,生成されたコードののである变体子系统内のすべてのバリアントの選択肢を検索します。

メモ

この検索条件は,[バリアント制御モード]表达式または标签に设定されている变体子系统ブロックにのみ适适ますれます。MatchFilterオプションを指定して关相关数find_system.をを使する,すべてすべてのタイプのバリアントブロック动作し。

ブロック,システム,ライン,端子,注釈など,検索内の要素に一致させる関数ハンドル。MatchFilterを使用して,検索で要素を含めるべきか,スキップすべきかどうかを決定します。

名前付き関数はMATLABプログラムファイル内で定義されていなければなりません。関数は要素のハンドルを入力として取り,2つの出力を返します。

功能[match, prune] = func(元素)
  • 入力元素は処理されているブロックのハンドルです。

  • 1つ目の出力匹配は逻辑値です。错误的の場合,検索で要素がスキップされます。

  • 2つ目の出力修剪は,元素がサブシステムである場合にのみ適用される,オプションの逻辑値です。既定値は错误的です。この値が真正的に設定されている場合,サブシステム全体が検索対象から除外されます。

次に例を示します。MatchFilterを使用して,独自のフィルター関数非禁止块を使用してモデル内のすべてのinport.ブロックと外港ブロック以外のブロックを検索します。

功能match = nonInOutBlocks(handle) match = true;如果比较字符串(get_param(句柄,“类型”),'堵塞')blocktype = get_param(句柄,“BlockType”);如果比较字符串(blockType'inport') | |...比较字符串(blockType'外港') match = false;结尾结尾结尾
load_system(“vdp”);黑色= find_system (“vdp”“MatchFilter”@nonInOutBlocks)

バリアント:金宝app仿真软件は,バリアントブロックに対してマッチフィルター関数金宝appSimulink.match.activeVariants金宝appSimulink.match.codeCompileVariantsを提供します。これらの関数を使用して,アクティブなバリアントやコードコンパイルのバリアントブロックを見つけることができます。これを行うには,モデルをコンパイルして,適切なMatchFilterオプションオプション适适。

  • 金宝appSimulink.match.activeVariants——モデルのコンパイル後にシミュレーションでアクティブなブロックと一致

  • 金宝appSimulink.match.codeCompileVariants——モデルのコンパイル後に生成されたコードの一部であるブロックと一致

例:金宝appSimulink.match.activeVariantsオプションオプション使使て,モデルモデルでアクティブなバリアントを検索し

AddPath(FullFile(Matlabroot,“例子”“金宝appsimulink_variants”'主要的'));模型=“sldemo_variant_subsystems”;load_system(型号);Assivein(“基地”“VSS_MODE”2);set_param(模型,“SimulationCommand”“更新”);activeBlks = find_system(模型,“MatchFilter”,@ 金宝appsimulink.match.activevariants);

例:金宝appSimulink.match.codeCompileVariantsオプションを使用して,生成されたCコードの一部であるバリアントの選択を検出します。

AddPath(FullFile(Matlabroot,“例子”“金宝appsimulink_variants”'主要的'));load_system(“sldemo_variant_subsystems”);Assivein(“基地”“VSS_MODE”2);sldemo_variant_subsystems ([], [], [],“compileForRTW”);activeBlks = find_system (“sldemo_variant_subsystems”“MatchFilter”, @金宝appSimulink.match.codeCompileVariants);sldemo_variant_subsystems ([], [], [],'学期');

出力引数

すべて折りたたむ

検出検出されたたする。

  • 系统をパス名またはパス名の细胞配列として指定した場合,またはシステムを指定しなかった場合は,パス名の细胞配列

  • 系统ををハンドルまたはハンドルののベクトルとして指定した场场,ハンドルハンドルの

互换性についての考虑事项

すべて展開する

R2021a以降は警告

R2021Aでの动作変更

R2006aより前に導入