1. 20 Oct, 2014 1 commit
  2. 17 Sep, 2014 1 commit
  3. 10 Sep, 2014 1 commit
    • Daniel Winklehner's avatar
      Major Changes: 1. No more dumping or restarting in LOCAL frame. 2. OPAL-CYCL... · fa42c672
      Daniel Winklehner authored
      Major Changes: 1. No more dumping or restarting in LOCAL frame. 2. OPAL-CYCL now recalculates reference* variables before dump and saves in H5 file. 3. OPAL correctly reads reference* values and calculates beta*gamma correctly from Ekin (was factor 1000 wrong before) Note: Transformation of bunch data into local frame must now be done in POSTPROCESSING -> upgrade H5root
      fa42c672
  4. 30 Jul, 2014 1 commit
  5. 28 Jul, 2014 1 commit
  6. 24 Jul, 2014 1 commit
  7. 08 Jul, 2014 1 commit
  8. 27 May, 2014 1 commit
  9. 21 May, 2014 2 commits
  10. 20 May, 2014 1 commit
  11. 19 May, 2014 1 commit
  12. 10 Jul, 2013 1 commit
  13. 02 Jul, 2013 1 commit
  14. 10 Jun, 2013 1 commit
  15. 26 Apr, 2013 1 commit
  16. 10 Apr, 2013 1 commit
  17. 14 Feb, 2013 1 commit
  18. 24 Aug, 2012 1 commit
  19. 23 Aug, 2012 1 commit
  20. 11 Jul, 2012 1 commit
    • Steve Russell's avatar
      Fixed two bugs in the 1D field classes, FM1DDynamic, FM1DDynamic_fast, · 058f85d9
      Steve Russell authored
      FM1DElectroStatic, FM1DElectroStatic_fast, FM1DMagnetoStatic and FM1DMagnetoStatic_fast.
      
      The first bug had to do with field normalization. Although the 1D field profile
      derivatives were normalized properly, the actual field was not. Instead of
      looping through all of the field values, the loop was over the Fourier 
      accuracy parameter. This typically had the effect that the on axis field was not
      normalized at all. For input fields that were already normalized to 1, this
      had no effect. However, if the input field was not then the field expansion
      was incorrect.
      
      The second had to do with the Fourier expansion used to calculate the 
      derivatives of the on axis field. The code reflects the input
      field in order to ensure that it is periodic. For best accuracy, this 
      reflection should be about the first point of the input data (z = 0). However,
      what was actually implemented was a reflection about -delta / 2, where delta
      is the 1D grid spacing. This caused an error that was small, and became
      smaller with decreasing delta, but significant. Using the new implementation,
      the reconstruction of the field file for the Envelope-Tracker-Phase-1
      (FINSS-RGUN.dat) is about two orders of magnitude more accurate than when
      using the old Fourier expansion implementation. Even though this error was
      small, there was a noticeable difference in the beam envelope when running
      the Envelope-Tracker-Phase-1 and ExternalFieldTest regression tests. The
      reference files for both of the tests were updated using the new field
      classes.
      
      A quick glance shows that the Fourier expansion bug may also be present in the
      1D Astra field classes, but I need to look more carefully to be sure.
      
      Finally, all six classes were cleaned up to conform to the new coding style.
      058f85d9
  21. 13 Jun, 2012 1 commit
    • Matthias Toggweiler's avatar
      AMTS integrator for OPAL-T: · 61c84bfe
      Matthias Toggweiler authored
          - The adaptive multiple time stepping integrator introduces separate time steps for space
            charge and "basic" external field integration.
          - Two kind of simulations will profit from it:
                1) Space charge dominated scenarios, where the space charge forces vary greatly, e.g.
                   gun simulations ("A aspect")
                2) Scenarios where space charge is not dominant, but has a visible effect. Lowering
                   of solver frequency can save considerable amaount of time while staying close to
                   solution with full solve frequency ("MTS aspect")
          - First basic version, not yet tested well
          - Currently works only for single node and single bin
          - Details how to use it will follow
      61c84bfe
  22. 24 Apr, 2012 1 commit
  23. 18 Apr, 2012 1 commit
  24. 17 Apr, 2012 1 commit
    • adelmann's avatar
      In OPAL several different TRACK's can performed within one simulation (does... · 06df9215
      adelmann authored
      In OPAL several different TRACK's can performed within one simulation (does not hold for OPAL-cycl yet) this together with 
      the restart capabilities calls for a delicate logic.
      
      Different tracks, looks like: 
      
      .....
      
      TRACK, LINE= Injector, BEAM=beam1, MAXSTEPS=100, DT=1.0e-12, ZSTOP=0.14;  
       RUN, METHOD = "PARALLEL-T", BEAM = beam1, FIELDSOLVER = Fs1, DISTRIBUTION = Dist1;
      ENDTRACK;
      
      TRACK,LINE= Injector, BEAM=beam1, MAXSTEPS=50, DT=1.0e-11, ZSTOP=0.20;
       RUN, METHOD = "PARALLEL-T", BEAM=beam1, FIELDSOLVER=Fs1;
      ENDTRACK;
      STOP;
      
      A run with the arguments -restart -1 will continue a track from the last dump in the h5 file. Other the from the last track will
      at the moment certainly fail in the general case. 
      
      Changes: 
      
      - The h5 attribute TrackStep is not longer available anymore. Two new attributes: LocalTrackStep and GlobalTrackStep are introduced instead.
      
      - LocalTrackStep refers to the track step in a track command (0 ... 99 and 0... 49 in teh above example), where the GlobalTrackStep is the 
      accumulated number of steps i.e. 0 ... 149, shown in OPAL's screen output. Both local and global track steps are also written into the h5 file 
      in order to properly restart the simulation.
      
      - The PartBunch object has get/set and increment functions:
      
          inline void setGlobalTrackStep(long long n) {globalTrackStep_m = n;}
          inline long long getGlobalTrackStep() const {return globalTrackStep_m;}
      
          inline void setLocalTrackStep(long long n) {localTrackStep_m = n;}
          inline long long getLocalTrackStep() const {return localTrackStep_m;}
          inline void incLocalTrackStep() {localTrackStep_m++; globalTrackStep_m++;)
      
              
      - In OPAL-cyc getTrackStep is replace by getLocalTrackStep assuming we only have one TRACK in the simulation.
      
      - In the ParallelTTracker at the end of the main loop (in execute()) obsolet code is removed (cleanup monitors etc.)
        
      For details see the diff :-)
      
      Still some work todo: 
      
      a) Need to remove: setLastStep in ParallelTTracker.cpp and in general
      
          getInstance()->getLastStep()
          getInstance()->getRestartStep() maybe not!
      
      b) The get/set and increment functions could very well be in an other class!
      
      c) ParallelPlate tests are broken but maybe also because of other changes need to fix this 
         together with Chuang and Achim
      
      d) Make sure the restart works in OPAL-cycl we do not have yet a regression test for that.
      
      06df9215
  25. 16 Apr, 2012 1 commit
  26. 05 Apr, 2012 1 commit
    • kraus's avatar
      Merge branch 'develop' into svn: get rid of half of the remaining warnings in... · ebf21699
      kraus authored
      Merge branch 'develop' into svn: get rid of half of the remaining warnings in opal (without pragmas), disable the other half with pragmas;
       - move saving of maxSteps_m inside autophasing method
       - when using mpicxx not with its default compiler then the cmake file should still work. extract the absolute path to the underlying compiler and its name
      ebf21699
  27. 04 Apr, 2012 2 commits
  28. 31 Mar, 2012 1 commit
  29. 29 Mar, 2012 1 commit
  30. 15 Mar, 2012 1 commit