DiscreteVariables

DiscreteVariables

NDSolveおよびその他の関数のオプションで,時間積分で離散時間でのみ変化する変数を指定する.

詳細

  • DiscreteVariables->{v1, v2,}は,v1, v2, を離散時間でのみ変化する変数として扱うように指定する.
  • 離散変数 v の値はWhenEvent[event,v->val]あるいはWhenEvent[event,v->"DiscontinuitySignature"]を通して変えることができる.
  • 離散変数解 vNDSolve[eqn,{v,},]を使って返すことができる.
  • DiscreteVariables->{vspec1,vspec2,}を使って離散変数の範囲を指定することができる.
  • vspeciの可能な形式
  • vv の領域はRealsまたはComplexes
    Element[v,Reals]v の領域はReals
    Element[v,Complexes]v の領域はComplexes
    Element[v,Integers]v の領域はIntegers
    Element[v,{n1,}]v は離散範囲{n1,}を持つ
    {v,vmin,vmax}v の範囲は v_(min)<=v<=v_(max)である
    vspeciactionivspeci が満たされなくなったときに actioniを実行する
  • 離散変数の時間についての導関数は,ほぼあらゆるところでゼロであり,方程式に使われるべきではない.
  • 偏微分方程式では,離散変数は半離散化の線の方法における時間独立変数にのみ依存することができる.

例題

すべて開くすべて閉じる

  (2)

について時間的に一定の間隔で変化する離散変数である を使って解く:

について が0と交差するたびに変化する離散変数である を使って解く:

スコープ  (7)

一定の時間間隔で離散変数を増分する:

解が0と交差するときに離散変数を増分する:

解が0と交差するときに複数の離散変数を同時に変更する:

今回は, を変更する前に の変更を実施する:

離散変数が離散範囲{1,2,3}の外に出たときに積分を中止する:

離散変数に連続的な範囲の外に出たときに積分を中止する:

変数が範囲外に出た場合にメッセージを表示するが,方程式の積分は続行する:

この初期条件もまた範囲外である:

離散変数は数値以外の値も取ることができる:

アクション"DiscontinuitySignature"を用いてスライディングモードによる解が得られるようにする:

ベクトル場と解をプロットする:

解がスライディングモードのとき,離散変数 の値は0である:

がスライディング不連続曲線 に達したときに不連続状態変数 を設定する:

アプリケーション  (5)

離散変数を使って微分方程式の2つの右辺を切り換える:

複数の右辺を切り換える微分方程式を設定する:

階段を弾みながら転がっていくボールのシミュレーションを行う:

ボールの運動,ポテンシャル,総エネルギーをプロットする:

離散時間コントローラ で安定化された の系のシミュレーションを行う:

波動方程式の における波の速さ を変える:

特性と関係  (1)

NDSolveは離散変数を使って,Signのような不連続関数を自動的に処理する:

"DiscontinuitySignature"を離散変数と一緒に使ってSign関数を模倣する:

考えられる問題  (3)

離散変数が範囲外に出ると,メッセージが表示され積分が中止される:

離散変数の導関数は,NDSolveに渡される方程式に含まれていてはならない:

"DiscontinuitySignature"アクションのある離散変数の範囲は{-1,0,1}でなければならない:

範囲が{-1,1}の場合は,スライディングモード解は求まらない:

スライディングモード解を求めるためには,範囲をElement[a,{-1,0,1}]として指定する:

Wolfram Research (2012), DiscreteVariables, Wolfram言語関数, https://reference.wolfram.com/language/ref/DiscreteVariables.html.

テキスト

Wolfram Research (2012), DiscreteVariables, Wolfram言語関数, https://reference.wolfram.com/language/ref/DiscreteVariables.html.

CMS

Wolfram Language. 2012. "DiscreteVariables." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/DiscreteVariables.html.

APA

Wolfram Language. (2012). DiscreteVariables. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/DiscreteVariables.html

BibTeX

@misc{reference.wolfram_2024_discretevariables, author="Wolfram Research", title="{DiscreteVariables}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/DiscreteVariables.html}", note=[Accessed: 15-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_discretevariables, organization={Wolfram Research}, title={DiscreteVariables}, year={2012}, url={https://reference.wolfram.com/language/ref/DiscreteVariables.html}, note=[Accessed: 15-November-2024 ]}