diff --git a/.gitignore b/.gitignore index f1576d1cf243080e9bff61e25d11d388b9b3fa59..e5012c27d6be15291cfb3f0cbadb61bc402c0295 100644 --- a/.gitignore +++ b/.gitignore @@ -143,6 +143,16 @@ src/opal_unit_tests *cmake_install.cmake tests/tools/gtest tests/opal_unit_tests - +.DS_Store +classic/.DS_Store +classic/5.0/.DS_Store +classic/5.0/src/.DS_Store +classic/5.0/src/AbsBeamline/.DS_Store +ippl/.DS_Store +ippl/doc/.DS_Store +ippl/doc/tex/.DS_Store +ippl/test/.DS_Store +ippl/test/particle/.DS_Store +src/.DS_Store diff --git a/classic/5.0/src/Utilities/Options.cpp b/classic/5.0/src/Utilities/Options.cpp index 2aff3167eec8531fd12f0c56352cd13ce65ea9c6..6b79e044024d4e289dd2558c253c48254d5289f6 100644 --- a/classic/5.0/src/Utilities/Options.cpp +++ b/classic/5.0/src/Utilities/Options.cpp @@ -16,4 +16,6 @@ namespace Options { // the particle will be deleted artifically to hold the accuracy of space charge calculation. The default setting of -1 stands for no deletion. int remotePartDel = -1; + double beamHaloBoundary = 0; + } diff --git a/classic/5.0/src/Utilities/Options.h b/classic/5.0/src/Utilities/Options.h index 85cda9baac39e4a5a83f2a2beec5be306d57f814..ebf575f6718cffa73fd6fbd2166b2531ac15e875 100644 --- a/classic/5.0/src/Utilities/Options.h +++ b/classic/5.0/src/Utilities/Options.h @@ -51,6 +51,8 @@ namespace Options { // If the distance of a particle to bunch mass larger than remotePartDel times of the rms size of the bunch in any dimension, // the particle will be deleted artifically to hold the accuracy of space charge calculation. The default setting of -1 stands for no deletion. extern int remotePartDel; + + extern double beamHaloBoundary; } #endif // OPAL_Options_HH diff --git a/src/BasicActions/Option.cpp b/src/BasicActions/Option.cpp index ea0d7a90d5fca7f88f56eaad677128e21300dc26..e6d5104f1a12e7524539fc4ccb9d9f1779bc4345 100644 --- a/src/BasicActions/Option.cpp +++ b/src/BasicActions/Option.cpp @@ -69,6 +69,7 @@ namespace { ENABLEHDF5, ASCIIDUMP, BOUNDPDESTROYFQ, + BEAMHALOBOUNDARY, SIZE }; } @@ -160,6 +161,9 @@ Option::Option(): itsAttr[BOUNDPDESTROYFQ] = Attributes::makeReal ("BOUNDPDESTROYFQ", "The frequency to do boundp_destroy to delete lost particles. Default 10",10.0); + itsAttr[BEAMHALOBOUNDARY] = Attributes::makeReal + ("BEAMHALOBOUNDARY", "Defines in therms of sigma where the halo starts Default 0.0",0.0); + FileStream::setEcho(echo); rangen.init55(seed); } @@ -200,6 +204,7 @@ Option::Option(const std::string &name, Option *parent): Attributes::setBool(itsAttr[ENABLEHDF5], enableHDF5); Attributes::setBool(itsAttr[ASCIIDUMP], asciidump); Attributes::setReal(itsAttr[BOUNDPDESTROYFQ], 10); + Attributes::setReal(itsAttr[BEAMHALOBOUNDARY], 0); } @@ -313,11 +318,11 @@ void Option::execute() { rngtype = std::string("RANDOM"); } - if(itsAttr[BOUNDPDESTROYFQ]) { - boundpDestroyFreq = int(Attributes::getReal(itsAttr[BOUNDPDESTROYFQ])); + if(itsAttr[BEAMHALOBOUNDARY]) { + beamHaloBoundary = Attributes::getReal(itsAttr[BEAMHALOBOUNDARY]); } else { - boundpDestroyFreq = 10; + beamHaloBoundary = 0; } // Set message flags.