47 unsigned int iLowest(0);
61 return std::pair<StepLimitType, double>(
static_cast<StepLimitType>(iLowest), lowest);
121 std::cout <<
" | " <<
limits_[i] <<
" cm due to ";
126 std::cout <<
"stp_fieldCurv (medium limit): stepsize limited by curvature and magnetic field inhomogenities";
129 std::cout <<
"stp_momLoss (medium limit): stepsize limited by stepper because maximum momLoss is reached";
132 std::cout <<
"stp_sMax (medium limit): stepsize limited by SMax defined in #estimateStep()";
135 std::cout <<
"stp_sMaxArg (hard limit): stepsize limited by argument maxStepArg passed to #estimateStep()";
138 std::cout <<
"stp_boundary (hard limit): stepsize limited by stepper because material boundary is encountered";
141 std::cout <<
"stp_plane (hard limit): stepsize limited because destination plane is reached";
Helper to store different limits on the stepsize for the RKTRackRep.
void reduceLimit(StepLimitType type, double value)
absolute of value will be taken! If limit is already lower, it will stay.
StepLimits & operator=(const StepLimits &other)
std::pair< StepLimitType, double > getLowestLimit(double margin=1.E-3) const
Get the lowest limit.
std::vector< double > limits_
void setStepSign(char signedVal)
sets stepSign_ to sign of signedVal
double getLowestLimitVal(double margin=1.E-3) const
Get the unsigned numerical value of the lowest limit.
static const double maxLimit_