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ニュース 2024年12月6日 NGMNが無線パフォーマンス評価フレームワーク発行、5GAAがC-V2Xのロードマップ発行、Marvellの3nm 1.6Tbps PAM4インターコネクト、Nokiaの2.4Tbps光伝送、Silicon Labsの低消費電力モジュール、Xiaomi 14T Pro分解動画(2024.12.06)
- 高周波回路シミュレータQucsStudioがuSimmicsに名称変更し、バージョンも4.8.3から5.8にアップデートされた。Qucsと区別するためだそうだ。また、Pythonの高周波用ライブラリscikit-rfもv1.5.0にバージョンアップされていた(2024.12.04)
- 日経サイエンス2025年1月号の特集 和算再発見の佐藤賢一さんの記事「算聖 関孝和の実像」に出てきた矢高に対する円弧の2乗の近似式をカシオの高精度計算サイトkeisan.casio.jpの自作式として作った。ものすごい精度であることがよくわかる。(2024.12.03)
- MATLAB Onlineで高周波基板設計用のRF PCB Toolboxを使ってみる。Coupled line バンドパスフィルタやratraceカプラが設計できる。モーメント法(MoM)や有限要素法(FEM)でちゃんと計算してくれているようだ。(2024.12.06)
- MATLAB Onlineで高周波用のRF Toolboxを使ってみる。Touchstoneファイルの読み込み、dB表示グラフ、スミスチャートなど簡単にできるし、フィルタ合成やIEEE P370 De-embedding(ZC-2xThru)も使える(MATLABで書かれたものがオリジナル)。(2024.12.05)
「日記・コラム・つぶやき」カテゴリの記事
- 高周波・RFニュース 2024年12月6日 NGMNが無線パフォーマンス評価フレームワーク発行、5GAAがC-V2Xのロードマップ発行、Marvellの3nm 1.6Tbps PAM4インターコネクト、Nokiaの2.4Tbps光伝送、Silicon Labsの低消費電力モジュール、Xiaomi 14T Pro分解動画(2024.12.06)
- 高周波回路シミュレータQucsStudioがuSimmicsに名称変更し、バージョンも4.8.3から5.8にアップデートされた。Qucsと区別するためだそうだ。また、Pythonの高周波用ライブラリscikit-rfもv1.5.0にバージョンアップされていた(2024.12.04)
- 日経サイエンス2025年1月号の特集 和算再発見の佐藤賢一さんの記事「算聖 関孝和の実像」に出てきた矢高に対する円弧の2乗の近似式をカシオの高精度計算サイトkeisan.casio.jpの自作式として作った。ものすごい精度であることがよくわかる。(2024.12.03)
- MATLAB Onlineで高周波基板設計用のRF PCB Toolboxを使ってみる。Coupled line バンドパスフィルタやratraceカプラが設計できる。モーメント法(MoM)や有限要素法(FEM)でちゃんと計算してくれているようだ。(2024.12.06)
- MATLAB Onlineで高周波用のRF Toolboxを使ってみる。Touchstoneファイルの読み込み、dB表示グラフ、スミスチャートなど簡単にできるし、フィルタ合成やIEEE P370 De-embedding(ZC-2xThru)も使える(MATLABで書かれたものがオリジナル)。(2024.12.05)
コメント
« ココイチでスパイスカレー 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分