GPT/Pulsar Logo

Pulsar Physics

and the General Particle Tracer (GPT) code

Latest news about GPT: On this page you can find the latest developments in the GPT project. For example new elements, bugs, update information and other recent developments.

Update policy: It is our policy to introduce new features in the current release of GPT for free. However, when they are included in a new release, typically within half a year, they are removed from the free-elements list. Bug fixes for older versions remain available.

23-Aug-19: Under some conditions the GDFTRANS utility program of GPT version 3.x transposes large GDF files very inefficiently. An efficient GDFTRANS executable for MS-Windows can be downloaded here. When using this version of GDFTRANS with older GPT releases, it might be necessary to install Microsoft Visual C++ 2015 Redistributable (x64).

15-Mar-19: GPT version 3.38 contains a bug in spacecharge3Dmesh that causes an incorrect number of particles to be dropped when the "Cathode" option is specified. A simple workaround is starting particles a few micron downstream the cathode surface. The bug is corrected in GPT version 3.39 and a free upgrade is avaiable.

26-Jun-15: The magnetostatic fields of sectormagnet and rectmagnet are incorrect when the gap size is large compared to the size of the magnet. Custom GPT elements with corrected fields can be downloaded here and here respectively. To use these corrected elements they a) need to be installed as custom element with _fix appened to the name and b) the GPT inputfile must be changed accordingly.

06-Nov-14: Due to dropping openmp support in Xcode 6 by Apple, the Mac OS X version is single-core only. There is currently no fix for this.

02-Oct-14: Due to dropping openmp support in Xcode 6 by Apple, it is imposible to compile custom elements on Mac OS X. Please contact us for a workaround.

04-Jun-09: Compiling custom GPT elements with the old Visual Studio 2005 gives 'Fatal Error LNK1103: debugging information corrupt'. This problem is due to a known compatibility issue between Visual Studio 2005 and 2008. To solve the problem, please use either Visual Studio 2008, or install the hotfix provided by Microsoft.

04-Jun-09: Compiling 64-bit custom GPT elements is impossible with the free Express edition of Microsoft Visual C++ because it does not contain the required 64-bit compiler. You need to purchase the Education or Standard version for this functionality. This problem does not apply to the 32-bit versions.

25-Feb-09: The setfile keyword erroneously produces a 'multiple occurrences of group X' error when reading particle coordinates from a GPT outputfile that contains both position (screen) and time (tout) output. To read stored coordinates at a specific simulation time from such a file, please use the following workaround:
position = 1e100 ; # Any bogus number will work
time = desired_time ;
setfile("beam","output_of_previous_run.gdf") ;

05-Feb-09: There is an error in the randomize(seed) function of GPT versions 2.7, 2.8 and 3.0: In the case of random initial coordinates (created with the ~ modifier in the set...dist keywords) a few coordinates are always created regardless of the seed. To create independent random distributions for each different value of the seed, please specify a negative seed.

01-Jan-09: To add custom GPT elements with Microsoft Vista, please run GPTwin with Administrative permissions (shift-right-click on General Particle Tracer in the Start Menu, and select Run As Administrator).

03-Sep-08: Under some circumstances the FISH2GDF utility program of GPT versions 2.7 and 2.8 erroneously produces the error message: 'Can not find 6 array units'. An updated version for MS-Windows can be downloaded here.

21-May-08: The Microsoft Visual C++ 2005 Express Edition is not available for download anymore. To add custom GPT-Elements or GDFA-Programs, please install the Visual C++ 2008 Express Edition and see the next message.

21-May-08: The Microsoft Visual C++ 2008 Express Edition, the replacement for the 2005 version, is not automatically recognized by GPTwin version 2.81 and lower. This results in the following error message: 'cl' is not recognized as an internal or external command. To add custom GPT-Elements using the new 2008 compiler, the following setting in GPTwin needs to be modified:
Edit menu/Settings.../Compiler Batch file: C:\Program files (x86)\Microsoft Visual Studio 9.0\VC\vcvarsall.bat

18-Oct-07: Adding custom elements to the Linux version of GPT version 2.80 on a 64-bit machine produces linker errors. To solve this problem, please add TARGET_ARCH = -m32 to the ~/gpt/makeinc.gcc file and recompile your custom element.

