[Back]
New Arrival display

SAD Update V1.1.1k64_pre11 More on PROFILE, closed orbit with RADTAPER, etc. Name:K. Oide Date:2017/08/24(Thu) 15:30:18 No.601

Experimental:
1. PROFILE of MULT now accepts a combination of {key, master} as the
specification of a key. key_String and {key_String} is equivalent to
{key, key}. The value of each segment is given by the value of master
times the value of the corresponding segment of the profile. If the key
has profiles with multiple masters, all contributions are added.

2. If the key of MULT is a integrated quantity, and the PROFILE is
given, the value of the key is given by the value of the key * (the
segment of PROFILE of “L”), unless the profile with {key, key} is
defined. The contributions from the profiles of the key are added. The
integrated keys are “L”, “ANGLE”, “VOLT, “DVOLT”, “K0” to “K21”, and
“SK0” to “SK21”.

Bug fixes:
Fixes:
1. The algorithm to find a closed orbit with RADTAPER was changed to
find the longitudinal parameters first. It had been failed with
RADTAPER and transverse orbit.

2. The RADTAPER with nonzero DP0 now tapers all magnets according to
the difference between the local energy and DP0.

3. A behavior of element-value-command, such as ‘QF DX 0.001’, had
expanded all vaules of all elements. Now it is confined to the element
and keyword touched by the command.

4. Pattern matching with duplicated pattern symbols could cause wrong
results in some cases.

5. The tag of the right vertical frame line of a plot has been incorrect.

Changes:
1. Element now accepts setting to elements specified by wildcards.

2. Internal routines for BEND, QUAD, MULT without BZ have been updated
for more efficiency.

3. The internal coding has been changed in many places.

4. Eliminated internal type sad_list.

5. Reduced “type mismatch” compiler warnings.

SAD Update V1.1.1k64_pre07 Name:K. Oide Date:2017/08/03(Thu) 10:15:00 No.571

Experimental:
1. The way of longitudinal profiling of MULT has been changed. Now a
new keyword PROFILE is defined and the profile of all keywords are
stored under PROFILE. The value is a list of the form:

