« Python+Sympy(数式処理)でZパラメータ(インピーダンス行列)からSパラメータに変換する。その2,行列とベクトルのまま計算する場合。非可換シンボル(commutative=False)を使う。 | トップページ | 新型コロナウイルス、中国、日本、韓国、アメリカ、ドイツ、フランス、イギリスでの感染者数を指数関数&ロジスティック関数&Log-Logプロットでべき関数フィッティングした(5/23更新) 日本も韓国も増加の一途。沖縄に緊急事態宣言もやむなしか。フランスはなぜか集計を変えてる。  »

2021年5月23日 (日)

Python+Sympy(数式処理)でZパラメータ(インピーダンス行列)からSパラメータに変換する。その3. S=(Z+Zo)⁻¹(Z-Zo)とS=(Z-Zo)(Z+Zo)⁻¹とどちらでもいいことを確認。

SパラメータとZパラメータの変換で、

S=(Z+Zo)⁻¹(Z-Zo)

と書いてあるケースと、

S=(Z-Zo)(Z+Zo)⁻¹

がある。ただしZoは特性インピーダンスZoが対角成分にある行列(ZoI, I=単位行列)行列なので一般には積の順番を変えると成り立たないが、この場合は成り立つ。

Sympyで見てみる。まずは2行2列の成分表示から。

Sympy202105232

S1==S2がTrueなので成り立ってる。ただ、、、simplify入れないとFalseになってしまうのでそこだけ注意が必要。

次はMatrixSympolを使ったN行N列の一般の場合。

Sympy202105242

これも成り立っている。

証明も付けておきます。

 

まずZoZ = ZZoなので

(Z + Zo)(Z - Zo) = (Z - Zo)(Z + Zo)

が成り立つ。この式に左側も右側も(Z+Zo)⁻¹をかけてみる。

(Z+Zo)⁻¹(Z + Zo)(Z - Zo)(Z+Zo)⁻¹ = (Z+Zo)⁻¹(Z - Zo)(Z + Zo)(Z+Zo)⁻¹

もちろん、 (Z+Zo)⁻¹(Z +Zo) = (Z + Zo)(Z+Zo)⁻¹ = Iなので

S = (Z - Zo)(Z+Zo)⁻¹ =  (Z+Zo)⁻¹(Z - Zo)
が成り立つということ。



 

« Python+Sympy(数式処理)でZパラメータ(インピーダンス行列)からSパラメータに変換する。その2,行列とベクトルのまま計算する場合。非可換シンボル(commutative=False)を使う。 | トップページ | 新型コロナウイルス、中国、日本、韓国、アメリカ、ドイツ、フランス、イギリスでの感染者数を指数関数&ロジスティック関数&Log-Logプロットでべき関数フィッティングした(5/23更新) 日本も韓国も増加の一途。沖縄に緊急事態宣言もやむなしか。フランスはなぜか集計を変えてる。  »

日記・コラム・つぶやき」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« Python+Sympy(数式処理)でZパラメータ(インピーダンス行列)からSパラメータに変換する。その2,行列とベクトルのまま計算する場合。非可換シンボル(commutative=False)を使う。 | トップページ | 新型コロナウイルス、中国、日本、韓国、アメリカ、ドイツ、フランス、イギリスでの感染者数を指数関数&ロジスティック関数&Log-Logプロットでべき関数フィッティングした(5/23更新) 日本も韓国も増加の一途。沖縄に緊急事態宣言もやむなしか。フランスはなぜか集計を変えてる。  »

最近の記事

最近のコメント

2021年9月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
フォト
無料ブログはココログ