アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下の行列Aの固有値に対して、最大実部を与えるkの値を求めたいです。
A=[[1-0.01*k^2,1],[-4,-k^2-2]]※1
ただし仮定としてAのトレースは負であるとします。

固有値をλとした場合、以下の固有方程式が得られます。
λ^2-tr(A)+det(A)=0※2
そのため、固有値は以下のようなkを含んだ式で表されます※3。
λ=0.5(tr(A)+sqrt(tr(A)^2-4*det(A)))
λの実部が最大化する場合は、det(A)が最小の場合であり、
det(A)
=(1-0.01*k^2)*(-k^2-2)+4
=0.01*k^4-0.98*k^2+2
より、k^2=49の場合にdet(A)が最小になり、λが最大化すると思うのですが合っていますか?
pythonで答えを確かめたところ、k=4の場合に固有値の実部が最大化したのですが、どこか間違っているのでしょうか。
どなたかご教授頂けると幸いです。
どうぞよろしくお願い致します。

※1 行列Aはpythonの書き方を参考にしており、例えば最初の[]内には1行目の要素が順番に入っています。
※2 tr: トレース、det: 行列式を表します。
※3 tr(A)が負であり、最大固有値に興味があるので、ルート(sqrt関数で表記)の前の符号は+に限定します。

A 回答 (3件)

> A=[[1-0.01*k^2,1],[-4,-k^2-2]]



  x = k^2
と考えたほうが楽だと思う。

> λの実部が最大化する場合は、det(A)が最小の場合

はおかしいな。
  λ = (tr(A) + sqrt(D))/2
  D = tr(A)^2 - 4det(A)
だから、実部Reλは
  Reλ = if D>0 then λ else tr(A)/2
そしてtr(A)は定数じゃないのだから、
  dλ/dk = 0 (あるいは dλ/dx = 0)
を真面目に解かなくちゃ。
    • good
    • 0
この回答へのお礼

これっぽいですね。ありがとうございました!

お礼日時:2022/11/08 23:39

A の固有方程式 λ^2 - tr(A)λ + det(A) = 0 の判別式は、


D = { tr(A) }^2 - 4 det(A)
 = { (1-0.01k^2)+(-k^2-2) }^2 - 4{ (1-0.01k^2)(-k^2-2)-1(-4) }
 = 0.9801k^4 + 5.94k^2 - 7
 = 0.9801(k^2 + 3.0303)^2 - 16
 ≧ 0.9801(0 + 3.0303)^2 - 16
 = -7.
D ≧ 0 のときは、固有値はふたつとも実数になって
Reλ = λ だが、
大きいほうの固有値は λ = { tr(A) + √(tr(A)^2 - 4det(A)) }/2.
-7 ≦ D < 0 のときは、固有値は共役複素数となって、
その実部は Reλ = tr(A)/2.
質問文中の答案は、この場合分けをしていない。
    • good
    • 0
この回答へのお礼

ありがとうございました!

お礼日時:2022/11/08 23:39

「λの実部が最大化する場合は、det(A)が最小の場合」の理由がわからない.

    • good
    • 0
この回答へのお礼

ありがとうございました!

お礼日時:2022/11/08 23:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!