Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

strace

ソルバーのトレース レベルを設定する

構文

strace level
i

説明

strace level を使用すると、level の値に応じて、ソルバーは MATLAB® コマンド ウィンドウに診断情報を表示します。値は、0 (情報なし) または 1 (タイム ステップ、積分ステップ、ゼロクロッシング、ソルバー リセットに関する詳細な情報) です。

i は、コマンドの省略形です。

Simulink® デバッガーを使用して、モデル vdp のシミュレーションに関する詳細な情報を表示します。

  1. MATLAB コマンド ウィンドウで次を入力します。

    sldebug 'vdp'

    MATLAB コマンド プロンプト >> は Simulink デバッガー プロンプト (sldebug @0): >> に変わります。

  2. 表記に関する情報を取得します。次を入力します。

    help time

    MATLAB コマンド ウィンドウに、以下が表示されます。

    Time is displayed as:
     TM = <time while in MajorTimeStep>
     Tm = <time while in MinorTimeStep>
     Tr = <time while in solver reset>
     Tz = <time at or just after zero crossing>
     TzL = <time while in major step just before (at left post of) zero crossing>
     TzR = <time while in major step at or just after (at right post of) zero crossing>
     Ts = <time of successful integration step>
     Tf = <time of failed integration step>
     Tn = <time while in Newton iteration> (when using implicit solvers)
     Tj = <time during Jacobian evaluation> (when using implicit solvers)
     
    Step size is displayed as:
     Hm = <step size at the start of solver phase>
     Hs = <successful integration step size>
     Hf = <failed integration step size>
     Hn = <step size during Newton iteration> (when using implicit solvers)
     Hz = <value of 'TM - TzL' during zero crossing search>
     Iz = <value of 'Tz - TzL' during zero crossing search>
  3. すべての情報を表示するようにトレースを設定します。次を入力します。

    strace 1

    診断トレースがオンの場合、デバッガーはメジャー タイム ステップとマイナー タイム ステップの開始を表示します。

    [TM = 13.21072088374186 ] Start of Major Time Step
    [Tm = 13.21072088374186 ] Start of Minor Time Step

    デバッガーは、積分情報について表示します。積分情報には、積分法のタイム ステップ、積分法のステップ サイズ、積分ステップの結果、正規化誤差、状態のインデックスが含まれます。

    [Tm = 13.21072088374186 ] [H  = 0.2751116230148764 ] Begin Integration Step
    [Tf = 13.48583250675674 ] [Hf = 0.2751116230148764 ] Fail  [Er = 1.0404e+000]
    	[Ix = 1]
    [Tm = 13.21072088374186 ] [H  = 0.2183536061326544 ] Retry
    [Ts = 13.42907448987452 ] [Hs = 0.2183536061326539 ] Pass  [Er = 2.8856e-001] 
    	[Ix = 1]

    ゼロクロッシングの発生時には、デバッガーは反復検索アルゴリズムに関する情報を表示します。この情報には、ゼロクロッシングのタイム ステップ、ゼロクロッシング検出アルゴリズムのステップ サイズ、ゼロクロッシングを囲い込む時間区間の長さ、ゼロクロッシングの立ち上がりまたは立ち下がりの方向を示すフラグが含まれます。

    [Tz = 3.615333333333301 ] Detected 1 Zero Crossing Event 0[F]
                             Begin iterative search to bracket zero crossing event
    [Tz = 3.621111157580072 ] [Hz = 0.005777824246771424 ] [Iz = 4.2222e-003] 0[F]
    [Tz = 3.621116982080098 ] [Hz = 0.005783648746797265 ] [Iz = 4.2164e-003] 0[F]
    [Tz = 3.621116987943544 ] [Hz = 0.005783654610242994 ] [Iz = 4.2163e-003] 0[F]
    [Tz = 3.621116987943544 ] [Hz = 0.005783654610242994 ] [Iz = 1.1804e-011] 0[F]
    [Tz = 3.621116987949452 ] [Hz = 0.005783654616151157 ] [Iz = 5.8962e-012] 0[F]
    [Tz = 3.621116987949452 ] [Hz = 0.005783654616151157 ] [Iz = 5.1514e-014] 0[F]
                             End iterative search to bracket zero crossing event

    ソルバー リセットが起こると、デバッガーはソルバーがリセットされた時間を表示します。

    [Tr = 6.246905153573676 ] Process Solver Reset
    [Tr = 6.246905153573676 ] Reset Zero Crossing Cache
    [Tr = 6.246905153573676 ] Reset Derivative Cache

R2006a より前に導入