From: KEKVAX::OIDE 6-NOV-1990 18:32:29.94 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear SAD users: I send e-mail whenever any change is made on KO04.SAD.FORT, KO04.SAD.LOAD, and related routines. This is the first time. Please reply to KEKVAX::OIDE or OIDE@JPNKEKVM if you have a question or a request. 1. DRAW command is updated. There has been a problem on the drawing of BX, BY, EX, and EY, especially inside a bend or a quadrupole. A better interpolation is installed in the new module. Subroutines TWSDRW, QTWISS, QCELL, TFFSA are changed for this. 2. Argument of QTWISS is changed. On the update of TWSDRW, another argument SOL is added to QTWISS as subroutine qtwiss(latt,twiss,idp,dp,l1,l2,SOL,over) --- logical sol When QTWISS is called, SOL must be .FALSE. when l1 is outside of a solenid, .TRUE. otherwise. Katsunobu From: KEKVAX::OIDE 6-NOV-1990 19:10:41.22 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear SAD users: 1. Subroutine TFFSA is changed to install the 3D GEO command. Ask Kikuchi san (KEKVAX::KIKUCHIM) about the usage. Katsunobu From: KEKVAX::OIDE 8-NOV-1990 08:42:43.91 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. Subroutine TERROR is changed. The new version gives the same error for elements which have the same name and are adjacent to each other. 2. Changes are made on TFFSA, TRACKB, and TALIGN. No effect on the actual usage is expected. Katsunobu From: KEKVAX::OIDE 9-NOV-1990 09:50:17.72 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. A new subroutine TSOLVA is added. This solves a linear equation using the Singular Value Decomposition, same as TSOLVG, but you can specify the cut-off value of the singular value. The usage is same as TSOLVG, except the new argument epslon: call tsolva(a,b,x,n,m,ndim,epslon) solves A.x = b, where a: (ndim,m) real*8 matrix holding (n,m) components of A, b: (n) real*8 vector which has the right hand side, x: (m) real*8 vector where the answer, n: number of equations, m: number of unknowns, ndim: size of the columns of a. epslon: the ratio of a singular value which is cut off to the maximum singular value. TSOLVG is so modified to use TSOLVA and the epslon for TSOLVG is set to 1.d-8. The epslon for TSOLVG was 1.d-15*min(n,m) before this modification. If you use smaller epslon, the answer becomes more exact but more sensitive to the singularity. A larger epslon gives a milder solution but less exact. There is no a priori value of epslon. The value should be determined by the experiment on the particular problem. See Numerical Recipes, Section 2.9. This modification was quite essential for the dispersion correction of Kikuchi san. The matching in the FFS command is also modified to use TSOLVA and epslon of 1.d-3 is used there. I hope there will be an improvement of the speed of the matching by this change. Katsunobu From: KEKVAX::OIDE 13-NOV-1990 14:57:57.93 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. TFFSA is changed to include Kikuchi san's routine by %MACRO. 2. TDFUN is changed to accept future expansion for a local bump program. Katsunobu From: KEKVAX::OIDE 14-NOV-1990 16:22:18.42 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. There has been a bug about a bend with zero length. The kick angle has been oposite. It was corrected today. Katsunobu From: KEKVAX::OIDE 16-NOV-1990 18:17:48.66 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. A bend with zero length had inconsistency. A new subroutines TBTHIN, TBTHIE, and QBTHIN was added to handle a thin bend. TBEND, TBENDE, and QBEND was also changed. A combined thin bend is not supported yet. 2. TINITR was changed to improve the speed. Katsunobu From: KEKVAX::OIDE 16-NOV-1990 19:48:25.31 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. The parameter EPSLON for TSOLVA in the matching is changed to 1e-6 from 1e-3. Katsunobu From: KEKVAX::OIDE 20-NOV-1990 17:30:02.11 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. A bug in QBTHIN was corrected. The dispersion by a zero length bend has bee wrong. 2. TEIGEN is changed to output a message when the convergence is failed. Katsunobu From: KEKVAX::OIDE 20-NOV-1990 19:29:54.27 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. TCOD is so changed as to search the c.o.d. in the reverse direction when there is a difficulty in regular direction in TEMIT. Katsunobu From: KEKVAX::OIDE 21-NOV-1990 13:58:42.84 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. TBENDE, TQUADE, and TTURNE are changed to enable the flag DISRAD in the EMIT command. If DISRAD=1 is specified in the definition of an element, the radiation in the element is ignored in the emittance calculation. This flag has been valid only in the tracking before this change. Katsunobu From: KEKVAX::OIDE 28-NOV-1990 18:43:18.51 To: @SADUSERS. CC: OIDE Subj: SAD UPDATE. Dear Users: 1. A bug in QCELL is fixed. There has been a bug on the calculation of dispersion with the CELL flag when there is a strange coupling. Katsunobu From: KEKVAX::OIDE 11-DEC-1990 17:24:09.06 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. QMULT is added to handle the multipoles. QTWISS is also corrected to do that. MULT elements have not been activated for FFS until now. K. Oide From: KEKVAX::OIDE 11-DEC-1990 17:59:39.93 To: @SADUSERS. CC: OIDE Subj: SAD UPDATE. Dear Users: 1. A bug in QGETTR is corrected. The matrix calculation in the MAT command has been wrong when the specified start point is after the end point. K. Oide From: KEKVAX::OIDE 14-DEC-1990 10:40:26.00 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. Subroutines for the emittace calculation in multipoles, TTHINE and TMULTE, are modified to make them consistent to the tracking and the matching. The way of the kicks was different only in the emittance routines. It kicked only once in the middle of an element, but now is modified to (l/6,k,2l/3,k,l/6) as other routines. K. Oide From: KEKVAX::OIDE 17-DEC-1990 16:16:27.73 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. A Bug in TFSAVE is corrected. The solenoid parameters calculated by FFS was not saved in the main buffer, therefore the calculation of EMIT or TRACK might be wrong when the line was expanded again after FFS. Katsunobu From: KEKVAX::OIDE 18-DEC-1990 11:40:53.59 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. The radiantion in a bend in a solenoid is naw taken into the calculation of EMIT. TSOLE is changed to do that. Katsunobu From: KEKVAX::OIDE 19-DEC-1990 08:49:05.27 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. There was a bug in QTWISS on the calculation of the R matrix, in an uncoupled element, when the coupling is strong (|R|>1 in the regular form). It calculated R' at a element from the R of the previous element as R' = B.R.Inv(A), where A and B are the subdiagonal elements of the transfer matrix M, i.e., M = { {A, 0}, {0, B} }. The correct answer is R' = A.R.Inv(B). K. Oide From: KEKVAX::OIDE 19-DEC-1990 09:22:25.97 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. DISP command is changed to display Det(R) always. TFDISP and TFFSA is modified. K. Oide From: KEKVAX::KIKUCHIM 20-DEC-1990 00:46:35.47 To: OIDE CC: Subj: SAD/COR update New version of TFBUMP named as MFBUMP is now incorporated in %MACRO file (CORRECT). Please delete TFBUMP in TFFSA. Bye, Kikuchi From: KEKVAX::OIDE 20-DEC-1990 09:28:09.77 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. APERT command is changed to display the x-y correlation. TFAPRT and TFFSA are changed. K. Oide From: KEKVAX::OIDE 20-DEC-1990 10:34:19.15 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. A bug in TFBEAM is found and corrected. The calculation of the beam size in the APERT command was wrong when there is a coupling. K. Oide From: KEKVAX::OIDE 21-DEC-1990 16:47:51.83 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. A combined function bend is now fully supported in the matching. Enter VARY K1 variable1 [variable2 ... ] to change the variable of the bend whose name is matched to variable1 from the ANGLE to K1. After that, the K1 parameter is varied in the matching. If you want to return to make ANGLE varying, enter VARY ANGLE variable1 [variable2 ... ] . The definition of K1 is same as quads. A new subroutine TFCHGV is added. QDBEND, QDQUAD, QDTHIN, QDTWIS, QDCELL, TFFSA, TFSAVE, TFRST, TFSETV are also modified. K. Oide From: KEKVAX::OIDE 25-DEC-1990 09:33:19.04 To: @SADUSERS. CC: OIDE Subj: SAD Update. Dear Users: 1. Function SIND and SINHD are renamed to XSIN and XSINH to avoid a confusion with an intrinsic function in other systems. 2. Subroutines which have yen mark as the initial character are renamed. The yen mark is removed and attached at the last of the name. K. Oide