Yamamoto's Laboratory
 
雑多な基本事項
 
 
周波数計算精度
 
電磁石
 
真空
 
研究内容 加速器 理論 共振空洞の計算精度

加速器共振空洞の計算精度

SUPERFISH と CST-Studio の共振空洞の計算精度について述べます.

球形空洞の共振の電場

目次


はじめに

加速器の空洞を設計では,様々な計算コード (コンピュータープログラム) が使われています.例えば,CST-Studio や HFSS,SUPERFISH などである.これらの他に,研究者が独自に開発したコードも多数あります.これらを使って設計を行う場合には,計算精度に気をつけなくてはなりません.特に,共振周波数の精度の理解は重要です.加速器の共振空洞のQ値は \(10^4\) — \(10^5\) 程度です.すると,加工精度はそれよりも一桁程度高い\(10^{-5}\) — \(10^{-6}\) が求められます.すると,この程度で共振周波数を計算する必要に迫られます.

計算コードには,必ず誤差があります.理論解と比較することにより,その計算コードの誤差を定量的に把握することができます.ここでは,いくつかの理論解を示します.

計算誤差の原因

加速器の空洞内部の解析は,主に共振周波数と電磁場を求めることです.その解析では複雑な境界条件が課せられた領域の偏微分方程式を計算する必要があります.もちろん,解析解など無く,計算結果は近似解になります.その近似解を得るために,計算領域を単純な形状 (多くは三角形や四面体) に分割します.この分割の単位は「メッシュ」と呼ばれます.メッシュ内部の電磁場は元の方程式と境界条件に近似的一致しています.領域を細かく分割することにより,その内部での電磁場の振る舞い (分布) は単純な式で近似が可能になることを利用ています.

近似解の精度はこのメッシュ内の電磁場の近似の精度で決まっている.メッシュを細かく分割し,実際の電磁場の分布と近似関数との差を小さくすれば計算精度が向上する.このことから,計算精度はメッシュのサイズと近似関数の選び方が重要である.それと曲面がある場合は,メッシュの形状も計算精度に関わる.

計算誤差が発生する要因は,いくつか有ります.例えば,(1)メッシュが計算形状を正確に表すことができない,(2)メッシュ内部の電磁場の誤差,(3)丸め誤差・打ち切り誤差・桁落ちなどです.

球形空洞

ここでは,共振モードの分かっている空洞と比較することにより,加速器用の計算コードの精度を調べる.共振モードの分かっている空洞は,(1)直方体空洞,(2)円筒空洞,(3)球形空洞などがある.

電磁場

共振周波数

球形空洞の共振周波数は, \begin{align} ka\left[j_{n+1}(ka)-j_{n-1}(ka)\right]-j_n(ka)=0 \label{eq:SphericalCavity_Bessel} \end{align} から導くことができます.

球形空洞の共振周波数計算表.式\eqref{eq:SphericalCavity_Bessel}の\(ka\)の解.
n \ l 1 2 3 4 5 6
1 2.743707269992 6.116764264462 9.316615628566 12.485937368200 15.643866106348 18.796253353454
2 3.870238580222 7.443087053954 10.713010988256 13.920521426636 17.102740789047 20.272001089139
3 4.973420350823 8.721750513490 12.063591250348 15.313561547672 18.524206672083 21.713934471663
4 6.061949362982 9.967547230237 13.380124390830 16.674154985313 19.915404240947 23.127774883534
5 7.140227364003 11.188984775648 14.670116776572 18.008529748977 21.281478934310 24.517808640376
6 8.210841978019 12.391478885434 15.938698519988 19.321168202530 22.626282064135 25.887344245982

計算コードの精度の評価

ここでは,CST-Studio と SUPERFISH の計算コードの計算精度を調べます.計算精度は,球形空洞の共振周波数の理論解の誤差とします.これらのコードの計算精度はメッシュに依存します.メッシュが細かいと計算精度が向上します.メッシュサイズを変化させて,計算精度の変化を調べます.

球形空洞の共振周波数 (理論解)

半径 1 [m] の球形空洞の TM モードの最低次の共振周波数は, \begin{align} ka=2.74370726999226938256112208112030713720427967555 \end{align} から計算できます.このときの共振周波数は,130.9117440104082068418878963406844549691659 [MHz] です.これは理論解なので,全ての計算コードで計算精度を向上させてると,子の値に近づくはずです.

SUPERFISH の共振周波数 (固有値) の精度

メッシュ

SUPERFISH のメッシュは,二次元の1次要素です.したがって,計算領域は三角形の要素でうめつくされます.

CST-Studion の共振周波数 (固有値) の精度

メッシュ

CST-Studio は三次元計算領域を1次から3次要素で計算可能です.

CST-Studio の計算メッシュのサイズと形状,近似関数は次に示す三つの要素でコントロールできます.

メッシュ要素 動作
メッシュ数 計算領域の分割数で,メッシュ数が多いほど計算精度は向上します.
curved element これ境界の次数を表す(図1から図3).この次数を増やすと境界の形状精度が向上し,計算精度が向上する.
solver order 分割されたメッシュ内部での計算する量の近似(補間)の次数である(図4から図6).次数が多くなれば計算精度が向上する.

から決まる.(注意) ここで示したcurved elementとsolver orderとの詳細な内容は,不明である.マニュアルから読み取れる内容を筆者の想像も加えての説明となっている.

メッシュ数やcurved element,solver order のいずれも増加させると計算精度は向上する.その一方で,メモリーやCPU時間のPCのリソースも必要になる.計算精度とPCのリソースはトレードオフの関係である.とはいえ,最適な組み合わせがある.PCのリソースを最小限にして,最良の計算精度を得る三つの組み合わせ (メッシュ数, curved element, curved element)を行うことが肝要である.

CST-Studio では solver order は,1st と 2nd,3rd が選択可能である.それに対して,curved elemant はかなり自由に選択可能である.筆者は大きな数値を試した事がないので,最大は不明である.マニュアルによると,solver order の値を $p$ とした場合,curved elemant は $p$ から $2p-1$ までを推奨している.もちろん,1以上で$p$以下の設定も可能である.

図1: curved element=1

図2: curved element=2

図3: curved element=3

図4: 1次要素 (1at)

図5: 2次要素 (2nd)

図6: 3次要素 (3rd)

ページ作成情報

参考資料

  1. R A YADAV and I D SINGH, Normal modes and quality factors of spherical dielectric resonators: I Shielded dielectric sphere, 球形空洞の共振モードの計算が書かれています.

更新履歴

2020年12月30日 ページの新規作成


no counter