電磁界シミュレータを作ったあと、具体的な目標として、ある論文の図を再現してみることにしました。
題材は IMS 2025 の Guo らによる Dall-EM(Princeton 大学)です。画像生成と同じ拡散モデルを使い、目標の S パラメータを満たす回路パターンを生成するという研究です。パターンは 18×18 のピクセルで表され、各ピクセルは導体か空きかの 2 値です。論文の Fig. 3 には、生成されたローパス・バンドストップ・バンドパスのフィルタが、HFSS で計算した 10〜30 GHz の特性と一緒に載っています。
18×18 のピクセルという形は、このシミュレータのグリッドとそのまま対応します。ここでは Fig. 3(a) のローパスフィルタ(10〜15 GHz を通し、16〜30 GHz を落とす)を扱います。
条件の決め方
論文の本文には、基板の厚さや誘電率、全体の寸法の記載がありません(「Rogers の基板」とだけあります)。図に描かれた 2 mm の寸法を 18 ピクセルで割り、1 セル = 111.1 µm としました。基板は Rogers の代表的なもの(εr = 3.66、厚さ 167.64 µm、銅 35 µm)を仮定しています。
この「物理寸法が先に決まっている」状況に合わせて、セル寸法を µm で直接入れる「長さ指定」を追加しました。もとの仕様では、セル寸法を周波数とセル/波長から逆算させる必要があったからです。
パターンは論文の図から読み取って、そのまま入力しました。
信号がまったく通らない
最初の計算結果は、通過域であるはずの 10〜15 GHz で S21 ≈ −77 dB でした。フィルタどころか、入力と出力がつながっていません。
パターンを調べると、原因はすぐに分かりました。角だけで接しているセルが 32 か所あり、P1 から P2 への経路はすべて、そのどれかを通らないとつながらない形になっていました。
■ □
□ ■ ← 左上と右下のセルは、角の 1 点だけで接しているモーメント法の屋根形の基底関数は、辺を共有する 2 つのセルの間に電流を流すものです。角の 1 点で接するセルの間には、辺がないので基底が張られず、電流が流れません。接点の幅が 0 なので、物理的にも「幅 0 の導体」は電流を運べません。
つまりこれは解き方ではなく、形が退化していることの問題です。HFSS のような別の解法でも、何らかの幅として扱わない限り同じことが起きます。実際の基板では、エッチングのあとに細い首が残ってつながるか、切れて開放になるかのどちらかです。論文の特性はつながっている前提なので、首が残っているとして扱う必要があります。
角に正方形の導体片を置く
そこで、角接触の点を中心とする一辺 s の正方形の導体片を形に加え、同じモーメント法で解くことにしました。片の縁が計算メッシュの分割線に乗るように、分割の位置を調整しています。
正方形ではなく、45° 回した菱形の方が自然な首に見えるかもしれません。対角に 18 セル並んだ線路(角接触が 17 か所直列)で比べると、
- 菱形(中心から頂点まで s)と正方形(一辺 s)の S21 の差は 0.13 dB 以内。どちらも一番細いところの幅は s√2 で同じ
- 菱形は斜めの縁を階段で近似するので分割線が盤面全体に増え、未知数が 286 から 2938(4 段の階段)に膨らむ
ことが分かりました。s は「首の実効的な幅」と考えればよく、今の分割の方式では正方形の方が適切です。
幅をいくつにするか
首の実際の幅は製造条件で決まるので、本来は製造側の情報が要ります。分からない場合にどれだけ結果が変わるかを、幅を変えて確かめました(自動メッシュ、201 点)。
| 幅 s | s / セル | 未知数 | S21 が −3 dB | S21 が −10 dB |
|---|---|---|---|---|
| 20 µm | 0.18 | 6227 | 16.97 GHz | 18.27 GHz |
| 26.7 µm | 0.24 | 6227 | 17.17 GHz | 18.47 GHz |
| 27.8 µm | 0.25 | 6227 | 17.17 GHz | 18.47 GHz |
| 35 µm | 0.32 | 6227 | 16.95 GHz | 18.22 GHz |
| 44.4 µm | 0.40 | 2157 | 16.83 GHz | 18.09 GHz |
セル寸法の 0.18〜0.4 倍の範囲で、遮断周波数の差は ±1 % 程度でした。幅を細く(0.12 倍)すると分割が細かくなって未知数が 10957 まで増え、計算が重くなります。
この結果から、既定ではセル寸法の 1/4 を自動で入れるようにしました。両隣の空きセルへの食い込みが小さく、片の縁が自動メッシュの一番内側の層とほぼ揃うので、未知数も増えにくい値です。実際の幅が分かっている場合は、自動を外して入力できます。
どこまで再現できたか
今の版(自動メッシュ、接続幅は自動の 27.8 µm、未知数 6227)で計算した結果です。計算時間は 201 点で 11.5 秒でした(Apple M1、GPU 使用)。
| 論文(図から読み取り) | このシミュレータ | |
|---|---|---|
| 形 | 急峻なローパス | 急峻なローパス |
| S21 が −10 dB になる周波数 | 約 16.8 GHz | 18.5 GHz |
| 通過域の S21 | 10 GHz で約 −1.3 dB | 10 GHz で −2.8 dB、14 GHz で −0.4 dB |
| 20〜30 GHz の S21 | 大きく減衰 | −23 〜 −59 dB |
形はよく再現できましたが、遮断の位置は約 10 % 高く出ています。 考えられる原因は次のとおりです。
- 角接触の近くのメッシュ:同じ形でも分割の仕方で −10 dB の位置が 17.4〜18.4 GHz と動きます。32 か所の首を電流が通るので、首のまわりの分割に結果が強く依存し、ここだけで ±5 % 程度の不確かさがあります
- ポートのモデル:論文は 50 Ω の給電線と細い首まで含めて端から給電していますが、このシミュレータはパターンの端のセルから真下のグラウンドへ縦に給電しています
- 寸法と基板の仮定:セル寸法も基板も、図と一般的な値からの推定です
- モデルの近似:準静的な定式化で、分散や誘電損失を入れていません。通過域の損失が論文と合わないのは、給電の違いと合わせてこのあたりが効いていると考えています
最初は「セル寸法を 111 µm にすれば差は 3.5 %」と結論しかけましたが、メッシュを詰めると結果が振れることが分かり、取り下げました。一つの設定で合ったように見えても、メッシュを変えて結果が動くうちは、合ったとは言えません。
分かったこと
- 形が退化している箇所は、解き方ではなく形の問題として扱う。ピクセル状の設計では、角接触は例外ではなく普通に現れます。同じ図のバンドストップ (b) も角接触が 35 か所あり、それなしではポート間がつながりません
- モデル化の自由度がある箇所は、感度を測る。首の幅は ±1 % 程度しか効かない一方、首まわりのメッシュは ±5 % 効きました。どちらが支配的かは、測ってみるまで分かりませんでした
- 生成された設計を製造するなら、首の扱いを決めておく必要がある。シミュレーションの前提(つながっている)と、実際の基板(残るか切れるか)を一致させないと、計算も製造も意味を失います
グリッド上の角接触は、接続していれば実寸の導体片で、接続幅を 0 にすると赤い ○ で表示されます。幅は左の「角接触の接続幅」で変えられます。ピクセル状のパターンを描くときは、この表示に気をつけてみてください。
参考:Y. Guo, E. A. Karahan, Z. Li, Z. Shao, Z. Zhang, M. Wang, K. Sengupta, "Dall-EM: Generative AI with Diffusion Models for New Design Space Discovery and Target-to-Electromagnetic Structure Synthesis," IEEE/MTT-S International Microwave Symposium (IMS), 2025. DOI: 10.1109/IMS40360.2025.11103838