« 京都、向日市のJRの車両基地でハローキティのはるかが止まっていた。 | トップページ | Pythonの高周波系のライブラリ scikit-rfを使ってみる(その2) TDR(Time Domain Reflectmetry)を試す。 »

2020年4月21日 (火)

Pythonの高周波系のライブラリ scikit-rfを使ってみる(その1) 何はともあれSパラメータを㏈表示する。とりあえずダイプレクサとトリプレクサでも。

PythonでSパラメータを表示したり、DeembedしたりTDRを実施したりできるライブラリがあります。

それがscikit-rf。

https://scikit-rf-web.readthedocs.io/

インストールはAnacondaを使っている人なら

https://scikit-rf-web.readthedocs.io/install.html

のように

conda install -c conda-forge  scikit-rf

だけでOK。pipの場合は pip install scikit-rf。

importは

import skrf as rf

とする。

さて、このライブラリのデータセットはNetworkという名前になっていて、

rf.Network('タッチストーンのファイル名')

のような形で読み込める。

例題は、TDKのセラミック高周波部品を使わしてもらおう。表示が面白いものを、、、

じゃあダイプレクサとトリプレクサかな。3ポートと4ポート素子なので、touchstoneの拡張子は

.s3pと.s4pになる。

https://product.tdk.com/info/ja/products/rf/index.html

これを以下のように読み込む。


diplexer=rf.Network('DPX165850DT-8086A1.s3p')
triplexer=rf.Network('TPX255850MT-7013A3.s4p')

表示するときは、まずはSパラメータの㏈表示をするときはそれぞれ、

diplexer.plot_s_db()

Diplexer1

triplexer.plot_s_db()

Triplexer1

うーん、全部表示しているのでぐちゃぐちゃになる、、、

一部だけ表示したいときは?パラメータのmとnを使うとS11,S21などが指定できる。

0から始まるときに注意。S11=> m=0, n=0 とか。


diplexer.plot_s_db(m=0,n=0)
diplexer.plot_s_db(m=1,n=0)
diplexer.plot_s_db(m=2,n=0)

とすると、

Diplexer2

同じくトリプレクサも

Triplexer2

だいぶましになってきた。

ここで

rf.stylely()

を使うと、もうちょっといい感じで描いてくれる。※warningがでますが。

こんな感じ。

Diplexer3

Triplexer3

さっきのを使わなくても、matplotlib.pyplotで表示するのと同じようにグラフを修飾できる。

(続く)

 

 

 

« 京都、向日市のJRの車両基地でハローキティのはるかが止まっていた。 | トップページ | Pythonの高周波系のライブラリ scikit-rfを使ってみる(その2) TDR(Time Domain Reflectmetry)を試す。 »

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

コメント

コメントを書く

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

« 京都、向日市のJRの車両基地でハローキティのはるかが止まっていた。 | トップページ | Pythonの高周波系のライブラリ scikit-rfを使ってみる(その2) TDR(Time Domain Reflectmetry)を試す。 »

最近の記事

最近のコメント

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        
フォト
無料ブログはココログ