src issueshttps://gitlab.psi.ch/OPAL/src/-/issues2019-07-19T15:19:09+02:00https://gitlab.psi.ch/OPAL/src/-/issues/341binning parameter not properly initialized in constructor2019-07-19T15:19:09+02:00frey_mbinning parameter not properly initialized in constructorIn the constructor of the `MultiBunchHandler` the variable `eta` is not assigned to the member variable `eta_m`.In the constructor of the `MultiBunchHandler` the variable `eta` is not assigned to the member variable `eta_m`.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/340review tools/BandRF/ascii2h5block_asgic.cpp2019-07-18T15:35:32+02:00gsellreview tools/BandRF/ascii2h5block_asgic.cpp* does not compile with current H5hut
* use std::cout for output not Ippl messages* does not compile with current H5hut
* use std::cout for output not Ippl messagesgsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/339Fix time in Leap-frog2019-07-18T09:33:02+02:00frey_mFix time in Leap-frogThe leap-frog stepper has code to be removed. The time is also doubled which is wrong.The leap-frog stepper has code to be removed. The time is also doubled which is wrong.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/337Sampler fails due to static variable in MueLuBottomSolver2020-07-14T10:29:45+02:00frey_mSampler fails due to static variable in MueLuBottomSolver### Summary
As in #336 the sampler crashes when dispatching new individuals after some finished.
### Steps to reproduce
Run the sampler with AMR Trilinos and the smoothed aggregation algebraic multigrid solver for the linear system o...### Summary
As in #336 the sampler crashes when dispatching new individuals after some finished.
### Steps to reproduce
Run the sampler with AMR Trilinos and the smoothed aggregation algebraic multigrid solver for the linear system of
equations.
### What is the current *bug* behavior?
The sampler crashes.
### What is the expected *correct* behavior?
The sampler runs smoothly.
### Possible fixes
Remove the static variable.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/336Sampler fails due to static variable in SDDSWriters2020-07-14T10:41:25+02:00frey_mSampler fails due to static variable in SDDSWriters### Summary
Sampler crashed due to SDDSWriters.
### Steps to reproduce
Run the sampler.
### What is the current *bug* behavior?
The static variable `isFirst` of the new SDDSWriter interface (e.g.
[GridLBalWriter](https://gitlab.ps...### Summary
Sampler crashed due to SDDSWriters.
### Steps to reproduce
Run the sampler.
### What is the current *bug* behavior?
The static variable `isFirst` of the new SDDSWriter interface (e.g.
[GridLBalWriter](https://gitlab.psi.ch/OPAL/src/blob/master/src/Structure/GridLBalWriter.cpp#L16)) causes the sampler to crash with
```
Error{0}>
Error{0}> *** User error detected by function "SDDSColumnSet::addColumnValue"
Error{0}> column name 't' doesn't exists
Error{0}> column name 't' doesn't exists
```
### What is the expected *correct* behavior?
The sampler runs smoothly.
### Possible fixes
Making the variable a non-static `isFirst` a member of `SDDSWriter.h` fixes the problem.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/333fixes for overloaded virtual errors on macOS2019-08-08T17:45:26+02:00gsellfixes for overloaded virtual errors on macOSgsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/332virtual destructor for SDDSWriter2019-07-09T10:33:32+02:00frey_mvirtual destructor for SDDSWriterOPAL does not compile on macOS since !121.
Error message:
```
[ 12%] Building CXX object src/CMakeFiles/libOPAL.dir/AbstractObjects/OpalData.cpp.o
cd /Users/gsell/src/OPAL/build-master/src && /Applications/Xcode.app/Contents/Developer/...OPAL does not compile on macOS since !121.
Error message:
```
[ 12%] Building CXX object src/CMakeFiles/libOPAL.dir/AbstractObjects/OpalData.cpp.o
cd /Users/gsell/src/OPAL/build-master/src && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -DIPPL_DONT_POOL -DIPPL_LINUX -DIPPL_MPI -DIPPL_RESTRICT_BUG -DIPPL_STRINGSTREAM -DIPPL_USE_PARTIAL_SPECIALIZATION -DIPPL_USE_XDIV_RNG -DMPICH_SKIP_MPICXX -DNOCTAssert -DPETE_BITWISE_COPY -Drestrict=__restrict__ -I/Users/gsell/src/OPAL/src/optimizer -I/Users/gsell/src/OPAL/src/ippl/src -I/Users/gsell/src/OPAL/src/src/Classic -I/Users/gsell/src/OPAL/src/src -O3 -g -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -DPARALLEL_IO -Wall -funroll-loops -fstrict-aliasing -Werror -Wsign-compare -Wunused-variable -Warray-bounds -ftemplate-depth=1024 -Wno-overloaded-virtual -fvisibility-inlines-hidden -std=c++11 -o CMakeFiles/libOPAL.dir/AbstractObjects/OpalData.cpp.o -c /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.cpp
In file included from /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.cpp:20:
In file included from /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.h:23:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:500:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string_view:176:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__string:56:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:644:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2335:5: error: delete called on
non-final 'StatWriter' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor]
delete __ptr;
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2648:7: note: in instantiation of
member function 'std::__1::default_delete<StatWriter>::operator()' requested here
__ptr_.second()(__tmp);
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2602:19: note: in instantiation of
member function 'std::__1::unique_ptr<StatWriter, std::__1::default_delete<StatWriter> >::reset' requested here
~unique_ptr() { reset(); }
^
/Users/gsell/src/OPAL/src/src/Structure/DataSink.h:122:5: note: in instantiation of member function 'std::__1::unique_ptr<StatWriter,
std::__1::default_delete<StatWriter> >::~unique_ptr' requested here
DataSink(const DataSink &) { }
^
In file included from /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.cpp:20:
In file included from /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.h:23:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:500:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string_view:176:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__string:56:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:644:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2335:5: error: delete called on
non-final 'SDDSWriter' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor]
delete __ptr;
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2648:7: note: in instantiation of
member function 'std::__1::default_delete<SDDSWriter>::operator()' requested here
__ptr_.second()(__tmp);
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2602:19: note: in instantiation of
member function 'std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> >::reset' requested here
~unique_ptr() { reset(); }
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:1880:64: note: in instantiation of
member function 'std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> >::~unique_ptr' requested here
_LIBCPP_INLINE_VISIBILITY void destroy(pointer __p) {__p->~_Tp();}
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:1742:18: note: in instantiation of
member function 'std::__1::allocator<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> > >::destroy' requested
here
{__a.destroy(__p);}
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:1595:14: note: in instantiation of
function template specialization 'std::__1::allocator_traits<std::__1::allocator<std::__1::unique_ptr<SDDSWriter,
std::__1::default_delete<SDDSWriter> > > >::__destroy<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> > >'
requested here
{__destroy(__has_destroy<allocator_type, _Tp*>(), __a, __p);}
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:421:25: note: in instantiation of
function template specialization 'std::__1::allocator_traits<std::__1::allocator<std::__1::unique_ptr<SDDSWriter,
std::__1::default_delete<SDDSWriter> > > >::destroy<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> > >'
requested here
__alloc_traits::destroy(__alloc(), _VSTD::__to_raw_pointer(--__soon_to_be_end));
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:364:29: note: in instantiation of
member function 'std::__1::__vector_base<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> >,
std::__1::allocator<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> > > >::__destruct_at_end' requested here
void clear() _NOEXCEPT {__destruct_at_end(__begin_);}
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:458:9: note: in instantiation of
member function 'std::__1::__vector_base<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> >,
std::__1::allocator<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> > > >::clear' requested here
clear();
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iterator:1427:74: note: in instantiation
of member function 'std::__1::__vector_base<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> >,
std::__1::allocator<std::__1::unique_ptr<SDDSWriter, std::__1::default_delete<SDDSWriter> > > >::~__vector_base' requested here
template <class _Tp, class _Alloc> friend class _LIBCPP_TEMPLATE_VIS vector;
^
In file included from /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.cpp:20:
In file included from /Users/gsell/src/OPAL/src/src/AbstractObjects/OpalData.h:23:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:500:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string_view:176:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__string:56:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:644:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2335:5: error: delete called on
non-final 'MultiBunchDump' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor]
delete __ptr;
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2648:7: note: in instantiation of
member function 'std::__1::default_delete<MultiBunchDump>::operator()' requested here
__ptr_.second()(__tmp);
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2602:19: note: in instantiation of
member function 'std::__1::unique_ptr<MultiBunchDump, std::__1::default_delete<MultiBunchDump> >::reset' requested here
~unique_ptr() { reset(); }
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:1747:23: note: in instantiation of
member function 'std::__1::unique_ptr<MultiBunchDump, std::__1::default_delete<MultiBunchDump> >::~unique_ptr' requested here
__p->~_Tp();
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:1595:14: note: in instantiation of
function template specialization
'std::__1::allocator_traits<std::__1::allocator<std::__1::__list_node<std::__1::unique_ptr<MultiBunchDump,
std::__1::default_delete<MultiBunchDump> >, void *> > >::__destroy<std::__1::unique_ptr<MultiBunchDump,
std::__1::default_delete<MultiBunchDump> > >' requested here
{__destroy(__has_destroy<allocator_type, _Tp*>(), __a, __p);}
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/list:756:34: note: in instantiation of
function template specialization
'std::__1::allocator_traits<std::__1::allocator<std::__1::__list_node<std::__1::unique_ptr<MultiBunchDump,
std::__1::default_delete<MultiBunchDump> >, void *> > >::destroy<std::__1::unique_ptr<MultiBunchDump,
std::__1::default_delete<MultiBunchDump> > >' requested here
__node_alloc_traits::destroy(__na, _VSTD::addressof(__np->__value_));
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/list:735:3: note: in instantiation of
member function 'std::__1::__list_imp<std::__1::unique_ptr<MultiBunchDump, std::__1::default_delete<MultiBunchDump> >,
std::__1::allocator<std::__1::unique_ptr<MultiBunchDump, std::__1::default_delete<MultiBunchDump> > > >::clear' requested here
clear();
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/list:302:41: note: in instantiation of
member function 'std::__1::__list_imp<std::__1::unique_ptr<MultiBunchDump, std::__1::default_delete<MultiBunchDump> >,
std::__1::allocator<std::__1::unique_ptr<MultiBunchDump, std::__1::default_delete<MultiBunchDump> > > >::~__list_imp' requested here
template<class, class> friend class list;
^
3 errors generated.
make[2]: *** [src/CMakeFiles/libOPAL.dir/AbstractObjects/OpalData.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/libOPAL.dir/all] Error 2
make: *** [all] Error 2
Nimloth:~/src/OPAL/build-master$
```frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/331bugfix: iterators must be incremented at end of for-loop in Cyclotron::apply()2019-07-24T09:19:14+02:00gsellbugfix: iterators must be incremented at end of for-loop in Cyclotron::apply()While looping over the RF field in
```
bool Cyclotron::apply(
const Vector_t &R,
const Vector_t &P,
const double &t,
Vector_t &E,
Vector_t &B)
```
the iterators `rffci` and `rfvci` are incremented at the beginning of ...While looping over the RF field in
```
bool Cyclotron::apply(
const Vector_t &R,
const Vector_t &P,
const double &t,
Vector_t &E,
Vector_t &B)
```
the iterators `rffci` and `rfvci` are incremented at the beginning of the for loop instead of at the end.
See also #326.gsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/324Multi-Bunch: Dump azimuth and spos dependent on bunch2019-07-15T10:09:17+02:00frey_mMulti-Bunch: Dump azimuth and spos dependent on bunchCurrently the azimuth of the first bunch is also used for dumping to the multi-bunch stat file of the others. However, this is not correct.Currently the azimuth of the first bunch is also used for dumping to the multi-bunch stat file of the others. However, this is not correct.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/322Sampler: Default name of output JSON file has two extensions2019-07-04T10:24:51+02:00frey_mSampler: Default name of output JSON file has two extensionsIn the constructor of the class `Sampler` we need to replace
```
std::string fname = "samples_" + std::to_string(comms_.island_id) + ".json";
std::string resultFile = args->getArg<std::string>("outfile", fname, false);
```
with
```
std::...In the constructor of the class `Sampler` we need to replace
```
std::string fname = "samples_" + std::to_string(comms_.island_id) + ".json";
std::string resultFile = args->getArg<std::string>("outfile", fname, false);
```
with
```
std::string resultFile = args->getArg<std::string>("outfile", "output", false);
```
Otherwise the default output JSON file is wrong.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/321Optimizer crash if SDDSVariable return value is NaN.2019-06-28T08:50:14+02:00frey_mOptimizer crash if SDDSVariable return value is NaN.I recently observed that the optimizer crashes with
```
Error{0}>
Error{0}> *** Error:
Error{0}> Internal OPAL error:
Error{0}> input stream error
Error{0}> input stream error
Rank 0 [Wed Jun 26 20:01:25 2019] [c0-0c0s2n0] ...I recently observed that the optimizer crashes with
```
Error{0}>
Error{0}> *** Error:
Error{0}> Internal OPAL error:
Error{0}> input stream error
Error{0}> input stream error
Rank 0 [Wed Jun 26 20:01:25 2019] [c0-0c0s2n0] application called MPI_Abort(MPI_COMM_WORLD, -100) - process 0
SIGABRT
```
if the return value of `SDDSVariable` is `ǸaN`. With a check `std::isnan` and `std::isinf` this can be fixed. It's probably best it's added to the `SDDSParser` which then throws an execption that is caught by `SDDSVariable`.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/315cleanup/fixes in Bend.cpp, Cyclotron.cpp and BeamStrippingPhysics.cpp2019-07-11T10:48:57+02:00gsellcleanup/fixes in Bend.cpp, Cyclotron.cpp and BeamStrippingPhysics.cppgsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/314in BoundaryGeometry: replace recursive algorithm to set orientation of triang...2019-07-03T15:59:34+02:00gsellin BoundaryGeometry: replace recursive algorithm to set orientation of triangle with iterativeFor the time being an recursive algorithm is used to make the normal vector of each triangle inward pointing. This is inefficient for large meshes and - more important - can cause crashes due to memory consumption.For the time being an recursive algorithm is used to make the normal vector of each triangle inward pointing. This is inefficient for large meshes and - more important - can cause crashes due to memory consumption.gsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/313PluginElements: particles not recorded when element crosses (or close to) origin2019-07-14T16:56:42+02:00snuverink_jjochem.snuverink@psi.chPluginElements: particles not recorded when element crosses (or close to) origin### Summary
Noticed by @nesteruk\_k: Particles are not recorded in some Probes.
Likely the other PluginElements are affected too.
### Steps to reproduce
A Probe crossing the origin, e.g. one defined as:
```
P: Probe, XSTART=-1e10, YS...### Summary
Noticed by @nesteruk\_k: Particles are not recorded in some Probes.
Likely the other PluginElements are affected too.
### Steps to reproduce
A Probe crossing the origin, e.g. one defined as:
```
P: Probe, XSTART=-1e10, YSTART=0, XEND=1e10, YEND=0;
```
will not record any particles.
### What is the expected *correct* behavior?
Recorded particle and output files: P.hist, P.h5, P.peaks
### Possible fixes
A check is performed if the bunch is close to the probe (and only then individual particles are checked) as follows:
https://gitlab.psi.ch/OPAL/src/blob/master/src/Classic/AbsBeamline/Probe.cpp#L62
```c++
if( rbunch_max > rstart_m - 10.0 && rbunch_min < rend_m + 10.0 ) {
```
With `rstart_m` and `rend_m` defined as:
https://gitlab.psi.ch/OPAL/src/blob/master/src/Classic/AbsBeamline/PluginElement.cpp#L86
```cpp
rstart_m = std::hypot(xstart, ystart);
rend_m = std::hypot(xend, yend);
// start position is the one with lowest radius
if (rstart_m > rend_m) {
std::swap(xstart_m, xend_m);
std::swap(ystart_m, yend_m);
std::swap(rstart_m, rend_m);
}
```
Instead of `rstart_m` the closest point to the origin should be used in the check.snuverink_jjochem.snuverink@psi.chsnuverink_jjochem.snuverink@psi.chhttps://gitlab.psi.ch/OPAL/src/-/issues/309review OPAL CMakeModule files2020-04-22T11:25:48+02:00gsellreview OPAL CMakeModule filesSearching for a library with
```
FIND_LIBRARY (GSL_LIBRARY gsl
HINTS $ENV{GSL_ROOT_DIR}/lib $ENV{GSL_LIBRARY_PATH} $ENV{GSL_LIBRARY_DIR} $ENV{GSL_PREFIX}/lib $ENV{GSL_DIR}/lib $ENV{GSL}/lib
PATHS ENV LIBRARY_PATH
)
```
can fail i...Searching for a library with
```
FIND_LIBRARY (GSL_LIBRARY gsl
HINTS $ENV{GSL_ROOT_DIR}/lib $ENV{GSL_LIBRARY_PATH} $ENV{GSL_LIBRARY_DIR} $ENV{GSL_PREFIX}/lib $ENV{GSL_DIR}/lib $ENV{GSL}/lib
PATHS ENV LIBRARY_PATH
)
```
can fail if the library is installed in `/lib` or `/lib64`. For some unknown reasons this works on Merlin-5 but fails on Merlin-6 if e.g. `libgsl` is installed.
What is the problem?
* On RHEL7 `/usr/lib64` is a symbolic link to `/lib64`.
* If e.g. `GSL_ROOT_DIR` is not set in the environment `/lib` and `/lib64` are used to search for the library.
* In RHEL7 most system libraries are installed in `/lib64`, which is the first hint if `GSL_ROOT_DIR` is not set.gsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/305Calculation of chord length in RBend wrong2019-05-09T14:16:31+02:00krausCalculation of chord length in RBend wrong### Summary
When the deflection angle is negative then the chord length that is calculated in RBend is wrong. In a rectangular bend when the orientation of the face relative to the beam (`E1`) is half of the deflection angle then the ch...### Summary
When the deflection angle is negative then the chord length that is calculated in RBend is wrong. In a rectangular bend when the orientation of the face relative to the beam (`E1`) is half of the deflection angle then the chord length should be equal to the length of the dipole. Instead the calculated length is as if `E1` was multiplied by `-1`.
### Steps to reproduce
Add `OPTION, LOGBENDTRAJECTORY=TRUE;` to the input file and track a bunch through a rectangular bend with `ANGLE < 0` and `E1 = ANGLE / 2`. Then look up the distance in the file `data/<input_fname>_<bend_name>_traj.dat` between the two locations where the reference particle crosses `x=0`.
### What is the current *bug* behavior?
The current chord length is as if `E1 = -ANGLE / 2`.
### What is the expected *correct* behavior?
The chord length should be equal to `L` in the description of the bend in the input file.krauskraushttps://gitlab.psi.ch/OPAL/src/-/issues/301Premature termination of integration when reference particle after MAXSTEPS i...2019-05-15T22:43:30+02:00krausPremature termination of integration when reference particle after MAXSTEPS in implicit drift.The Degrader-1 test is flagged as broken because the number of saved steps in the `.stat` file differ. This is caused by the fact that after 230 steps (MAXSTEPS) the reference particle in the OrbitThreader class is located in a drift, th...The Degrader-1 test is flagged as broken because the number of saved steps in the `.stat` file differ. This is caused by the fact that after 230 steps (MAXSTEPS) the reference particle in the OrbitThreader class is located in a drift, that isn't explicitly mentioned in the input file. During simulation ParallelTTracker stops because it seems to have reached the end of the beamline.krauskraushttps://gitlab.psi.ch/OPAL/src/-/issues/300reading H5Block formatted field-maps crashes2019-04-12T10:47:46+02:00gsellreading H5Block formatted field-maps crashesif the size of the field-map in z-direction is less than the number of cores, reading the field-map crashes.
This is already fixed in OPAL 2.0: see 0172837a and #292 if the size of the field-map in z-direction is less than the number of cores, reading the field-map crashes.
This is already fixed in OPAL 2.0: see 0172837a and #292 gsellgsellhttps://gitlab.psi.ch/OPAL/src/-/issues/298Reference particle has to be slowed down by material2019-08-01T05:57:13+02:00krausReference particle has to be slowed down by materialAt the moment the reference particle isn't slowed down when passing a degrader. The beam then has a different kinetic energy which poses a problem in subsequent dipoles and in the statistical analysis.At the moment the reference particle isn't slowed down when passing a degrader. The beam then has a different kinetic energy which poses a problem in subsequent dipoles and in the statistical analysis.krauskraushttps://gitlab.psi.ch/OPAL/src/-/issues/295ParallelTTracker crashes when using particle matter integration and space cha...2019-04-12T13:26:34+02:00krausParallelTTracker crashes when using particle matter integration and space charge solver if all particles are in material```
ParallelTTracker [2]> --- CollimatorPhysics - Name AIR1 Material AIR
ParallelTTracker [2]> Particle Statistics @ 12:29:52
ParallelTTracker [2]> entered: 1
ParallelTTracker [2]> rediffused: 0
ParallelTTracker [2]>...```
ParallelTTracker [2]> --- CollimatorPhysics - Name AIR1 Material AIR
ParallelTTracker [2]> Particle Statistics @ 12:29:52
ParallelTTracker [2]> entered: 1
ParallelTTracker [2]> rediffused: 0
ParallelTTracker [2]> stopped: 0
ParallelTTracker [2]> total in material: 50'000
Error>
Error> *** User error detected by function "boundp() "
Error> h<0, can not build a mesh
Error> h<0, can not build a mesh
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode -100.
NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
```krauskraus