小さなジャイロ半径と技術サポートの悲哀

ユーザーの方のほとんどは、技術サポートを受ける側から見ているが、私は与える側からの視点を共有したいと思いました。

私は最近、資金提供機関によって設定された厳しい締め切りのもとで、電子流のためのTrak数値シミュレーションを完成させようと(これはいつものパターンです)していたユーザーから、Eメールと電話によるメッセージを次々と受け取りました。

どうやらTrakは強い磁場の存在を認識していなかったようです。

多くの技術サポートへの苦情と同様に、ユーザー様はプログラムが自分の望みを予測できなかったと感じたのでした。スポーツ用品店のオーナーが電話を受けたときと同じような状況なのでしょう: 「おたくのスキーでブラックダイヤモンド(上級者ゲレンデ)を滑ったら、私は木に引っかかってしまいました!すぐに来てください!」

話のついでに、そのユーザーは3.5テスラの磁場について言及しました!
そして彼が取り組んでいる装置が数メートルの長さであることを知り、私は会話に断絶があるのを感じました。計算してみましょう。磁場B中の質量mの粒子のジャイロ周波数は

ωg = eB/γm

であり、ジャイロ半径は

R = γmβc/eB です。

B = 3.5 Tの磁場における1 MeVの電子(γ = 2.96, β = 0.941)の運動を考えます。

磁場による運動を正確に解くには、1回転あたり少なくとも~12ステップ、あるいは以下の条件が必要です。

Δt < 1/2ωg

計算上、Δtは2.5E-12秒以下でなければならないのですが、彼のメートルサイズのシステムにおける要素サイズと電子速度に基づくと、ユーザーの時間ステップは約100倍長かったのです。磁場による動きはランダムに発生し、磁場は存在しないように見えました。

文字通りの解の計算は、極端に小さな時間ステップを選んで何時間も待つことであり、数値誤差が蓄積する危険性があります。私が提案した解決策は、単純に磁場を下げ、妥当な時間ステップを選ぶことでした。空間電荷の割り当てと分布の計算に関しては、ジャイロ軌道を要素サイズやモデル電子間の距離よりも小さなサイズで計算することに意味はありません。磁場を小さくしても、電子は磁力線と密接に結びついてしまいます。さらに、磁気ミラーリング効果は相対的な磁場の差にのみ依存します。文字通りの解を求める唯一の目的は、何万もの小さな円を計算することでしょう。私は提案しましたが、そのユーザーは却下せざるを得ませんでした。彼の軍事スポンサーは、磁場は3.5テスラでなければならないと強調していました!この原稿を書いている時点で、そのユーザーはまだ木に引っかかっています。

TrakOmniTrakの磁場と時間ステップに関する話題ですが、マニュアルに公明正大な注意書きがあるにもかかわらず、ユーザーが常軌を逸してしまった例がいくつかあります。将来的に救助を減らすために、私はコードに安全柵を設置しました。これは、無視できるオーバーヘッドのアクティブなチェックを行います。各粒子の軌道の最初に、コードは次の量を計算します。

F = m/2 q Δt、

ここでm、q、Δtは現在の粒子の質量、電荷、割り当てられた時間ステップです。量(B/γ)がFを超えた場合、コードは停止し、エラーメッセージを発行します。