入力
電磁場取り込み
User elemetns
公開elements
Python
|
はじめにこれまで,加速器設計のために,たくさんのエレメントを作成してきました.非常に特殊なものもあれば,一般的なものもあります.合間を見て,それらを公開しますので,使ってみてください.また,バグや要望があれば,メールをください.できるだけ対応したいと考えています. 準備と公開エレメントのインストール方法コンパイラーの準備ここで公開するエレメントの実行モジュール作成には,コンパイラーが必要です.エレメントの導入に先立って,予めインストールしておきます.Ver 2.8の場合,「GPT News」の 21-May-08 や 18-Oct-07 にしたがい,コンパイラー「Visual C++ 2008 Express Edition」をインストールします.また,21-May-08 に書かれている設定も必要です. 64ビット環境の場合は,「64ビットのWindows 7 でコンパイル」が参考になるかもしれません. コンパイルができない場合には,GPTのメインメニューの Edit→ Settings を選択し,ダイアログ「Settings」の Custom element settings の設定を確認してください. 公開エレメントのインストールここで,公開しているエレメントのインストール方法を示します.
エラーがなくコンパイルできれば,エレメントが使用可能になります. 粒子の発生ビームの変形断面(x, y)を楕円に
粒子セットを x と y 方向に伸張し,回転させます.ソースプログラム「modellipse.c」をインストールすると以下のエレメントが使用可能になります. modellipse(set, xratio, yratio, angle)
具体的な GPT インプットサンプル「modellipse.in」を参考にすれば,使い方は簡単に理解できるでしょう. 磁石ビームコントロールアウトプットビーム情報粒子の消滅/初期情報をファイルに加速器の設計では,消滅した粒子の情報が必要なことがあります.たとえば,壁に衝突した粒子から発生する放射線を計算する場合です.GPT付属の標準エレメントでは,消滅した粒子の情報を得ることはできません.そこで,そのような粒子情報をファイルに書き出すエレメントを作成しました. ソースプログラム「remove_par_file.c」をインストールします.コンパイルのとき,fopen のところで,warningのメッセージが出ますが,問題なく実行できます.もし,気になるようでしたら,その部分を「if(error=(fopen_s(&fp, info->file, "W"))!=0){」としてください(同僚の中西氏指摘).私の環境では,warning は無くなりましたが,実行時にエラーが起きました.自分の環境に合わせて,使い分ける必要があります. インストールが完了すると,以下のエレメントが使用可能になります. remove_par_file(ECS, "file_name")
GPT実行後,file_name で指定したテキストファイルが作成されます.それには,消滅した時点での粒子の情報(ID, x, y, z, βx, βy, βz, γ, t)とその粒子の計算の初期状態が書かれています. 具体的な GPT インプットサンプル「ex_remove_par_file.in」を参考にすれば,使い方は簡単に理解できるでしょう. ビームのトータルエネルギービームのトータルのエネルギーの計算が必要な場合があります.たとえば,加速管のローディングのカーブ(ビーム電流 vs 加速エネルギー)の計算を行う場合です.特に低エネルギーのバンチャーを含んだ加速管では,この計算はやっかいです.そのために,ビームのトータルの(初期エネルギー, 消滅したビームのエネルギー, 最後まで加速されたビームのエネルギー)を計算するエレメントを作成しました. ソースプログラム「BeamEnergy_file.c」をインストールします.コンパイルのとき,fopen のところで,warningのメッセージが出ますが,問題なく実行できます.もし,気になるようでしたら,その部分を「if(error=(fopen_s(&fp, info->file, "W"))!=0){」としてください(同僚の中西氏指摘).私の環境では,warning は無くなりましたが,実行時にエラーが起きました.自分の環境に合わせて,使い分ける必要があります. インストールが完了すると,以下のエレメントが使用可能になります. BeamEnergy_file(ECS, z_alive, "file_name")
GPT実行後,file_name で指定したテキストファイルが作成されます.それに,ビームのエネルギー情報が書かれます.また実行時,標準出力にもその情報が書き出されます. 具体的な GPT インプットサンプル「ex_BeamEnergy_file.in」を参考にすれば,使い方は簡単に理解できるでしょう. ビームの到着時刻任意の場所(z座標) に,ビーム (マクロ粒子) が到着した時刻を表示します.ソースプログラム「PrintParticlesInfoZ.c」をインストールです.コンパイルすれば使えます. PrintParticlesInfoZ(ECS, "set")
GPT実行すると,標準出力に (マクロ粒子数, 平均 z 座標, 平均到達時刻, 時刻の標準偏差, 時刻の最小値, 時刻の最大値) が表示されます.具体的な GPT インプットサンプル「test.in」を参考にすれば,使い方は簡単に理解できるでしょう. ページ作成情報参考資料
更新履歴
|