年も明けたことだし今回からPythonの自作ライブラリに関する記事は開発日記と題してナンバリングしていきたい。管理しやすいのと進捗が一目見ればわかるのと、こと今年に限ってはどれだけ博論執筆をさぼっているのが可視化されるのが良いから(よくない)
開発中のライブラリが今のところ二つあって、
RF回路解析用ライブラリmaia (microwave analytical integrated-design assistant)
RF数値計算用ライブラリsana (smart aid for high-frequency numerical analysis)
maiaはRF回路理論と既存のRF系ライブラリscikit-rfと回路描画ライブラリschemdrawを組み合わせて高周波回路設計(アンテナ、フィルタ、整合回路や伝送線路(マイクロストリップや導波管等)特性解析)に役立ちそうな機能のあれこれを実装していく予定。以前の記事でも機能のひとつ(はしご型LC回路を用いたローパスフィルタとバンドパスフィルタ)について取り上げた。そのうちPyQtとかも利用してGUIも自分でデザインできたらいいですな。あと、高周波回路の参考書としては超良書のPozarとBalanisの各章末問題はけっこう現実問題に即したお題が多いので、これらのライブラリを利用して解いたものをJupyter NotebookかPDFにしてgithubにのっけていく予定。(言語はたぶん最初英語、そのうち日本語、ドイツ語でも書きたい)
sanaはRF数値計算用ライブラリとしたいけど正直まだ自分で作りたいものの全体像をつかめていない。というか、こちらはまだまだ勉強することも多いので、勉強しながら進めていく予定。具体的には、RF数値計算問題は媒質中の電波伝搬を記述するためのヘルムホルツ方程式、あるいはラプラス方程式を伝送線路構造(マイクロストリップとかスロット線路とか導波管とか誘電体導波管とか)の導体・誘電体の境界・連続条件に基づいて解くのがほとんどなのでそれらを解くためのツールを実装したい。去年、伝送線路特性(伝搬定数)を計算するためのFinite-Difference-Method (FDM)法とかグリーン関数を使ったMoM (Method-of-Moment)法はPythonでちょこちょこやっていたのでまずはそれらをまとめて使いやすくしたうえでgithubに投げるのが当面の目標。こちらも最近、超良書のCollinを中古200ユーロで購入したので章末問題の解答をNotebookにのっけていくのもよい勉強になるのでやるかも。
既存のHFSSとかCSTといった有償フルウェーブ解析ソフトのような仰々しいものは最初から作れる気はしないのであくまで特定の(需要ありそうな)問題に焦点を当てて強みを出せるようなものを作れたらと思う。最終的にはmaiaとsanaを組み合わせて数値解析解を回路設計に自由に組み込めるとか何かまったく新しい問題(研究課題)にチャレンジできるようになればそれも超面白いと思います。
まぁ今年はそんな感じで研究とD論執筆と並行してこちらの開発もちょくちょく進めていきます。
終わり
コメント