diff --git a/DDSegmentation/src/TiledLayerGridXY.cpp b/DDSegmentation/src/TiledLayerGridXY.cpp index c0ef18d366d2de38369b9b7e4557ca275d40e4c4..2c05b508a7a1dcacf38c619ec179a97181b49094 100644 --- a/DDSegmentation/src/TiledLayerGridXY.cpp +++ b/DDSegmentation/src/TiledLayerGridXY.cpp @@ -11,6 +11,7 @@ #include <algorithm> #include <sstream> #include <stdexcept> +#include <cmath> namespace DD4hep { namespace DDSegmentation { @@ -58,11 +59,11 @@ Vector3D TiledLayerGridXY::position(const CellID& cID) const { // check the integer cell boundary in x, if ( ( _layerDimX.size() != 0 && _layerIndex <= _layerDimX.size() ) &&( _fractCellSizeXPerLayer.size() != 0 && _layerIndex <= _fractCellSizeXPerLayer.size() ) - &&(fabs( cellPosition.X ) > ( _layerDimX.at(_layerIndex - 1) - _fractCellSizeXPerLayer.at(_layerIndex - 1) )) + &&(std::fabs( cellPosition.X ) > ( _layerDimX.at(_layerIndex - 1) - _fractCellSizeXPerLayer.at(_layerIndex - 1) )) ) { // and correct the fraction cell center position in x. - cellPosition.X = cellPosition.X/fabs(cellPosition.X) + cellPosition.X = cellPosition.X/std::fabs(cellPosition.X) *(_layerDimX.at(_layerIndex - 1) - _fractCellSizeXPerLayer.at(_layerIndex - 1)/2.0) ; } } else {