25-Jul-07: There are problems running GPT under Windows Vista: Starting GPT results in an "Error creating new process", and the on-line help doesn't display. These problems are present in GPT releases 2.5x, 2.6x, 2.7x and 2.80. They are corrected in GPT version 2.81.

02-Apr-07: Setting the radius of macro particles, for example with the setrmacrodist keyword, works for every value except zero. If a radius of zero is specified, or if no value is specified, the code switches to the undocumented default value of 1 micron. This error is present in GPT releases 2.5x, 2.6x, 2.7x and 2.80. If a radius of zero is required, please set an unphysical small radius. For example:
setrmacrodist("beam","u",1e-100,0) ;

1-July-09: Inspired by the EPAC2008 contribution of Ivan V. Bazarov and Tsukasa Miyajima titled “Calculation of coherent synchrotron radiation in General Particle Tracer” we present a version of the spacecharge3Dmesh element that solves Poissons’ equation in a frame that is aligned with the particle bunch. This additional rotation significantly speeds up convergence in cases where the primary axes of the bunch, as measured in the co-moving frame, are not aligned with the Cartesian axes used in the tracking. The main use of this new element is spacecharge calculations inside bend magnets. To obtain this new spacecharge3Dmesh, please contact us by email at 'info at pulsar dot nl'.

07-Nov-08: A new GDFsolve option has been implemented that can be used for 'matching with space-charge', 'global autophasing' and other non-linear optimization problems. Documentation (and an MS-Windows executable) can be downloaded here. The new GDFsolve is included in all GPT versions starting from 2.83 and 3.03.

03-Oct-08: A new element has been developed that models the fields of an idealized cylindrically symmetric cavity in TM110 mode. The new TM110cylcavity element can be downloaded here.

23-Nov-06: To aid the design of Ultrafast Electron Diffraction (UED) experiments with GPT we developed analysis routines to calculate the coherence length of a charged particle beam. Documentation and installation instructions can be downloaded here.

02-Apr-07: Setting the radius of macro particles, for example with the setrmacrodist keyword, works for every value except zero. If a radius of zero is specified, or if no value is specified, the code switches to the undocumented default value of 1 micron. Please click here for details.

16-Jun-06: Custom elements in GPT 2.71 rely on the Microsoft Visual C++ Toolkit 2003. Unfortunately the free download at the Microsoft website has been replaced with a more recent version that is incompatible with this version of GPT.

12-Aug-05: Under some conditions related to starting particles as function of time, the screen element erroneously displays the following warning:
gpt: N Particle(s) started behind screen x. Particles are ignored
If this message appears, it is likely that particles that should be recorded in the output file are omitted. An update and installation instructions can be downloaded here.

11-May-05: The documentation of the setfile element is incomplete. An optional temporal distribution can be specified by adding a column named "t" to the list of particle coordinates. This optional t column sets the particle release time in seconds.

03-Jan-05: The documentation of the parameter list of map1D_TM is incorrect. The correct syntax is:
map1D_TM(ECS,filename,z,Ez,fac,phi,w) ;

02-Nov-04: The ECS specification in the documentation of setcurvature is incorrect. The ECS should not be specified because this element expects the cathode surface to be located at the z=0 plane. The correct parameter list is:
setcurvature(set, Ra, Rc, Lc) ;

Note: The 'settransform' element can be used to move the cathode surface.

12-June-06: A new element has been developed that sets the xy-projection of the initial particle distribution based on a grayscale bitmap image. It is available for download here.

02-Apr-07: Setting the radius of macro particles, for example with the setrmacrodist keyword, works for every value except zero. If a radius of zero is specified, or if no value is specified, the code switches to the undocumented default value of 1 micron. Please click here for details.

04-Sep-02: GPT 2.60: A corrected ezcell element is available. Please contact us for a free update.

New elements and features for GPT version 2.6

24-July-03: Three new GDF based one-dimensional fieldmap elements are available to all GPT 2.6 users. They can be used as convenient replacement for the bz and ezcell elements.

25-May-03: A release version of the multi-frequency FEL element g00mf is available to selected users.

19-Sep-02: The latest GPT release, version 2.61, contains all scatter and boundary elements previously shipped as a separate package.

12-Sep-02: A program to automatically convert GPT output to the "Self Describing Data Set" (SDDS) file-protocol is available free of charge to all GPT 2.5 and 2.60 users.

02-Apr-07: Official support for GPT version 2.5 is terminated.