Los Alamos National LaboratoryGo to the Lab s home pageSearch for people in the Lab s directorySearch the Laboratory s Web site
Los Alamos Accelerator Code Group
Los Alamos
Accelerator Code Group *
 
|LANL| LANSCE| LANSCE-ABS| Home|
|About Us| LAACG Codes/Databases| Accelerator Physics| News|
|Beam Physics| General Resources| Software/Methods| Site Index|

 
  Change Log for Parmila

   ->Return


   ->LAACG Codes

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.

 Los Alamos National Laboratory

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