« ココイチでスパイスカレー THEポークを食す。 | トップページ | 完璧なゆで卵の作り方方程式(Peter Barhamによる)をカシオの高精度計算サイトkeisan.casio.jpにUP! »

2018年3月21日 (水)

Python+SympyでMixed mode Sパラメータ(differential/common)を代数的に求める(1)

急にMixed mode Sパラメータの計算が必要になった。もちろん、

こういうところから適当に式を持ってきてもいいのだが(ってこれ誤植がMにある)、
一応ちゃんと計算しておこうと思ったが、もう手計算に全く自信なし。
ここは最近使っているPythonのSympyで確認しよう。
まず、ポート1とポート2のMixed mode (differential/Commonと言ってもいいし、Balance/Unbalanceと言ってもいい)を計算する。
ポート1の入射波をa1、反射波をb1、ポート2の入射波をa2、反射波をb2とし、
differential modeの入射波をadiff, 反射波をbdiff、
common modeの入射波をacom, 反射波をbcomと置く。
Mixedモードの定義に従ってSympyで書くと、
from sympy import *
v1, v2, i1, i2=symbols('v1 v2 i1 i2')
vdiff, vcom, idiff, icom=symbols('vdiff vcom idiff icom')
a1, a2, b1, b2=symbols('a1 a2 b1 b2')
adiff, acom, bdiff, bcomm=symbols('adiff acom bdiff bcom')
Zo, Zdiff, Zcom=symbols('Zo Zdiff Zcom')
init_printing()
x=solve([a1-(v1+Zo*i1)/sqrt(Zo),b1-(v1-Zo*i1)/sqrt(Zo)],[v1,i1])
v1=x[v1]
i1=x[i1]

y=solve([a2-(v2+Zo*i2)/sqrt(Zo),b2-(v2-Zo*i2)/sqrt(Zo)],[v2,i2])
v2=y[v2]
i2=y[i2]
vdiff=v1-v2
idiff=(i1-i2)/2

vcom=(v1+v2)/2
icom=(i1+i2)

Zdiff=2*Zo
Zcom=Zo/2

adiff=(vdiff+Zdiff*idiff)/sqrt(Zdiff)
bdiff=(vdiff-Zdiff*idiff)/sqrt(Zdiff)

acom=(vcom+Zcom*icom)/sqrt(Zcom)
bcom=(vcom-Zcom*icom)/sqrt(Zcom)

となる。

さて、これでadiff, acomなどをa1,a2などで表してみよう。
Mixedmode1
一瞬で計算できた!
なので変換行列Mを
M=1/sqrt(2)*[[1 -1],
                   [1, 1]]
とし、Sパラメータを
[[b1],    = [[S11,S12],   [[a1],
[b2]]        [S12,S22]]   [a2]]
で定義すると、変換後のSパラメータ Smixは
Smix = M S M-1

と計算できる。これを使えば4ポートのMixedモードもすぐに計算できる(それは次回のその2、で)。

« ココイチでスパイスカレー THEポークを食す。 | トップページ | 完璧なゆで卵の作り方方程式(Peter Barhamによる)をカシオの高精度計算サイトkeisan.casio.jpにUP! »

学問・資格」カテゴリの記事

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

コメント

Great write-up, I’m normal visitor of one’s blog, maintain up the nice operate, and It is going to be a regular visitor for a long time.

コメントを書く

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

トラックバック

« ココイチでスパイスカレー THEポークを食す。 | トップページ | 完璧なゆで卵の作り方方程式(Peter Barhamによる)をカシオの高精度計算サイトkeisan.casio.jpにUP! »

最近の記事

最近のコメント

2024年12月
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 31        
フォト
無料ブログはココログ