Conference Room SAD
[thread display] [new arrival display] [word search] [past log] [管理用]

Subject その5
Date: 2006/01/30(Mon) 20:03:05
ContributorKentaro Harada < >

  その5:色収差補正
 
  線形の色収差が消えるように6極の値を決めます。
具体的には、運動量のずれの2点 +DP と -DP において
チューンが理想的なチューンと等しくなるように6極の
値をフィッティングで決めます。
 
{nx0, ny0}=Twiss[{"NX","NY"},"$$$"]/2/Pi;
  (設計運動量におけるチューンを求め、水平を nx0、
  垂直を ny0 という変数に入れます。)
fit nx nx0 2;
  (fit (場所)(フィットしたい変数)(行き先の値)(点数)
  で、フィッティングの計算内容を指定します。
  場所はリングの最後の点ですが、ここでは省略しています。
  fit $$$ nx nx0 2; または fit MKN.16 nx nx0 2;
  としても同じです。フィットしたい変数はチューンなので、
  nx、ny とします。bx by ax ay ex epx なども使えます。
  行き先の値はこの値に持って行きなさい、という値です。
  ここでは、設計運動量におけるチューンです。
  点数は(下で書く) DP で指定する運動量幅 -DP から +DP までの
  間の何点を取ってフィッティングの計算をするかの指定です。
  2だと、-DP と +DP の2点、3だと -DP, 0, +DP となります。
  自由度がなくても数を増やすことはできますが、当然として、
  結果は完全にはフィットできていない状態になります。なお、
  6極のファミリー数を増やしてから DP を 0.01 (=1%) くらいに
  して同じフィッティングをすると、高次の色収差を補正する
  ことができます。(普通はハーモニック6極は運動量でなくて
  振幅依存のチューンシフトを補正しますが。))
fit ny ny0 2;
DP=0.0001;
  (運動量の幅を指定します。デフォルトは 0.01 (=1%)です。
  MARK 要素に格納されている DP はこの DP です。)
free S*;
  (フィッティングで何を振るか(何が自由変数か)の指定です。
  S で始まる要素(種類は問わない)を変化させます。ステアリングを
  STRH、STRV 等という名前で作ると、このときにステアリングも
  振られます。勿論、free SF, SD; とすればよいです。また、
  変数を指定しない限り、その要素の「第1変数」を振ります。
  free B*; だと ANGLE を変えます。結合Bの収束力を変えたい
  場合は free B* K1; とします。)
go;
  (フィッティングの計算をします。go で始めて計算を行います。)
FITP 1;
  (フィッティングの際の運動量方向の点数を1に戻します。これを
  忘れてチューンやオプティクスのフィッティングをすると、fit の
  (点数)を書かないと全て(上で指定した)2にされて泣きます。)
type S*;
  (求まった6極の値を表示します。)
SAVE S*;
  (6極の値を保存します。これをせずに USE で新しく LINE を
  展開すると、値が消えます。SAVE だけだと、その時点の全ての
  要素の「第1変数」を保存します。例えば結合BのK1を変えて
  あったとしても、SAVE だけでは保存されません。(angle が
  保存されます。) 第1変数以外を保存するには、SAVE B* ALL; と
  しないといけません。) ちなみに K2 は6極の第1変数なので、
  SAVE だけか、もしくは SAVE S*; で大丈夫です。)
 
  以上で色収差補正ができました。FFSのコマンドは大文字と
小文字の区別がありません。実はその時の気分によって、適当です。
fitp も save も小文字でいいし、FIT も GO も大文字でもいいです。


- 関連一覧ツリー (Click ▼ to display all articles in a thread.)