・状態方程式                           田中氏

 離散時間での制御工学の状態方程式についての質問です。kは整数です。

  x1[k + 1] = (0.4)*x1[k] + (0.03)*x2[k] + u[k]

  x2[k + 1] = x1[k] + (0.2)*x2[k]

  y[k] = x2[k]

のときに、入力が u[k] = ε[k]*(-0.1)^k の場合の出力y[k]を求める問題なのですが、まず
最初に固有値を求めて、 λ1 = 0.1、λ2 = 0.5 となり、一般解が

  y[k] = C1(0.1)^k + C2(0.5)^k

 次に、特殊解を x1p、x2p とすると、x1p[k] = A*(0.1)^k 、x2p[k] = B*(0.1)^k となり、これ
を解くと、 A = -(5/2) 、B = 25 / 3 となります。

 このとき、初期値を求める前の一般解は、

  y[k] = c1*(0.1)^k + c2*(0.5)^k + (25/3)*(-0.1)^k

となるのですが、もし、最初の状態方程式が y[k] = x2[k] ではなく、y[k] = x1[k] + x2[k] だっ
た場合、

  y[k] = c1*(0.1)^k + c2*(0.5)^k + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

となるのか、

  y[k] = 2 *{c1*(0.1)^k + c2*(0.5)^k} + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

となるのか、または別の答えになるのかお尋ねしたいです。よろしくお願いします。


 DD++さんからのコメントです。(平成29年10月21日付け)

 上式の2つ、同じなのでは。すなわち、一般解というのは初期条件の差を任意定数という形
で表したものでしかなく、それをどのように表すかは、きちんと解を網羅している限り自由です。

 上の式と下の式では同じ初期条件に対して c1 や c2 の値が倍変わってきて、最終的に初
期条件まで入れた解は同一の式になるはずです。


 りらひいさんからのコメントです。(平成29年10月21日付け)

 DD++さんが先に答えてくださいました。わたしもどちらでもいいと思います。

  y[k] = 2 *{c1*(0.1)^k + c2*(0.5)^k} + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

という式がどこから出てきたのかわからないですけど。
想像はつきますが、もし私の想像通りの場合は今一度解答を吟味されることをお勧めします。別々の問題の答
 えをそのまま直接いっしょくたにはできません。まあ、間違っているわけではないので、問題ないといえばないの
 ですが…。)

  y[k] = (-0.1+1)*c1*(0.1)^k + (0.3+1)*c2*(0.5)^k + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

とか

  y[k] = (1-10)*c1*(0.1)^k + (1+10/3)*c2*(0.5)^k + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

というような式なら出所がまだわかります。

 まあ、 y[k] = c1*(0.1)^k + c2*(0.5)^k + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

 この式がシンプルで見やすいと思います。まとめて、

  y[k] = c1*(0.1)^k + c2*(0.5)^k + (35/6)*(-0.1)^k

がよりシンプルかな。どの形であっても間違っているわけではないです。


 田中さんからのコメントです。(平成29年10月21日付け)

 DD++さん、回答ありがとうございます。

 そのことについてお聞きしたいのですが、初期条件は、y[0] = y[1] = 0 とすると、c1とc2の
値が上の式と下の式で変わってきますが、微分方程式の解としては答えは同じという意味で
しょうか?(質問がわかりにくくてすみません。)

 言い忘れてしまったのですが、この微分方程式は線形微分方程式です。

 例えば、上の式で解くと、求めたc1とc2の値を代入して、解は、

  y[k] = (-25/2)*(0.1)^k + (25/6)*(0.5)^k + (25/3)*(-0.1)^k

となるのですが、下の式で解くと、c1とc2の箇所の値が異なってきます。しかし、微分方程式
の解という意味ではc1とc2の箇所の値が異なっても同じという意味でしょうか?それとも、確
かに、c1とc2は任意定数なので、2*c1= c1'と置くことも可能(?)ということで、上の式と下の
式が(初期条件を使った任意定数の計算前に)同じになるという意味でしょうか?


 すみません。 y[k] = c1*(0.1)^k + c2*(0.5)^k + (25/3)*(-0.1)^k

          y[k] = 2 *{c1*(0.1)^k + c2*(0.5)^k} + (25/3)*(-0.1)^k

で計算していました。

  y[k] = c1*(0.1)^k + c2*(0.5)^k + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

  y[k] = 2 *{c1*(0.1)^k + c2*(0.5)^k} + (25/3)*(-0.1)^k - (5/2)*(-0.1)^k

で、初期条件 y[0] = y[1] = 0 で計算すると、上の式だと、c1 = 55/12、c2 = -(5/4) で、下の
式だと、c1 = 55/24、c2 = -(5/8) でした。

 りらひいさん、回答ありがとうございます。質問があいまいで(そもそも制御工学で純粋な数
学ではないので)わかりにくくてすみませんでした。


 DD++さんからのコメントです。(平成29年10月21日付け)

 これらを代入すれば同じ式になりますよね。どの初期条件でもこうなるので、一般解として
は同じものということになります。


 田中さんからのコメントです。(平成29年10月22日付け)

 確かに同じ一般解になりました。下の式の代入時に2をかけるのを忘れていました。微分
方程式は、あまりよく理解していなくて、今まで解き方を丸暗記していたのですが、理解が進
みました。ありがとうございました。



                         投稿一覧に戻る