{{key1, {v11,..,v1n}, {key2, {v21,...,v2n}}, ...}

where key1, key2, ... are the keywords of MULT. The keyword "L" must be
one of them. The values of profiles v11,.. vmn are real numbers. All
keys must have an equal length of the values.
The actual value of each segment is given by the product of profile
values and the corresponding values of each key, ie., the "master
value". There is no automatic normalization of the values of profile.

Example:
Element["PROFILE","Q1"]={{"L",{0.1,0.7,0.2}},{"K1",{0.15,0.6,0.25}}};
TYPE Q1;
;
MULT Q1 =(L =1 K1 =.1 PROFILE = {{"L", {.1, .7, .2}},
{"K1", {.15, .6, .25}}} )
;

2. A few utilities are defined for Element for handling the profile:

Element["PROFILE"[key], e] returns the list of profile values for key.
Element["PROFILE"[key], e] = {v1,...,vn} sets the value of profile for
key, keeping the profiles for other keys.
Element["PROFILE", e]={key, {v1,..., vn}} is same as above.

Remarks:
a. The master values of each key must be a Real.
b. The geometry and path lengths are calculated based on the master
values.
c. The output by TYPE cannot be read by MAIN yet.
d. The treatment of fringes for intermediate points is not correct yet.
e. Further customizations of the way to determine the segment values
from the master values and the profile will be made depending on
demands.
===========

Changes:
1. ListContourPlot and ListDensityPlot now take a grid with unequal
spacings. it is specified by MeshRange -> {x_List, y_List} , where x
and y can be lists to specify the values at each grid. Their lengths
must be equal to the Dimensions of the data.

2. A new color function Green is defined for ListContourPlot and
ListDensityPlot, invoked by ColorFunction -> Green.

3. Fine adjustments are done for the alignment of FrameLabels.

SAD Update V1.1.1k64_pre05 Name:K. Oide Date:2017/07/26(Wed) 01:44:12 No.560

Bug fixes:
1. The functions ResponseMatrix (pgrmat.f) and CalculateOptics
(tfoptics.f) have not been ported to k64 correctly until now. Also
tracez was not set for CALC4D to cause an unpredictable consequences.

Re: SAD Update V1.1.1k64pre Name:K. Oide Date:2017/07/25(Tue) 11:08:15 No.558

Bug fixes:
1. The module reference in tffs.f was wrong (use before definition), as
pointed out by Yamamoto-san.

Changes:
2. The closed orbit finding in CAL for off-momentum matching was
modified for the initial guess.

SAD Update V1.1.1k64_pre01 Name:K. Oide Date:2017/07/23(Sun) 20:08:48 No.556

Bug fixes:
1. A potential glitch in FitFunction to cause a memory destruction.

2. The FFS command WRITE LAT has been restored.

3. Evaluation of VariableRange and VariableWeight was not correct when
values have been assigned to them.

The experimental longitudinal profile of MUL is subject to change according to Morita-san's suggestion, but not yet completed.

Re^4: マッチング時のMIN/MAX Name:K. Oide Date:2017/07/22(Sat) 16:56:02 No.554

> > > VariableRangeを使ってください。その目的のために作ってある関数です。
> > >
> > > Example: VariableRange["QF","ROTATE",v_]:= -0.1 < v < 0.1;
> > > VariableRange[x:("BC1L"|"BWL"),"L",_]:={Abs[ltheta[ucl]*Element["ANGLE",x]],lbmax};
> > >
> > VariableRangeを"純関数"で定義すると意図通りに働かない?
> > # VARで制約範囲は認識しているが、GOの動作が制約されていない
> > # OptimizeOptics[]は、制約されるっぽぃ
> >
> シンボル評価を VAR側の処理と整合させて、r6200にて修正実施

k64のこの点については次回チェックインされるバージョンで対応します。ご指摘ありがとうございました。

Re^2: SAD Update V1.1.1k64pre Name:K. Oide Date:2017/07/22(Sat) 13:33:12 No.553

> > Experimental:
> > 1. Now keywords for MULT can take a list to represent the longitudinal
> > profile of the parameters. Usage:
> > LINE[“L”, “Q1”]={0.2, 0.6, 0.2];
> > LINE[“K1”, “Q1”]={0.01, 0.05, 0.01};
> > Remarks:
> > - The keyword “L” must be given as a List to define the length of each
> > segment. Other keywords are either a Real or a List with the same
> > number of components as “L”.
> > - If a key is a list, the value corresponding to the segment for “L” is
> > taken. Otherwise the Real value is used commonly for all segments.
> > - For a matching, the sum of the segments are used, and the resulting
> > value is distributed to all segments, keeping the same profile.
> > - Commands SAVE and RESET should work as expected.
> > - In commands VAR, DISP, and element-value commands (such as Q1 K1
> > 0.02), the summation of parameters are displayed.
> > - TYPE shows the Listed parameters as List, but it is not readable by
> > MAIN yet.
> > - For LINE and Element functions, keyword$SUM returns the sum of the
> > List if the value of keyword is a List. Otherwise, it returns the same
> > value as the keyword. Example: LINE[“K1$SUM”, ”Q1”]. Setting to keyword$SUM
> > is not yet implemented as expected.
> > - Currently, the List keyword works only for MULT. However, it is not
> > inhibited to set to other elements, which will cause unpredictable
> > results.
> > - OpticsPlot and GeometryPlot should work properly.
> >
> 仕様レベルでのコメント
>
> * 後方互換性を考慮するとGetter/Setter界面では、K1や L等の既設の変数は Master Variableとして振る舞わせ、分布等を設定する変数を接頭辞・接尾辞付きで新設する方が素直かと思います

そのように変更したいと思いますが、パラメータを数値で与える限りは現状でも後方互換です。それとも「後方」の方もそのように仕様追加されるのでしょうか。
>
> * 暗に、積分値が non-zeroであることを想定してるようですが、wigglerの類や hericalなdeviceを考えると、master variableと form factorの概念は分離すべきだと思います
>
そのように変更したいと思います。

> * herical deviceで、ROTATEに分布を持たせる場合、外部から指定するROTATEに対しては、加算的に振る舞って欲しいとか、Kn分布は乗算的に振る舞って欲しい等が有るので、パラメータ展開をframework側で行う場合、パラメータ毎にframeworkの振る舞いをカスタマイズできるべきです
>

上記を変更した上で、ElementValuesとかで設定できるのではないでしょうか。

> * element内部のパラメータ分布のみを導入するなら、分布のハンドリングや計算時の展開処理は、tturn/ttruneレベルの driver framework側で行い、element実装コード側はパラメータ毎の振る舞い属性等の定義のみを行うようにすると、実装が一般化できると思います
>
> ** ある程度のelement interfaceの標準化が前提となりますが...

具体的な変更点がわかりません。現状はそう遠くないと思いますが。

Re^3: マッチング時のMIN/MAX Name:Akio Morita Date:2017/07/21(Fri) 13:18:22 No.551

> > VariableRangeを使ってください。その目的のために作ってある関数です。
> >
> > Example: VariableRange["QF","ROTATE",v_]:= -0.1 < v < 0.1;
> > VariableRange[x:("BC1L"|"BWL"),"L",_]:={Abs[ltheta[ucl]*Element["ANGLE",x]],lbmax};
> >
> VariableRangeを"純関数"で定義すると意図通りに働かない?
> # VARで制約範囲は認識しているが、GOの動作が制約されていない
> # OptimizeOptics[]は、制約されるっぽぃ
>
シンボル評価を VAR側の処理と整合させて、r6200にて修正実施

Re: SAD Update V1.1.1k64pre Name:Akio Morita Date:2017/07/20(Thu) 17:16:55 No.535

> Experimental:
> 1. Now keywords for MULT can take a list to represent the longitudinal
> profile of the parameters. Usage:
> LINE[“L”, “Q1”]={0.2, 0.6, 0.2];
> LINE[“K1”, “Q1”]={0.01, 0.05, 0.01};
> Remarks:
> - The keyword “L” must be given as a List to define the length of each
> segment. Other keywords are either a Real or a List with the same
> number of components as “L”.
> - If a key is a list, the value corresponding to the segment for “L” is
> taken. Otherwise the Real value is used commonly for all segments.
> - For a matching, the sum of the segments are used, and the resulting
> value is distributed to all segments, keeping the same profile.
> - Commands SAVE and RESET should work as expected.
> - In commands VAR, DISP, and element-value commands (such as Q1 K1
> 0.02), the summation of parameters are displayed.
> - TYPE shows the Listed parameters as List, but it is not readable by
> MAIN yet.
> - For LINE and Element functions, keyword$SUM returns the sum of the
> List if the value of keyword is a List. Otherwise, it returns the same
> value as the keyword. Example: LINE[“K1$SUM”, ”Q1”]. Setting to keyword$SUM
> is not yet implemented as expected.
> - Currently, the List keyword works only for MULT. However, it is not
> inhibited to set to other elements, which will cause unpredictable
> results.
> - OpticsPlot and GeometryPlot should work properly.
>
仕様レベルでのコメント

* 後方互換性を考慮するとGetter/Setter界面では、K1や L等の既設の変数は Master Variableとして振る舞わせ、分布等を設定する変数を接頭辞・接尾辞付きで新設する方が素直かと思います

* 暗に、積分値が non-zeroであることを想定してるようですが、wigglerの類や hericalなdeviceを考えると、master variableと form factorの概念は分離すべきだと思います

* herical deviceで、ROTATEに分布を持たせる場合、外部から指定するROTATEに対しては、加算的に振る舞って欲しいとか、Kn分布は乗算的に振る舞って欲しい等が有るので、パラメータ展開をframework側で行う場合、パラメータ毎にframeworkの振る舞いをカスタマイズできるべきです

* element内部のパラメータ分布のみを導入するなら、分布のハンドリングや計算時の展開処理は、tturn/ttruneレベルの driver framework側で行い、element実装コード側はパラメータ毎の振る舞い属性等の定義のみを行うようにすると、実装が一般化できると思います

** ある程度のelement interfaceの標準化が前提となりますが...

Re^2: マッチング時のMIN/MAX Name:Akio Morita Date:2017/07/20(Thu) 14:47:15 No.533

> VariableRangeを使ってください。その目的のために作ってある関数です。
>
> Example: VariableRange["QF","ROTATE",v_]:= -0.1 < v < 0.1;
> VariableRange[x:("BC1L"|"BWL"),"L",_]:={Abs[ltheta[ucl]*Element["ANGLE",x]],lbmax};
>
VariableRangeを"純関数"で定義すると意図通りに働かない?
# VARで制約範囲は認識しているが、GOの動作が制約されていない
# OptimizeOptics[]は、制約されるっぽぃ

*** Welcome to SAD Ver.1.1.0.9k64a built at 2017-07-07 13:43:00 +0900 ***
*** Today: 14:42:36 Thursday 07/20/2017 ***
lminit: rlist0=0x0 align=4096 bits=52 offset=3392
OFF LOG ECHO;READ 77 ; 23
*** SADScript Initialization: /ldata/KEKB/KCG/developer/oldsad/Packages/init.n ***
*** Run time Environment: /ldata/KEKB/KCG/developer/oldsad/Packages/init.local.n ***
RFSW RADCOD RAD FLUC INTRA POL COD DAPER EMIOU CMPLO FOURI SMEAR
F F F T F F T F F F F T

VariableRange = VariableRange$[##]&;

VariableRange$["$DUMMYMARK", "BX", _] := {5, 10};
VariableRange$["$DUMMYMARK", "BY", _] := {1, 20};

FitFunction := Twiss[{"BX", "BY"}, "$DUMMYMARK"] - {1, 25};

FFS["FREE $DUMMYMARK BX; FREE $DUMMYMARK BY"];

FFS["VAR; GO; VAR", 6];
!Variable Keyword Now ! Previous Saved Minimum Maximum Couple Coefficient
$DUMMYMARK BY 1.000000000000 ! 1.000000000 .000000000 1.00000000 20.00000000 1.00000000
$DUMMYMARK BX 1.000000000000 ! 1.000000000 .000000000 5.00000000 10.00000000 1.00000000
Matched. ( 5.5760E-12) DP = 0.01000 DP0 = 0.00000 ExponentOfResidual = 2.0 OffMomentumWeight = 1.000
$$$ f AX ####### # -1.000000 $$$ f BX ####### # 2.000000 $$$ f NX ####### # .125000
$$$ f AY ####### # -.040000 $$$ f BY ####### # 25.040002 $$$ f NY ####### # .006363
$$$ f LENG ####### # 1.000000 $$$ f FUN1 0.0 1 .000000 $$$ f FUN2 0.0 1 2.3614E-6
!Variable Keyword Now ! Previous Saved Minimum Maximum Couple Coefficient
$DUMMYMARK BY 25.00000236136 ! 1.000000000 .000000000 1.00000000 20.00000000 1.00000000
$DUMMYMARK BX 1.000000000000 ! 1.000000000 .000000000 5.00000000 10.00000000 1.00000000

OptimizeOptics[]; FFS["CALC; VAR", 6];
{{{1,5},{20,10}},{(VariableRange$[##]&)->{{1,5},{20,10}}}}
{ 42.000000, 42.810000, 43.222500}
{ 42.000000, 42.133611, 42.810000}
{ 42.000000, 42.000000, 42.133611}
{ 42.000000, 42.000000, 42.000000}
Residual = 41.00 DP = 0.01000 DP0 = 0.00000 ExponentOfResidual = 2.0 OffMomentumWeight = 1.000
$$$ f AX ####### # -.200000 $$$ f BX ####### # 5.200000 $$$ f NX ####### # .031416
$$$ f AY ####### # -.050000 $$$ f BY ####### # 20.050000 $$$ f NY ####### # .007951
$$$ f LENG ####### # 1.000000 $$$ f FUN1 0.0 1 4.000000 $$$ f FUN2 0.0 1 -5.000000
!Variable Keyword Now ! Previous Saved Minimum Maximum Couple Coefficient
$DUMMYMARK BY 20.00000000000 ! 1.000000000 .000000000 1.00000000 20.00000000 1.00000000
$DUMMYMARK BX 5.000000000000 ! 1.000000000 .000000000 5.00000000 10.00000000 1.00000000

Re: マッチング時のMIN/MAX Name:K. Oide Date:2017/07/20(Thu) 13:09:13 No.531

VariableRangeを使ってください。その目的のために作ってある関数です。

Example: VariableRange["QF","ROTATE",v_]:= -0.1 < v < 0.1;
VariableRange[x:("BC1L"|"BWL"),"L",_]:={Abs[ltheta[ucl]*Element["ANGLE",x]],lbmax};

SAD Update V1.1.1k64pre Name:K. Oide Date:2017/07/20(Thu) 12:52:41 No.530

Experimental:
1. Now keywords for MULT can take a list to represent the longitudinal
profile of the parameters. Usage:
LINE[“L”, “Q1”]={0.2, 0.6, 0.2];
LINE[“K1”, “Q1”]={0.01, 0.05, 0.01};
Remarks:
- The keyword “L” must be given as a List to define the length of each
segment. Other keywords are either a Real or a List with the same
number of components as “L”.
- If a key is a list, the value corresponding to the segment for “L” is
taken. Otherwise the Real value is used commonly for all segments.
- For a matching, the sum of the segments are used, and the resulting
value is distributed to all segments, keeping the same profile.
- Commands SAVE and RESET should work as expected.
- In commands VAR, DISP, and element-value commands (such as Q1 K1
0.02), the summation of parameters are displayed.
- TYPE shows the Listed parameters as List, but it is not readable by
MAIN yet.
- For LINE and Element functions, keyword$SUM returns the sum of the
List if the value of keyword is a List. Otherwise, it returns the same
value as the keyword. Example: LINE[“K1$SUM”, ”Q1”]. Setting to keyword$SUM
is not yet implemented as expected.
- Currently, the List keyword works only for MULT. However, it is not
inhibited to set to other elements, which will cause unpredictable
results.
- OpticsPlot and GeometryPlot should work properly.

2. Functions Module and With now accept more than 2 arguments. In such
a case, Module[l_, f__] means Module[l, Module[f]]. Same for With. This
makes it convenient to define local symbols cumulatively.

Re^4: マッチング時のMIN/MAX Name:Akio Morita Date:2017/07/14(Fri) 11:52:44 No.518

>  ありがとうございました。
>
>  MIN/MAX/MINMAX 等のヘルプは、例えば6極を切る時や4極を
> 手動で設定する時の
> S* 0;
> Q1 -0.17;
> みたいな、値の設定コマンドに対する書式のリファレンスで、MAX/MINMAX 等については
> デフォルトキーワードのみに対して働く
> If MIN, MAX, MINMAX, MAXMIN are specified, it sets the limit of the default-keyword.
> と明記されている旨、分かりました。(私の誤解でした。)
>  どうもありがとうございました。
>
さらにsrc/tfgetv.fでの実装に関してコメントすると、

* MAXMIN及びMINMAXと同義な修飾語として ABSMAX, MAXABSという予約語が存在する
* R_ELATIVE修飾語が存在し、RELATIVE修飾時は、SAVE値からの相対指定 saved-value * (1 + given-parameter) として解釈される
** `B1 K1 REL 0.1' は、 B1のK1値をSAVE値から 10%増しに設定する

Re^3: マッチング時のMIN/MAX Name:Kentaro Harada Date:2017/07/14(Fri) 11:12:25 No.517

 ありがとうございました。

 MIN/MAX/MINMAX 等のヘルプは、例えば6極を切る時や4極を
手動で設定する時の
S* 0;
Q1 -0.17;
みたいな、値の設定コマンドに対する書式のリファレンスで、MAX/MINMAX 等については
デフォルトキーワードのみに対して働く
If MIN, MAX, MINMAX, MAXMIN are specified, it sets the limit of the default-keyword.
と明記されている旨、分かりました。(私の誤解でした。)
 どうもありがとうございました。

Re^2: マッチング時のMIN/MAX Name:Akio Morita Date:2017/07/13(Thu) 18:55:08 No.515

> >  マッチング時のフリーパラメータの上下限を決めるコマンドで、
> > キーワードがデフォルトでない場合、例えば BEND で K1 に制限を
> > つけて K1 を振るようなケース
> > FREE B1 K1;
> > BEND K1 MAX 0.1;
> > VAR;
> > GO;
> >
VariableRange関数経由の拘束が働くなら、

* VariableRange["B1", "K1", v_] := {-1e99, 0.1};
* VariableRange["B1", "K1", v_] := v =< 0.1;

等が使えるかもしれない

Re: マッチング時のMIN/MAX Name:Akio Morita Date:2017/07/13(Thu) 18:46:56 No.514

>  マッチング時のフリーパラメータの上下限を決めるコマンドで、
> キーワードがデフォルトでない場合、例えば BEND で K1 に制限を
> つけて K1 を振るようなケース
> FREE B1 K1;
> BEND K1 MAX 0.1;
> VAR;
> GO;
>
現行実装では無理

MIN/MAXのパラメータストレージは、各Elementに付きデフォルトパラメータ分しか用意されていない

実装に必要な作業
* ifauxが指すデータ構造の拡張
* src/tfgetv.fのパラメータ設定構文の拡張

訂正 Name:Kentaro Harada Date:2017/07/13(Thu) 14:51:59 No.513

もちろん、
B1 K1 MAX 0.1;
のまちがいです。

マッチング時のMIN/MAX Name:Kentaro Harada Date:2017/07/13(Thu) 14:46:36 No.512

 マッチング時のフリーパラメータの上下限を決めるコマンドで、
キーワードがデフォルトでない場合、例えば BEND で K1 に制限を
つけて K1 を振るようなケース
FREE B1 K1;
BEND K1 MAX 0.1;
VAR;
GO;
がうまくいきません。書式が間違っていますでしょうか?

Re: SAD Update V1.1.0.7k64 bug in QUAD RAD F1, etc. Name:K. Oide Date:2017/07/11(Tue) 20:19:47 No.492

Bugs:
1. The transformation of MULT for EMIT/CALC with nonzero K0/SK0 and negative K1. This bug was created in April 2017 with V1.1.0.12k64. Tracking was not affected.

Changes:
2. An internal type sad_rlist was defined for a list with all reals.

SAD Update V1.1.0.11k64 EFFVC, EFFRFFREQ Name:K. Oide Date:2017/07/09(Sun) 18:05:22 No.487

Changes:
1. New MAIN variables EFFVC and EFFRFFRQ are defined for "effective
peak voltage" and "Effective RF Frequency" calculated by EMIT. PHICAV
now contains the equilibrium rf phase = 2*Pi*EFFRFFREQ*DTSYNCH/c .

SAD Update V1.1.0.10k64 bug in bucket height, etc. Name:K. Oide Date:2017/07/08(Sat) 19:36:07 No.484

Bug Fixes:
1. The value of bucket height by EMIT has been wrong since the introduction of RADTAPER about 2 years ago.

Changes:
2. With RADTAPER, FSHIFT is automatically updated to cancel the difference in the path length. The momentum deviation of the closed orbit at the entrance is always kept zero.

3. RF-related parameters in EMIT, such as SIGZ, are calculated even with NORFSW, by assuming the total voltage of CAVI and MULT. This approximation is not bad unless the synchrotron tune is large nor there are variation in phases and frequencies in cavities, nor dispersions at cavities.

4. The closed orbit finding routine for EMIT is somewhat improved to reduce the necessity of setting the RF phase manually.

SAD Update V1.1.0.9k64a bug in equilibrium phase in EMIT without RADCOD Name:K. Oide Date:2017/07/05(Wed) 14:31:26 No.467

Bug fixes:
1. A bug was found in determination of the equilibrium phase (or the origin of time) in EMIT when NORADCOD and no orbit distortion. The number of iterations was not enough to give an inaccurate phase. The discrepancy was large when synchrotron radiation loss was large compared to the rf voltage. In the case with RADCOD, however, it was OK, as an enough number of iterations were done anyway. This bug was created in around Aug. 2016 when RADTAPER was introduce.
It was fixed with an improvement of the closed-orbit finding including the determination of the origin of the rf phase “trf0” with RADCOD.

2. 1. Fixed a bug in TempraryName to cause an error in mishandle the arg.

Changes:
3. Updated KBFMakePDF to handle TemporaryName properly, added .xwd to
the xwd file, and removed unnecessary image specs.

4. Minor changes in FileDialog to key-bind RETURN to SAVE(OK) and ESC to CANCEL.

SAD Update V1.1.0.8.1k64 bug in TemporaryName and MakePDF Name:K. Oide Date:2017/06/28(Wed) 16:17:28 No.454

Bug fixes:
1. A bug in Temporary name to cause an error always is fixed.

2. The Make PDF menu of KBMainFrame has been restored to work. The convert command of ImageMagick must be installed in the system.

Changes:
3. Print outs of BEAMBEAM, related to beamstrahlung have been suppressed.

Re: SAD Update V1.1.0.7k64 bug in QUAD RAD F1, etc. Name:K. Oide Date:2017/06/19(Mon) 13:15:04 No.448

One more bug fix has been done: The length of stream by StringToStream was wrong.

SAD Update V1.1.0.7k64 bug in QUAD RAD F1, etc. Name:K. Oide Date:2017/06/18(Sun) 06:25:53 No.447

Bug fixes:
1. Tracking in a quad with RAD and nonzero F1 has been wrong, due to a
mistake in transferring F1 from tquad to trad.

Changes:
2. SADHelp.HTML has been updated to add "See als", as well as more
descriptions in a number of items. Now SAD/FFS Command manual is also available at:

https://hep-project-sad.web.cern.ch/SADHelp/SADHelp.html

3. Close has been modified as suggested by Morita-san. Now Close[{a,b}]
means Close[a];Close[b] .

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |

- WebForum -