- 29 Apr, 2012 1 commit
-
-
Jianjun Yang authored
Change the arguments of CCOLLIMATOR element to XSTART, XEND, YSTART, YEND, WIDTH so as to model non-radial oriented collimator
-
- 28 Apr, 2012 1 commit
-
-
Jianjun Yang authored
Now opal-cycl can restart from hdf5 generated by opal-t, but the appended hdf5 file can not be open by H5root: Dude! Inconsistent number of scaler step attributes between first and last step
-
- 27 Apr, 2012 1 commit
-
-
Matthias Toggweiler authored
-
- 26 Apr, 2012 2 commits
-
-
adelmann authored
-
Jianjun Yang authored
-
- 20 Apr, 2012 2 commits
-
-
Matthias Toggweiler authored
- Prepare list of cavities to check against OUTSIDE particle loop - Integration timer reduced by 15 % wrt previous revision
-
Matthias Toggweiler authored
- Inlined ParallelCyclotronTracker::checkGapCross into ::push - Convert perpendistance from mm to m, do calculations in m - Only compute distOld when necessary, stop if is already clear that no cross occurs - Integration timer for firstTurn.in example is more than 15 % smaller (LF and MTS profit from that, not yet RK4 because RK4 uses old function)
-
- 17 Apr, 2012 5 commits
-
-
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.
-
Matthias Toggweiler authored
- simplify checkNumPart - clean up function initDistInGlobalFrame - correct indentation - move AUTO mode stuff down where meanR is calculated already - referenceR is not used in Tracker_MTS body, so remove it
-
Matthias Toggweiler authored
- Needed to add member variables turnnumber_m, eta_m
-
Jianjun Yang authored
-
Jianjun Yang authored
-
- 16 Apr, 2012 2 commits
-
-
kraus authored
- use forward declaration where possible - remove unused includes
-
Jianjun Yang authored
-
- 15 Apr, 2012 1 commit
-
-
Jianjun Yang authored
-
- 13 Apr, 2012 2 commits
-
-
Jianjun Yang authored
cleanup: merge the duplicate code of LF2 and RK4into a function initDistInGlobleFrame(), not used in MTS tracker since units are different
-
Jianjun Yang authored
fix occasional crash after particles is deleted by the plugin elements in cyclron tracker, destroy particle in the local frame
-
- 11 Apr, 2012 1 commit
-
-
Jianjun Yang authored
-
- 10 Apr, 2012 1 commit
-
-
Matthias Toggweiler authored
- Different splitting allows any positive integer for MTSSUBSTEPS option - Requires still one space charge solve per step, but one additional solve before main loop. Therefore, extract code to function evaluateSpaceCharge - TODO: correct location of bunch injection code?
-
- 07 Apr, 2012 1 commit
-
-
Matthias Toggweiler authored
- applyPluginElements expects [R] = mm, [dt] = ns - but Tracker_MTS uses [R] = m, [dt] = s
-
- 29 Mar, 2012 1 commit
-
-
Jianjun Yang authored
-
- 28 Mar, 2012 1 commit
-
-
Jianjun Yang authored
-
- 27 Mar, 2012 1 commit
-
-
Matthias Toggweiler authored
-
- 26 Mar, 2012 2 commits
-
-
Jianjun Yang authored
add a parameter SUPERPOSE for CYCLOTRON element to determine whether all the 3D electric field maps should be superposed (true) or only one is used for any position(false). If it is false, the priorty of the field maps is determined by the sequence in RFMAPFNvector, i.e. the first one has highest priorty. This parameter is only for the TYPE=BANRF
-
Jianjun Yang authored
-
- 23 Mar, 2012 3 commits
-
-
Matthias Toggweiler authored
- Only for Tracker_LF and Tracker_MTS so far, Tracker_RK4 seems to contain different/additional logic. This should be clarified such that all trackers can use the same single particle dump code. - Initialization of trackOrbit-file done in initTrackOrbitFile - outf stream renamend to outfTrackOrbit_m, is now member variable - method singleParticleDump does the actual dump
-
Matthias Toggweiler authored
-
kraus authored
Merge branch 'develop' into svn: the same as for commit to r13629 applied to the changes commited in r13628
-
- 22 Mar, 2012 2 commits
-
-
kraus authored
- remove virtual functions from Component class which are specific for the Cyclotron class, then, in ParallelCyclotronTracker, cast pointers to instances of Component appropriately - remove unrecognised escape character
-
Matthias Toggweiler authored
- Additional method ParallelCyclotronTracker::Tracker_MTS - If successfully tested, it should replace Tracker_LF - Detailed description and sample input file will follow - Brief usage guide: - Use 'TIMEINTEGRATOR="MTS"' instead of 'TIMEINTEGRATOR="LF-2"' - The outer, large step is for integration of space charge, the substeps for everything else. - Define number of substeps per step with 'Option, MTSSUBSTEPS=10;'. This must be an even number >= 2. - The input file has to be rewritten in units of the large step, so divide STEPSPERTURN, PSDUMPFREQ (and others) by MTSSUBSTEPS to maintain similar behaviour. - MTSSUBSTEPS and SCSOLVEFREQ both describe the frequency of space charge solves compared to the basic step. However, MTSSUBSTEPS can be chosen larger while maintaining accuracy. Try it :-)
-
- 15 Mar, 2012 1 commit
-
-
gsell authored
-