見出し画像

大学院での電磁界シミュレーション研究手法: 一般論と各論

はじめに

私は現在、大学院修士2年で電磁界シミュレーションの研究を行っています。修士課程から高速大容量通信に興味があり、特にテラヘルツ帯のアンテナ設計に取り組んでいます。


一般論: シミュレーション研究の基本手法

シミュレーションの課題管理

シミュレーション研究を始めた当初は、進捗管理が困難でした。シミュレーションには長い時間がかかるものもあり、10時間以上、時には1日以上かかることもあります。また、同時に複数のパラメータを変更してシミュレーションを実行するため、その時の意図を忘れてしまい、時間をかけたにもかかわらず結果がよくわからないデータになってしまうことがありました。

この問題を解決するために、以下の手法を取り入れました。

1. 目標の明確化と進捗の記録

  • 目標の明確化: シミュレーションの目的と期待する結果を明確にし、実行前に記録します。

  • 進捗の記録: シミュレーションごとの進捗を記録し、後から参照できるようにします。Google Docsを使用して日々の目標と進捗を記録しています。


google docs 見出し
google docs 日誌


2. 結果の整理と活用

シミュレーション結果を整理し、後で容易に参照できるようにするために、以下の方法を採用しました。

  • ファイル命名規則: ファイル名にタイムスタンプやバージョン番号を入れて、いつ作成されたかを明確にします。

  • 図の保存と共有: 重要なグラフやシミュレーション結果をPowerPointで作成し、それをGoogle Docsに貼り付けて管理します。また、指導教員との議論にはSlackを利用し、Google Docsに貼った図をスクリーンショットして共有します。この際、図を作成するためのコストを惜しまず、受け手である指導教員の認知負荷を下げるように努めています。これにより、指導教員が忙しい中でも、ぱっと見て理解しやすい資料を提供することができます。結果的に、これが論文でもわかりやすく、査読に通りやすい資料作成につながると思います。

Powerpointで図のまとめ

3. 自動化の活用

手動の作業を減らし、効率を上げるために自動化を積極的に取り入れます。

  • スクリプトとマクロ: 私はCST Studio SuiteをPython APIで制御し、.pyファイルを実行するとCSTが自動的に開き、モデル作成、シミュレーション実行、保存までを行うスクリプトを開発しました。この際、前述のファイル命名規則に基づいてタイムスタンプを自動的に付与する機能も組み込んでおり、非常に便利です。もし需要があれば、環境構築の過程をYouTubeに公開することも考えています。すでに以下のリンクの動画が参考になりますが、私のプロセスも共有できればと思います。

  • コード管理と共有: 私が修士1年で研究室に入ったとき、これまでの研究室のコードはGoogle Driveや個々のマシンのローカルストレージに分散して保存されており、管理が難しかったため、GitHubのリポジトリを新たに導入し、人ごとにブランチを切って開発する方針にしました。これにより、コードの一元管理と再利用が容易になりました。大学の研究では各自が異なる機械を制御することが多く、githubでの管理が集団での開発には向かないという意見もありますが、コードをアーカイブとして残しておくことに大きな意義があると考えています。


各論: 電磁界シミュレーション特有の手法

4. 段階的なモデリング

すべてを一度にシミュレーションするのではなく、段階的に進めることで精度を高めます。モデルを段階的に構築し、小さなステップで検証を行いながら進めます。この手法は、他のシミュレーション分野にも適用可能です。

5. メッシュの最適化

シミュレーションの計算時間を短縮するために、メッシュの細かさを適切に設定します。

  • メッシュ設定: CST Studio Suiteではデフォルトで波長の1/15のメッシュ細かさが設定されていますが、必要に応じて波長の1/10に変更することで計算負荷を軽減できます。これにより、計算時間が約3.4倍短縮されることがあります。

6. 対称条件の活用

シミュレーション時間を短縮するために、電気・磁気対称条件を適用します。

  • 対称条件の設定: 対称性を活用できる場合は、対称条件を適用して計算時間を半分にすることが可能です。


まとめ

進捗管理システムを一度構築できれば、人間が必要以上に困らずに研究を進められます!


この記事が気に入ったらサポートをしてみませんか?