!--script-->
Los Alamos Accelerator Code Group * |
| ||||||||||||||||||||||||||||||
Change Log for Parmila
|
Change Log for Parmila This file describes changes, additions, and bug fixes in Parmila and related codes in reverse chronological order. July 26, 2005 Parmila 2.36.0001 When designing CCL, CCDTL, or SC cells past the last cell to be used in the beam-dynamics simulation the z position of quadrupole magnets beyond the last beam-dynamics cell in the LINOUT 1 table is now correct. Previously, these z positions contained large numbers. The Lingraf plotting program now correctly displays the separatrix centered on the synchronous energy and phase in longitudinal phase space. It was previously centered on the beam’s average energy and phase. The difference would not be noticed for most well-behaved beams. June 6, 2005 Parmila 2.35.0012 We have removed a number of obsolete features from Parmila. The more compact source code will be easier to maintain and support. The number of lines of code is smaller by more than two thirds. In cases where the code no longer recognizes a keyword in older input file, users should check the documentation for the name of supported command. Following are some of the keyword users may encounter in older files and what to do about them. If you should encounter any others, please send the input file to laacg.lanl.gov and we will provide advice about what to do. RadPctCut 99.99 Delete this line and include the number as an optional parameter on the PrtBeam line. This optional parameter Pcut specifies a radial cutoff in percent. For the table written to file Beam.out, Parmila sorts the particles by radius and prints the radius that contains the percentage of the particles set by Pcut. The default setting is Pcut = 99.0. OldRectangle and Rectangle Remove any OldRectangle lines and edit the Rectangle lines in Transport sections to use the supported format for which parameters 3 and 4 are the x and y half widths of the rectangular aperture in cm, and optional parameters 5 and 6 are x and y centers. The default center is (0,0). In the old format, parameter 3 was the maximum x coordinate of the rectangle, 4 was the maximum y, 5 was the minimum x, and 6 was the minimum y (all in cm). ForceReadDTL Remove this line. It had no effect in recent versions of Parmila. In fact, we don't know what it was supposed to do. ExtDquad 10 ... Replace this line with ExtQuad 12 ... ExtDquad 16 ... Replace this line with ExtQuad 16 ... Bore Older versions of the Bore line contained an unused first parameter followed by the bore radius in cm. The first parameter should now be the bore radius in cm. If two more parameters occur, the second parameter is the starting cell number where the bore radius changes to the value specified by parameter 3. The code will diagnose an error if the number of parameters on the Bore line is not 1 or 3. Parmila diagnoses more errors in the input file than previous versions. When an error is detected the code stops with a message in a pop-up dialog box, which usually direct the user to file ParmilaOut.txt for more information. Several of the tables written in file ParmilaOut.txt now include descriptions of the column headings. We also are continuing an effort to improve the readability of other information written in the output file. Program Lingraf now includes descriptions of the column headings for table written in file LGrafOut.txt. On scatter plots at a particular location along the linac, Lingraf now displays a line containing information about the cell or transport element. For cells in a linac structure this line includes the name of the structure type (DTL, CCDTL, CCL, SC1, or SC2) and the cell number. For transport elements this line names the element type (Drift, Quadrupole magnet, etc.) and the sequence number of the element in the transport structure section. Lingraf can also still read older plot files, but this detailed information will not be displayed. Lingraf now includes a status bar at the bottom of the screen that lists the "subnum" command for which data is currently displayed. The installer now preserves user settings in LANL.INI even if the line starts with a comment character (semicolon or exclamation mark). Previously, if a user had commented a line in the file, the commented line would be preserved, but the original line with its default setting would also appear in the new file. This older behavior could lead to unexpected results. For example, if the user included in the [Global] section of LANL.INI an active version of a commented line in another section, the setting in the [Global] section would be ignored. The Mk_LAINI utility, if run separately after the installation, includes the same change. We fixed a bug in the line parser used in Parmila and other codes. In previous versions, a tab character appearing in certain places could cause the parser to fail to recognize valid numerical entries. Tab characters between parameters was not a problem. However, a trailing tab or a tab between the last numerical parameter and a comment string (starting with either a semicolon or an exclamation mark) prevented the code from identifying the last numerical parameter as a number. November 11, 2004 Parmila 2.34.0011 We fixed a bug on the DumpDists line in Parmila. The code would not write the particle distribution if only one cell number appeared on the DumpDists line. Parmila now writes particle distribution binary files in Transport Structure sections. The transport element number takes the place of cell number used for other Structure sections. Parmila will now write a particle distribution binary file before the first cell or transport element if the first cell number on the DumpDists line is zero. The file naming convention for particle distribution files has been changed. The files now have the form Distnn-mm.DST, where nn is the current structure number and mm is the cell number or transport element number. This change makes using program ReadDst easier. With the previous particle distribution naming convention the text file written by ReadDst always had the same name, which required the user to rename the file before running ReadDst again. Program ReadDst can now be launched by double-clicking on a particle distribution file, which has extension DST. (This feature applies to the executable version of ReadDst that the installer places in directory d:\LANL, where d: is the installation drive. The feature is not included in the source file ReadDst.f90 found in directory d:\LANL\DeveloperFiles\Parmila. The new LANL.INI variable CoordinatePrecision selects either single or double precision for the particle coordinates written to binary data files created at cell numbers or element numbers specified on the DumpDists line. Single precision numbers have about 7 decimal significant figures, which is adequate for plotting codes. Double precision numbers have 15 or 16 decimal significant figures. October 13, 2004 Parmila 2.34.0008 The documentation now contains the reference to a 1967 paper by Ohnuma and Vitale where it applies to adjusting the lengths of quadrupole magnets. We thank our colleague Rod McCrady for locating this paper. September 10, 2004 Parmila 2.34.0005 Beginning with version 2.30, the installer and utility program MK_LAINI.EXE would preserve settings in LANL.INI that had been edited by the user. The codes will now also preserve any additional comment lines added by the user. July 15, 2004 Parmila 2.34.0004 The documentation contains a brief description of the colors used for particle densities on scatter plots in Parmteqm and Lingraf. May 4, 2004 Parmila 2.34.0001 Fixed some problems with the Trace 3-D input file generated by Parmila. The file had incorrect entries if the Parmila input file included any CHANGE lines. March 17, 2004 Parmila 2.33.0002 On successful completion, Parmila will now delete any output files that were created, but not actually used during the run. Some output text files that previously did not have a file extension not have extension "out." For example, file WallPwr will now be named WallPwr.out. This change makes it easier to open and view these files in the Windows environment. We updated the documentation to include a discussion of settings in file LANL.INI used by Parmila and Lingraf. Program MK_LANLINI either creates a new LANL.INI file or updates an existing file with the new settings. This code runs automatically when the Parmila setup program installs the code. When opening file LANL.INI, Parmila and Lingraf no longer look on the PATH. The code first looks in the current directory. Next, it checks environment variable LANLINI for the directory containing LANL.INI. Next, it looks in the directory containing the executable file, and finally it looks in the installation directory (as defined by environment variable ParmilaDir). The first file found is the one the program will use. This change conforms to the same method used in Poisson Superfish codes when opening file SF.INI. Program Lingraf has a few new pop-up error messages. One message occurs if the code cannot find the binary file containing plotting data (Parmila.plt written by Parmila). The Poisson Superfish tuning programs CCLfish, CDTfish, DTLfish, and ELLfish will now create an input control file for program ReadPMI under certain circumstances. The tuning code creates this input file if ParmilaData = Yes in file SF.INI (indicating that the code should produce PMI files containing transit-time factor integrals), and if the particle velocity always increases from one problem to the next, and if tuning code control file contains at least two problems. Filename extension .RDP is now associated with program ReadPMI. Double-clicking on the RPD file will launch ReadPMI. Program ReadPMI is now included on the Start menu under Parmila. March 3, 2004 Parmila 2.33.0001 Programs Parmila and Lingraf will now report the same version number and release date with each new release. The codes write this information in their respective output text files. January, 2004 Parmila 2.32.0002 ReadDst program can deal with both types of binary file formats written by Parmila. The DumpDists line in Parmila should not be used pending fix of a bug in Parmila that occurs when writting a line to Parmila.out. June 30, 2003 Parmila 2.32 Minor bug fixes. May 8, 2003 Parmila 2.31 We fixed a bug that was introduced in the the 2-D space charge subroutine in version 2.30. The bug caused an error in the dynamics calculation when the longitudinal mesh size was larger than the transverse mesh limits. March, 2003 Parmila 2.30 Parmila went through a large structural reorganization. The source code now conforms to the Fortran 90 standard with free format. The code is now compiled with Lahey Fortran LF90. We eliminated obsolete language features and use Fortran modules rather than the older common block for storing variables. All of the code modules, subroutines, and functions declare IMPICIT NONE and define the type and kind of all variables. We use more descriptive names for important variables. With these changes, the code is more robust and easier to maintain. File names are no longer limited to eight characters. PARMILA reads an initialization file, which may include names of input and output files, and also some program limits. The user can declare the maximum numbers of linac cells, tanks, and simulated particles. 1/15/02 Enhancement: Parmila code: For the Superconducting structure, specifically SC2, a new keyword "SetSCRFfluc (Voltage +- fluctuation in %)" is created. This keyword should be placed in the applicable structure before any of the Transit time factor tables. This keyword may be placed before any of the rf voltage defining keywords. But, the natural place is to place after all the rf voltage defining keywords. This keyword does apply to the individually phased segment (Cavity) the Klystron Voltage fluctuaton. Then, using this fluctuated voltage from the programmed values as the defined linac parameter, the SC2 linac is defined. This keyword "SetSCRFfluc" sets the rf cavity voltage fluctuation for the SC linac. Assumes the independently Klystron driven cavities. SetSCRFfluc (Amp fluc +-%) (Write/Read Fluc) (E0tSinCont) Write/Read Fluc= 1 : write the determined Amp. fluctuation for the structure. = 2 : read in the determined Amp. fluctuation for all the structures. the (Amp fluc) value is ignored and holds the parameter place. if E0tSin continuity: E0tSinCont=1 =0 or None: default This keyword must be set at each structure that is affected. 1/28/02 Enhacement: Parmila code: The drift element in the transport structure can now handle the realistic chopper that deflects in y direction. This is activated by specifying the parameter (5) ! Chopper Enable/disable (1,-1/0) -1 flips the gap voltage polarity of (7) (6) ! Slit Enable/disable (1/0) (7) ! +- Gap Voltage (MV) across plates. The net voltage across plates are 2X of this. (8) ! Gap distance (cm) :full distance between plates (9) ! ystart (cm) --used for slit (10) ! slope of plate --used for slit The length of plates are the same as the drift length. 2/7/02 Enhancement: Parmila code: The CCLseg keyword for the transport structure is re-implemented. This facility was present in the old parmila. Use as CCLseg(Leng (cm)),(Bore (cm)),Outflag,(E0T (MV/m), (Phid (deg)),(Ncells),(Harmonic) 4/4/02 Enhancement: The beam jitter that is measured in the wire scanner is implemented. The FWHM is calculated and statistical error is deduced. 4/15/02 Bug Fix: Parmila code: The bending magnet used in the Transport structure did not calculate the central trajectory length correctly. This is fixed. 4/18/02 Bug Fix: Parmila code: --if the run (commissioning study) is such that the energy gain is turned off for SC, the design needs to be terminated appropriately. (Note: other structures than SC, the design depends on the energy gain. So the energy gain can be turned off only after the design is completed: after all the SFtables are read in. The design terminating cell is set to the Nlast on the Structure keyword plus 10 segments that is specified on the SC cards. 8/1/02 Bug Fix: Parmila code: The S parameter (18th parameter) in the Inputt keyword did not work to specify the identical particle distribution seed. This is fixed. Note: Old parmila used to specify the same random number seed by indicating negative number of particles on the Input keyword. For the compatibility to old input file, this undocumented method is still active in the current code. 8/1/02 Enhancement: parmila code: Prtbeam can now include a parameter RadPctCut to specify the Radius of particle that corresponds to the 99%tile of total number of particles sorted out with radius. (100k particles, sorted out in radius. Then the 99k-th particle radius is printed.) 8/1/02 Enhancement: parmila code: "EfieldDeflector (Length) (+-Yplate) (outflag) (Nsc) (+-Vplate MV)" keyword is implemented. This documented keyword separates the deflector part out of drift keyword. 8/8/02 Enhancement: parmila code: The Use3DPicnic, UseScheff keyword as defined in global section before the first structure keyword defines the default space charge calculation algorithm. If either one also appears in some structures, they defines the algorithm used only only in that structure. Dumpdists keyword is enhanced. When it is specified within structure(s), the particle distribution file indexed from .000 up to .999 is generated consecutively through the structures. The Dumpdists defines the cell number(s) after which the particle distribution files are dumped. Any one of them are made readable by the parmila code as input file, or ascii conversion program. 8/12/02 Bug Fix: Parmila code: The change 7 is clarified and the documentation was changed such that this keyword specifies the E field in individual cells as seen by the particles. The code itself is modified to confirm to the new documentation. 9/12/02 (1/5/03 updated) Bug Fix/Enhancement: Parmila code: keyword "RemoveLostAtEntry" is introduced. With this keyword, at the end of each structure, (1) At the first structure, when the distribution is read in, the distribution is trimmed using the LostP_ID.dst. (If the distribution is not present, do not trim and sort. (2) At the entry to each structure, the bad particles are not eliminated, not sorted from the particle distribution. (3) At the end of run, the bad particles are not trimmed, not sorted, when part_dtl.dst is written. (4) At the End of run, only If the parameter is specified to be 2, the LostP_ID_Out.dst is written for identifying the lost particles. the sorting of good particle and eliminating the lost particles from the distribution. When the particle is lost through the run, the particle distribution at the end of run is written by the two files: part_dtl.dst (or specified filename), and lostp_id.dst for (parameter = 2). Otherwise only part_dtl.dst is written. If the particle distribution is read from a file for a run using "ReadDist" keyword, without "RemoveLostAtEntry" keyword,as a default, all the particles on the part_dtl.dst are considered as good particles. However, if the particle distribution to be read was produced with the parmila code, and the previously created part_dtl.dst (or specified filename), and the lostp_id.dst (as renamed from lostp_id_out.dst) which actually might flagged some particles were lost, user need to specify the new keyword "RemoveLostAtEntry (None, 0, or 1 or 2)" immediately before or after the "ReadDist" keyword. (If the Input keyword was used, it should be placed immediately before or after the "Input" keyword.) Then, the parmila run will read and use both files, and properly disregard the lost particles from the input stream distribution. For this mode of run (without a parameter of with 0 or ` 1 for "RemoveLostAtEntry") the lostp_id_out.dst is no longer written. However, if the first parameter in the RemoveLostAtEntry keyword is 2, the lostp_id_out.dst is written by the run. 10/7/02 Bug Fix: Parmila code: The RF Phase and amplitude error generation for the superconducting Linac using RFerror/RFErrors had a subtle bug that produced much larger Phase and amplitudes consistently. This bug is eliminated. (This bug was discovered by running the parmila code with no space charge and a tiny emittance--Dong-O did this Ltrace runs. Then, compared with the result from Ltrace run. The phase distribution, and Energy distribution width was about factor of 2 larger than what it supposed to be.) 10/18/02 Improvement: LF90_Parmila code: the new keyword MaxLimits (MaxParticles) (MaxCells) (MaxTanks) (MaxStructs) new feature in F90 If specified, this Global keyword must placed Immediately before the Linac keyword. If the parameter is specified to 0, it serves as a place holder. If Parameter(s) are not specified, the default values are used as compiled. Because LF90 compiler accepts long file name, input file name can be longer than 8 characters. Improvement: Because LF90_Parmila opens a CMD window only the duration of parmila execution, The diagnostics are not seen after the execution. To preserve the execution process, a file console.out that displays all the console output, is created after the parmila run. 11/14/02 Improvement: When parmila calculates dynamics, in the parmila.out, and beam.out, for the transport structure, the beam phase average center printed out now includes the centroid phase slip from the exit of previous non-transport structure. This could be caused by the centroid of ending energy different from the refernce energy causing the phase slip with respect to the reference particle. The phase centroid printout is updated after each of drift element. For other beam element, the centroid phase is not updated. Also, if the centroid phase slip happens as the last structure the particle coordinates dumped (part_dtl.dst) have the phase offset included. 1/30/03 (LF90) Improvement: Parmila code. The new keyword QuadDZerror assigns the Quadrupole Z position error. DZ=0 disable this Error. Quadrupole Zpositon error: Can be specified as Global parameter. But, can be placed individually placed in each structure: This keyword must be specified before the SFdata tables are specified. For example "QuadDZerror 0.0381(cm)" assigns the +-0.0381 cm maximum zposition error separately on each quad. The transport structure assumes no errors. If this keyword is speficied at the global section of the input stream, the same maximum error is assigned on the entire linac. However, if this keyword is specified at any structure, the new maximum error can be assigned from that structure. 2/20/03 BugFix: (LF90) Parmila code: The undocumented feature for the CCDTL and CCL, the Phaselaw with mode 4 together with the PhaseLaw with mode 1 should add the extra drift that account the phase discontinuity between the segments was not working properly. This is fixed. August 12, 2002, Version 2.12 We corrected the documentation for the CHANGE 7 line, which replaces the average axial electric field for individual cells. The documentation previously used nearly the same language as the CHANGE 4 line, which scales the value of the field. August 8, 2002, Version 2.11 The documentation includes a new section that lists the output files created by Parmila and includes links to command lines that generate the files, if applicable. For superconducting structures, the new keyword SetSCRFfluc defines a range of cavity voltage fluctuations. IN TRANSPORT structure sections, the new EFieldDeflector element simulates a parallel-plate deflector. It can also apply to the effective voltage of a traveling-wave rf deflector. Bug Fix: The bending magnet in Transport structure now calculates the central trajectory length correctly. Bug Fix: The random number seed S on the INPUT line now generates the same particle distribution when for identical values of S. Bug Fix: The tr3din file for the graded-beta design of CCL structures now produces the correct quadrupole sequence for a doublet lattice. Bug Fix: When writing the direct access file Parmila.PLT, the code no longer omits some of the particle records. The PRTBEAM line, which creates file BEAM.OUT, has a new optional parameter for the radial cutoff level in percent. Parmila sorts the particles by radius and prints the radius that contains the percentage of the particles specified. At the default cutoff of 99%, if BEAM.OUT reports a 3.0-cm radius, then 99% of the particles have a radial coordinate smaller than 3.0 cm. The LinGraf postprocessor now shows particle densities in color. Also, if the plot file requires more than 2 GBytes of disk space, Parmila creates multiple plot files to avoid a limitation of the Fortran compiler. Bug Fix: When the first STRUCTURE is a TRANSPORT section Parmila now computes the beam loading correctly. New output file DESIGN.OUT lists all linac parameters, including beam- line elements. The format is similar to that used by LINOUT 1. Bug Fix: A small correction was required in the gap transformation calculation. The phase advances for off-axis particles was not being calculated correctly. The new keyword SetSuperCav allows independent phase and amplitude control of individual segments in SC1 and SC2 superconducting linac structures. Bug Fix: The Parmila OUTPUT 2 line was producing unwanted output at the first cell of a STRUCTURE section, which caused an error in the LinGraf phase-advance calculation. Now, only the cells specified appear eliminating the problem in LinGraf. Bug Fix: If a QuadBetaLoc line refers to cavities beyond the range of the current structure, later structure sections will no longer be affected. Parmila can now calculate space-charge effects in 3 dimensions. New keywords Use3DPicnic and UseSCHEFF selects either the 3-D PICNIC subroutine written by Nicolas Pichoff of CEA/Saclay or the original 2-D SCHEFF subroutine. The new command line DumpDists instructs Parmila to write binary files of the particle coordinates at specified locations along the linac. The distribution provides a program in directory LANL\DeveloperFiles\Parmila that can read these files and generate a text file of the coordinates. Source code for this program is also provided for code developers. In the output files BEAM.OUT and Parmila.OUT, beam-center phases now correspond the center of gap for CCDTL, CCL, and SC linacs. For DTL and Transport line elements, the phases correspond to the end of each cell or element. The new command line ApertureCells inserts radial apertures after specified cells in a linac structure. The setting allows individual settings at the specified locations and overrides the setting on the BORE line. January 8, 2002, Version 2.10 With this release, we begin using incremental version numbers for bug fixes and minor changes in Parmila. The version number and revision date will appear on the first line of file Parmila.OUT. The remainder of the file lists changes prior to 2002. 7/23/01 MK_LAINI is a new utility program that creates a new copy of the LANL.INI file. The installation program Setup.EXE runs this code to update or create file LANL.INI. The user can run MK_LAINI to restore default settings or generate a new copy of LANL.INI in any specified directory. 5/29/01 We corrected the statement in the documentation that said that a BEGIN line was not needed in a TRANSPORT STRUCTURE section. All STRUCTURE sections require a BEGIN line to start the dynamics calculation. 5/2/01 Parmila will no longer stop with an incorrect message about finding the Parmila.INI file when run in LANL directory or when started with a nonexistent input filename. 12/15/00 The Setup program for Parmila now also installs the Windows version of TRACE 3-D, documentation in both PDF and Microsoft Word formats, and several TRACE examples. 12/6/00 Parmila now uses an InstallShield Setup program. To install the latest version requires that you download a new copy of file Parmila.RGR from the Register directory assigned to your institution. 3/26/00 The installation files for Parmila no longer include Poisson Superfish, which has a separate installer. Parmila still uses the INSTALL.EXE program. We are working on a new installer for Parmila that will use the commercial InstallShield program. The subdirectories under LANL\Parmila have been moved to the new directory LANL\Examples\Parmila. The documentation file Parmila.DOC is now found in directory LANL\Docs. 2/29/00 BugFix: We fixed a bug in Parmila dynamics calculation for the last quadrupole magnet in superconducting doublet-lattice structures. The code was supposed to transport the particles up to the center of the doublet. Instead it was stopping at the center of the first quadrupole and ignoring the remaining half of the quadrupole. 2/23/00 BugFix: When Parmila was designing certain superconducting layouts, the code terminated prematurely while creating the TRACE 3-D input. 2/18/00 BugFix: Parmila code: In superconducting dynamics calculations for SC2 structures with a preceding quadrupole present, the dynamics for the preceding quadrupole was not done correctly. This has been corrected. 1/21/00 NewFeature: Parmila now allows a ramp in the average phase over each superconducting segment. The phase ramp is implemented using the keywords SetBetaRamp and PhaseRamp. (A ramp in E0 is not permitted for superconducting structures.) 1/12/00 Bug Fix: We fixed a bug in Parmila for SC2 superconducting linac sections. For SC2 lines with multiple layouts, the code was not computing the distance between modules correctly. The error occurred only for the second or higher layouts. 1/6/00 Bug Fix: We fixed a bug in Parmila for superconducting linac sections. The code was erroneously ignoring quadrupole settings for all but the first layout on SC1 or SC2 lines with multiple layouts. 1/5/00 New Feature: Parmila now allows constant accelerating field in each cavity as an option for superconducting cavity structures. 12/22/99 New Feature: In Parmila, a new keyword InputLineUnits modifies the INPUT line to allow entry of the Twiss or Courant-Snyder ellipse parameters directly from either a TRACE 3-D output file or from a Parmila output file. 12/8/99 Bug Fix: The Doublet quadrupole magnet feature (LatticeType = 2) for CCL and CCDTL structures was not working correctly. This bug has fixed. Bug Fix: We fixed a bug in Parmila that affected the particle dynamics in the drift space between segments of superconducting structure 11/15/99 Bug Fix: For superconducting linac designs, Parmila now uses the correct transit-time factor for the first cell in the first cavity. It was erroneously using the internal cell quantities for this cell. New Feature: In Parmila, you can suppress creation of the plot file Parmila.PLT by including keyword NoPlotOut in the input file. 10/25/99 New Feature: In Parmila, you can now use the ExtQuad 10 line to set the gradient on the quadrupole magnet preceding the accelerating structure. If Extquad 10 is not used for this purpose, the default gradient comes from the CCDTL or CCL line. 9/27/99 New Feature: The file created by the POWER keyword will include more details of about the power dissipation (including the beam power) if the keyword FullWallPower appears in the input file. 9/22/99 New Feature: The keyword Rectangle used in Transport sections can now specify an offset center for the rectangular aperture. 9/2/99 Upgrade: The input filename specified for ParmilaIn in file LANL.INI has be increased to 48 characters. Three parameters in the [Parmila] section of LANL.INI can be used to specify filenames for the input file (ParmilaIn), and input and output binary files containing the particle distribution (Part_In_Dst and Part_Out_Dst). 8/10/99 New Feature: In program LinGraf, we added a new OUTPUT line for specifying an emittance contour other than 90% for the printed output in file LinGraf.txt. 6/23/99 Bug Fix: In Parmila, for DTL structure sections, the higher-order multipole components of quadrupole lenses was not working when the feature was requested in the input file. This bug is fixed. 6/21/99 Bug Fix: In Parmila, particle distributions with input type 10 followed by type 120, or input type 20 followed by type 110, are now constructed so that phase space coordinates y,y' are both nearly zero for types 10 and 110, and x,x' are nearly zero for types 20 and 120. New Feature: In Parmila, we have added a new input type (40) to generate x and y coordinates on a mesh, but with momentum coordinates nearly zero. This input type simulates a laminar flow distribution. 6/15/99 Change: The units of the linear dimensions on the QuadErrors line have been changed from mils (thousands of an inch) to centimeters. With this change, Parmila no longer uses the unit mil for any variables. 6/14/99 Bug Fix: For the CAVITY element in a Transport STRUCTURE section, the normalized emittance calculation was not using the most recent particle energy so it appeared that the emittance was not conserved across the cavity. The code now uses the correct energy and the normalized emittance is conserved across the accelerating cavity. 6/9/99 New Feature: A new keyword in Parmila, SampleDump writes the phase space coordinates for a sample of the particle distribution to a file at user specified intervals along the linac. 6/2/99 Change: At the request of users, we have increased the allowed number of transport elements from 200 to 2500. 5/21/99 Bug Fix: Higher order multipoles for quadrupoles in Parmila were being calculated incorrectly. The higher order terms are present only when activated with the MPOLES keyword. 5/6/99 Bug Fix: We modified Parmila to skip certain emittance calculations if the code determines that the particle distribution deviates so far from an elliptical distribution that the calculation gives unphysical results (for example, a negative value of the emittance). 4/28/99 Bug Fix: In Parmila, the CUTDIST keyword was not working properly if the cut was not centered on the beam. 4/27/99 Change: The units of the linear dimensions on the DISPLACE line have been changed from mils (thousands of an inch) to centimeters. 4/26/99 Clarification: In the documentation, we have tried to clarify the behavior of the phase-shift parameter that appears on the STRUCTURE line. 4/21/99 Bug Fix: In Parmila transport sections, the BEND line was not setting the field index to zero when it was left unspecified. This error has been fixed. 3/15/99 Bug Fix: The keyword APERTURE in the transport structure was not working. This bug was fixed to conform to the documentation. 3/11/99 Bug Fix: Change 2 keyword with zero strength Quadrupole field gradient was not working. This bug was fixed. Bug Fix: When the linac frequency changes across structures, in the TR3din file, the harmonic number of the RF gap element did not reflect the new frequency. This bug is fixed. This bug affected only the TR3din file. 2/1/99 New Feature: In Parmila, the keyword TILT in a Transport section deflects the beam by a given angle in the x or y direction. 1/26/99 New Feature: The heading of the Parmila output file Parmila.OUT now includes the name the input file. Correction: The description of kl0 printed in the table heading of file E0tprof.out has been corrected. 1/22/99 New Feature: In Parmila, a new keyword line CUTDISTZ specifies that the particle distribution should be truncated as specified immediately after generation of the distribution. This keyword should be placed before the INPUT keyword. New Feature: In Parmila, The NoSFTableOut keyword before any SFDATA tables will suppress output of the SFDATA tables from that point on until the end of the run. 1/21/99 New Feature: In Parmila, a new method for ramping the accelerating field and phase is available. The E0ramp, PhaseRamp keywords now have an additional parameter that allows a step-wise increment in either the field or phase. 1/20/99 Bug Fix: Previously, an input file containing consecutive TRANSPORT structure sections would cause Parmila to crash. Parmila can now accommodate consecutive TRANSPORT sections. Bug Fix: Parmila previously would not run if the bunch current on the LINAC line was less than 1 mA. The code will now run if the current exceeds 10^-6 mA. 1/14/99 Bug Fix: In Parmila, for a large number of particles, writing the file Parmila.PLT could exceed the maximum allowed length of a direct-access record. The code was modified to fix this problem. A modification was also made in LINGRAF to make it read the modified Parmila.PLT file correctly. 1/13/99 Upgrade: When Parmila starts, it used to open all the files at the beginning, unnecessarily tying up file handles. Files are now only opened as they are needed. Upgrade: In Parmila, to avoid possible confusion, we have separated the two functions previously performed by some CHANGE lines. CHANGE 10 and CHANGE 11 line now modify quadrupole gradients or lengths of a range of cell numbers. The new CHANGE 16 and CHANGE 17 lines modify the gradient or length of the first quadrupole magnet of a structure or a series of DTL tanks. 1/12/99 Upgrade: Parmila has been modified to prevent the user from inadvertently generating an incorrect result. If Ncell = 0 on the STRUCTURE line for a linac section, the following structure will not perform the dynamics calculation. If the dynamics termination cell number for the previous structure is unknown, the starting point for dynamics run for in the following structure is undefined. October, 1998 Definitions of the some of the transit-time-factor integrals has changed in both Parmila and POISSON SUPERFISH. Previously, the derivatives Tp Sp, Tpp, and Spp contained cell-length factors to make the quantities dimensionless. Following a suggestion made by D. Swenson in 1977 we have replaced these cell-length factors with the quantity beta*lambda. For most types of cavities, the change will not affect the results of the beam dynamics calculations in Parmila. However, for one type of cavity, the change fixes an error. The error occurred on the middle cell of a 3-gap CCDTL cavity for which SUPERFISH modeled only half the cavity. For this case, program SFO would divide the transit-time derivatives by the half-cell length, but Parmila assumed that SFO used the full-cell length. The main effect of this change is that all SFDATA tables in Parmila input files must be regenerated with the new version of SFO. The SFO documentation and the example files for Parmila have been updated to reflect this change. The on-line Parmila documentation has been assigned Los Alamos National Laboratory report number LA-UR-98-4478. We noticed that example file SNS referred to a few older names for some keyword lines. The file still ran because we left the old names as synonyms at least temporarily, but we plan to eventually settle on just one name for the keywords. We have updated the input file accordingly. (Phlaw was the old name for PhaseLaw; Qenpos was the old name for QUADLOC; Qenlen was the old name for QUADLOCS; and Qenpbeta was the old name for QUADBETALOCS.) The Linramp line in the SNS file not documented at present. We will either replace this line with a documented line that does what Linramp does or add it to the documentation. Look for a more recent entry in this file. September, 1998 The new version of Parmila that supports many types of rf structures has been released. The distribution is in directory Parmila\PC. The older version that designs only DTL structures has been moved to directory Parmila\PC_OLD. Notations entered in this file after September, 1998 will refer to the new code. August, 1997 The registration file Parmila.RGR and its location on the FTP server has changed. All registration files are now in subdirectories of the Register directory. Each subdirectory has the same name it had when it was under the Parmila directory. When downloading an updated set of installation files for the first time after August 8, 1997, also get a new copy of file Parmila.RGR from the Register subdirectory assigned to your institution. July, 1996 Though not a code problem, we believe we may have discovered why some users occasionally have trouble connecting to one of our FTP servers. A user in Germany reported that the name PC-AOT-1.ATDIV.LANL.GOV was being resolved to an IP address different from 128.165.32.190. The different address was actually one of two IP addresses that PC-AOT-1 reserves for dynamic assignment to local dial-in clients. We found that three different IP addresses were assigned the same name in the domain- name server (DNS) look-up tables. We have now changed these assignments so that PC-AOT-1.ATDIV.LANL.GOV will always point to 128.165.32.190. |
||||||||||||||||||||||||||||||
* This work is supported by the U. S. Department of Energy, Office of Science, Division of High Energy Physics. | |||||||||||||||||||||||||||||||
Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA Outside | © Copyright 2006 LANS LLC All rights reserved | Disclaimer/Privacy |
Contacts Last modified: Tue 28 Aug 2007 1:04 PM , FLK Site access statistics |