メインコンテンツに移動

S11とVSWR

S11とVSWRを描く

ついでにS11とVSWRも描かせてみる。同じs集団の中に、plot_s_dbとplot_s_magというのがあったので。それを使った。

​import numpy as np
from matplotlib import pyplot as plt
import skrf as rf

ntwk1 = rf.Network('test.s1p');

fig=plt.figure();
plt.subplot(2,2,1);
ntwk1.plot_s_smith(draw_labels=True,show_legend=False,label='sminof test');

ax=plt.subplot(2,2,2);
ntwk1.plot_s_mag(label='sminof test',attribute='s_vswr');
plt.ylim([1,11]);
plt.ylabel('VSWR');
plt.xlim([500e6,1.0e9]);
plt.yticks(np.arange(1, 11 + 1, 1));
plt.xticks(np.arange(500e6, 1e9+1, 250e6));
ax.grid();

ax=plt.subplot(2,1,2);
ntwk1.plot_s_db(label='sminof test');
plt.xlim([0.8e9,1.0e9]);
plt.ylim([-50,0]);
plt.ylabel('S11(dB)');
ax.grid();

swrを描くのに、plot_s_magにして引数に、attribute='s_vswr'を指定するのがミソかしら?

周波数軸の表記

上記の絵だとS11やSWRの周波数軸が指数で見づらい。GHz、MHz単位でできんものだろうか。APIを見ているとこの記載を見つけた。

ntwk1.frequency.unit='Ghz';

他のパラメタでもできるみたいだけど、その時に指定が'Ghz'だったり、'ghz'だったりする、これはバージョンによるものだったりもして、イライラする。こういうところもPythonが好きになれない理由だな!

コメントを追加

Plain text

  • HTMLタグは利用できません。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。
  • 行と段落は自動的に折り返されます。