行列の平方根(X^2 =AとなるX)をPython+SciPy(linalg.sqrtm)で計算。
ある行列Aがあって、A=X^2となるようなX,つまり行列の平方根の計算が必要となって調べてみた。
英語版のWikipediaに結構詳しく書いてある。
単純に成分の平方根を取ったらいいとかそんな簡単じゃなくて、
無限にあったり複数あったりなかったり、半正定値なら決まるとか、かなり面倒。
こういうのは既存のライブラリを使う方が簡単、ということでまずはmatlab。
sqrtmというのを使うようだ。
さらに同じsqrtmがSciPyでも使える。
どちらも同じアルゴリズム”Blocked Schur algorithms”を使っている。
こちらに説明があります。
ということで早速Pythonで計算してみよう。説明資料とmatlabの例を計算してみた。
scipy.linalg.sqrtmを使ってこんな感じで計算できる。
« Python+SymPy(ブロック行列)で2*NポートのSパラメータをTパラメータに変換(2) 4ポートの場合 | トップページ | Excel VBAで複素N×N行列(動的配列でNを決める)のさらに動的配列を作る方法(NポートSパラメータの周波数特性みたいな) »
「学問・資格」カテゴリの記事
- 高周波・RFニュース 2026年7月22日 IEEE Journal of Microwaves7月号発行、メクテックが薄型フレキシブル電波吸収体を開発、ミニサーキットが33GHz信号発生器発表、Redmi Note 17 Pro分解動画など(2026.07.22)
- Qwen 3.8 Max PreviewでPythonのscikit-rfを使ってTouchstoneフォーマットのSパラメータファイルを読んでdB, 位相, スミスチャート, TDRを表示するGUIアプリを作成。何度か修正お願いするとものすごく長い思考とものすごい数のウェブ検索をして完成した。(2026.07.22)
- RF Weekly Digest (Codexで作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/7/12-7/19(2026.07.19)
「日記・コラム・つぶやき」カテゴリの記事
- 高周波・RFニュース 2026年7月22日 IEEE Journal of Microwaves7月号発行、メクテックが薄型フレキシブル電波吸収体を開発、ミニサーキットが33GHz信号発生器発表、Redmi Note 17 Pro分解動画など(2026.07.22)
- Qwen 3.8 Max PreviewでPythonのscikit-rfを使ってTouchstoneフォーマットのSパラメータファイルを読んでdB, 位相, スミスチャート, TDRを表示するGUIアプリを作成。何度か修正お願いするとものすごく長い思考とものすごい数のウェブ検索をして完成した。(2026.07.22)
- RF Weekly Digest (Codexで作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/7/12-7/19(2026.07.19)
« Python+SymPy(ブロック行列)で2*NポートのSパラメータをTパラメータに変換(2) 4ポートの場合 | トップページ | Excel VBAで複素N×N行列(動的配列でNを決める)のさらに動的配列を作る方法(NポートSパラメータの周波数特性みたいな) »



コメント