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などで表してみよう。
一瞬で計算できた!
なので変換行列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! »
「学問・資格」カテゴリの記事
- 高周波(RF・マイクロ波・ミリ波・5G)関連ニュース2021年2月16日 IEEE Microwave Magazineの特集はオールデジタルのRFID、Microwave JournalはEバンド ミリ波通信に衛星や気球を使う話、アメリカの半導体企業がバイデンに投資を迫る、(2021.02.17)
- カオスを生じる電気回路、Chua’s circuitをLTspiceで回路シミュレーションしてみる。(2021.02.19)
- Labyrinth Chaos(迷宮カオス)を生むThomas-Rössler方程式のパラメータbを色々変えて、Python+Scipyでルンゲクッタ8次のDOP853(Dormand&Prince)を使って計算してGIFアニメ(2021.02.16)
- フィッツヒュー・南雲 (FitzHugh-Nagumo) 方程式をPython+Scipyでルンゲクッタ8次のDOP853(Dormand Prince)で計算。(2021.02.23)
- 「水晶振動子の等価回路計算」をカシオの高精度計算サイトkeisan.casio.jpの自作式としてUP! インピーダンスの大きさと位相がグラフ化できる。(2021.02.12)
「日記・コラム・つぶやき」カテゴリの記事
- ExcelのLET関数+SEQUENCE関数で数値計算シリーズ(その5)ワンライナーでラマヌジャンの円周率公式を使って計算する。n=2で収束した。(2021.03.01)
- mRNAワクチンやCRISPR cas9のことが全然わからんので昔買ったブルーバックスの「アメリカ版 大学生物学の教科書」を3巻まで読む、、、と思ったら11年ぶりに完全改訂されたものが出てた!(2021.03.02)
- 新型コロナウイルス、中国、日本、韓国、アメリカ、ドイツ、フランス、イギリスでの感染者数を指数関数&ロジスティック関数&Log-Logプロットでべき関数フィッティングした(2/28更新)さすがにどの国も伸びは鈍ったか。(2021.03.01)
コメント
« ココイチでスパイスカレー 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.
投稿: erectile dysfunction clinics | 2018年4月18日 (水) 23時47分