diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f3b1587c884dc3c55a8071956ec73582fba97d8a..835ed92a47fe085ed238ebd562dbee2d8ce18366 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,6 @@ stages: - dependencies + - dependencies-CLHEP - build before_script: @@ -20,14 +21,31 @@ geomodelcore-build: - cmake -DCMAKE_INSTALL_PREFIX=../install ../GeoModelCore - make -j$(nproc) - make install - artifacts: + artifacts: paths: - install - - + +# TODO: this is only needed by SpecialShapes +# Remove it when SpecialShapes will be migrated to another package +CLHEP-build: + stage: dependencies-CLHEP + script: + - pwd; ls + - git clone https://gitlab.cern.ch/CLHEP/CLHEP.git + - cd CLHEP + - git checkout CLHEP_2_4_1_0 + - cd ../ ; mkdir build_CLHEP + - cd build_CLHEP + - cmake -DCMAKE_INSTALL_PREFIX=../install ../CLHEP + - make -j$(nproc) + - make install + artifacts: + paths: + - install + .build_template: &build_template stage: build - tags: + tags: - cvmfs script: - echo "PWD; LS" diff --git a/CMakeLists.txt b/CMakeLists.txt index 97b8f5b437ee7abf030d64b938c5f0dbe43f5ab4..09c9fa1782ea606ac17adf07e66bda6392d84a57 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,6 +27,7 @@ add_subdirectory( GeoModelDBManager ) add_subdirectory( TFPersistification ) add_subdirectory( GeoModelRead ) add_subdirectory( GeoModelWrite ) +add_subdirectory( GeoSpecialShapes ) # Create and install the version description of the project. include( CMakePackageConfigHelpers ) diff --git a/GeoModelRead/CMakeLists.txt b/GeoModelRead/CMakeLists.txt index e436dffdd7a035f830d0eaf564cddeea6700da1d..fb19722bd7446fd0487f4522a9630e7408d3ceef 100644 --- a/GeoModelRead/CMakeLists.txt +++ b/GeoModelRead/CMakeLists.txt @@ -12,7 +12,7 @@ file( GLOB HEADERS GeoModelRead/*.h ) # Set up the library. add_library( GeoModelRead SHARED ${HEADERS} ${SOURCES} ) target_link_libraries( GeoModelRead PUBLIC Qt5::Core -GeoModelCore::GeoModelKernel GeoModelDBManager TFPersistification ) +GeoModelCore::GeoModelKernel GeoModelDBManager TFPersistification GeoSpecialShapes ) target_include_directories( GeoModelRead PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:include> ) diff --git a/GeoModelRead/src/ReadGeoModel.cpp b/GeoModelRead/src/ReadGeoModel.cpp index f70a36c02973f52e898aa3d21c84b33e1e824ecd..e54753da37ad73387f85ea34663ba38ee3bb4008 100644 --- a/GeoModelRead/src/ReadGeoModel.cpp +++ b/GeoModelRead/src/ReadGeoModel.cpp @@ -13,6 +13,10 @@ // TFPersistification includes #include "TFPersistification/TransFunctionInterpreter.h" +// GeoSpecialShapes +#include "GeoSpecialShapes/LArCustomShape.h" + + // GeoModelKernel #include "GeoModelKernel/GeoTransform.h" #include "GeoModelKernel/GeoAlignableTransform.h" @@ -813,7 +817,7 @@ GeoShape* ReadGeoModel::buildShape(QString shapeId) if (varName == "NVertices") NVertices = varValue.toUInt(); } - + // and now loop over the rest of the list, to get the parameters of all Z planes for (int it=2; it < NVertices; it++) @@ -857,7 +861,6 @@ GeoShape* ReadGeoModel::buildShape(QString shapeId) if(error) qFatal("GeoGenericTrap shape error!!! Aborting..."); return gTrap; } - else if (type == "SimplePolygonBrep") { //qInfo() << "Reading-in: SimplePolygonBrep: "; // debug // shape parameters @@ -1369,6 +1372,20 @@ GeoShape* ReadGeoModel::buildShape(QString shapeId) // build and return the GeoShapeShift instance return new GeoShapeUnion(shapeA, shapeB); } + //LAr custom shape + else if(type == "CustomShape") { + std::string name = ""; + // get parameters from DB string + QStringList shapePars = parameters.split(";"); + foreach( QString par, shapePars) { + QStringList vars = par.split("="); + QString varName = vars[0]; + QString varValue = vars[1]; + if (varName == "name") name = varValue.toStdString(); + } + + return new LArCustomShape(name); + } else { // QString msg = "WARNING!! - Shape '" + type + "' not implemented yet!!! Returning a dummy cube."; // qWarning(msg.toStdString().c_str()); diff --git a/GeoModelWrite/CMakeLists.txt b/GeoModelWrite/CMakeLists.txt index 603d1203f7407f052ba5c504c43bea771ddd087b..43e97d8466248b36e0585f7d9a488be8bec6d883 100644 --- a/GeoModelWrite/CMakeLists.txt +++ b/GeoModelWrite/CMakeLists.txt @@ -7,7 +7,7 @@ file( GLOB HEADERS GeoModelWrite/*.h ) # Set up the library. add_library( GeoModelWrite SHARED ${HEADERS} ${SOURCES} ) target_link_libraries( GeoModelWrite PUBLIC Qt5::Core -GeoModelCore::GeoModelKernel GeoModelDBManager TFPersistification ) + GeoModelCore::GeoModelKernel GeoModelDBManager TFPersistification GeoSpecialShapes ) target_include_directories( GeoModelWrite PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:include> ) diff --git a/GeoModelWrite/src/WriteGeoModel.cpp b/GeoModelWrite/src/WriteGeoModel.cpp index 49042e202fde5d5fdcefaece3391cf284597d96f..a76a392b92eed5b8757b4921d9c40f7f33cf50ea 100644 --- a/GeoModelWrite/src/WriteGeoModel.cpp +++ b/GeoModelWrite/src/WriteGeoModel.cpp @@ -7,6 +7,8 @@ // TFPersistification includes #include "TFPersistification/TransFunctionPersistifier.h" +// GeoSpecialShapes +#include "GeoSpecialShapes/LArCustomShape.h" // GeoModelKernel includes #include "GeoModelKernel/GeoNodePath.h" @@ -765,7 +767,7 @@ QVariant WriteGeoModel::storeTranform(const GeoTransform* node) tr(0,3)=dx; tr(1,3)=dy; tr(2,3)=dz; - + // explicitely set the last row: (0,0,0,1) tr(3,0)=0; tr(3,1)=0; @@ -1099,6 +1101,12 @@ QString WriteGeoModel::getShapeParameters(const GeoShape* shape) } shapePars = pars.join(";"); } + //LAr custom shape + else if(shape->typeID() == LArCustomShape::getClassTypeID()) { + const LArCustomShape* shapeIn = dynamic_cast<const LArCustomShape*> (shape); + if (nullptr==shapeIn) throw std::runtime_error("TypeID did not match cast for custom shape"); + shapePars = "name=" + QString::fromStdString(shapeIn->name()); + } else { std::cout << "\n\tWARNING!!! - Shape '" << shapeType.toStdString() << "' needs to be persistified!!\n\n"; m_objectsNotPersistified << shapeType; diff --git a/GeoSpecialShapes/CMakeLists.txt b/GeoSpecialShapes/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5811a699a25e398bf465f53ac9a3ed8967fbf6e4 --- /dev/null +++ b/GeoSpecialShapes/CMakeLists.txt @@ -0,0 +1,44 @@ + +# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration + +################################################################################ +# Package: GeoSpecialShapes +################################################################################ + +#find_package(CLHEP) + +# Use the GNU install directory names. +include( GNUInstallDirs ) # it defines CMAKE_INSTALL_LIBDIR + +# Find the header and source files. +file( GLOB SOURCES src/*.cxx src/LArWheelCalculator_Impl/*.cxx ) +file( GLOB HEADERS GeoSpecialShapes/*.h src/LArWheelCalculator_Impl/*.h) + +# Set the library. +add_library( GeoSpecialShapes SHARED ${HEADERS} ${SOURCES} ) +target_link_libraries( GeoSpecialShapes PUBLIC +PRIVATE GeoModelCore::GeoModelKernel ${CLHEP_LIBRARIES} ) +target_include_directories( GeoSpecialShapes PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> + $<INSTALL_INTERFACE:include> ) +source_group( "GeoSpecialShapes" FILES ${HEADERS} ) +source_group( "src" FILES ${SOURCES} ) +set_target_properties( GeoSpecialShapes PROPERTIES + VERSION ${PROJECT_VERSION} + SOVERSION ${PROJECT_VERSION_MAJOR} ) + + +# Install the library. +install( TARGETS GeoSpecialShapes + EXPORT ${PROJECT_NAME}-export + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + COMPONENT Runtime + NAMELINK_SKIP ) +install( TARGETS GeoSpecialShapes + EXPORT ${PROJECT_NAME}-export + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + COMPONENT Development + NAMELINK_ONLY ) +install( FILES ${HEADERS} + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/GeoSpecialShapes + COMPONENT Development ) diff --git a/GeoSpecialShapes/GeoSpecialShapes/LArCustomShape.h b/GeoSpecialShapes/GeoSpecialShapes/LArCustomShape.h new file mode 100644 index 0000000000000000000000000000000000000000..b7f790f7b5b52b238eab3be2bdbd8558e4b594ed --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/LArCustomShape.h @@ -0,0 +1,92 @@ +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef LArCustomShape_h +#define LArCustomShape_h + +#include <string> +#include <map> + +#include "GeoModelKernel/GeoShape.h" +#include "GeoSpecialShapes/LArWheelCalculator.h" +#include "GeoSpecialShapes/LArWheelCalculatorEnums.h" + +// Forward declaration +class GeoShapeAction; + +/// @class LArCustomShape +/// @brief The GeoModel representation of the custom LAr endcap shapes. +/// +class LArCustomShape : public GeoShape +{ + + public: + typedef std::pair<LArG4::LArWheelCalculator_t, int> CalcDef_t; + typedef std::map<std::string, CalcDef_t> ShapeCalc_typemap; + + // The custom shape has only one property: a string that contains + // the name of the particular shape. In the GeoModel->Geant4 + // conversion, this name will be matched against a list of custom + // classes that inherit from G4VSolid to get the correct custom + // solid. + LArCustomShape(const std::string& shapeName); + + /// Return the calculator: + const LArWheelCalculator *calculator() const; + + /// Returns the volume of the shape, for mass inventory + virtual double volume() const; + + /// Returns the shape type, as a string. + virtual const std::string& type() const; + + /// Returns the shape type, as a coded integer. + virtual ShapeType typeID() const; + + /// For type identification. + static const std::string& getClassType(); + + /// For type identification. + static ShapeType getClassTypeID(); + + /// Return the shape name, supplied in the constructor. + virtual const std::string& name() const; + + /// Executes a GeoShapeAction + virtual void exec(GeoShapeAction* action) const; + + protected: + + virtual ~LArCustomShape(); + + private: + + int createCalculator(const CalcDef_t & cdef); + + // Prohibited operations. + LArCustomShape(const LArCustomShape &right); + const LArCustomShape & operator=(const LArCustomShape &right); + + /// General GeoModel shape attributes. + static const std::string s_classType; + static const ShapeType s_classTypeID; + static const ShapeCalc_typemap s_calculatorTypes; + + /// Properties of the custom shape. + const std::string m_shapeName; + + /// The calculator: + const LArWheelCalculator *m_calculator; + +}; + +inline const std::string& LArCustomShape::getClassType() { + return s_classType; +} + +inline ShapeType LArCustomShape::getClassTypeID() { + return s_classTypeID; +} + +#endif // LArCustomShape_h diff --git a/GeoSpecialShapes/GeoSpecialShapes/LArGeoCheckerDict.h b/GeoSpecialShapes/GeoSpecialShapes/LArGeoCheckerDict.h new file mode 100644 index 0000000000000000000000000000000000000000..3d19fcc260cb037b3f0551bd7bd437c752712810 --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/LArGeoCheckerDict.h @@ -0,0 +1,19 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +/** + * @file LArGeoCheckerDict.h + * + * @brief This file includes the class for dictionary definitions + * + * @author Dmitriy Maximov <Dmitriy.Maximov@cern.ch> + * + * $Id: LArGeoCheckerDict.h 653855 2015-03-13 09:00:06Z dmaximov $ + */ +#ifndef GeoSpecialShapes_LArGeoCheckerDICT_H +#define GeoSpecialShapes_LArGeoCheckerDICT_H + +#include "GeoSpecialShapes/LArWheelCalculator.h" + +#endif // GeoSpecialShapes_LArGeoCheckerDICT_H diff --git a/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculator.h b/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculator.h new file mode 100644 index 0000000000000000000000000000000000000000..df379a6b1efd09335f846d4b1ec757c216fc5b84 --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculator.h @@ -0,0 +1,218 @@ +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef GEOSPECIALSHAPES_LARWHEELCALCULATOR_H +#define GEOSPECIALSHAPES_LARWHEELCALCULATOR_H + +#include <vector> + +#include "GeoModelKernel/GeoDefinitions.h" + +#include "GeoSpecialShapes/LArWheelCalculatorEnums.h" +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits + +#define LARWC_SINCOS_POLY 5 +#define LARWC_DTNF_NEW + +class IRDBRecordset; +//#define HARDDEBUG + +// Forward declarations +namespace LArWheelCalculator_Impl { + class IDistanceCalculator; + class DistanceCalculatorSaggingOff; + class DistanceCalculatorSaggingOn; + + class IFanCalculator; + class ModuleFanCalculator; + template <typename SaggingType> class WheelFanCalculator; + template <typename SaggingType> class DistanceToTheNeutralFibre_OfFan; +} + +/// @class LArWheelCalculator +/// This class separates some of the geometry details of the LAr +/// endcap. +/// 26-May-2009 AMS: remove all previous comments from here as obsoleted +/// +class LArWheelCalculator +{ + + friend class LArWheelCalculator_Impl::DistanceCalculatorSaggingOff; + friend class LArWheelCalculator_Impl::DistanceCalculatorSaggingOn; + friend class LArWheelCalculator_Impl::ModuleFanCalculator; + template <typename SaggingType> friend class LArWheelCalculator_Impl::WheelFanCalculator; + template <typename SaggingType> friend class LArWheelCalculator_Impl::DistanceToTheNeutralFibre_OfFan; + + public: + + LArWheelCalculator(LArG4::LArWheelCalculator_t a_wheelType, int zside = 1); + virtual ~LArWheelCalculator(); + + LArWheelCalculator (const LArWheelCalculator&) = delete; + LArWheelCalculator& operator= (const LArWheelCalculator&) = delete; + + static const char *LArWheelCalculatorTypeString(LArG4::LArWheelCalculator_t); + static double GetFanHalfThickness(LArG4::LArWheelCalculator_t); + + // "Get constant" methods: + double GetWheelThickness() const { return m_WheelThickness; } + double GetdWRPtoFrontFace() const { return m_dWRPtoFrontFace; } + double GetStraightStartSection() const { return m_StraightStartSection; } + virtual LArG4::LArWheelCalculator_t type() const { return m_type; } + // "zShift" is the z-distance (cm) that the EM endcap is shifted + // (due to cabling, etc.) + int GetAtlasZside() const { return m_AtlasZside; } + double zShift() const { return m_zShift; } + double GetFanFoldRadius() const { return m_FanFoldRadius; } + double GetZeroFanPhi() const { return m_ZeroFanPhi; } + int GetNumberOfWaves() const { return m_NumberOfWaves; } + int GetNumberOfHalfWaves() const { return m_NumberOfHalfWaves; } + int GetNumberOfFans() const { return m_NumberOfFans; } + + double GetActiveLength() const { return m_ActiveLength; } + double GetFanStepOnPhi() const { return m_FanStepOnPhi; } + double GetHalfWaveLength() const { return m_HalfWaveLength; } + double GetQuarterWaveLength() const { return m_QuarterWaveLength; } + double GetWheelRefPoint() const { return m_zWheelRefPoint; } + double GetFanHalfThickness() const { return m_FanHalfThickness; } + + bool GetisModule() const { return m_isModule; } + bool GetisElectrode() const { return m_isElectrode; } + bool GetisInner() const { return m_isInner; } + bool GetisBarrette() const { return m_isBarrette; } + bool GetisBarretteCalib() const { return m_isBarretteCalib; } + + double GetWheelInnerRadius(double *) const; + void GetWheelOuterRadius(double *) const; + + double GetElecFocaltoWRP() const { return m_dElecFocaltoWRP; } + // "set constant" method: + + int GetFirstFan() const { return m_FirstFan; } + int GetLastFan() const { return m_LastFan; } + + int GetStartGapNumber() const { return m_ZeroGapNumber; } + void SetStartGapNumber(int n) { m_ZeroGapNumber = n; } + + /// @name geometry methods + /// @{ + + /// Determines the nearest to the input point fan. + /// Rotates point p to the localFan coordinates and returns the + /// fan number to out_fan_number parameter. + double DistanceToTheNearestFan(GeoTrf::Vector3D &p, int & out_fan_number) const; + + /// Calculates aproximate, probably underestimate, distance to the + /// neutral fibre of the vertical fan. Sign of return value means + /// side of the fan; negative - lower phi. + double DistanceToTheNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const; + + GeoTrf::Vector3D NearestPointOnNeutralFibre(const GeoTrf::Vector3D &p, + int fan_number) const; + std::vector<double> NearestPointOnNeutralFibre_asVector(const GeoTrf::Vector3D &p, + int fan_number) const; + int GetPhiGap(const GeoTrf::Vector3D &p) const { return GetPhiGapAndSide(p).first; } + int PhiGapNumberForWheel(int) const; + std::pair<int, int> GetPhiGapAndSide(const GeoTrf::Vector3D &p) const; + double AmplitudeOfSurface(const GeoTrf::Vector3D& P, int side, int fan_number) const; + + /// @} + + private: + LArG4::LArWheelCalculator_t m_type; + + int m_AtlasZside; + bool m_SaggingOn; // ! + bool m_phiRotation; + bool m_slant_use_default; + double m_slant_parametrization[5]; // pol4 + double m_sin_parametrization[7]; // up to pol6 + double m_cos_parametrization[7]; + std::vector<std::vector<double> > m_sagging_parameter; // ! + + // N.B. all const values copied from the DB@ + // https://atlas-geometry-db.web.cern.ch/atlas-geometry-db/ + const double m_ActiveLength = 510 * SYSTEM_OF_UNITS::mm; //mm + const double m_StraightStartSection = 2 * SYSTEM_OF_UNITS::mm; //mm + const double m_dWRPtoFrontFace = 11 * SYSTEM_OF_UNITS::mm; //mm + const double m_HalfGapBetweenWheels = .15 * SYSTEM_OF_UNITS::cm; //cm + const double m_zWheelRefPoint = 368.95* SYSTEM_OF_UNITS::cm; //cm + const double m_dMechFocaltoWRP = 369.1 * SYSTEM_OF_UNITS::cm; //cm + const double m_dElecFocaltoWRP = 368.9 * SYSTEM_OF_UNITS::cm; //cm + const double m_rOuterCutoff = 203.4 * SYSTEM_OF_UNITS::cm; //cm + const double m_eta_hi = 3.2 ; + const double m_eta_mid = 2.5 ; + const double m_eta_low = 1.375; + const double m_zShift = 4 * SYSTEM_OF_UNITS::cm; //cm + + const double m_WheelThickness = m_ActiveLength + 2.*m_StraightStartSection; + const double m_HalfWheelThickness = m_WheelThickness * 0.5; + const double m_zWheelFrontFace = m_dMechFocaltoWRP + m_dWRPtoFrontFace; + const double m_zWheelBackFace = m_zWheelFrontFace + m_WheelThickness; + + ///// + double m_QuarterWaveLength; + double m_HalfWaveLength; + double m_FanFoldRadius; + double m_ZeroFanPhi; + double m_ZeroFanPhi_ForDetNeaFan; + double m_FanStepOnPhi; + int m_NumberOfWaves; + int m_NumberOfHalfWaves; + int m_NumberOfFans; + //int m_HalfNumberOfFans; removed because unused. DM 2015-07-30 + double m_FanHalfThickness; + int m_ZeroGapNumber; + int m_FirstFan; + int m_LastFan; + + bool m_isModule; + bool m_isElectrode; + bool m_isInner; + bool m_isBarrette; + bool m_isBarretteCalib; + + // int m_fan_number; // break thread-safety -> removed DM 2015-07-30 + + void outer_wheel_init(); + void inner_wheel_init(); + void module_init(); + + public: + + /*void set_m_fan_number(const int &fan_number) + { + m_fan_number = fan_number; + if(m_fan_number < 0) m_fan_number += m_NumberOfFans; + m_fan_number += m_ZeroGapNumber; + if(m_fan_number >= m_NumberOfFans) m_fan_number -= m_NumberOfFans; + }*/ + int adjust_fan_number(int fan_number) const { + int res_fan_number = fan_number; + if(res_fan_number < 0) res_fan_number += m_NumberOfFans; + res_fan_number += m_ZeroGapNumber; + if(res_fan_number >= m_NumberOfFans) res_fan_number -= m_NumberOfFans; + return res_fan_number; + } + + /// Calculates wave slant angle using parametrization for current wheel + /// for given distance from calorimeter axis + double parameterized_slant_angle(double) const; + + private: + + void parameterized_sincos(const double, double &, double &) const; + void parameterized_sin(const double, double &, double &) const; + + private: + + LArWheelCalculator_Impl::IDistanceCalculator *m_distanceCalcImpl; + LArWheelCalculator_Impl::IFanCalculator *m_fanCalcImpl; + + void fill_sincos_parameterization(); +}; + +#endif // GEOSPECIALSHAPES_LARWHEELCALCULATOR_H diff --git a/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculatorEnums.h b/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculatorEnums.h new file mode 100644 index 0000000000000000000000000000000000000000..dcea707a7ec26374f55280cbec8a6dc8fa7d546f --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculatorEnums.h @@ -0,0 +1,25 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef GEOSPECIALSHAPES_LARWHEELCALCULATORENUMS_H +#define GEOSPECIALSHAPES_LARWHEELCALCULATORENUMS_H + +namespace LArG4 { + + enum LArWheelCalculator_t { + InnerAbsorberWheel, OuterAbsorberWheel, + InnerElectrodWheel, OuterElectrodWheel, + InnerAbsorberModule, OuterAbsorberModule, + InnerElectrodModule, OuterElectrodModule, + BackInnerBarretteWheel, BackOuterBarretteWheel, + BackInnerBarretteWheelCalib, BackOuterBarretteWheelCalib, + BackInnerBarretteModule, BackOuterBarretteModule, + BackInnerBarretteModuleCalib, BackOuterBarretteModuleCalib, + InnerGlueWheel, OuterGlueWheel, + InnerLeadWheel, OuterLeadWheel + }; + + struct ROOT6_NamespaceAutoloadHook_WheelCalc{}; +} +#endif diff --git a/GeoSpecialShapes/GeoSpecialShapes/selection.xml b/GeoSpecialShapes/GeoSpecialShapes/selection.xml new file mode 100644 index 0000000000000000000000000000000000000000..d5a4c1f4fcb6f9d025463102e87790cad5bc7e67 --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/selection.xml @@ -0,0 +1,3 @@ +<lcgdict> + <class name="LArWheelCalculator" /> +</lcgdict> diff --git a/GeoSpecialShapes/GeoSpecialShapes/selectionEnums.xml b/GeoSpecialShapes/GeoSpecialShapes/selectionEnums.xml new file mode 100644 index 0000000000000000000000000000000000000000..cd2c4ad8b6b685ca89a99f973eb8e0c20823acdf --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/selectionEnums.xml @@ -0,0 +1,7 @@ +<lcgdict> + + <enum pattern="LArG4::*"/> + <class name="LArG4::ROOT6_NamespaceAutoloadHook_WheelCalc" /> + +</lcgdict> + diff --git a/GeoSpecialShapes/GeoSpecialShapes/sincos.h b/GeoSpecialShapes/GeoSpecialShapes/sincos.h new file mode 100644 index 0000000000000000000000000000000000000000..068400c16c5d81b183398f06b077762fcc21bc3e --- /dev/null +++ b/GeoSpecialShapes/GeoSpecialShapes/sincos.h @@ -0,0 +1,110 @@ +// This file's extension implies that it's C, but it's really -*- C++ -*-. + +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +// $Id: sincos.h,v 1.1 2008-11-24 04:34:07 ssnyder Exp $ + +/** + * @file CxxUtils/sincos.h + * @author scott snyder + * @date Nov 2008, from older D0 code. + * @brief Helper to simultaneously calculate sin and cos of the same angle. + */ + + +#ifndef SINCOS_H +#define SINCOS_H + + +#include <cmath> + + +namespace CxxUtils { + + +/** + * @brief Helper to simultaneously calculate sin and cos of the same angle. + * + * Instantiate an instance of this object, passing the angle to the + * constructor. The sin and cos are then available as the sn and cs + * members. In addition, the apply() method may be used to calculate + * a*sin(x) + b*cos(x). + * + * Implementation notes: + * + * The i386/x87 architecture has an instruction to do this. + * So, on that platform, we use that instruction directly. + * It seems to be a win to use it even if we're using SSE math, + * so we'll use it for x86_64 too. + * Otherwise, we'll use sincos() if it's available (it's a GNU extension). + * Otherwise, just call sin() and cos() separately. + * + * Note that the fsincos instruction only works correctly + * if the input angle is in the range -2^63 ... 2^63. + * This is not likely to be an issue for us. + * + * Why prefer using the fsincos instruction directly to calling + * the sincos() library function? + * + * - It turns out to be a little difficult to ensure that + * sincos() actually gets inlined. In general, one needs -ffast-math + * (which isn't on for standard Atlas builds), but even that's not always + * sufficient. + * + * - The library version includes extra code that we + * don't really need to handle the case where + * abs(angle) > 2^63. (Runtime penalty, though, is + * moving the FPU status word to $eax and one + * taken branch.) + * + * - Most importantly, though, the library function + * takes pointers into which the results are stored. + * Playing with this, i was unable to prevent the + * calculated values from being spilled to memory. + * With the definition used below, we don't necessarily + * spill to memory. A sequence like + * + * sincos sc (ang); + * double a = sc.apply (x, y) + * + * can be calculated entirely in the FPU register file, + * with no spills. + */ +struct sincos +{ + // cppcheck-suppress uninitMemberVar ; false positive + /// Calculate sine and cosine of x. + sincos (double x) +#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) + // Inline assembly version. Uses x87 FPU. + { __asm __volatile__ ("fsincos\n\t" : "=t" (cs), "=u" (sn) : "0" (x)); } +#elif defined(__USE_GNU) + // Version using the GNU sincos() function. + { ::sincos(x, &sn, &cs); } +#else + // Generic version. + : sn (std::sin (x)), cs (std::cos (x)) {} +#endif + + /// @f$\sin(x)@f$ + double sn; + + /// @f$\cos(x)@f$ + double cs; + + /// @f$a\sin(x) + b\cos(x)@f$ + double apply (double a, double b) const { return a*sn + b*cs; } + + /// @f$a\sin^2(x) + b\sin(x)\cos(x) + c\cos^2(x)@f$ + double apply2 (double a, double b, double c) const + { return a*sn*sn + b*sn*cs + c*cs*cs; } +}; + + +} // namespace CxxUtils + + +#endif //not SINCOS_H + diff --git a/GeoSpecialShapes/build/CMakeCache.txt b/GeoSpecialShapes/build/CMakeCache.txt new file mode 100644 index 0000000000000000000000000000000000000000..cc51c8a60549bbe929e9d194421156bbeb0376fb --- /dev/null +++ b/GeoSpecialShapes/build/CMakeCache.txt @@ -0,0 +1,384 @@ +# This is the CMakeCache file. +# For build in directory: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build +# It was generated by CMake: /opt/local/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a program. +CMAKE_AR:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar + +//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or +// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ + +//Flags used by the compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the compiler during debug builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the compiler during release builds for minimum +// size. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the compiler during release builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the compiler during release builds with debug info. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Flags used by the linker. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF + +//User executables (bin) +CMAKE_INSTALL_BINDIR:PATH=bin + +//Read-only architecture-independent data (DATAROOTDIR) +CMAKE_INSTALL_DATADIR:PATH= + +//Read-only architecture-independent data root (share) +CMAKE_INSTALL_DATAROOTDIR:PATH=share + +//Documentation root (DATAROOTDIR/doc/PROJECT_NAME) +CMAKE_INSTALL_DOCDIR:PATH= + +//C header files (include) +CMAKE_INSTALL_INCLUDEDIR:PATH=include + +//Info documentation (DATAROOTDIR/info) +CMAKE_INSTALL_INFODIR:PATH= + +//Object code libraries (lib) +CMAKE_INSTALL_LIBDIR:PATH=lib + +//Program executables (libexec) +CMAKE_INSTALL_LIBEXECDIR:PATH=libexec + +//Locale-dependent data (DATAROOTDIR/locale) +CMAKE_INSTALL_LOCALEDIR:PATH= + +//Modifiable single-machine data (var) +CMAKE_INSTALL_LOCALSTATEDIR:PATH=var + +//Man documentation (DATAROOTDIR/man) +CMAKE_INSTALL_MANDIR:PATH= + +//Path to a program. +CMAKE_INSTALL_NAME_TOOL:FILEPATH=/usr/bin/install_name_tool + +//C header files for non-gcc (/usr/include) +CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/Users/mariba/Atlas/standaloneGeo2G4/install + +//Run-time variable data (LOCALSTATEDIR/run) +CMAKE_INSTALL_RUNSTATEDIR:PATH= + +//System admin executables (sbin) +CMAKE_INSTALL_SBINDIR:PATH=sbin + +//Modifiable architecture-independent data (com) +CMAKE_INSTALL_SHAREDSTATEDIR:PATH=com + +//Read-only single-machine data (etc) +CMAKE_INSTALL_SYSCONFDIR:PATH=etc + +//Path to a program. +CMAKE_LINKER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=CMAKE_OBJCOPY-NOTFOUND + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump + +//Build architectures for OSX +CMAKE_OSX_ARCHITECTURES:STRING= + +//Minimum OS X version to target for deployment (at runtime); newer +// APIs weak linked. Set to empty string for default value. +CMAKE_OSX_DEPLOYMENT_TARGET:STRING= + +//The product will be built against the headers and libraries located +// inside the indicated SDK. +CMAKE_OSX_SYSROOT:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=GeoSpecialShapes + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib + +//Flags used by the linker during the creation of dll's. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//The directory containing a CMake configuration file for Eigen3. +Eigen3_DIR:PATH=/usr/local/share/eigen3/cmake + +//The directory containing a CMake configuration file for GeoModelCore. +GeoModelCore_DIR:PATH=/Users/mariba/Atlas/standaloneGeo2G4/install/lib/cmake/GeoModelCore + +//Value Computed by CMake +GeoSpecialShapes_BINARY_DIR:STATIC=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build + +//Dependencies for the target +GeoSpecialShapes_LIB_DEPENDS:STATIC=general;GeoMaterial2G4;general;GeoModel2G4;general;GeoModelCore::GeoModelKernel; + +//Value Computed by CMake +GeoSpecialShapes_SOURCE_DIR:STATIC=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=10 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/opt/local/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/opt/local/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/opt/local/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//Path to cache edit program executable. +CMAKE_EDIT_COMMAND:INTERNAL=/opt/local/bin/ccmake +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes +//ADVANCED property for variable: CMAKE_INSTALL_BINDIR +CMAKE_INSTALL_BINDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DATADIR +CMAKE_INSTALL_DATADIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DATAROOTDIR +CMAKE_INSTALL_DATAROOTDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_DOCDIR +CMAKE_INSTALL_DOCDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_INCLUDEDIR +CMAKE_INSTALL_INCLUDEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_INFODIR +CMAKE_INSTALL_INFODIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LIBDIR +CMAKE_INSTALL_LIBDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LIBEXECDIR +CMAKE_INSTALL_LIBEXECDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LOCALEDIR +CMAKE_INSTALL_LOCALEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_LOCALSTATEDIR +CMAKE_INSTALL_LOCALSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_MANDIR +CMAKE_INSTALL_MANDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_NAME_TOOL +CMAKE_INSTALL_NAME_TOOL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_OLDINCLUDEDIR +CMAKE_INSTALL_OLDINCLUDEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_RUNSTATEDIR +CMAKE_INSTALL_RUNSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SBINDIR +CMAKE_INSTALL_SBINDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SHAREDSTATEDIR +CMAKE_INSTALL_SHAREDSTATEDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_INSTALL_SYSCONFDIR +CMAKE_INSTALL_SYSCONFDIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/opt/local/share/cmake-3.10 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//Details about finding GeoModelCore +FIND_PACKAGE_MESSAGE_DETAILS_GeoModelCore:INTERNAL=[/Users/mariba/Atlas/standaloneGeo2G4/install/lib/cmake/GeoModelCore][v2.0.0()] +//CMAKE_INSTALL_PREFIX during last run +_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX:INTERNAL=/Users/mariba/Atlas/standaloneGeo2G4/install + diff --git a/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeCXXCompiler.cmake b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeCXXCompiler.cmake new file mode 100644 index 0000000000000000000000000000000000000000..5c100e54a88f7cf58b414fc43b54b8801da0fd5c --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeCXXCompiler.cmake @@ -0,0 +1,75 @@ +set(CMAKE_CXX_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "AppleClang") +set(CMAKE_CXX_COMPILER_VERSION "10.0.1.10010046") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "98") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") + +set(CMAKE_CXX_PLATFORM_ID "Darwin") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + +set(CMAKE_AR "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "") +set(CMAKE_RANLIB "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "") +set(CMAKE_LINKER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld") +set(CMAKE_COMPILER_IS_GNUCXX ) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) +set(CMAKE_COMPILER_IS_MINGW ) +set(CMAKE_COMPILER_IS_CYGWIN ) +if(CMAKE_COMPILER_IS_CYGWIN) + set(CYGWIN 1) + set(UNIX 1) +endif() + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +if(CMAKE_COMPILER_IS_MINGW) + set(MINGW 1) +endif() +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP) +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "c++") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks") diff --git a/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeDetermineCompilerABI_CXX.bin b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeDetermineCompilerABI_CXX.bin new file mode 100644 index 0000000000000000000000000000000000000000..9e1ac450765d6b05920ffa94798f6f963b679dad Binary files /dev/null and b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeDetermineCompilerABI_CXX.bin differ diff --git a/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeSystem.cmake b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeSystem.cmake new file mode 100644 index 0000000000000000000000000000000000000000..a2525ab7ef4dd986893ef513a7f35111f5459792 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Darwin-18.5.0") +set(CMAKE_HOST_SYSTEM_NAME "Darwin") +set(CMAKE_HOST_SYSTEM_VERSION "18.5.0") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Darwin-18.5.0") +set(CMAKE_SYSTEM_NAME "Darwin") +set(CMAKE_SYSTEM_VERSION "18.5.0") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/CMakeCXXCompilerId.cpp b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 0000000000000000000000000000000000000000..2d66298588989dc5d404dae0025b8bf4e952498e --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,576 @@ +/* This source file must have a .cpp extension so that all C++ compilers + recognize the extension without flags. Borland does not know .cxx for + example. */ +#ifndef __cplusplus +# error "A C compiler has been selected for C++." +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__COMO__) +# define COMPILER_ID "Comeau" + /* __COMO_VERSION__ = VRR */ +# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) +# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) + +#elif defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif + /* __INTEL_COMPILER = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version) +# define COMPILER_ID "Fujitsu" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__ARMCC_VERSION) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) +# define COMPILER_ID "MIPSpro" +# if defined(_SGI_COMPILER_VERSION) + /* _SGI_COMPILER_VERSION = VRP */ +# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) +# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) +# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) +# else + /* _COMPILER_VERSION = VRP */ +# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) +# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) +# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__sgi) +# define COMPILER_ID "MIPSpro" + +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXE) || defined(__CRAYXC) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) +# define PLATFORM_ID "IRIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number components. */ +#ifdef COMPILER_VERSION_MAJOR +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + + +#if defined(_MSC_VER) && defined(_MSVC_LANG) +#define CXX_STD _MSVC_LANG +#else +#define CXX_STD __cplusplus +#endif + +const char* info_language_dialect_default = "INFO" ":" "dialect_default[" +#if CXX_STD > 201402L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXE) || defined(__CRAYXC) + require += info_cray[argc]; +#endif + require += info_language_dialect_default[argc]; + (void)argv; + return require; +} diff --git a/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/a.out b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/a.out new file mode 100644 index 0000000000000000000000000000000000000000..a5dafb114b35eed175337579b13d3e47ac1aa82c Binary files /dev/null and b/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/a.out differ diff --git a/GeoSpecialShapes/build/CMakeFiles/CMakeDirectoryInformation.cmake b/GeoSpecialShapes/build/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 0000000000000000000000000000000000000000..e7691471381337bffb350ae459d1c1a6e1dbdad9 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/GeoSpecialShapes/build/CMakeFiles/CMakeOutput.log b/GeoSpecialShapes/build/CMakeFiles/CMakeOutput.log new file mode 100644 index 0000000000000000000000000000000000000000..1ddbbe2ea0760a7ea0017bfe5ac630806ed5d00d --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/CMakeOutput.log @@ -0,0 +1,381 @@ +The system is: Darwin - 18.5.0 - x86_64 +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is AppleClang, found in "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/3.10.3/CompilerIdCXX/a.out" + +Determining if the CXX compiler works passed with the following output: +Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_79ceb/fast" +/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_79ceb.dir/build.make CMakeFiles/cmTC_79ceb.dir/build +Building CXX object CMakeFiles/cmTC_79ceb.dir/testCXXCompiler.cxx.o +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -o CMakeFiles/cmTC_79ceb.dir/testCXXCompiler.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx +Linking CXX executable cmTC_79ceb +/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_79ceb.dir/link.txt --verbose=1 +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_79ceb.dir/testCXXCompiler.cxx.o -o cmTC_79ceb + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_8505b/fast" +/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_8505b.dir/build.make CMakeFiles/cmTC_8505b.dir/build +Building CXX object CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -o CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o -c /opt/local/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp +Linking CXX executable cmTC_8505b +/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8505b.dir/link.txt --verbose=1 +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_8505b +Apple LLVM version 10.0.1 (clang-1001.0.46.4) +Target: x86_64-apple-darwin18.5.0 +Thread model: posix +InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -o cmTC_8505b -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a +@(#)PROGRAM:ld PROJECT:ld64-450.3 +BUILD 18:45:16 Apr 4 2019 +configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em +Library search paths: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib +Framework search paths: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/ + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command:"/usr/bin/make" "cmTC_8505b/fast"] + ignore line: [/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_8505b.dir/build.make CMakeFiles/cmTC_8505b.dir/build] + ignore line: [Building CXX object CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -o CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o -c /opt/local/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Linking CXX executable cmTC_8505b] + ignore line: [/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8505b.dir/link.txt --verbose=1] + ignore line: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_8505b ] + ignore line: [Apple LLVM version 10.0.1 (clang-1001.0.46.4)] + ignore line: [Target: x86_64-apple-darwin18.5.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin] + link line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -o cmTC_8505b -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a] + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld] ==> ignore + arg [-demangle] ==> ignore + arg [-lto_library] ==> ignore, skip following value + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib] ==> skip value of -lto_library + arg [-dynamic] ==> ignore + arg [-arch] ==> ignore + arg [x86_64] ==> ignore + arg [-macosx_version_min] ==> ignore + arg [10.14.0] ==> ignore + arg [-syslibroot] ==> ignore + arg [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk] ==> ignore + arg [-o] ==> ignore + arg [cmTC_8505b] ==> ignore + arg [-search_paths_first] ==> ignore + arg [-headerpad_max_install_names] ==> ignore + arg [-v] ==> ignore + arg [CMakeFiles/cmTC_8505b.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lc++] ==> lib [c++] + arg [-lSystem] ==> lib [System] + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a] ==> lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a] + Library search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib] + Framework search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/] + remove lib [System] + remove lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a] + collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib] + collapse framework dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks] + implicit libs: [c++] + implicit dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib] + implicit fwks: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks] + + + + +Detecting CXX [-std=c++1z] compiler features compiled with the following output: +Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_a9954/fast" +/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_a9954.dir/build.make CMakeFiles/cmTC_a9954.dir/build +Building CXX object CMakeFiles/cmTC_a9954.dir/feature_tests.cxx.o +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -std=c++1z -o CMakeFiles/cmTC_a9954.dir/feature_tests.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_a9954 +/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a9954.dir/link.txt --verbose=1 +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_a9954.dir/feature_tests.cxx.o -o cmTC_a9954 + + + Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:1cxx_alias_templates + Feature record: CXX_FEATURE:1cxx_alignas + Feature record: CXX_FEATURE:1cxx_alignof + Feature record: CXX_FEATURE:1cxx_attributes + Feature record: CXX_FEATURE:1cxx_attribute_deprecated + Feature record: CXX_FEATURE:1cxx_auto_type + Feature record: CXX_FEATURE:1cxx_binary_literals + Feature record: CXX_FEATURE:1cxx_constexpr + Feature record: CXX_FEATURE:1cxx_contextual_conversions + Feature record: CXX_FEATURE:1cxx_decltype + Feature record: CXX_FEATURE:1cxx_decltype_auto + Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:1cxx_default_function_template_args + Feature record: CXX_FEATURE:1cxx_defaulted_functions + Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:1cxx_delegating_constructors + Feature record: CXX_FEATURE:1cxx_deleted_functions + Feature record: CXX_FEATURE:1cxx_digit_separators + Feature record: CXX_FEATURE:1cxx_enum_forward_declarations + Feature record: CXX_FEATURE:1cxx_explicit_conversions + Feature record: CXX_FEATURE:1cxx_extended_friend_declarations + Feature record: CXX_FEATURE:1cxx_extern_templates + Feature record: CXX_FEATURE:1cxx_final + Feature record: CXX_FEATURE:1cxx_func_identifier + Feature record: CXX_FEATURE:1cxx_generalized_initializers + Feature record: CXX_FEATURE:1cxx_generic_lambdas + Feature record: CXX_FEATURE:1cxx_inheriting_constructors + Feature record: CXX_FEATURE:1cxx_inline_namespaces + Feature record: CXX_FEATURE:1cxx_lambdas + Feature record: CXX_FEATURE:1cxx_lambda_init_captures + Feature record: CXX_FEATURE:1cxx_local_type_template_args + Feature record: CXX_FEATURE:1cxx_long_long_type + Feature record: CXX_FEATURE:1cxx_noexcept + Feature record: CXX_FEATURE:1cxx_nonstatic_member_init + Feature record: CXX_FEATURE:1cxx_nullptr + Feature record: CXX_FEATURE:1cxx_override + Feature record: CXX_FEATURE:1cxx_range_for + Feature record: CXX_FEATURE:1cxx_raw_string_literals + Feature record: CXX_FEATURE:1cxx_reference_qualified_functions + Feature record: CXX_FEATURE:1cxx_relaxed_constexpr + Feature record: CXX_FEATURE:1cxx_return_type_deduction + Feature record: CXX_FEATURE:1cxx_right_angle_brackets + Feature record: CXX_FEATURE:1cxx_rvalue_references + Feature record: CXX_FEATURE:1cxx_sizeof_member + Feature record: CXX_FEATURE:1cxx_static_assert + Feature record: CXX_FEATURE:1cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:1cxx_thread_local + Feature record: CXX_FEATURE:1cxx_trailing_return_types + Feature record: CXX_FEATURE:1cxx_unicode_literals + Feature record: CXX_FEATURE:1cxx_uniform_initialization + Feature record: CXX_FEATURE:1cxx_unrestricted_unions + Feature record: CXX_FEATURE:1cxx_user_literals + Feature record: CXX_FEATURE:1cxx_variable_templates + Feature record: CXX_FEATURE:1cxx_variadic_macros + Feature record: CXX_FEATURE:1cxx_variadic_templates + + +Detecting CXX [-std=c++14] compiler features compiled with the following output: +Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_8713b/fast" +/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_8713b.dir/build.make CMakeFiles/cmTC_8713b.dir/build +Building CXX object CMakeFiles/cmTC_8713b.dir/feature_tests.cxx.o +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -std=c++14 -o CMakeFiles/cmTC_8713b.dir/feature_tests.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_8713b +/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8713b.dir/link.txt --verbose=1 +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_8713b.dir/feature_tests.cxx.o -o cmTC_8713b + + + Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:1cxx_alias_templates + Feature record: CXX_FEATURE:1cxx_alignas + Feature record: CXX_FEATURE:1cxx_alignof + Feature record: CXX_FEATURE:1cxx_attributes + Feature record: CXX_FEATURE:1cxx_attribute_deprecated + Feature record: CXX_FEATURE:1cxx_auto_type + Feature record: CXX_FEATURE:1cxx_binary_literals + Feature record: CXX_FEATURE:1cxx_constexpr + Feature record: CXX_FEATURE:1cxx_contextual_conversions + Feature record: CXX_FEATURE:1cxx_decltype + Feature record: CXX_FEATURE:1cxx_decltype_auto + Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:1cxx_default_function_template_args + Feature record: CXX_FEATURE:1cxx_defaulted_functions + Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:1cxx_delegating_constructors + Feature record: CXX_FEATURE:1cxx_deleted_functions + Feature record: CXX_FEATURE:1cxx_digit_separators + Feature record: CXX_FEATURE:1cxx_enum_forward_declarations + Feature record: CXX_FEATURE:1cxx_explicit_conversions + Feature record: CXX_FEATURE:1cxx_extended_friend_declarations + Feature record: CXX_FEATURE:1cxx_extern_templates + Feature record: CXX_FEATURE:1cxx_final + Feature record: CXX_FEATURE:1cxx_func_identifier + Feature record: CXX_FEATURE:1cxx_generalized_initializers + Feature record: CXX_FEATURE:1cxx_generic_lambdas + Feature record: CXX_FEATURE:1cxx_inheriting_constructors + Feature record: CXX_FEATURE:1cxx_inline_namespaces + Feature record: CXX_FEATURE:1cxx_lambdas + Feature record: CXX_FEATURE:1cxx_lambda_init_captures + Feature record: CXX_FEATURE:1cxx_local_type_template_args + Feature record: CXX_FEATURE:1cxx_long_long_type + Feature record: CXX_FEATURE:1cxx_noexcept + Feature record: CXX_FEATURE:1cxx_nonstatic_member_init + Feature record: CXX_FEATURE:1cxx_nullptr + Feature record: CXX_FEATURE:1cxx_override + Feature record: CXX_FEATURE:1cxx_range_for + Feature record: CXX_FEATURE:1cxx_raw_string_literals + Feature record: CXX_FEATURE:1cxx_reference_qualified_functions + Feature record: CXX_FEATURE:1cxx_relaxed_constexpr + Feature record: CXX_FEATURE:1cxx_return_type_deduction + Feature record: CXX_FEATURE:1cxx_right_angle_brackets + Feature record: CXX_FEATURE:1cxx_rvalue_references + Feature record: CXX_FEATURE:1cxx_sizeof_member + Feature record: CXX_FEATURE:1cxx_static_assert + Feature record: CXX_FEATURE:1cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:1cxx_thread_local + Feature record: CXX_FEATURE:1cxx_trailing_return_types + Feature record: CXX_FEATURE:1cxx_unicode_literals + Feature record: CXX_FEATURE:1cxx_uniform_initialization + Feature record: CXX_FEATURE:1cxx_unrestricted_unions + Feature record: CXX_FEATURE:1cxx_user_literals + Feature record: CXX_FEATURE:1cxx_variable_templates + Feature record: CXX_FEATURE:1cxx_variadic_macros + Feature record: CXX_FEATURE:1cxx_variadic_templates + + +Detecting CXX [-std=c++11] compiler features compiled with the following output: +Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_2c9df/fast" +/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_2c9df.dir/build.make CMakeFiles/cmTC_2c9df.dir/build +Building CXX object CMakeFiles/cmTC_2c9df.dir/feature_tests.cxx.o +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -std=c++11 -o CMakeFiles/cmTC_2c9df.dir/feature_tests.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_2c9df +/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2c9df.dir/link.txt --verbose=1 +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_2c9df.dir/feature_tests.cxx.o -o cmTC_2c9df + + + Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:1cxx_alias_templates + Feature record: CXX_FEATURE:1cxx_alignas + Feature record: CXX_FEATURE:1cxx_alignof + Feature record: CXX_FEATURE:1cxx_attributes + Feature record: CXX_FEATURE:0cxx_attribute_deprecated + Feature record: CXX_FEATURE:1cxx_auto_type + Feature record: CXX_FEATURE:0cxx_binary_literals + Feature record: CXX_FEATURE:1cxx_constexpr + Feature record: CXX_FEATURE:0cxx_contextual_conversions + Feature record: CXX_FEATURE:1cxx_decltype + Feature record: CXX_FEATURE:0cxx_decltype_auto + Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:1cxx_default_function_template_args + Feature record: CXX_FEATURE:1cxx_defaulted_functions + Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:1cxx_delegating_constructors + Feature record: CXX_FEATURE:1cxx_deleted_functions + Feature record: CXX_FEATURE:0cxx_digit_separators + Feature record: CXX_FEATURE:1cxx_enum_forward_declarations + Feature record: CXX_FEATURE:1cxx_explicit_conversions + Feature record: CXX_FEATURE:1cxx_extended_friend_declarations + Feature record: CXX_FEATURE:1cxx_extern_templates + Feature record: CXX_FEATURE:1cxx_final + Feature record: CXX_FEATURE:1cxx_func_identifier + Feature record: CXX_FEATURE:1cxx_generalized_initializers + Feature record: CXX_FEATURE:0cxx_generic_lambdas + Feature record: CXX_FEATURE:1cxx_inheriting_constructors + Feature record: CXX_FEATURE:1cxx_inline_namespaces + Feature record: CXX_FEATURE:1cxx_lambdas + Feature record: CXX_FEATURE:0cxx_lambda_init_captures + Feature record: CXX_FEATURE:1cxx_local_type_template_args + Feature record: CXX_FEATURE:1cxx_long_long_type + Feature record: CXX_FEATURE:1cxx_noexcept + Feature record: CXX_FEATURE:1cxx_nonstatic_member_init + Feature record: CXX_FEATURE:1cxx_nullptr + Feature record: CXX_FEATURE:1cxx_override + Feature record: CXX_FEATURE:1cxx_range_for + Feature record: CXX_FEATURE:1cxx_raw_string_literals + Feature record: CXX_FEATURE:1cxx_reference_qualified_functions + Feature record: CXX_FEATURE:0cxx_relaxed_constexpr + Feature record: CXX_FEATURE:0cxx_return_type_deduction + Feature record: CXX_FEATURE:1cxx_right_angle_brackets + Feature record: CXX_FEATURE:1cxx_rvalue_references + Feature record: CXX_FEATURE:1cxx_sizeof_member + Feature record: CXX_FEATURE:1cxx_static_assert + Feature record: CXX_FEATURE:1cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:1cxx_thread_local + Feature record: CXX_FEATURE:1cxx_trailing_return_types + Feature record: CXX_FEATURE:1cxx_unicode_literals + Feature record: CXX_FEATURE:1cxx_uniform_initialization + Feature record: CXX_FEATURE:1cxx_unrestricted_unions + Feature record: CXX_FEATURE:1cxx_user_literals + Feature record: CXX_FEATURE:0cxx_variable_templates + Feature record: CXX_FEATURE:1cxx_variadic_macros + Feature record: CXX_FEATURE:1cxx_variadic_templates + + +Detecting CXX [-std=c++98] compiler features compiled with the following output: +Change Dir: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_efc4f/fast" +/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_efc4f.dir/build.make CMakeFiles/cmTC_efc4f.dir/build +Building CXX object CMakeFiles/cmTC_efc4f.dir/feature_tests.cxx.o +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -std=c++98 -o CMakeFiles/cmTC_efc4f.dir/feature_tests.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_efc4f +/opt/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_efc4f.dir/link.txt --verbose=1 +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_efc4f.dir/feature_tests.cxx.o -o cmTC_efc4f + + + Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:0cxx_alias_templates + Feature record: CXX_FEATURE:0cxx_alignas + Feature record: CXX_FEATURE:0cxx_alignof + Feature record: CXX_FEATURE:0cxx_attributes + Feature record: CXX_FEATURE:0cxx_attribute_deprecated + Feature record: CXX_FEATURE:0cxx_auto_type + Feature record: CXX_FEATURE:0cxx_binary_literals + Feature record: CXX_FEATURE:0cxx_constexpr + Feature record: CXX_FEATURE:0cxx_contextual_conversions + Feature record: CXX_FEATURE:0cxx_decltype + Feature record: CXX_FEATURE:0cxx_decltype_auto + Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:0cxx_default_function_template_args + Feature record: CXX_FEATURE:0cxx_defaulted_functions + Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:0cxx_delegating_constructors + Feature record: CXX_FEATURE:0cxx_deleted_functions + Feature record: CXX_FEATURE:0cxx_digit_separators + Feature record: CXX_FEATURE:0cxx_enum_forward_declarations + Feature record: CXX_FEATURE:0cxx_explicit_conversions + Feature record: CXX_FEATURE:0cxx_extended_friend_declarations + Feature record: CXX_FEATURE:0cxx_extern_templates + Feature record: CXX_FEATURE:0cxx_final + Feature record: CXX_FEATURE:0cxx_func_identifier + Feature record: CXX_FEATURE:0cxx_generalized_initializers + Feature record: CXX_FEATURE:0cxx_generic_lambdas + Feature record: CXX_FEATURE:0cxx_inheriting_constructors + Feature record: CXX_FEATURE:0cxx_inline_namespaces + Feature record: CXX_FEATURE:0cxx_lambdas + Feature record: CXX_FEATURE:0cxx_lambda_init_captures + Feature record: CXX_FEATURE:0cxx_local_type_template_args + Feature record: CXX_FEATURE:0cxx_long_long_type + Feature record: CXX_FEATURE:0cxx_noexcept + Feature record: CXX_FEATURE:0cxx_nonstatic_member_init + Feature record: CXX_FEATURE:0cxx_nullptr + Feature record: CXX_FEATURE:0cxx_override + Feature record: CXX_FEATURE:0cxx_range_for + Feature record: CXX_FEATURE:0cxx_raw_string_literals + Feature record: CXX_FEATURE:0cxx_reference_qualified_functions + Feature record: CXX_FEATURE:0cxx_relaxed_constexpr + Feature record: CXX_FEATURE:0cxx_return_type_deduction + Feature record: CXX_FEATURE:0cxx_right_angle_brackets + Feature record: CXX_FEATURE:0cxx_rvalue_references + Feature record: CXX_FEATURE:0cxx_sizeof_member + Feature record: CXX_FEATURE:0cxx_static_assert + Feature record: CXX_FEATURE:0cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:0cxx_thread_local + Feature record: CXX_FEATURE:0cxx_trailing_return_types + Feature record: CXX_FEATURE:0cxx_unicode_literals + Feature record: CXX_FEATURE:0cxx_uniform_initialization + Feature record: CXX_FEATURE:0cxx_unrestricted_unions + Feature record: CXX_FEATURE:0cxx_user_literals + Feature record: CXX_FEATURE:0cxx_variable_templates + Feature record: CXX_FEATURE:0cxx_variadic_macros + Feature record: CXX_FEATURE:0cxx_variadic_templates diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/DependInfo.cmake b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/DependInfo.cmake new file mode 100644 index 0000000000000000000000000000000000000000..11d7742ab08edfe4f286f929fe33d60b18ae914b --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/DependInfo.cmake @@ -0,0 +1,31 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArCustomShape.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx" "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o" + ) +set(CMAKE_CXX_COMPILER_ID "AppleClang") + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "../" + "/usr/local/include/eigen3" + "/Users/mariba/Atlas/standaloneGeo2G4/install/include" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/build.make b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/build.make new file mode 100644 index 0000000000000000000000000000000000000000..b4a25f974316a3bf9e027dc907d9f40a2140600e --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/build.make @@ -0,0 +1,331 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/local/bin/cmake + +# The command to remove a file. +RM = /opt/local/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build + +# Include any dependencies generated for this target. +include CMakeFiles/GeoSpecialShapes.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/GeoSpecialShapes.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/GeoSpecialShapes.dir/flags.make + +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o: ../src/LArCustomShape.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArCustomShape.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArCustomShape.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArCustomShape.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o: ../src/LArWheelCalculator.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o: ../src/LArWheelCalculatorGeometry.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o: ../src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o: ../src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o: ../src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o: ../src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o: ../src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o + + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o: CMakeFiles/GeoSpecialShapes.dir/flags.make +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o: ../src/LArWheelCalculator_Impl/sincos_poly.cxx + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o -c /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.i" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx > CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.i + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.s" + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx -o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.s + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.requires: + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.requires + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.provides: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.requires + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.provides.build +.PHONY : CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.provides + +CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.provides.build: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o + + +# Object files for target GeoSpecialShapes +GeoSpecialShapes_OBJECTS = \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o" \ +"CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o" + +# External object files for target GeoSpecialShapes +GeoSpecialShapes_EXTERNAL_OBJECTS = + +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/build.make +libGeoSpecialShapes.dylib: /Users/mariba/Atlas/standaloneGeo2G4/install/lib/libGeoModelKernel.2.0.0.dylib +libGeoSpecialShapes.dylib: /Users/mariba/Atlas/standaloneGeo2G4/install/lib/libGeoGenericFunctions.2.0.0.dylib +libGeoSpecialShapes.dylib: CMakeFiles/GeoSpecialShapes.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Linking CXX shared library libGeoSpecialShapes.dylib" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/GeoSpecialShapes.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/GeoSpecialShapes.dir/build: libGeoSpecialShapes.dylib + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/build + +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o.requires +CMakeFiles/GeoSpecialShapes.dir/requires: CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o.requires + +.PHONY : CMakeFiles/GeoSpecialShapes.dir/requires + +CMakeFiles/GeoSpecialShapes.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/GeoSpecialShapes.dir/cmake_clean.cmake +.PHONY : CMakeFiles/GeoSpecialShapes.dir/clean + +CMakeFiles/GeoSpecialShapes.dir/depend: + cd /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/GeoSpecialShapes.dir/depend + diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/cmake_clean.cmake b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/cmake_clean.cmake new file mode 100644 index 0000000000000000000000000000000000000000..1060cc8f853d36cbe5320172d5b958babee315ba --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/cmake_clean.cmake @@ -0,0 +1,18 @@ +file(REMOVE_RECURSE + "CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o" + "CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o" + "libGeoSpecialShapes.pdb" + "libGeoSpecialShapes.dylib" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/GeoSpecialShapes.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/depend.make b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/depend.make new file mode 100644 index 0000000000000000000000000000000000000000..5e834494d0a3a51740ba086680749a2c20b34e97 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for GeoSpecialShapes. +# This may be replaced when dependencies are built. diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/flags.make b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/flags.make new file mode 100644 index 0000000000000000000000000000000000000000..b55e03237f5dc678a1c2507584c8dc8ec85267a3 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# compile CXX with /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ +CXX_FLAGS = -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -fPIC -std=c++1z + +CXX_DEFINES = -DGeoSpecialShapes_EXPORTS + +CXX_INCLUDES = -I/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes -isystem /usr/local/include/eigen3 -isystem /Users/mariba/Atlas/standaloneGeo2G4/install/include + diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/link.txt b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/link.txt new file mode 100644 index 0000000000000000000000000000000000000000..d8a5983f16d649e9c0509be062d11c40969932ab --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/link.txt @@ -0,0 +1 @@ +/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -dynamiclib -Wl,-headerpad_max_install_names -o libGeoSpecialShapes.dylib -install_name @rpath/libGeoSpecialShapes.dylib CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o -Wl,-rpath,/Users/mariba/Atlas/standaloneGeo2G4/install/lib -lGeoMaterial2G4 -lGeoModel2G4 /Users/mariba/Atlas/standaloneGeo2G4/install/lib/libGeoModelKernel.2.0.0.dylib /Users/mariba/Atlas/standaloneGeo2G4/install/lib/libGeoGenericFunctions.2.0.0.dylib diff --git a/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/progress.make b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/progress.make new file mode 100644 index 0000000000000000000000000000000000000000..6c587e25fac6710568bb1976c973bcd2e714ad74 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir/progress.make @@ -0,0 +1,11 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 +CMAKE_PROGRESS_5 = 5 +CMAKE_PROGRESS_6 = 6 +CMAKE_PROGRESS_7 = 7 +CMAKE_PROGRESS_8 = 8 +CMAKE_PROGRESS_9 = 9 +CMAKE_PROGRESS_10 = 10 + diff --git a/GeoSpecialShapes/build/CMakeFiles/Makefile.cmake b/GeoSpecialShapes/build/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000000000000000000000000000000000000..1be4a6240df44d4559a9a2f75d23b16caa90c8a0 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/Makefile.cmake @@ -0,0 +1,108 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.10.3/CMakeCXXCompiler.cmake" + "CMakeFiles/3.10.3/CMakeSystem.cmake" + "CMakeFiles/feature_tests.cxx" + "/Users/mariba/Atlas/standaloneGeo2G4/install/lib/cmake/GeoModelCore/GeoModelCoreConfig.cmake" + "/Users/mariba/Atlas/standaloneGeo2G4/install/lib/cmake/GeoModelCore/GeoModelCoreConfigVersion.cmake" + "/Users/mariba/Atlas/standaloneGeo2G4/install/lib/cmake/GeoModelCore/GeoModelCoreTargets-noconfig.cmake" + "/Users/mariba/Atlas/standaloneGeo2G4/install/lib/cmake/GeoModelCore/GeoModelCoreTargets.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeCXXCompiler.cmake.in" + "/opt/local/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp" + "/opt/local/share/cmake-3.10/Modules/CMakeCXXInformation.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeCommonLanguageInclude.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeCompilerIdDetection.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeDetermineCXXCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeDetermineCompileFeatures.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeDetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeDetermineCompilerABI.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeDetermineCompilerId.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeFindBinUtils.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeGenericSystem.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeLanguageInformation.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeParseImplicitLinkInfo.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeSystem.cmake.in" + "/opt/local/share/cmake-3.10/Modules/CMakeSystemSpecificInformation.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeSystemSpecificInitialize.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeTestCXXCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeTestCompilerCommon.cmake" + "/opt/local/share/cmake-3.10/Modules/CMakeUnixFindMake.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/AppleClang-CXX-FeatureTests.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/AppleClang-CXX.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Clang-CXX-TestableFeatures.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Clang.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/GNU.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/MIPSpro-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/TI-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/opt/local/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake" + "/opt/local/share/cmake-3.10/Modules/FindPackageMessage.cmake" + "/opt/local/share/cmake-3.10/Modules/GNUInstallDirs.cmake" + "/opt/local/share/cmake-3.10/Modules/Internal/FeatureTesting.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/Darwin-AppleClang-CXX.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/Darwin-Clang-CXX.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/Darwin-Clang.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/Darwin-Determine-CXX.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/Darwin-Initialize.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/Darwin.cmake" + "/opt/local/share/cmake-3.10/Modules/Platform/UnixPaths.cmake" + "/usr/local/share/eigen3/cmake/Eigen3Config.cmake" + "/usr/local/share/eigen3/cmake/Eigen3ConfigVersion.cmake" + "/usr/local/share/eigen3/cmake/Eigen3Targets.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.10.3/CMakeSystem.cmake" + "CMakeFiles/3.10.3/CMakeCXXCompiler.cmake" + "CMakeFiles/3.10.3/CMakeCXXCompiler.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/GeoSpecialShapes.dir/DependInfo.cmake" + ) diff --git a/GeoSpecialShapes/build/CMakeFiles/Makefile2 b/GeoSpecialShapes/build/CMakeFiles/Makefile2 new file mode 100644 index 0000000000000000000000000000000000000000..7545e33401ad7e60809d1f3e2be9170dff671bab --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/Makefile2 @@ -0,0 +1,108 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +# The main recursive all target +all: + +.PHONY : all + +# The main recursive preinstall target +preinstall: + +.PHONY : preinstall + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/local/bin/cmake + +# The command to remove a file. +RM = /opt/local/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build + +#============================================================================= +# Target rules for target CMakeFiles/GeoSpecialShapes.dir + +# All Build rule for target. +CMakeFiles/GeoSpecialShapes.dir/all: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/depend + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9,10 "Built target GeoSpecialShapes" +.PHONY : CMakeFiles/GeoSpecialShapes.dir/all + +# Include target in all. +all: CMakeFiles/GeoSpecialShapes.dir/all + +.PHONY : all + +# Build rule for subdir invocation for target. +CMakeFiles/GeoSpecialShapes.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles 10 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/GeoSpecialShapes.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles 0 +.PHONY : CMakeFiles/GeoSpecialShapes.dir/rule + +# Convenience name for target. +GeoSpecialShapes: CMakeFiles/GeoSpecialShapes.dir/rule + +.PHONY : GeoSpecialShapes + +# clean rule for target. +CMakeFiles/GeoSpecialShapes.dir/clean: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/clean +.PHONY : CMakeFiles/GeoSpecialShapes.dir/clean + +# clean rule for target. +clean: CMakeFiles/GeoSpecialShapes.dir/clean + +.PHONY : clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/GeoSpecialShapes/build/CMakeFiles/TargetDirectories.txt b/GeoSpecialShapes/build/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000000000000000000000000000000000000..448685825b5bd5429ab5da0062e9db9e54aaf699 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,7 @@ +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/install/local.dir +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/install/strip.dir +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/install.dir +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/list_install_components.dir +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/rebuild_cache.dir +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/edit_cache.dir +/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/GeoSpecialShapes.dir diff --git a/GeoSpecialShapes/build/CMakeFiles/cmake.check_cache b/GeoSpecialShapes/build/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000000000000000000000000000000000000..3dccd731726d7faa8b29d8d7dba3b981a53ca497 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/GeoSpecialShapes/build/CMakeFiles/feature_tests.bin b/GeoSpecialShapes/build/CMakeFiles/feature_tests.bin new file mode 100644 index 0000000000000000000000000000000000000000..155117b495a14d926b67f91b77ddeeb952d06b18 Binary files /dev/null and b/GeoSpecialShapes/build/CMakeFiles/feature_tests.bin differ diff --git a/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx b/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx new file mode 100644 index 0000000000000000000000000000000000000000..34d2e8c4b30f6c938980556823efe8cd6828aff8 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/feature_tests.cxx @@ -0,0 +1,405 @@ + + const char features[] = {"\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_aggregate_nsdmi) +"1" +#else +"0" +#endif +"cxx_aggregate_default_initializers\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_alias_templates) +"1" +#else +"0" +#endif +"cxx_alias_templates\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_alignas) +"1" +#else +"0" +#endif +"cxx_alignas\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_alignas) +"1" +#else +"0" +#endif +"cxx_alignof\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_attributes) +"1" +#else +"0" +#endif +"cxx_attributes\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_attribute_deprecated\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_auto_type) +"1" +#else +"0" +#endif +"cxx_auto_type\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_binary_literals) +"1" +#else +"0" +#endif +"cxx_binary_literals\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_constexpr) +"1" +#else +"0" +#endif +"cxx_constexpr\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_contextual_conversions) +"1" +#else +"0" +#endif +"cxx_contextual_conversions\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_decltype) +"1" +#else +"0" +#endif +"cxx_decltype\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_decltype_auto\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_decltype_incomplete_return_types) +"1" +#else +"0" +#endif +"cxx_decltype_incomplete_return_types\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_default_function_template_args) +"1" +#else +"0" +#endif +"cxx_default_function_template_args\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_defaulted_functions) +"1" +#else +"0" +#endif +"cxx_defaulted_functions\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_defaulted_functions) +"1" +#else +"0" +#endif +"cxx_defaulted_move_initializers\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_delegating_constructors) +"1" +#else +"0" +#endif +"cxx_delegating_constructors\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_deleted_functions) +"1" +#else +"0" +#endif +"cxx_deleted_functions\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_digit_separators\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_enum_forward_declarations\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_explicit_conversions) +"1" +#else +"0" +#endif +"cxx_explicit_conversions\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_extended_friend_declarations\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_extern_templates\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_override_control) +"1" +#else +"0" +#endif +"cxx_final\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_func_identifier\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_generalized_initializers) +"1" +#else +"0" +#endif +"cxx_generalized_initializers\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_generic_lambdas\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_inheriting_constructors) +"1" +#else +"0" +#endif +"cxx_inheriting_constructors\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_inline_namespaces\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_lambdas) +"1" +#else +"0" +#endif +"cxx_lambdas\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_init_captures) +"1" +#else +"0" +#endif +"cxx_lambda_init_captures\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_local_type_template_args) +"1" +#else +"0" +#endif +"cxx_local_type_template_args\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_long_long_type\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_noexcept) +"1" +#else +"0" +#endif +"cxx_noexcept\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_nonstatic_member_init) +"1" +#else +"0" +#endif +"cxx_nonstatic_member_init\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_nullptr) +"1" +#else +"0" +#endif +"cxx_nullptr\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_override_control) +"1" +#else +"0" +#endif +"cxx_override\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_range_for) +"1" +#else +"0" +#endif +"cxx_range_for\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_raw_string_literals) +"1" +#else +"0" +#endif +"cxx_raw_string_literals\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_reference_qualified_functions) +"1" +#else +"0" +#endif +"cxx_reference_qualified_functions\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_relaxed_constexpr) +"1" +#else +"0" +#endif +"cxx_relaxed_constexpr\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_return_type_deduction) +"1" +#else +"0" +#endif +"cxx_return_type_deduction\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_right_angle_brackets\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_rvalue_references) +"1" +#else +"0" +#endif +"cxx_rvalue_references\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_sizeof_member\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_static_assert) +"1" +#else +"0" +#endif +"cxx_static_assert\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_strong_enums) +"1" +#else +"0" +#endif +"cxx_strong_enums\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 199711L +"1" +#else +"0" +#endif +"cxx_template_template_parameters\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_thread_local) +"1" +#else +"0" +#endif +"cxx_thread_local\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_trailing_return) +"1" +#else +"0" +#endif +"cxx_trailing_return_types\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_unicode_literals) +"1" +#else +"0" +#endif +"cxx_unicode_literals\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_generalized_initializers) +"1" +#else +"0" +#endif +"cxx_uniform_initialization\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_unrestricted_unions) +"1" +#else +"0" +#endif +"cxx_unrestricted_unions\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_user_literals) +"1" +#else +"0" +#endif +"cxx_user_literals\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_variable_templates) +"1" +#else +"0" +#endif +"cxx_variable_templates\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_variadic_macros\n" +"CXX_FEATURE:" +#if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_variadic_templates) +"1" +#else +"0" +#endif +"cxx_variadic_templates\n" + +}; + +int main(int argc, char** argv) { (void)argv; return features[argc]; } diff --git a/GeoSpecialShapes/build/CMakeFiles/progress.marks b/GeoSpecialShapes/build/CMakeFiles/progress.marks new file mode 100644 index 0000000000000000000000000000000000000000..f599e28b8ab0d8c9c57a486c89c4a5132dcbd3b2 --- /dev/null +++ b/GeoSpecialShapes/build/CMakeFiles/progress.marks @@ -0,0 +1 @@ +10 diff --git a/GeoSpecialShapes/build/Makefile b/GeoSpecialShapes/build/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..92eb08f9223dfc047a5f0d11c3a9c5ff06aa6559 --- /dev/null +++ b/GeoSpecialShapes/build/Makefile @@ -0,0 +1,468 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.10 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/local/bin/cmake + +# The command to remove a file. +RM = /opt/local/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /opt/local/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /opt/local/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /opt/local/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /opt/local/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /opt/local/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /opt/local/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components + +.PHONY : list_install_components/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /opt/local/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache + +.PHONY : rebuild_cache/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..." + /opt/local/bin/ccmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache + +.PHONY : edit_cache/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean + +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named GeoSpecialShapes + +# Build rule for target. +GeoSpecialShapes: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 GeoSpecialShapes +.PHONY : GeoSpecialShapes + +# fast build rule for target. +GeoSpecialShapes/fast: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/build +.PHONY : GeoSpecialShapes/fast + +src/LArCustomShape.o: src/LArCustomShape.cxx.o + +.PHONY : src/LArCustomShape.o + +# target to build an object file +src/LArCustomShape.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.o +.PHONY : src/LArCustomShape.cxx.o + +src/LArCustomShape.i: src/LArCustomShape.cxx.i + +.PHONY : src/LArCustomShape.i + +# target to preprocess a source file +src/LArCustomShape.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.i +.PHONY : src/LArCustomShape.cxx.i + +src/LArCustomShape.s: src/LArCustomShape.cxx.s + +.PHONY : src/LArCustomShape.s + +# target to generate assembly for a file +src/LArCustomShape.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArCustomShape.cxx.s +.PHONY : src/LArCustomShape.cxx.s + +src/LArWheelCalculator.o: src/LArWheelCalculator.cxx.o + +.PHONY : src/LArWheelCalculator.o + +# target to build an object file +src/LArWheelCalculator.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.o +.PHONY : src/LArWheelCalculator.cxx.o + +src/LArWheelCalculator.i: src/LArWheelCalculator.cxx.i + +.PHONY : src/LArWheelCalculator.i + +# target to preprocess a source file +src/LArWheelCalculator.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.i +.PHONY : src/LArWheelCalculator.cxx.i + +src/LArWheelCalculator.s: src/LArWheelCalculator.cxx.s + +.PHONY : src/LArWheelCalculator.s + +# target to generate assembly for a file +src/LArWheelCalculator.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator.cxx.s +.PHONY : src/LArWheelCalculator.cxx.s + +src/LArWheelCalculatorGeometry.o: src/LArWheelCalculatorGeometry.cxx.o + +.PHONY : src/LArWheelCalculatorGeometry.o + +# target to build an object file +src/LArWheelCalculatorGeometry.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.o +.PHONY : src/LArWheelCalculatorGeometry.cxx.o + +src/LArWheelCalculatorGeometry.i: src/LArWheelCalculatorGeometry.cxx.i + +.PHONY : src/LArWheelCalculatorGeometry.i + +# target to preprocess a source file +src/LArWheelCalculatorGeometry.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.i +.PHONY : src/LArWheelCalculatorGeometry.cxx.i + +src/LArWheelCalculatorGeometry.s: src/LArWheelCalculatorGeometry.cxx.s + +.PHONY : src/LArWheelCalculatorGeometry.s + +# target to generate assembly for a file +src/LArWheelCalculatorGeometry.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculatorGeometry.cxx.s +.PHONY : src/LArWheelCalculatorGeometry.cxx.s + +src/LArWheelCalculator_Impl/DistanceCalculatorFactory.o: src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorFactory.o + +# target to build an object file +src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.o + +src/LArWheelCalculator_Impl/DistanceCalculatorFactory.i: src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorFactory.i + +# target to preprocess a source file +src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.i + +src/LArWheelCalculator_Impl/DistanceCalculatorFactory.s: src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorFactory.s + +# target to generate assembly for a file +src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx.s + +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.o: src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.o + +# target to build an object file +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.o + +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.i: src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.i + +# target to preprocess a source file +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.i + +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.s: src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.s + +# target to generate assembly for a file +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx.s + +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.o: src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.o + +# target to build an object file +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.o + +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.i: src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.i + +# target to preprocess a source file +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.i + +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.s: src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s + +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.s + +# target to generate assembly for a file +src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s +.PHONY : src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx.s + +src/LArWheelCalculator_Impl/FanCalculatorFactory.o: src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o + +.PHONY : src/LArWheelCalculator_Impl/FanCalculatorFactory.o + +# target to build an object file +src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o +.PHONY : src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.o + +src/LArWheelCalculator_Impl/FanCalculatorFactory.i: src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i + +.PHONY : src/LArWheelCalculator_Impl/FanCalculatorFactory.i + +# target to preprocess a source file +src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i +.PHONY : src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.i + +src/LArWheelCalculator_Impl/FanCalculatorFactory.s: src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s + +.PHONY : src/LArWheelCalculator_Impl/FanCalculatorFactory.s + +# target to generate assembly for a file +src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s +.PHONY : src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx.s + +src/LArWheelCalculator_Impl/ModuleFanCalculator.o: src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o + +.PHONY : src/LArWheelCalculator_Impl/ModuleFanCalculator.o + +# target to build an object file +src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o +.PHONY : src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.o + +src/LArWheelCalculator_Impl/ModuleFanCalculator.i: src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i + +.PHONY : src/LArWheelCalculator_Impl/ModuleFanCalculator.i + +# target to preprocess a source file +src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i +.PHONY : src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.i + +src/LArWheelCalculator_Impl/ModuleFanCalculator.s: src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s + +.PHONY : src/LArWheelCalculator_Impl/ModuleFanCalculator.s + +# target to generate assembly for a file +src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s +.PHONY : src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx.s + +src/LArWheelCalculator_Impl/sincos_poly.o: src/LArWheelCalculator_Impl/sincos_poly.cxx.o + +.PHONY : src/LArWheelCalculator_Impl/sincos_poly.o + +# target to build an object file +src/LArWheelCalculator_Impl/sincos_poly.cxx.o: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.o +.PHONY : src/LArWheelCalculator_Impl/sincos_poly.cxx.o + +src/LArWheelCalculator_Impl/sincos_poly.i: src/LArWheelCalculator_Impl/sincos_poly.cxx.i + +.PHONY : src/LArWheelCalculator_Impl/sincos_poly.i + +# target to preprocess a source file +src/LArWheelCalculator_Impl/sincos_poly.cxx.i: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.i +.PHONY : src/LArWheelCalculator_Impl/sincos_poly.cxx.i + +src/LArWheelCalculator_Impl/sincos_poly.s: src/LArWheelCalculator_Impl/sincos_poly.cxx.s + +.PHONY : src/LArWheelCalculator_Impl/sincos_poly.s + +# target to generate assembly for a file +src/LArWheelCalculator_Impl/sincos_poly.cxx.s: + $(MAKE) -f CMakeFiles/GeoSpecialShapes.dir/build.make CMakeFiles/GeoSpecialShapes.dir/src/LArWheelCalculator_Impl/sincos_poly.cxx.s +.PHONY : src/LArWheelCalculator_Impl/sincos_poly.cxx.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... install/local" + @echo "... install/strip" + @echo "... install" + @echo "... list_install_components" + @echo "... rebuild_cache" + @echo "... edit_cache" + @echo "... GeoSpecialShapes" + @echo "... src/LArCustomShape.o" + @echo "... src/LArCustomShape.i" + @echo "... src/LArCustomShape.s" + @echo "... src/LArWheelCalculator.o" + @echo "... src/LArWheelCalculator.i" + @echo "... src/LArWheelCalculator.s" + @echo "... src/LArWheelCalculatorGeometry.o" + @echo "... src/LArWheelCalculatorGeometry.i" + @echo "... src/LArWheelCalculatorGeometry.s" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorFactory.o" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorFactory.i" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorFactory.s" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.o" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.i" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.s" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.o" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.i" + @echo "... src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.s" + @echo "... src/LArWheelCalculator_Impl/FanCalculatorFactory.o" + @echo "... src/LArWheelCalculator_Impl/FanCalculatorFactory.i" + @echo "... src/LArWheelCalculator_Impl/FanCalculatorFactory.s" + @echo "... src/LArWheelCalculator_Impl/ModuleFanCalculator.o" + @echo "... src/LArWheelCalculator_Impl/ModuleFanCalculator.i" + @echo "... src/LArWheelCalculator_Impl/ModuleFanCalculator.s" + @echo "... src/LArWheelCalculator_Impl/sincos_poly.o" + @echo "... src/LArWheelCalculator_Impl/sincos_poly.i" + @echo "... src/LArWheelCalculator_Impl/sincos_poly.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/GeoSpecialShapes/build/cmake_install.cmake b/GeoSpecialShapes/build/cmake_install.cmake new file mode 100644 index 0000000000000000000000000000000000000000..45c25ccc06222147221f2bd22e7a335fe6c9108b --- /dev/null +++ b/GeoSpecialShapes/build/cmake_install.cmake @@ -0,0 +1,75 @@ +# Install script for directory: /Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Users/mariba/Atlas/standaloneGeo2G4/install") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/libGeoSpecialShapes.dylib") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libGeoSpecialShapes.dylib" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libGeoSpecialShapes.dylib") + execute_process(COMMAND /usr/bin/install_name_tool + -delete_rpath "/Users/mariba/Atlas/standaloneGeo2G4/install/lib" + "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libGeoSpecialShapes.dylib") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libGeoSpecialShapes.dylib") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/GeoSpecialShapes" TYPE FILE FILES + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/GeoSpecialShapes/LArCustomShape.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/GeoSpecialShapes/LArGeoCheckerDict.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculator.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/GeoSpecialShapes/LArWheelCalculatorEnums.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/GeoSpecialShapes/sincos.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/IDistanceCalculator.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/IFanCalculator.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.h" + "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/src/LArWheelCalculator_Impl/WheelFanCalculator.h" + ) +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/Users/mariba/Atlas/standaloneGeo2G4/GeoModelG4/GeoSpecialShapes/build/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/GeoSpecialShapes/doc/packagedoc.h b/GeoSpecialShapes/doc/packagedoc.h new file mode 100644 index 0000000000000000000000000000000000000000..57a3c33d4da3311af084e8cdfba3789a4f7f4c69 --- /dev/null +++ b/GeoSpecialShapes/doc/packagedoc.h @@ -0,0 +1,17 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +/** + + +@page GeoSpecialShapes_page + +This package contains definitions of LAr EMEC custom shape + +-------------------------------- + REQUIREMENTS +-------------------------------- + + +*/ diff --git a/GeoSpecialShapes/src/LArCustomShape.cxx b/GeoSpecialShapes/src/LArCustomShape.cxx new file mode 100644 index 0000000000000000000000000000000000000000..c6f2a23ebab7ce537a8269cf614b0221471b5f9f --- /dev/null +++ b/GeoSpecialShapes/src/LArCustomShape.cxx @@ -0,0 +1,160 @@ +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +#include "GeoSpecialShapes/LArCustomShape.h" +#include "GeoModelKernel/GeoShapeAction.h" + +#include <string> +#include <iostream> +#include <stdexcept> + +const std::string LArCustomShape::s_classType = "CustomShape"; +const ShapeType LArCustomShape::s_classTypeID = 500; + +const LArCustomShape::ShapeCalc_typemap LArCustomShape::s_calculatorTypes = { + { "LAr::EMEC::InnerWheel::Absorber", {LArG4::InnerAbsorberWheel, 1} }, + { "LAr::EMEC::InnerWheel::Electrode", {LArG4::InnerElectrodWheel, 1} }, + { "LAr::EMEC::InnerWheel::Glue", {LArG4::InnerGlueWheel, 1} }, + { "LAr::EMEC::InnerWheel::Lead", {LArG4::InnerLeadWheel, 1} }, + + { "LAr::EMEC::OuterWheel::Absorber", {LArG4::OuterAbsorberWheel, 1} }, + { "LAr::EMEC::OuterWheel::Electrode", {LArG4::OuterElectrodWheel, 1} }, + { "LAr::EMEC::OuterWheel::Glue", {LArG4::OuterGlueWheel, 1} }, + { "LAr::EMEC::OuterWheel::Lead", {LArG4::OuterLeadWheel, 1} }, + + { "LAr::EMEC::Pos::InnerWheel::Absorber", {LArG4::InnerAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::InnerWheel::Electrode", {LArG4::InnerElectrodWheel, 1} }, + { "LAr::EMEC::Pos::InnerWheel::Glue", {LArG4::InnerGlueWheel, 1} }, + { "LAr::EMEC::Pos::InnerWheel::Lead", {LArG4::InnerLeadWheel, 1} }, + { "LAr::EMEC::Pos::OuterWheel::Absorber", {LArG4::OuterAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::OuterWheel::Electrode", {LArG4::OuterElectrodWheel, 1} }, + { "LAr::EMEC::Pos::OuterWheel::Glue", {LArG4::OuterGlueWheel, 1} }, + { "LAr::EMEC::Pos::OuterWheel::Lead", {LArG4::OuterLeadWheel, 1} }, + + { "LAr::EMEC::Neg::InnerWheel::Absorber", {LArG4::InnerAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::InnerWheel::Electrode", {LArG4::InnerElectrodWheel, -1} }, + { "LAr::EMEC::Neg::InnerWheel::Glue", {LArG4::InnerGlueWheel, -1} }, + { "LAr::EMEC::Neg::InnerWheel::Lead", {LArG4::InnerLeadWheel, -1} }, + { "LAr::EMEC::Neg::OuterWheel::Absorber", {LArG4::OuterAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::OuterWheel::Electrode", {LArG4::OuterElectrodWheel, -1} }, + { "LAr::EMEC::Neg::OuterWheel::Glue", {LArG4::OuterGlueWheel, -1} }, + { "LAr::EMEC::Neg::OuterWheel::Lead", {LArG4::OuterLeadWheel, -1} }, + + { "LAr::EMEC::InnerModule::Absorber", {LArG4::InnerAbsorberModule, 1} }, + { "LAr::EMEC::InnerModule::Electrode", {LArG4::InnerElectrodModule, 1} }, + { "LAr::EMEC::OuterModule::Absorber", {LArG4::OuterAbsorberModule, 1} }, + { "LAr::EMEC::OuterModule::Electrode", {LArG4::OuterElectrodModule, 1} }, + + { "LAr::EMEC::Pos::InnerCone::Absorber", {LArG4::InnerAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::InnerCone::Electrode", {LArG4::InnerElectrodWheel, 1} }, + { "LAr::EMEC::Pos::InnerCone::Glue", {LArG4::InnerGlueWheel, 1} }, + { "LAr::EMEC::Pos::InnerCone::Lead", {LArG4::InnerLeadWheel, 1} }, + { "LAr::EMEC::Neg::InnerCone::Absorber", {LArG4::InnerAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::InnerCone::Electrode", {LArG4::InnerElectrodWheel, -1} }, + { "LAr::EMEC::Neg::InnerCone::Glue", {LArG4::InnerGlueWheel, -1} }, + { "LAr::EMEC::Neg::InnerCone::Lead", {LArG4::InnerLeadWheel, -1} }, + + { "LAr::EMEC::Pos::OuterFrontCone::Absorber", {LArG4::OuterAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::OuterFrontCone::Electrode", {LArG4::OuterElectrodWheel, 1} }, + { "LAr::EMEC::Pos::OuterFrontCone::Glue", {LArG4::OuterGlueWheel, 1} }, + { "LAr::EMEC::Pos::OuterFrontCone::Lead", {LArG4::OuterLeadWheel, 1} }, + { "LAr::EMEC::Neg::OuterFrontCone::Absorber", {LArG4::OuterAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::OuterFrontCone::Electrode", {LArG4::OuterElectrodWheel, -1} }, + { "LAr::EMEC::Neg::OuterFrontCone::Glue", {LArG4::OuterGlueWheel, -1} }, + { "LAr::EMEC::Neg::OuterFrontCone::Lead", {LArG4::OuterLeadWheel, -1} }, + + { "LAr::EMEC::Pos::OuterBackCone::Absorber", {LArG4::OuterAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::OuterBackCone::Electrode", {LArG4::OuterElectrodWheel, 1} }, + { "LAr::EMEC::Pos::OuterBackCone::Glue", {LArG4::OuterGlueWheel, 1} }, + { "LAr::EMEC::Pos::OuterBackCone::Lead", {LArG4::OuterLeadWheel, 1} }, + { "LAr::EMEC::Neg::OuterBackCone::Absorber", {LArG4::OuterAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::OuterBackCone::Electrode", {LArG4::OuterElectrodWheel, -1} }, + { "LAr::EMEC::Neg::OuterBackCone::Glue", {LArG4::OuterGlueWheel, -1} }, + { "LAr::EMEC::Neg::OuterBackCone::Lead", {LArG4::OuterLeadWheel, -1} }, + + { "LAr::EMEC::Pos::InnerSlice00::Absorber", {LArG4::InnerAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::InnerSlice00::Electrode", {LArG4::InnerElectrodWheel, 1} }, + { "LAr::EMEC::Pos::InnerSlice00::Glue", {LArG4::InnerGlueWheel, 1} }, + { "LAr::EMEC::Pos::InnerSlice00::Lead", {LArG4::InnerLeadWheel, 1} }, + { "LAr::EMEC::Neg::InnerSlice00::Absorber", {LArG4::InnerAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::InnerSlice00::Electrode", {LArG4::InnerElectrodWheel, -1} }, + { "LAr::EMEC::Neg::InnerSlice00::Glue", {LArG4::InnerGlueWheel, -1} }, + { "LAr::EMEC::Neg::InnerSlice00::Lead", {LArG4::InnerLeadWheel, -1} }, + + { "LAr::EMEC::Pos::OuterSlice00::Absorber", {LArG4::OuterAbsorberWheel, 1} }, + { "LAr::EMEC::Pos::OuterSlice00::Electrode", {LArG4::OuterElectrodWheel, 1} }, + { "LAr::EMEC::Pos::OuterSlice00::Glue", {LArG4::OuterGlueWheel, 1} }, + { "LAr::EMEC::Pos::OuterSlice00::Lead", {LArG4::OuterLeadWheel, 1} }, + { "LAr::EMEC::Neg::OuterSlice00::Absorber", {LArG4::OuterAbsorberWheel, -1} }, + { "LAr::EMEC::Neg::OuterSlice00::Electrode", {LArG4::OuterElectrodWheel, -1} }, + { "LAr::EMEC::Neg::OuterSlice00::Glue", {LArG4::OuterGlueWheel, -1} }, + { "LAr::EMEC::Neg::OuterSlice00::Lead", {LArG4::OuterLeadWheel, -1} }, +}; + +LArCustomShape::LArCustomShape(const std::string& a_shapeName) + : m_shapeName(a_shapeName), + m_calculator(0) +{ + std::cout << "LArCustomShape::LArCustomShape()" << std::endl; + std::cout << "Constructor -- Creating the calculator..." << std::endl; + if ( createCalculator( s_calculatorTypes.at(a_shapeName) ) == 1 ) { // map.at throws std::out_of_range exception on unknown shape name + std::string error = std::string("Can't create LArWheelCalculator for name ") + a_shapeName + " in LArCustomShape constructor"; + throw std::runtime_error(error); + } +} + +LArCustomShape::~LArCustomShape() +{ + //delete m_calculator; +} + + +int LArCustomShape::createCalculator(const CalcDef_t & cdef) { // LArG4::LArWheelCalculator_t wheelType, int zside + + std::cout << "LArCustomShape::createCalculator()" << std::endl; + + LArG4::LArWheelCalculator_t wheelType = cdef.first; + int zside = cdef.second; + + m_calculator = new LArWheelCalculator(wheelType, zside); + std::string calcDSname = std::string("LAr::EMEC::")+ (zside>0?"Pos::":"Neg::")+LArWheelCalculator::LArWheelCalculatorTypeString(wheelType); + + // ownership is passed to detStore + if (m_calculator==NULL) + return 1; + else + return 0; + std::cout << "createCalculator() - done." << std::endl; + +} + +const LArWheelCalculator *LArCustomShape::calculator() const +{ + return m_calculator; +} + +double LArCustomShape::volume() const +{ + return 0; +} + +const std::string& LArCustomShape::type() const +{ + return s_classType; +} + +ShapeType LArCustomShape::typeID() const +{ + return s_classTypeID; +} + +const std::string& LArCustomShape::name() const +{ + return m_shapeName; +} + +void LArCustomShape::exec(GeoShapeAction* action) const +{ + action->handleLArCustom(this); +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator.cxx b/GeoSpecialShapes/src/LArWheelCalculator.cxx new file mode 100644 index 0000000000000000000000000000000000000000..0792b3505e6bf4e826ec1bf4322a9001a961b709 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator.cxx @@ -0,0 +1,513 @@ +/* + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration +*/ + +// LArWheelCalculator 19-Apr-2001 Bill Seligman +// 26-May-2009 AMS: remove all previous comments from here as obsoleted + +#include <cmath> +#include <climits> +#include <cassert> + +#include "GeoSpecialShapes/LArWheelCalculator.h" + +#include "./LArWheelCalculator_Impl/DistanceCalculatorFactory.h" +#include "./LArWheelCalculator_Impl/FanCalculatorFactory.h" + + + +// The radial boundaries of the inner and outer wheels are defined +// by values of eta, the distance from z=0 to the front face of the +// wheel, and the thickness of the wheel. + +// these numbers are taken from DB in constructor, +// hardcoded values here are just for reference +/* + double LArWheelCalculator::zWheelRefPoint = 3689.5*mm; //=endg_z0 + double LArWheelCalculator::dMechFocaltoWRP = 3691. *mm; //=endg_z1 + double LArWheelCalculator::dElecFocaltoWRP = 3689. *mm; //=endg_dcf + double LArWheelCalculator::rOuterCutoff = 2034. *mm; //=endg_rlimit + double LArWheelCalculator::HalfGapBetweenWheels = 0.15*cm; // In DB EMECGEOMETRY.DCRACK + float LArWheelCalculator::m_zShift = 4. *cm; // endg_zshift + double LArWheelCalculator::eta_hi = 3.2; // from EmecWheelParameters + double LArWheelCalculator::eta_mid = 2.5; + double LArWheelCalculator::eta_low = 1.375; +*/ + +// these values are taken from "EMECParams" DB +/* + bool LArWheelCalculator::SaggingOn = false; + bool LArWheelCalculator::phiRotation = false; +*/ + +// these were internal constants, now everything in DB +//const double LArWheelCalculator::s_dWRPtoFrontFace = 11.*mm; +//const double LArWheelCalculator::s_WheelThickness = 514.*mm; +// 2x2mm are to be substracted from value of wheel thickness +// - for straight 2-mm domains at start and finish of absorber +//const double LArWheelCalculator::s_StraightStartSection = 2.*mm; +//const double LArWheelCalculator::s_HalfWheelThickness = s_WheelThickness * 0.5; +//const double LArWheelCalculator::s_WheelThickness_wo_2sss = s_WheelThickness - 2.*s_StraightStartSection; + +static const double default_slant_parametrization[2][5] = { + { -50.069, 0.50073, -0.10127E-02, 0.10390E-05, -0.42176E-09 }, // inner + { -34.254, 0.15528, -0.11670E-03, 0.45018E-07, -0.68473E-11 } //outer +}; + +const char *LArWheelCalculator::LArWheelCalculatorTypeString(LArG4::LArWheelCalculator_t type) +{ + switch(type){ + case LArG4::InnerAbsorberWheel: return("InnerAbsorberWheel"); + case LArG4::OuterAbsorberWheel: return("OuterAbsorberWheel"); + case LArG4::InnerElectrodWheel: return("InnerElectrodWheel"); + case LArG4::OuterElectrodWheel: return("OuterElectrodWheel"); + case LArG4::InnerAbsorberModule: return("InnerAbsorberModule"); + case LArG4::OuterAbsorberModule: return("OuterAbsorberModule"); + case LArG4::InnerElectrodModule: return("InnerElectrodModule"); + case LArG4::OuterElectrodModule: return("OuterElectrodModule"); + case LArG4::BackOuterBarretteWheel: return("BackOuterBarretteWheel"); + case LArG4::BackInnerBarretteWheel: return("BackInnerBarretteWheel"); + case LArG4::BackOuterBarretteModule: return("BackOuterBarretteModule"); + case LArG4::BackInnerBarretteModule: return("BackInnerBarretteModule"); + case LArG4::BackOuterBarretteWheelCalib: return("BackOuterBarretteWheelCalib"); + case LArG4::BackInnerBarretteWheelCalib: return("BackInnerBarretteWheelCalib"); + case LArG4::BackOuterBarretteModuleCalib: return("BackOuterBarretteModuleCalib"); + case LArG4::BackInnerBarretteModuleCalib: return("BackInnerBarretteModuleCalib"); + case LArG4::InnerGlueWheel: return("InnerGlueWheel"); + case LArG4::InnerLeadWheel: return("InnerLeadWheel"); + case LArG4::OuterGlueWheel: return("OuterGlueWheel"); + case LArG4::OuterLeadWheel: return("OuterLeadWheel"); + } + return("unknown"); +} + +LArWheelCalculator::~LArWheelCalculator() { + delete m_distanceCalcImpl; + m_distanceCalcImpl = 0; + delete m_fanCalcImpl; + m_fanCalcImpl = 0; +} + +LArWheelCalculator::LArWheelCalculator(LArG4::LArWheelCalculator_t a_wheelType, int zside) : + m_type(a_wheelType), + m_AtlasZside(zside), + m_distanceCalcImpl(0), + m_fanCalcImpl(0) +{ + + +//#ifndef BUILDVP1LIGHT +// IGeoModelSvc *geoModel; +// IRDBAccessSvc* rdbAccess; +// +// if(svcLocator->service("GeoModelSvc", geoModel) == StatusCode::FAILURE) +// throw std::runtime_error("Error cannot access GeoModelSvc"); +// if(svcLocator->service ("RDBAccessSvc",rdbAccess) == StatusCode::FAILURE) +// throw std::runtime_error("Error cannot access RDBAccessSvc"); +// +// DecodeVersionKey larVersionKey(geoModel, "LAr"); +// +// RDBParamReader rdbr(rdbAccess); +// rdbr. +// data( "EmecGeometry", larVersionKey.tag(), larVersionKey.node() ). +// fallback_to( "EmecGeometry", "EmecGeometry-00" ). +// // store to, name, units +// param(m_zWheelRefPoint, "Z0", cm). //368.95 +// param(m_dMechFocaltoWRP, "Z1", cm). //369.1 +// param(m_dElecFocaltoWRP, "DCF", cm). //368.9 +// param(m_HalfGapBetweenWheels, "DCRACK", cm). //.15 +// param(m_rOuterCutoff, "RLIMIT", cm). //203.4 +// param(m_zShift, "ZSHIFT", cm) //4.5 +// ; +// +// RDBParamRecords EmecWheelParameters_recs = rdbr. +// data( "EmecWheelParameters", larVersionKey.tag(), larVersionKey.node() ). +// fallback_to( "EmecWheelParameters", "EmecWheelParameters-00" ); +// // store to, name, units, index(default=0) +// EmecWheelParameters_recs. +// param(m_eta_hi, "ETAINT", 1.0). //3.2 ----> (1 is 2.5) +// param(m_eta_mid, "ETAEXT", 1.0). //2.5 ----> (1 is 1.375) +// param(m_eta_low, "ETAEXT", 1.0, 1)//2.5 ----> (1 is 1.375) +// ; +// +// rdbr. +// data( "EmecMagicNumbers", larVersionKey.tag(), larVersionKey.node() ). +// fallback_to( "EmecMagicNumbers","EMECMagicNumbers-00" ). +// // store to, name, units +// param(m_ActiveLength, "ACTIVELENGTH", mm). //510 +// param(m_StraightStartSection, "STRAIGHTSTARTSECTION", mm). //2 +// param(m_dWRPtoFrontFace, "REFTOACTIVE", mm) //11 +// ; +// +// m_WheelThickness = m_ActiveLength + 2.*m_StraightStartSection; +// m_HalfWheelThickness = m_WheelThickness * 0.5; +// + std::string pr_opt_value = "off"; + std::string sagging_opt_value = "off"; +// +// RDBParamRecords EMECParams_recs = rdbr. +// data( "EMECParams", larVersionKey.tag(), larVersionKey.node() ). +// fallback_to( "EMECParams", "EMECParams-00" ); +// +// // store to, name +// EMECParams_recs. +// param(pr_opt_value, "PHIROTATION"). //off +// param(sagging_opt_value, "SAGGING") //off +// ; +// + m_phiRotation = pr_opt_value == "g3"? true: false; +// +// m_zWheelFrontFace = m_dMechFocaltoWRP + m_dWRPtoFrontFace; +// m_zWheelBackFace = m_zWheelFrontFace + m_WheelThickness; +// + + // Constructor initializes the geometry. + + m_isBarrette = false; + m_isBarretteCalib = false; + m_isModule = false; + m_isElectrode = false; + m_isInner = false; + m_FirstFan = 0; + m_LastFan = 0; + + switch(m_type){ + case LArG4::BackInnerBarretteWheelCalib: + m_isBarretteCalib = true; + /* FALLTHROUGH */ + case LArG4::BackInnerBarretteWheel: + m_isBarrette = true; + m_type = LArG4::InnerAbsorberWheel; + /* FALLTHROUGH */ + case LArG4::InnerAbsorberWheel: + case LArG4::InnerGlueWheel: + case LArG4::InnerLeadWheel: + inner_wheel_init(); + m_ZeroFanPhi = m_FanStepOnPhi * 0.5; + if(m_phiRotation) m_ZeroFanPhi += m_FanStepOnPhi * 0.5; + break; + case LArG4::BackOuterBarretteWheelCalib: + m_isBarretteCalib = true; + /* FALLTHROUGH */ + case LArG4::BackOuterBarretteWheel: + m_isBarrette = true; + m_type = LArG4::OuterAbsorberWheel; + /* FALLTHROUGH */ + case LArG4::OuterAbsorberWheel: + case LArG4::OuterGlueWheel: + case LArG4::OuterLeadWheel: + outer_wheel_init(); + m_ZeroFanPhi = m_FanStepOnPhi * 0.5; + if(m_phiRotation) m_ZeroFanPhi += m_FanStepOnPhi * 0.5; + break; + case LArG4::InnerElectrodWheel: + inner_wheel_init(); + m_ZeroFanPhi = 0; + if(m_phiRotation) m_ZeroFanPhi += m_FanStepOnPhi * 0.5; + m_isElectrode = true; + break; + case LArG4::OuterElectrodWheel: + outer_wheel_init(); + m_ZeroFanPhi = 0; + if(m_phiRotation) m_ZeroFanPhi += m_FanStepOnPhi * 0.5; + m_isElectrode = true; + break; + case LArG4::BackInnerBarretteModuleCalib: + m_isBarretteCalib = true; + /* FALLTHROUGH */ + case LArG4::BackInnerBarretteModule: + m_isBarrette = true; + m_type = LArG4::InnerAbsorberModule; + /* FALLTHROUGH */ + case LArG4::InnerAbsorberModule: + inner_wheel_init(); + module_init(); + m_ZeroFanPhi += m_FanStepOnPhi * 0.5; + // later for all? m_ZeroFanPhi_ForDetNeaFan = m_ZeroFanPhi - m_FanStepOnPhi * 0.5; + break; + case LArG4::BackOuterBarretteModuleCalib: + m_isBarretteCalib = true; + /* FALLTHROUGH */ + case LArG4::BackOuterBarretteModule: + m_isBarrette = true; + m_type = LArG4::OuterAbsorberModule; + /* FALLTHROUGH */ + case LArG4::OuterAbsorberModule: + outer_wheel_init(); + module_init(); + m_ZeroFanPhi += m_FanStepOnPhi * 0.5; + // later for all? m_ZeroFanPhi_ForDetNeaFan = m_ZeroFanPhi - m_FanStepOnPhi * 0.5; + break; + case LArG4::InnerElectrodModule: + inner_wheel_init(); + module_init(); + m_FirstFan ++; + m_isElectrode = true; + break; + case LArG4::OuterElectrodModule: + outer_wheel_init(); + module_init(); + m_FirstFan ++; + m_isElectrode = true; + break; + default: + throw std::runtime_error("LArWheelCalculator constructor:unknown LArWheelCalculator_t"); + } + m_ZeroFanPhi_ForDetNeaFan = m_ZeroFanPhi - m_FanStepOnPhi * 0.5; + m_NumberOfHalfWaves = m_NumberOfWaves * 2; + m_HalfWaveLength = m_ActiveLength / m_NumberOfHalfWaves; + m_QuarterWaveLength = m_HalfWaveLength * 0.5; + //m_HalfNumberOfFans = m_NumberOfFans / 2; + m_FanHalfThickness = GetFanHalfThickness(m_type); + + // Init sagging + // value read above + // std::string sagging_opt_value = (*DB_EMECParams)[0]->getString("SAGGING"); + + //msg << MSG::VERBOSE << "SAGGING value = " << sagging_opt_value << endmsg; + + // the same condition is in DistanceCalculatorFactory::Create + m_SaggingOn = (sagging_opt_value != "" && sagging_opt_value != "off")? true: false; + + //m_distanceCalcImpl = LArWheelCalculator_Impl::DistanceCalculatorFactory::Create( + // sagging_opt_value, this, rdbAccess, larVersionKey); + + m_distanceCalcImpl = LArWheelCalculator_Impl::DistanceCalculatorFactory::Create(sagging_opt_value,this); + if (m_SaggingOn) { + //msg << MSG::VERBOSE << "Creating DistanceCalculatorSaggingOn = " << this + // << ',' << m_distanceCalcImpl << endmsg; + } else { + //msg << MSG::VERBOSE << "Creating DistanceCalculatorSaggingOff = " << this + // << ',' << m_distanceCalcImpl << endmsg; + } + + //m_fanCalcImpl = LArWheelCalculator_Impl::FanCalculatorFactory::Create( + // m_SaggingOn, m_isModule, this, rdbAccess, larVersionKey); + m_fanCalcImpl = LArWheelCalculator_Impl::FanCalculatorFactory::Create(m_SaggingOn, m_isModule, this); + + //-------------------------- + // At this place there was the loading of sagging parameters + // Transfered to DistanceCalculatorSaggingOn + //-------------------------- + + // Get option: Slant params. + //msg << MSG::VERBOSE << "Loading SlantAngle parameters ..."; + std::string slant_params; + + //TO DO : needed? +// if (m_isInner) { +// EMECParams_recs.param(slant_params, "INNERSLANTPARAM"); +// } else { +// EMECParams_recs.param(slant_params, "OUTERSLANTPARAM"); +// } + + //msg << (m_isInner?" InnerWheel ":" OuterWheel ") << slant_params << endmsg; + + if(slant_params != "" && slant_params != "default"){ + double a, b, c, d, e; + if(sscanf(slant_params.c_str(), "%80le %80le %80le %80le %80le", &a, &b, &c, &d, &e) != 5){ + //msg << MSG::ERROR + // << "LArWheelCalculator: ERROR: wrong value(s) " + // << "for EMEC slant angle parameters: " + // << slant_params << ", " + // << "defaults are used" << endmsg; + } else { + m_slant_parametrization[0] = a; + m_slant_parametrization[1] = b; + m_slant_parametrization[2] = c; + m_slant_parametrization[3] = d; + m_slant_parametrization[4] = e; + m_slant_use_default = false; + } + } // else already initialized in inner/outer_wheel_init() + + fill_sincos_parameterization(); // initialize sin&cos parameterization + + //msg << MSG::VERBOSE << "All params initialized. Print some internal variables" << endmsg; + +// msg << MSG::VERBOSE << "Data members:" << std::endl +// << "m_AtlasZside = " << m_AtlasZside << std::endl +// << "m_NumberOfFans = " << m_NumberOfFans << std::endl +// << "m_ZeroFanPhi = " << m_ZeroFanPhi << std::endl +// << "m_ZeroFanPhi_ForDetNeaFan = " << m_ZeroFanPhi_ForDetNeaFan << std::endl +// << "m_FanStepOnPhi = " << m_FanStepOnPhi << std::endl +// << "m_FanHalfThickness = " << m_FanHalfThickness << std::endl +// //<< "Sagging parameters : " << m_sagging_parameter[0][0] << " " << m_sagging_parameter[0][1] << std::endl +// //<< "Sagging parameters : " << m_sagging_parameter[1][0] << " " << m_sagging_parameter[1][1] << std::endl +// << "slant_params = " << slant_params << std::endl +// << "Sagging option = " << sagging_opt_value << std::endl +// << "SaggingOn = " << (m_SaggingOn? "true": "false") << std::endl +// << "Slant parameters : "; +// for(int i = 0; i < 5; i ++) msg << " " << m_slant_parametrization[i]; +// msg << endmsg; + +// if(m_isModule){ +// msg << MSG::VERBOSE +// << "module_init: FirstFan = " << m_FirstFan +// << ", LastFan = " << m_LastFan +// << ", ZeroFanPhi = " << m_ZeroFanPhi +// << endmsg; +// } + + //m_fan_number = -1000; + + // Is the following code fragment obsoleted? DM 2015-03-13 + /* to compare various methods of slant angle computation: + if(isInner) return; + FILE *O = fopen("slant_stat.table1.txt", "w"); + if(O == 0) abort(); + struct timeval t1, t2; + struct timezone tz; + std::vector<double> alpha; + gettimeofday(&t1, &tz); + for(double r = 600.; r < 2100.; r += .01){ + alpha.push_back(parameterized_slant_angle(r)); + } + gettimeofday(&t2, &tz); + + fprintf(O, "%d.%06d %d.%06d\n", t1.tv_sec, t1.tv_usec, t2.tv_sec, t2.tv_usec); + int i = 0; + for(double r = 600.; r < 2100.; r += .01, i ++){ + fprintf(O, "%f %f\n", r, alpha[i]); + } + + fclose(O); + exit(0); + */ +} + +/* converts module gap number into wheel gap number */ +int LArWheelCalculator::PhiGapNumberForWheel(int i) const +{ + return m_fanCalcImpl->PhiGapNumberForWheel(i); +} + +void LArWheelCalculator::inner_wheel_init() +{ + for(int i = 0; i < 5; ++ i) { + m_slant_parametrization[i] = default_slant_parametrization[0][i]; + } + m_slant_use_default = true; + m_NumberOfFans = 256; + m_NumberOfWaves = 6; +// EmecWheelParameters_recs. +// param(m_NumberOfFans, "NABS", 0). +// param(m_NumberOfWaves, "NACC", 0); + + m_FanFoldRadius = 3.25 * SYSTEM_OF_UNITS::mm; + m_ZeroGapNumber = 64; // internal constant, should not be taken from DB + m_FanStepOnPhi = SYSTEM_OF_UNITS::twopi / m_NumberOfFans; + m_isInner = true; +} + +void LArWheelCalculator::outer_wheel_init() +{ + for(int i = 0; i < 5; ++ i) { + m_slant_parametrization[i] = default_slant_parametrization[1][i]; + } + m_slant_use_default = true; + m_NumberOfFans = 768; + m_NumberOfWaves = 9; +// EmecWheelParameters_recs. +// param(m_NumberOfFans, "NABS", 1). +// param(m_NumberOfWaves, "NACC", 1); + + m_FanFoldRadius = 3.0 * SYSTEM_OF_UNITS::mm; + m_ZeroGapNumber = 192; // internal constant, should not be taken from DB + m_FanStepOnPhi = SYSTEM_OF_UNITS::twopi / m_NumberOfFans; + m_isInner = false; +} + +double LArWheelCalculator::GetFanHalfThickness(LArG4::LArWheelCalculator_t t) +{ + switch(t){ + case LArG4::BackInnerBarretteWheelCalib: + case LArG4::BackInnerBarretteModuleCalib: + case LArG4::BackInnerBarretteWheel: + case LArG4::BackInnerBarretteModule: + case LArG4::InnerAbsorberWheel: + case LArG4::InnerAbsorberModule: + //return (2.2 / 2 + 0.2 + 0.15) * SYSTEM_OF_UNITS::mm; + return (2.2 / 2 + 0.2 + 0.1)*0.997 * SYSTEM_OF_UNITS::mm; // new values, 02.11.06 J.T. with contraction in cold + // lead / 2 + steel + glue + case LArG4::InnerGlueWheel: + return (2.2 / 2 + 0.1)*0.997 * SYSTEM_OF_UNITS::mm; + case LArG4::InnerLeadWheel: + return 2.2 / 2 * 0.997 * SYSTEM_OF_UNITS::mm; + + case LArG4::BackOuterBarretteWheelCalib: + case LArG4::BackOuterBarretteModuleCalib: + case LArG4::BackOuterBarretteWheel: + case LArG4::BackOuterBarretteModule: + case LArG4::OuterAbsorberWheel: + case LArG4::OuterAbsorberModule: + //return (1.7 / 2 + 0.2 + 0.15) * mm; + return (1.69 / 2 + 0.2 + 0.1)*0.997 * SYSTEM_OF_UNITS::mm; // new values, 02.11.06 J.T. + case LArG4::OuterGlueWheel: + return (1.69 / 2 + 0.1)*0.997 * SYSTEM_OF_UNITS::mm; + case LArG4::OuterLeadWheel: + return 1.69 / 2 * 0.997 * SYSTEM_OF_UNITS::mm; + + case LArG4::InnerElectrodWheel: + case LArG4::OuterElectrodWheel: + case LArG4::InnerElectrodModule: + case LArG4::OuterElectrodModule: + return 0.275/1.0036256 * SYSTEM_OF_UNITS::mm * 0.5; //new values, 02.11.06 J.T + } + throw std::runtime_error("LArWheelCalculator::GetFanHalfThickness: wrong wheel type"); +} + +void LArWheelCalculator::module_init() +{ + m_isModule = true; + m_LastFan = m_NumberOfFans / 8; + m_FirstFan = 0; + m_ZeroFanPhi = - m_LastFan / 2 * m_FanStepOnPhi; +} + +/* + array of r is filled with: + for inner wheel - 2 elements { r_front, r_back } + for outer wheel - 3 elements { r_front, r_middle, r_back } + return value - delta_z of middle point in case of outer wheel +*/ +double LArWheelCalculator::GetWheelInnerRadius(double *r) const +{ + double zMid = 0.; + if(m_isInner){ + double tanThetaInner = 2. * exp(-m_eta_hi ) / (1. - exp(-2.*m_eta_hi )); + r[0] = m_zWheelFrontFace * tanThetaInner; + r[1] = m_zWheelBackFace * tanThetaInner; + } else { + double tanThetaMid = 2. * exp(-m_eta_mid) / (1. - exp(-2.*m_eta_mid)); + double inv_tanThetaOuter = (1. - exp(-2.*m_eta_low)) / (2. * exp(-m_eta_low)); + // Note that there is a 3mm gap between the outer surface of the + // inner wheel and the inner surface of the outer wheel. + r[0] = m_zWheelFrontFace * tanThetaMid + m_HalfGapBetweenWheels; + r[1] = m_rOuterCutoff * inv_tanThetaOuter * tanThetaMid + m_HalfGapBetweenWheels; + r[2] = m_zWheelBackFace * tanThetaMid + m_HalfGapBetweenWheels; + zMid = m_rOuterCutoff * inv_tanThetaOuter - m_zWheelFrontFace; + } + return zMid; +} + +/* + array of r is filled with: + for inner wheel - 2 elements { r_front, r_back } + for outer wheel - 3 elements { r_front, r_middle, r_back } +*/ +void LArWheelCalculator::GetWheelOuterRadius(double *r) const +{ + if(m_isInner){ + double tanThetaMid = 2. * exp(-m_eta_mid) / (1. - exp(-2.*m_eta_mid)); + // Note that there is a 3mm gap between the outer surface of the + // inner wheel and the inner surface of the outer wheel. + r[0] = m_zWheelFrontFace * tanThetaMid - m_HalfGapBetweenWheels; + r[1] = m_zWheelBackFace * tanThetaMid - m_HalfGapBetweenWheels; + } else { + double tanThetaOuter = 2. * exp(-m_eta_low) / (1. - exp(-2.*m_eta_low)); + r[0] = m_zWheelFrontFace * tanThetaOuter; + r[1] = m_rOuterCutoff; + r[2] = m_rOuterCutoff; + } +} diff --git a/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx b/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx new file mode 100644 index 0000000000000000000000000000000000000000..d5767f7f58a9b0908ca8d600ff31f3e6d30b160f --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculatorGeometry.cxx @@ -0,0 +1,140 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +//#include "CxxUtils/sincos.h" +//#include <cmath> +#include <climits> +#include <cassert> +#include <iostream> + +//#include "GaudiKernel/PhysicalConstants.h" +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits + +#include "GeoSpecialShapes/LArWheelCalculator.h" +#include "./LArWheelCalculator_Impl/IDistanceCalculator.h" +#include "./LArWheelCalculator_Impl/IFanCalculator.h" + +#include "GeoModelKernel/GeoDefinitions.h" + +#ifdef HARDDEBUG +#include<stdio.h> +#endif + +//using namespace Gaudi::Units; + +void LArWheelCalculator::parameterized_sin(const double r, double &sin_a, double &cos_a) const +{ + const double r2 = r*r; + const double r3 = r2*r; + const double r4 = r2*r2; +#if LARWC_SINCOS_POLY > 4 + const double r5 = r4*r; +#endif + sin_a = m_sin_parametrization[0] + + m_sin_parametrization[1]*r + + m_sin_parametrization[2]*r2 + + m_sin_parametrization[3]*r3 + + m_sin_parametrization[4]*r4 +#if LARWC_SINCOS_POLY > 4 + + m_sin_parametrization[5]*r5 +#endif + ; + cos_a = sqrt(1. - sin_a*sin_a); +} + +void LArWheelCalculator::parameterized_sincos(const double r, double &sin_a, double &cos_a) const +{ + const double r2 = r*r; + const double r3 = r2*r; + const double r4 = r2*r2; +#if LARWC_SINCOS_POLY > 4 + const double r5 = r4*r; +#endif + sin_a = m_sin_parametrization[0] + + m_sin_parametrization[1]*r + + m_sin_parametrization[2]*r2 + + m_sin_parametrization[3]*r3 + + m_sin_parametrization[4]*r4 +#if LARWC_SINCOS_POLY > 4 + + m_sin_parametrization[5]*r5 +#endif + ; + cos_a = m_cos_parametrization[0] + + m_cos_parametrization[1]*r + + m_cos_parametrization[2]*r2 + + m_cos_parametrization[3]*r3 + + m_cos_parametrization[4]*r4 +#if LARWC_SINCOS_POLY > 4 + + m_cos_parametrization[5]*r5 +#endif + ; +} + +// calculates wave slant angle using parametrization for current wheel +// for given distance from calorimeter axis +double LArWheelCalculator::parameterized_slant_angle(double r) const +{ + const double r2 = r*r; + const double r3 = r2*r; + const double r4 = r2*r2; + const double result = m_slant_parametrization[0] + + r*m_slant_parametrization[1] + + r2*m_slant_parametrization[2] + + r3*m_slant_parametrization[3] + + r4*m_slant_parametrization[4]; + return result*SYSTEM_OF_UNITS::deg; +} + +// Determines the nearest to the input point fan. +// Relays on the fact that each two fans have a fan of a different type between +// them. +// Returns distance to the nearest fan. Vector p is set to nearest fan coord. +// system. +// m_fan_number is set to nearest fan number +double LArWheelCalculator::DistanceToTheNearestFan(GeoTrf::Vector3D &p, int & out_fan_number) const +{ + return m_fanCalcImpl->DistanceToTheNearestFan(p, out_fan_number); +} + +// Relays on the fact that each two fans have a fan of a different type between +// them. +// Affects m_fan_number. +std::pair<int, int> LArWheelCalculator::GetPhiGapAndSide(const GeoTrf::Vector3D &p) const +{ + return m_fanCalcImpl->GetPhiGapAndSide(p); +} + +// Represents aproximate, probably underestimate, distance to the +// neutral fibre of the vertical fan. Sign of return value means +// side of the fan; negative - lower phi. +// +// Uses m_fan_number to compute sagging. +double LArWheelCalculator::DistanceToTheNeutralFibre(const GeoTrf::Vector3D& P, int fan_number) const +{ + return m_distanceCalcImpl->DistanceToTheNeutralFibre(P, fan_number); +} + +GeoTrf::Vector3D LArWheelCalculator::NearestPointOnNeutralFibre(const GeoTrf::Vector3D &P, int fan_number) const +{ + return m_distanceCalcImpl->NearestPointOnNeutralFibre(P, fan_number); +} + +std::vector<double> LArWheelCalculator::NearestPointOnNeutralFibre_asVector(const GeoTrf::Vector3D &p, int fan_number) const +{ + GeoTrf::Vector3D np = NearestPointOnNeutralFibre(p, fan_number); + return std::vector<double> { np.x(), np.y(), np.z() }; +} + +/* +input is in local fan's coordinate system +side: < 0 - lower phi + > 0 - greater phi + = 0 - neutral fibre +*/ +double LArWheelCalculator::AmplitudeOfSurface(const GeoTrf::Vector3D& P, int side, int fan_number) const +{ + return m_distanceCalcImpl->AmplitudeOfSurface(P, side, fan_number); +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx new file mode 100644 index 0000000000000000000000000000000000000000..fad07f866cff5a2efb1557e2c60d5708e2a6602d --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.cxx @@ -0,0 +1,27 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + + +#include "DistanceCalculatorFactory.h" + +#include "DistanceCalculatorSaggingOff.h" +#include "DistanceCalculatorSaggingOn.h" + +namespace LArWheelCalculator_Impl +{ + + IDistanceCalculator* DistanceCalculatorFactory::Create(const std::string & sagging_opt, + LArWheelCalculator* lwc) + { + // the same condition is in LArWheelCalculator constructor + bool SaggingOn = (sagging_opt != "" && sagging_opt != "off")? true: false; + + if (SaggingOn) { + return new DistanceCalculatorSaggingOn(sagging_opt, lwc); + } else { + return new DistanceCalculatorSaggingOff(lwc); + } + } + +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.h new file mode 100644 index 0000000000000000000000000000000000000000..7fd5a6d39c71b30b603f7295ec0dc41b59e6260d --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorFactory.h @@ -0,0 +1,30 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_DistanceCalculatorFactory_H__ +#define __LArWheelCalculator_Impl_DistanceCalculatorFactory_H__ + +// DistanceCalculator factory +// calculator creation depends on sagging mode + +#include <string> +#include "IDistanceCalculator.h" + +class LArWheelCalculator; + +namespace LArWheelCalculator_Impl +{ + /// @todo Why is this a class??? + class DistanceCalculatorFactory + { + public: + static IDistanceCalculator* Create(const std::string & sagging_opt, + LArWheelCalculator* lwc + /*,IRDBAccessSvc* rdbAccess, + const DecodeVersionKey & larVersionKey*/); + }; + +} + +#endif // __LArWheelCalculator_Impl_DistanceCalculatorFactory_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx new file mode 100644 index 0000000000000000000000000000000000000000..aea52698d95b540658eab7bf36bc04a5499d838c --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.cxx @@ -0,0 +1,579 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#include "DistanceCalculatorSaggingOff.h" +#include "GeoSpecialShapes/LArWheelCalculator.h" +#include "GeoModelKernel/GeoDefinitions.h" + +#include<cassert> + +//#define LWC_PARAM_ANGLE + +#ifdef LWC_PARAM_ANGLE +#include <CxxUtils/sincos.h> +#endif + +#include<signal.h> + +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits + +namespace LArWheelCalculator_Impl +{ DistanceCalculatorSaggingOff::DistanceCalculatorSaggingOff(LArWheelCalculator* c) + : m_lwc(c) + { + m_EndQuarterWave = lwc()->m_ActiveLength - lwc()->m_QuarterWaveLength; + } + +#ifndef LARWC_DTNF_NEW + double DistanceCalculatorSaggingOff::DistanceToTheNeutralFibre(const GeoTrf::Vector3D& P, int /*fan_number*/) const +#else + double DistanceCalculatorSaggingOff::DistanceToTheNeutralFibre_ref(const GeoTrf::Vector3D& P, int /*fan_number*/) const +#endif + { + assert(P.y() > 0.); + double distance = 0.; + double z = P.z() - lwc()->m_StraightStartSection; + double x = P.x(); + +#ifdef LWC_PARAM_ANGLE //old variant + const double alpha = lwc()->parameterized_slant_angle(P.y()); + //double cos_a, sin_a; + //::sincos(alpha, &sin_a, &cos_a); + CxxUtils::sincos scalpha(alpha); + const double cos_a = scalpha.cs, sin_a = scalpha.sn; +#else // parameterized sine + double cos_a, sin_a; + lwc()->parameterized_sincos(P.y(), sin_a, cos_a); +#endif + // determination of the nearest quarter-wave number + int nqwave = (z < 0.) ? 0 : int(z / lwc()->m_QuarterWaveLength); + //if(z < 0.) nqwave = 0; + //else nqwave = int(z / lwc()->m_QuarterWaveLength); + + bool begin_qw = false; + if((nqwave % 2) != 0){ + nqwave ++; + begin_qw = true; + } + + nqwave /= 2; + + // now nqwave is not the number of quarter-wave but the number of half-wave + // half-waves with last and zero numbers are not really half-waves but start + // and finish quarter-waves + // It means that half-wave number 1 begins after starting quarter-wave + if(nqwave != 0 && nqwave != lwc()->m_NumberOfHalfWaves){ // regular half-waves + z -= nqwave * lwc()->m_HalfWaveLength; + // there are some symmetries, so use them + if((nqwave % 2) == 0) x = -x; + if(begin_qw){ + z = -z; + x = -x; + } + // certain situation: rising slope of wave, z is positive + // rotate to prime-coordinate system (see description) + const double z_prime = z * cos_a + x * sin_a; + const double x_prime = x * cos_a - z * sin_a; + const double straight_part = (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + if(z_prime > straight_part){// fold region + const double dz = straight_part - z_prime; + const double dx = x_prime + lwc()->m_FanFoldRadius; + distance = sqrt(dz*dz + dx*dx) - lwc()->m_FanFoldRadius; + } else if(z_prime > -straight_part){ + distance = x_prime; // straight part of the quarter-wave + } else {// fold region + const double dz = straight_part + z_prime; + const double dx = x_prime - lwc()->m_FanFoldRadius; + distance = lwc()->m_FanFoldRadius - sqrt(dz*dz + dx*dx); + } + // set correct sign for result + if(!begin_qw) distance = -distance; + if((nqwave % 2) == 0) distance = -distance; + + } else { // start and finish quarter-waves + if(nqwave == 0) { // start quarter-wave + x = - x; + } else { // finish quarter-wave + z = lwc()->m_ActiveLength - z; + } + + const double tan_beta = sin_a/(1.0 + cos_a); //tan(alpha * 0.5); + const double local_straight_section = lwc()->m_FanFoldRadius * tan_beta; + if( z < - local_straight_section && + ( x < lwc()->m_FanFoldRadius || + x < - lwc()->m_StraightStartSection * z / local_straight_section / tan_beta ) ) + { + distance = - x; + } + else { + const double z_prime = z * cos_a + x * sin_a; + const double x_prime = x * cos_a - z * sin_a; + if (z_prime < local_straight_section) { // start fold region + const double dz = local_straight_section - z_prime; + const double dx = x_prime - lwc()->m_FanFoldRadius; + distance = sqrt(dz*dz + dx*dx) - lwc()->m_FanFoldRadius; + } else { + const double straight_part = (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + if (z_prime <= straight_part) { // straight part of quarter-wave + distance = - x_prime; + } else { // regular fold region of the quarter-wave + const double dz = straight_part - z_prime; + const double dx = x_prime + lwc()->m_FanFoldRadius; + distance = lwc()->m_FanFoldRadius - sqrt(dz*dz + dx*dx); + } + } + } + // set correct sign + if (nqwave == 0) distance = -distance; + } +#ifdef HARDDEBUG + double dd = DistanceToTheNeutralFibre_ref(P); + if(fabs(dd - distance) > 0.000001){ + //static int cnt = 0; + std::cout << "DTNF MISMATCH " << this << " " << P << " " + << dd << " vs " << distance << std::endl; + //cnt ++; + //if(cnt > 100) exit(0); + } +#endif + return distance; + } + + // IMPROVED PERFORMANCE +#ifdef LARWC_DTNF_NEW + double DistanceCalculatorSaggingOff::DistanceToTheNeutralFibre(const GeoTrf::Vector3D& P, int /*fan_number*/) const +#else + double DistanceCalculatorSaggingOff::DistanceToTheNeutralFibre_ref(const GeoTrf::Vector3D& P, int /*fan_number*/) const +#endif + { + double z = P.z() - lwc()->m_StraightStartSection; + double x = P.x(); + +#ifdef LWC_PARAM_ANGLE //old variant + const double alpha = lwc()->parameterized_slant_angle(P.y()); + CxxUtils::sincos scalpha(alpha); + double cos_a = scalpha.cs, sin_a = scalpha.sn; +#else // parameterized sine + double cos_a, sin_a; + lwc()->parameterized_sincos(P.y(), sin_a, cos_a); +#endif + + bool sqw = false; + if(z > lwc()->m_QuarterWaveLength){ + if(z < m_EndQuarterWave){ // regular half-waves + unsigned int nhwave = (unsigned int)(z / lwc()->m_HalfWaveLength + 0.5); + z -= lwc()->m_HalfWaveLength * nhwave; + const double straight_part = (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + nhwave &= 1U; + if(nhwave == 0) sin_a = - sin_a; + double z_prime = z * cos_a + x * sin_a; + const double x_prime = z * sin_a - x * cos_a; + if(z_prime > straight_part){ // up fold region + const double dz = z_prime - straight_part; + if(nhwave == 0){ + const double dx = x_prime + lwc()->m_FanFoldRadius; + return sqrt(dz*dz + dx*dx) - lwc()->m_FanFoldRadius; + } else { + const double dx = x_prime - lwc()->m_FanFoldRadius; + return lwc()->m_FanFoldRadius - sqrt(dz*dz + dx*dx); + } + } + z_prime += straight_part; + if(z_prime > 0){ + return x_prime; // straight part of the quarter-wave + } else { // low fold region + const double &dz = z_prime; + if(nhwave == 0){ + const double dx = x_prime - lwc()->m_FanFoldRadius; + return lwc()->m_FanFoldRadius - sqrt(dz*dz + dx*dx); + } else { + const double dx = x_prime + lwc()->m_FanFoldRadius; + return sqrt(dz*dz + dx*dx) - lwc()->m_FanFoldRadius; + } + } + } else { // ending quarter-wave + z = lwc()->m_ActiveLength - z; + } + } else { // starting quarter-wave + x = - x; + sqw = true; + } + + // start and finish quarter-waves + const double tan_beta = sin_a/(1.0 + cos_a); //tan(alpha * 0.5); + const double local_straight_section = lwc()->m_FanFoldRadius * tan_beta; + if(z < - local_straight_section && + ( x < lwc()->m_FanFoldRadius || + x < - lwc()->m_StraightStartSection * z / local_straight_section / tan_beta )) + { + return sqw? x: (-x); + } + else { + const double z_prime = z * cos_a + x * sin_a; + const double x_prime = x * cos_a - z * sin_a; + if (z_prime < local_straight_section) { // start fold region + const double dz = local_straight_section - z_prime; + const double dx = x_prime - lwc()->m_FanFoldRadius; + if(sqw) return lwc()->m_FanFoldRadius - sqrt(dz*dz + dx*dx); + else return sqrt(dz*dz + dx*dx) - lwc()->m_FanFoldRadius; + } else { + const double straight_part = + (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + if (z_prime <= straight_part) { // straight part of quarter-wave + return sqw? x_prime: (-x_prime); + } else { // regular fold region of the quarter-wave + const double dz = straight_part - z_prime; + const double dx = x_prime + lwc()->m_FanFoldRadius; + if(sqw) return sqrt(dz*dz + dx*dx) - lwc()->m_FanFoldRadius; + else return lwc()->m_FanFoldRadius - sqrt(dz*dz + dx*dx); + } + } + } + // ??? + std::abort(); + } + + GeoTrf::Vector3D DistanceCalculatorSaggingOff::NearestPointOnNeutralFibre(const GeoTrf::Vector3D &P, int /*fan_number*/) const + { + GeoTrf::Vector3D result; + double z = P.z() - lwc()->m_StraightStartSection; + double x = P.x(); + double y = P.y(); + +#ifdef LWC_PARAM_ANGLE //old variant + const double alpha = lwc()->parameterized_slant_angle(P.y()); + CxxUtils::sincos scalpha(alpha); + const double cos_a = scalpha.cs, sin_a = scalpha.sn; +#else // parameterized sine + double cos_a, sin_a; + lwc()->parameterized_sincos(P.y(), sin_a, cos_a); +#endif + + int nqwave; + if(z < 0.) nqwave = 0; + else nqwave = int(z / lwc()->m_QuarterWaveLength); + bool begin_qw = false; + if((nqwave % 2) != 0){ + nqwave ++; + begin_qw = true; + } + nqwave /= 2; + if(nqwave != 0 && nqwave != lwc()->m_NumberOfHalfWaves){ + z -= nqwave * lwc()->m_HalfWaveLength; + if((nqwave % 2) == 0) x = -x; + if(begin_qw){ + z = -z; + x = -x; + } + const double z_prime = z * cos_a + x * sin_a; + const double x_prime = x * cos_a - z * sin_a; + const double straight_part = (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + const double dz = straight_part - z_prime; + if (dz > 0) { + //result.set(0., y, z_prime); + result(0)=0.; + result(1)=y; + result(2)=z_prime; + } + + else { + double a = atan(fabs(dz / (x_prime + lwc()->m_FanFoldRadius))); + //result.set(lwc()->m_FanFoldRadius * (cos(a) - 1), y, straight_part + lwc()->m_FanFoldRadius * sin(a)); + result(0) = lwc()->m_FanFoldRadius * (cos(a) - 1); + result(1) = y; + result(2) = straight_part + lwc()->m_FanFoldRadius * sin(a); + } + //result.rotateY(asin(sin_a)); + result = GeoTrf::RotateY3D (asin(sin_a))* result; + if(begin_qw){ + //result.setX(-result.x()); + //result.setZ(-result.z()); + result(0) = - result(0) ; + result(2) = - result(2) ; + } + if((nqwave % 2) == 0) + //result.setX(-result.x()); + result(0) = - result(0) ; + //result.setZ(result.z() + nqwave * lwc()->m_HalfWaveLength); + result(2) = result(2) + nqwave * lwc()->m_HalfWaveLength ; + } else { + if(nqwave == 0) x = -x; + else z = lwc()->m_ActiveLength - z; + const double tan_beta = sin_a/(1.0+cos_a); //tan(alpha * 0.5); + const double local_straight_section = lwc()->m_FanFoldRadius * tan_beta; + if(z < - local_straight_section && + ( x < lwc()->m_FanFoldRadius || + x < - lwc()->m_StraightStartSection * z / local_straight_section / tan_beta)) + { + //result.set(0., y, z); + result(0) = 0.; + result(1) = y; + result(2) = z; + } + else { + const double z_prime = z * cos_a + x * sin_a; + const double x_prime = x * cos_a - z * sin_a; + if(z_prime < local_straight_section) { + double a = fabs(atan((local_straight_section - z_prime) / (x_prime - lwc()->m_FanFoldRadius))); + + //result.set(lwc()->m_FanFoldRadius * (1 - cos(a)), y, local_straight_section - lwc()->m_FanFoldRadius * sin(a)); + result(0) = lwc()->m_FanFoldRadius * (1 - cos(a)); + result(1) = y; + result(2) = local_straight_section - lwc()->m_FanFoldRadius * sin(a); + + } else { + double straight_part = (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + if(z_prime <= straight_part) { + //result.set(0., y, z_prime); + result(0) = 0.; + result(1) = y; + result(2) = z_prime; + + } else { + double a = fabs(atan((straight_part - z_prime) / (x_prime + lwc()->m_FanFoldRadius)) ); + //result.set(lwc()->m_FanFoldRadius * (cos(a) - 1), y, straight_part + lwc()->m_FanFoldRadius * sin(a)); + result(0) = lwc()->m_FanFoldRadius * (cos(a) - 1); + result(1) = y; + result(2) = straight_part + lwc()->m_FanFoldRadius * sin(a); + } + } + //result.rotateY(asin(sin_a)); + result = GeoTrf::RotateY3D (asin(sin_a))* result; + } + if(nqwave != 0){ + //result.setZ(lwc()->m_ActiveLength - result.z()); + result(2) = lwc()->m_ActiveLength - result(2); + } else { + //result.setX(-result.x()); + result(0) = - result(0); + } + } + //result.setZ(result.z() + lwc()->m_StraightStartSection); + result(2) = result(2)+ lwc()->m_StraightStartSection; + return result; + } + + // IMPROVED VERSION + GeoTrf::Vector3D DistanceCalculatorSaggingOff::NearestPointOnNeutralFibre_ref(const GeoTrf::Vector3D &P, int /*fan_number*/) const + { + GeoTrf::Vector3D result; + double z = P.z() - lwc()->m_StraightStartSection; + double x = P.x(); + double y = P.y(); + +#ifdef LWC_PARAM_ANGLE //old variant + const double alpha = lwc()->parameterized_slant_angle(P.y()); + CxxUtils::sincos scalpha(alpha); + double cos_a = scalpha.cs, sin_a = scalpha.sn; +#else // parameterized sine + double cos_a, sin_a; + lwc()->parameterized_sincos(P.y(), sin_a, cos_a); +#endif + + bool sqw = false; + if(z > lwc()->m_QuarterWaveLength){ + if(z < m_EndQuarterWave){ // regular half-waves + unsigned int nhwave = (unsigned int)(z / lwc()->m_HalfWaveLength + 0.5); + const double zshift = lwc()->m_HalfWaveLength * nhwave; + z -= zshift; + const double straight_part = + (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + nhwave &= 1U; + if(nhwave == 0) sin_a = - sin_a; + const double z_prime = z * cos_a + x * sin_a; + if(z_prime > straight_part){ // up fold + const double x_prime = x * cos_a - z * sin_a; + const double dz = straight_part - z_prime; + double a1 = atan(fabs(dz / (x_prime + lwc()->m_FanFoldRadius))); + const double x1 = lwc()->m_FanFoldRadius * (cos(a1) - 1.); + const double z1 = straight_part + lwc()->m_FanFoldRadius * sin(a1); + //result.set(x1*cos_a - z1*sin_a, y, z1*cos_a + z1*sin_a); + result(0) = x1*cos_a - z1*sin_a; + result(1) = y; + result(2) = z1*cos_a + z1*sin_a; + return result; + } else if(z_prime > -straight_part){ // straight part + //result.set(-z_prime * sin_a, y, z_prime*cos_a + zshift); + result(0) = -z_prime * sin_a; + result(1) = y; + result(2) = z_prime*cos_a + zshift; + return result; + } else { // low fold + const double x_prime = x * cos_a - z * sin_a; + const double dz = straight_part + z_prime; + double a1 = atan(fabs(dz / (x_prime + lwc()->m_FanFoldRadius))); + const double x1 = lwc()->m_FanFoldRadius * (cos(a1) - 1.); + const double z1 = straight_part + lwc()->m_FanFoldRadius * sin(a1); + //result.set(x1*cos_a - z1*sin_a, y, z1*cos_a + z1*sin_a); + result(0) = x1*cos_a - z1*sin_a; + result(1) = y; + result(2) = z1*cos_a + z1*sin_a; + return result; + } + } else { // ending quarter-wave + z = lwc()->m_ActiveLength - z; + } + } else { // starting quarter-wave + x = - x; + sqw = true; + } + + // start and finish quarter-waves + const double tan_beta = sin_a / (1.0 + cos_a); + const double local_straight_section = lwc()->m_FanFoldRadius * tan_beta; + if(z < - local_straight_section && + (x < lwc()->m_FanFoldRadius || + x < - lwc()->m_StraightStartSection * z / local_straight_section / tan_beta)) + { + //result.set(0., y, z); + result(0) = 0.; + result(1) = y ; + result(2) = z ; + } + else { + const double z_prime = z * cos_a + x * sin_a; + const double x_prime = x * cos_a - z * sin_a; + if(z_prime < local_straight_section) { + double a = fabs(atan((local_straight_section - z_prime) / (x_prime - lwc()->m_FanFoldRadius))); + //result.set(lwc()->m_FanFoldRadius * (1 - cos(a)), y, local_straight_section - lwc()->m_FanFoldRadius * sin(a)); + result(0) = lwc()->m_FanFoldRadius * (1 - cos(a)); + result(1) = y ; + result(2) = local_straight_section - lwc()->m_FanFoldRadius * sin(a) ; + } else { + double straight_part = (lwc()->m_QuarterWaveLength - lwc()->m_FanFoldRadius * sin_a) / cos_a; + if(z_prime <= straight_part) { + //result.set(0., y, z_prime); + result(0) = 0.; + result(1) = y ; + result(2) = z_prime; + } else { + double a = fabs(atan((straight_part - z_prime) / (x_prime + lwc()->m_FanFoldRadius)) ); + //result.set(lwc()->m_FanFoldRadius * (cos(a) - 1), y, straight_part + lwc()->m_FanFoldRadius * sin(a)); + result(0) = lwc()->m_FanFoldRadius * (cos(a) - 1); + result(1) = y ; + result(2) = straight_part + lwc()->m_FanFoldRadius * sin(a) ; + } + } + //result.rotateY(asin(sin_a)); + result = GeoTrf::RotateY3D (asin(sin_a)) * result; + } + if(sqw) + //result.setX(-result.x()); + result(0) = - result(0); + else + //result.setZ(lwc()->m_ActiveLength - result.z()); + result(2) = lwc()->m_ActiveLength - result(2); + //result.setZ(result.z() + lwc()->m_StraightStartSection); + result(2) = result(2) + lwc()->m_StraightStartSection ; + return result; + } + + /* + input is in local fan's coordinate system + side: < 0 - lower phi + > 0 - greater phi + = 0 - neutral fibre + */ + double DistanceCalculatorSaggingOff::AmplitudeOfSurface(const GeoTrf::Vector3D& P, int side, int /*fan_number*/) const + { + double result = 0.; + double rho = lwc()->m_FanFoldRadius; + double z = P.z() - lwc()->m_StraightStartSection; + +#ifdef LWC_PARAM_ANGLE //old variant + const double alpha = lwc()->parameterized_slant_angle(P.y()); + //double cos_a, sin_a; + //::sincos(alpha, &sin_a, &cos_a); + CxxUtils::sincos scalpha(alpha); + const double cos_a = scalpha.cs, sin_a = scalpha.sn; + // parameterized sine +#else + double cos_a, sin_a; + lwc()->parameterized_sincos(P.y(), sin_a, cos_a); +#endif + + // determination of the nearest quarter-wave number + int nqwave; + if(z < 0.) nqwave = 0; + else nqwave = int(z / lwc()->m_QuarterWaveLength); + bool begin_qw = false; + if((nqwave % 2) != 0){ + nqwave ++; + begin_qw = true; + } + nqwave /= 2; + // now nqwave is not the number of quarter-wave but the number of half-wave + // half-waves with last and zero numbers are not really half-waves but start + // and finish quarter-waves + // It means that half-wave number 1 begins after starting quarter-wave + if(nqwave != 0 && nqwave != lwc()->m_NumberOfHalfWaves){ // regular half-waves + z -= nqwave * lwc()->m_HalfWaveLength; + if(begin_qw) z = -z; + double dz = lwc()->m_QuarterWaveLength - z; + + int local_side = 1; + if((nqwave % 2) == 0){ + if(begin_qw) local_side = -1; + } else { + if(!begin_qw) local_side = -1; + } + + rho += lwc()->m_FanHalfThickness * local_side * side; + + if(dz >= rho * sin_a){ + result = z * sin_a / cos_a; // straight part of the quarter-wave + } else { // fold region + result = (lwc()->m_QuarterWaveLength * sin_a - rho) / cos_a + + sqrt(rho * rho - dz * dz); + } + result *= -local_side; + if(side < 0) result += lwc()->m_FanHalfThickness / cos_a; + else if(side > 0) result -= lwc()->m_FanHalfThickness / cos_a; + + } else { // start and finish quarter-waves + int local_side = 1; + if(nqwave == 0) { // start quarter-wave + local_side = -1; + } else { // finish quarter-wave + z = lwc()->m_ActiveLength - z; + } + + const double rho1i = lwc()->m_FanFoldRadius; + const double tan_beta = sin_a/(1.0+cos_a); //tan(alpha * 0.5); + const double min_local_fold_region = rho1i * tan_beta; + + if(z <= - min_local_fold_region){ + result = - side * lwc()->m_FanHalfThickness; + } else { + const double rho1 = rho1i + lwc()->m_FanHalfThickness * side * local_side; + + const double max_local_fold_region = rho1 * sin_a - min_local_fold_region; + //const double max_local_fold_region = rho1 * tan_beta * (1. + cos_a) - min_local_fold_region; + if(z < max_local_fold_region){ // start fold region + z += min_local_fold_region; + result = rho1 - sqrt(rho1 * rho1 - z * z); + if(nqwave == 0) result = -result; + if(side < 0) result += lwc()->m_FanHalfThickness; + else if(side > 0) result -= lwc()->m_FanHalfThickness; + } else { + rho -= lwc()->m_FanHalfThickness * local_side * side; + const double dz = lwc()->m_QuarterWaveLength - z; + if(dz >= rho * sin_a){ + result = z * sin_a / cos_a; // straight part of the quarter-wave + } else { // regular fold region + result = (lwc()->m_QuarterWaveLength * sin_a - rho) / cos_a + + sqrt(rho * rho - dz * dz); + } + if(nqwave == 0) result = -result; + if(side < 0) result += lwc()->m_FanHalfThickness / cos_a; + else if(side > 0) result -= lwc()->m_FanHalfThickness / cos_a; + } + } + } + return result; + } + +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.h new file mode 100644 index 0000000000000000000000000000000000000000..fe1979956eb263b2cbee8b47991ad9637122c82e --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOff.h @@ -0,0 +1,50 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_DistanceCalculatorSaggingOff_H__ +#define __LArWheelCalculator_Impl_DistanceCalculatorSaggingOff_H__ + + +#include "IDistanceCalculator.h" +#include "GeoModelKernel/GeoDefinitions.h" + +class LArWheelCalculator; + +namespace LArWheelCalculator_Impl +{ + + /// @class DistanceCalculatorSaggingOff + /// @brief Implements details of distance calculation to parts of the + /// LAr endcap without sagging corrections. + /// + class DistanceCalculatorSaggingOff : public IDistanceCalculator + { + + public: + + /// Constructor + DistanceCalculatorSaggingOff(LArWheelCalculator* lwc); + + /// @name Geometry methods + /// @{ + virtual double DistanceToTheNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const; + virtual double DistanceToTheNeutralFibre_ref(const GeoTrf::Vector3D &p, int fan_number) const; + virtual GeoTrf::Vector3D NearestPointOnNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const; + virtual GeoTrf::Vector3D NearestPointOnNeutralFibre_ref(const GeoTrf::Vector3D &p, int fan_number) const; + virtual double AmplitudeOfSurface(const GeoTrf::Vector3D& P, int side, int fan_number) const; + /// @} + + /// Return the calculator: + inline const LArWheelCalculator *lwc() const { return m_lwc; }; + + private: + + LArWheelCalculator* m_lwc; + double m_EndQuarterWave; + + }; + +} + +#endif // __LArWheelCalculator_Impl_IDistanceCalculatorOff_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx new file mode 100644 index 0000000000000000000000000000000000000000..7e7c1c923f2d5a2a9b71d7a83268651e2ecb2b82 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.cxx @@ -0,0 +1,175 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#include "DistanceCalculatorSaggingOn.h" +#include "GeoModelKernel/GeoDefinitions.h" + +#include <vector> +#include <stdexcept> + +#include "GeoSpecialShapes/LArWheelCalculator.h" + +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits + + +namespace LArWheelCalculator_Impl +{ + DistanceCalculatorSaggingOn::DistanceCalculatorSaggingOn(const std::string& saggingOptions, + LArWheelCalculator* lwc/*, + IRDBAccessSvc* rdbAccess, + const DecodeVersionKey& larVersionKey*/) + //: parent(lwc, rdbAccess, larVersionKey), + : parent(lwc), + m_saggingOptions(saggingOptions) + { + // load sagging parameters + /*RDBParamReader rdbr(rdbAccess); + rdbr. + data( "EmecMagicNumbers", larVersionKey.tag(), larVersionKey.node() ). + fallback_to( "EmecMagicNumbers","EMECMagigNumbers-00" ). + param(lwc()->m_ActiveLength, "ACTIVELENGTH", mm). + param(lwc()->m_dWRPtoFrontFace, "REFTOACTIVE", mm). + param(lwc()->m_StraightStartSection, "STRAIGHTSTARTSECTION", mm) + ;*/ + init_sagging_parameters(); + } + + void DistanceCalculatorSaggingOn::init_sagging_parameters() + { + // Get pointer to the message service + //ISvcLocator* svcLocator = Gaudi::svcLocator(); + //IMessageSvc* msgSvc; + //StatusCode status = svcLocator->service("MessageSvc", msgSvc); + //if(status.isFailure()){ + // throw std::runtime_error("LArWheelCalculator constructor: \ + // cannot initialze message service"); + //} + //MsgStream msg(msgSvc, "LArWheelCalculator_Impl::DistanceCalculatorSaggingOn"); + + std::string sagging_opt_value = m_saggingOptions; + m_sagging_parameter.resize (lwc()->m_NumberOfFans, std::vector<double> (5, 0.)); + // if(m_SaggingOn) { + if(sagging_opt_value.substr(0, 4) == "file"){ + std::string sag_file = sagging_opt_value.substr(5); + //msg << MSG::DEBUG + // << "geting sagging parameters from file " + // << sag_file << " ..." << endmsg; + FILE *F = fopen(sag_file.c_str(), "r"); + if(F == 0){ + // msg << MSG::FATAL + // << "cannot open EMEC sagging parameters file " + // << sag_file + // << endmsg; + throw std::runtime_error("LArWheelCalculator: read sagging parameters from file"); + } + int s, w, t, n; + double p0, p1, p2, p3, p4; + while(!feof(F) && + fscanf(F, "%80d %80d %80d %80d %80le %80le %80le %80le %80le", + &s, &w, &t, &n, &p0, &p1, &p2, &p3, &p4) == 9) + { + if(s == lwc()->m_AtlasZside && + ((w == 0 && lwc()->m_isInner) || (w == 1 && !lwc()->m_isInner)) && + ((t == 0 && !lwc()->m_isElectrode) || (t == 1 && lwc()->m_isElectrode)) && + (n >= 0 && n < lwc()->m_NumberOfFans)) + { + m_sagging_parameter[n][0] = p0; + m_sagging_parameter[n][1] = p1; + m_sagging_parameter[n][2] = p2; + m_sagging_parameter[n][3] = p3; + m_sagging_parameter[n][4] = p4; + //msg << MSG::VERBOSE + // << "sagging for " << s << " " << w << " " << t + // << " " << n << ": " << p0 << " " << p1 << " " + // << p2 << " " << p3 << endmsg; + } + } + fclose(F); + } else { + double a, b, c, d; + if(sscanf(sagging_opt_value.c_str(), "%80le %80le %80le %80le", &a, &b, &c, &d) != 4){ + //msg << MSG::ERROR + // << "wrong value(s) " + // << " for EMEC sagging parameters: " + // << sagging_opt_value << ", defaults are used" << endmsg; + } else { + for(int j = 0; j < lwc()->m_NumberOfFans; j ++){ + if(lwc()->m_isInner){ + m_sagging_parameter[j][1] = a; + m_sagging_parameter[j][0] = b * SYSTEM_OF_UNITS::mm; + } else { + m_sagging_parameter[j][1] = c; + m_sagging_parameter[j][0] = d * SYSTEM_OF_UNITS::mm; + } + } + } + } + // } + //msg << MSG::INFO << "Sagging parameters : " << m_sagging_parameter[0][0] << " " << m_sagging_parameter[0][1] << std::endl + // << "Sagging parameters : " << m_sagging_parameter[1][0] << " " << m_sagging_parameter[1][1] << endmsg; + } + + // Represents aproximate, probably underestimate, distance to the + // neutral fibre of the vertical fan. Sign of return value means + // side of the fan; negative - lower phi. + // + // Uses m_fan_number to compute sagging. + double DistanceCalculatorSaggingOn::DistanceToTheNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const { + GeoTrf::Vector3D sagging_corrected( p.x()+get_sagging(p, fan_number), p.y(), p.z() ); + return parent::DistanceToTheNeutralFibre(sagging_corrected, fan_number); + } + + GeoTrf::Vector3D DistanceCalculatorSaggingOn::NearestPointOnNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const { + GeoTrf::Vector3D sagging_corrected( p.x()+get_sagging(p, fan_number), p.y(), p.z() ); + return parent::NearestPointOnNeutralFibre(sagging_corrected, fan_number); + } + + double DistanceCalculatorSaggingOn::AmplitudeOfSurface(const GeoTrf::Vector3D& p, int side, int fan_number) const { + return parent::AmplitudeOfSurface(p, side, fan_number) - get_sagging(p, fan_number); + } + + + // the function uses m_fan_number for phi-dependent sagging computation + double DistanceCalculatorSaggingOn::get_sagging(const GeoTrf::Vector3D &P, int fan_number) const { +#ifdef HARDDEBUG + std::cout << "get_sagging: MFN = " << fan_number << std::endl; +#endif + double dx = P.z() / lwc()->m_HalfWheelThickness - 1.; + dx *= dx; + dx = 1. - dx; + //dx *= SaggingAmplitude * sin(FanStepOnPhi * m_fan_number + ZeroFanPhi); + //int n = m_fan_number; + //if(n < 0) n += m_NumberOfFans; + //n += m_ZeroGapNumber; + //if(n >= m_NumberOfFans) n -= m_NumberOfFans; + //const std::vector<double>& sp = m_sagging_parameter[n]; + const std::vector<double>& sp = m_sagging_parameter[fan_number]; + + //double R = P.r() / SYSTEM_OF_UNITS::mm; + double R = std::sqrt(P(0)*P(0) + P(1)*P(1) + P(2)*P(2)) / SYSTEM_OF_UNITS::mm; + double r = R; + double result = sp[0]; + result += R * sp[1]; + R *= r; + result += R * sp[2]; + R *= r; + result += R * sp[3]; + R *= r; + result += R * sp[4]; + +#ifdef HARDDEBUG + /*printf("get_sagging: (%6.3f, %6.3f, %6.3f) %6.3f; MFN %4d;" + "n %3d; sp %6.4f %6.4f; dx %6.3f; %.6f\n", P.x()/mm, P.y()/mm, P.z()/mm, + r, m_fan_number, n, sp[0], sp[1], dx, result*dx);*/ + printf("get_sagging: (%6.3f, %6.3f, %6.3f) %6.3f;" + " sp %6.4f %6.4f; dx %6.3f; %.6f\n", P.x()/ SYSTEM_OF_UNITS::mm, P.y()/ SYSTEM_OF_UNITS::mm, P.z()/ SYSTEM_OF_UNITS::mm, + r, sp[0], sp[1], dx, result*dx); +#endif //HARDDEBUG + + return result * dx; + } + +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.h new file mode 100644 index 0000000000000000000000000000000000000000..31ab47d7fa9623fcb7691a77f73289ec01073143 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/DistanceCalculatorSaggingOn.h @@ -0,0 +1,51 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_DistanceCalculatorSaggingOn_H__ +#define __LArWheelCalculator_Impl_DistanceCalculatorSaggingOn_H__ + +#include "DistanceCalculatorSaggingOff.h" +#include "GeoModelKernel/GeoDefinitions.h" +#include <vector> + +class LArWheelCalculator; + +namespace LArWheelCalculator_Impl +{ + + /// @class DistanceCalculatorSaggingOn + /// @brief Implements details of distance calculation to parts of the + /// LAr endcap with sagging taken into account. + /// + class DistanceCalculatorSaggingOn : public DistanceCalculatorSaggingOff + { + + public: + + typedef DistanceCalculatorSaggingOff parent; + + /// Constructor + DistanceCalculatorSaggingOn(const std::string& saggingOptions, + LArWheelCalculator* lwc); + + /// @name Geometry methods + /// @{ + virtual double DistanceToTheNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const; + virtual GeoTrf::Vector3D NearestPointOnNeutralFibre(const GeoTrf::Vector3D &p, int fan_number) const; + virtual double AmplitudeOfSurface(const GeoTrf::Vector3D& P, int side, int fan_number) const; + /// @} + + private: + + double get_sagging(const GeoTrf::Vector3D &P, int fan_number) const; + void init_sagging_parameters(); + + std::vector<std::vector<double> > m_sagging_parameter; + std::string m_saggingOptions; + + }; + +} + +#endif // __LArWheelCalculator_Impl_IDistanceCalculatorOn_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx b/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx new file mode 100644 index 0000000000000000000000000000000000000000..be80f09cab5e9218fa89e1943862b92583b8df19 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.cxx @@ -0,0 +1,26 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + + +#include "FanCalculatorFactory.h" +#include "ModuleFanCalculator.h" +#include "WheelFanCalculator.h" + +namespace LArWheelCalculator_Impl +{ + + IFanCalculator* FanCalculatorFactory::Create(bool isSaggingOn, bool isModule, + LArWheelCalculator* lwc) + { + if (isModule) { + return new ModuleFanCalculator(lwc); + } + if (isSaggingOn) { + return new WheelFanCalculator<SaggingOn_t>(lwc); + } else { + return new WheelFanCalculator<SaggingOff_t>(lwc); + } + } + +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.h new file mode 100644 index 0000000000000000000000000000000000000000..e4f8f377c4e8ee5ee6395020a8a9c4fe30c57351 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/FanCalculatorFactory.h @@ -0,0 +1,30 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_FanCalculatorFactory_H__ +#define __LArWheelCalculator_Impl_FanCalculatorFactory_H__ + + +#include "IFanCalculator.h" + +class LArWheelCalculator; + +namespace LArWheelCalculator_Impl +{ + + /// @class FanCalculatorFactory + /// @brief A factory for FanCalculators + /// + /// Calculator creation depends on sagging mode and wheel/module calo. + /// + class FanCalculatorFactory + { + public: + static IFanCalculator* Create(bool isSaggingOn, bool isModule, + LArWheelCalculator* lwc); + }; + +} + +#endif // __LArWheelCalculator_Impl_FanCalculatorFactory_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/IDistanceCalculator.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/IDistanceCalculator.h new file mode 100644 index 0000000000000000000000000000000000000000..bb553a6901f83d2365a58a6d1d90cf9d2883e9ed --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/IDistanceCalculator.h @@ -0,0 +1,43 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_IDistanceCalculator_H__ +#define __LArWheelCalculator_Impl_IDistanceCalculator_H__ + +#include "GeoModelKernel/GeoDefinitions.h" + +namespace LArWheelCalculator_Impl +{ + + /// @class IDistanceCalculator + /// Abstract interface for calculator classes that handle distance + /// calculation to parts of the LAr endcap. + /// + class IDistanceCalculator + { + + public: + + /// Virtual destructor + virtual ~IDistanceCalculator() {}; + + /// @name Geometry methods + /// @{ + + virtual double DistanceToTheNeutralFibre(const GeoTrf::Vector3D &p, + int fan_number) const = 0; + + virtual GeoTrf::Vector3D NearestPointOnNeutralFibre(const GeoTrf::Vector3D &p, + int fan_number) const = 0; + + virtual double AmplitudeOfSurface(const GeoTrf::Vector3D& p, int side, + int fan_number) const = 0; + + /// @} + + }; + +} + +#endif // __LArWheelCalculator_Impl_IDistanceCalculator_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/IFanCalculator.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/IFanCalculator.h new file mode 100644 index 0000000000000000000000000000000000000000..56f9e0612d7e95076fb32c49a6ed67f5d5886c8d --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/IFanCalculator.h @@ -0,0 +1,41 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_IFanCalculator_H__ +#define __LArWheelCalculator_Impl_IFanCalculator_H__ + +#include "GeoModelKernel/GeoDefinitions.h" + +namespace LArWheelCalculator_Impl +{ + + /// @class IFanCalculator + /// Abstract interface for fan calculator classes that handle distance + /// calculation to parts of the LAr endcap. + /// + class IFanCalculator + { + + public: + + /// Virtual destructor + virtual ~IFanCalculator() {}; + + /// @name Geometry methods + /// @{ + + virtual double DistanceToTheNearestFan(GeoTrf::Vector3D &p, + int & out_fan_number) const = 0; + + virtual int PhiGapNumberForWheel(int i) const = 0; + + virtual std::pair<int, int> GetPhiGapAndSide(const GeoTrf::Vector3D &p) const = 0; + + /// @} + + }; + +} + +#endif // __LArWheelCalculator_Impl_IFanCalculator_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx b/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx new file mode 100644 index 0000000000000000000000000000000000000000..6079e0cfe4b255667513ebbd479143b3463b781c --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.cxx @@ -0,0 +1,119 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#include "ModuleFanCalculator.h" + +#include "GeoSpecialShapes/LArWheelCalculator.h" +#include "GeoModelKernel/GeoDefinitions.h" + +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits + +#ifdef HARDDEBUG +#undef HARDDEBUG +#endif + +namespace LArWheelCalculator_Impl +{ + ModuleFanCalculator::ModuleFanCalculator(LArWheelCalculator* lwc) + : m_lwc(lwc) + { + } + + double ModuleFanCalculator::DistanceToTheNearestFan(GeoTrf::Vector3D &p, int & out_fan_number) const + { + //int fan_number = int((p.phi() - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi_ForDetNeaFan) / lwc()->m_FanStepOnPhi); + int fan_number = int((std::atan2(p(1),p(0)) - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi_ForDetNeaFan) / lwc()->m_FanStepOnPhi); + double angle = lwc()->m_FanStepOnPhi * fan_number + lwc()->m_ZeroFanPhi_ForDetNeaFan; +#ifdef HARDDEBUG + printf("DistanceToTheNearestFan: initial FN %4d\n", fan_number); +#endif + //p.rotateZ(-angle); + p=GeoTrf::RotateZ3D(-angle)*p; + + // determine search direction + double d0 = lwc()->DistanceToTheNeutralFibre(p, lwc()->adjust_fan_number(fan_number)); + double d1 = d0; + int delta = 1; + if(d0 < 0.) delta = -1; // search direction has been determined + angle = - lwc()->m_FanStepOnPhi * delta; + do { // search: + //p.rotateZ(angle); + p = GeoTrf::RotateZ3D(angle)*p; + fan_number += delta; + d1 = lwc()->DistanceToTheNeutralFibre(p, lwc()->adjust_fan_number(fan_number)); + } while(d0 * d1 > 0.); + // if signs of d1 and d0 are different, the point is between current pair + if(delta > 0) fan_number --; + + int adj_fan_number = fan_number; + if(adj_fan_number < lwc()->m_FirstFan) { + //p.rotateZ((adj_fan_number - lwc()->m_FirstFan) * lwc()->m_FanStepOnPhi); + p = GeoTrf::RotateZ3D((adj_fan_number - lwc()->m_FirstFan) * lwc()->m_FanStepOnPhi)*p; + //p.RotateZ3D((adj_fan_number - lwc()->m_FirstFan) * lwc()->m_FanStepOnPhi); + p = GeoTrf::RotateZ3D((adj_fan_number - lwc()->m_FirstFan) * lwc()->m_FanStepOnPhi)*p; + adj_fan_number = lwc()->m_FirstFan; + } else if(adj_fan_number >= lwc()->m_LastFan) { + //p.rotateZ((adj_fan_number - lwc()->m_LastFan + 1) * lwc()->m_FanStepOnPhi); + p = GeoTrf::RotateZ3D((adj_fan_number - lwc()->m_LastFan + 1) * lwc()->m_FanStepOnPhi)*p; + adj_fan_number = lwc()->m_LastFan - 1; + } + + //p.rotateZ(-0.5 * angle); + p = GeoTrf::RotateZ3D(-0.5 * angle)*p; + out_fan_number = adj_fan_number; + return lwc()->DistanceToTheNeutralFibre(p, adj_fan_number); + } + + int ModuleFanCalculator::PhiGapNumberForWheel(int i) const { + i += lwc()->m_ZeroGapNumber; + i -= lwc()->m_LastFan / 2; + if(i < 0) i += lwc()->m_NumberOfFans; + if(i >= lwc()->m_NumberOfFans) i -= lwc()->m_NumberOfFans; + return i; + } + + std::pair<int, int> ModuleFanCalculator::GetPhiGapAndSide(const GeoTrf::Vector3D &p) const + { + // Note: this object was changed from static to local for thread-safety. + // If this is found to be too costly we can re-evaluate. + GeoTrf::Vector3D p1 = p; + //int fan_number = int((p.phi() - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi) / lwc()->m_FanStepOnPhi); + int fan_number = int((std::atan2(p(1),p(0)) - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi) / lwc()->m_FanStepOnPhi); + + double angle = lwc()->m_FanStepOnPhi * fan_number + lwc()->m_ZeroFanPhi; + //p1.rotateZ(-angle); + p1 =GeoTrf::RotateZ3D(-angle) * p1; + + double d0 = lwc()->DistanceToTheNeutralFibre(p1, lwc()->adjust_fan_number(fan_number)); + double d1 = d0; + + int delta = 1; + if(d0 < 0.) delta = -1; + angle = - lwc()->m_FanStepOnPhi * delta; + do { + //p1.rotateZ(angle); + p1 = GeoTrf::RotateZ3D(angle)*p1; + fan_number += delta; + d1 = lwc()->DistanceToTheNeutralFibre(p1, lwc()->adjust_fan_number(fan_number)); + } while(d0 * d1 > 0.); + if(delta > 0) fan_number --; + if(!lwc()->m_isElectrode) fan_number ++; + + int adj_fan_number = fan_number; + if(adj_fan_number < lwc()->m_FirstFan) adj_fan_number = lwc()->m_FirstFan - 1; + else if(adj_fan_number > lwc()->m_LastFan) adj_fan_number = lwc()->m_LastFan; + + //p1.rotateZ(-0.5 * angle); + p1 = GeoTrf::RotateZ3D(-0.5 * angle) * p1; + double dd = lwc()->DistanceToTheNeutralFibre(p1, adj_fan_number); + int side = dd < 0.? -1: 1; +#ifdef HARDDEBUG + printf("GetPhiGapAndSide: MFN %4d\n", adj_fan_number); +#endif + return std::pair<int, int>(adj_fan_number, side); + } + +} diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.h new file mode 100644 index 0000000000000000000000000000000000000000..a0fe5ce7fae50bbff3d4318b84b8536875bcc2d6 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/ModuleFanCalculator.h @@ -0,0 +1,36 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef __LArWheelCalculator_Impl_ModuleFanCalculator_H__ +#define __LArWheelCalculator_Impl_ModuleFanCalculator_H__ + +#include "IFanCalculator.h" +#include "GeoModelKernel/GeoDefinitions.h" + +class LArWheelCalculator; + +namespace LArWheelCalculator_Impl +{ + + /// This is an interface of distance calculation to parts of the LAr endcap. + class ModuleFanCalculator : public IFanCalculator + { + public: + ModuleFanCalculator(LArWheelCalculator* lwc); + + // geometry methods: + virtual double DistanceToTheNearestFan(GeoTrf::Vector3D &p, int & out_fan_number) const; + virtual int PhiGapNumberForWheel(int i) const; + virtual std::pair<int, int> GetPhiGapAndSide(const GeoTrf::Vector3D &p) const; + + inline const LArWheelCalculator *lwc() const { return m_lwc; }; + + private: + LArWheelCalculator* m_lwc; + + }; + +} + +#endif // __LArWheelCalculator_Impl_ModuleFanCalculator_H__ diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/WheelFanCalculator.h b/GeoSpecialShapes/src/LArWheelCalculator_Impl/WheelFanCalculator.h new file mode 100644 index 0000000000000000000000000000000000000000..44ad15a2b56f567a79cda68430217b30a309607a --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/WheelFanCalculator.h @@ -0,0 +1,281 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef LARWHEELCALCULATOR_IMPL_WHEELFANCALCULATOR_H +#define LARWHEELCALCULATOR_IMPL_WHEELFANCALCULATOR_H + +#include "IFanCalculator.h" +#include "GeoSpecialShapes/LArWheelCalculator.h" +#include "GeoModelKernel/GeoDefinitions.h" + +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits + +#ifdef HARDDEBUG +#undef HARDDEBUG +#endif + +namespace LArWheelCalculator_Impl +{ + + // mode marker classes + class SaggingOn_t {}; + class SaggingOff_t {}; + + template <typename SaggingType> + class DistanceToTheNeutralFibre_OfFan {}; + + template<> + class DistanceToTheNeutralFibre_OfFan<SaggingOn_t> + { + public: + static inline double calculate(const LArWheelCalculator* lwc, int fan_number, GeoTrf::Vector3D &p) { + //lwc->set_m_fan_number(fan_number); + return lwc->DistanceToTheNeutralFibre(p, lwc->adjust_fan_number(fan_number)); + } + }; + + template<> class DistanceToTheNeutralFibre_OfFan<SaggingOff_t> + { + public: + static inline double calculate(const LArWheelCalculator* lwc, int /*fan_number*/, GeoTrf::Vector3D &p) { + // saggingOff distance calculations does not use fan_number, use arbitrary recognisible magic number + return lwc->DistanceToTheNeutralFibre(p, -531135); + } + }; + + enum FanSearchDirection_t { + FORWARD = 1, // delta = 1 + BACKWARD = -1 // delta = -1 + }; + + + template <typename SaggingType, FanSearchDirection_t dir > + class StepFan {}; + + + template <FanSearchDirection_t dir > + class StepFan<SaggingOff_t, dir> + { + public: + static inline void next(int &/*fan_number*/) {} + static inline void adjust(int &/*fan_number*/) {} + }; + + + template <> + class StepFan<SaggingOn_t, FORWARD> + { + public: + static inline void next(int &fan_number) { + fan_number++; + } + static inline void adjust(int &fan_number) { + fan_number--; + } + }; + + template <> + class StepFan<SaggingOn_t, BACKWARD> + { + public: + static inline void next(int &fan_number) { + fan_number--; + } + static inline void adjust(int &/*fan_number*/) {} + }; + + template <FanSearchDirection_t dir> + class DoSearch {}; + + template <> + class DoSearch<FORWARD> + { + public: + template <typename T > + static inline bool pred(T val) { + return (val > 0.); + } + }; + + template <> + class DoSearch<BACKWARD> + { + public: + template <typename T > + static inline bool pred(T val) { + return (val < 0.); + } + }; + + /// @todo Needs documentation + template <typename SaggingType, FanSearchDirection_t dir, class NFDistance > + inline void rotate_to_nearest_fan(const LArWheelCalculator* lwc, int &fan_number, + const double angle, GeoTrf::Vector3D &p) + { + + //p.rotateZ(angle); + p=GeoTrf::RotateZ3D(angle)*p; + StepFan<SaggingType, dir>::next(fan_number); + //fan_number += delta; + double d1 = NFDistance::calculate(lwc, fan_number, p); + + //while(d0 * d1 > 0.) -> dir*d1 > 0 -> FORWARD: d1 > 0., BACKWARD: d1 < 0. + + while ( DoSearch<dir>::pred(d1) ) { // search: + //p.rotateZ(angle); + p=GeoTrf::RotateZ3D(angle)*p; + StepFan<SaggingType, dir>::next(fan_number); + //fan_number += delta; + + d1 = NFDistance::calculate(lwc, fan_number, p); + //lwc()->set_m_fan_number(fan_number); + //d1 = lwc()->DistanceToTheNeutralFibre(p); + + } + // if signs of d1 and d0 are different, the point is between current pair + StepFan<SaggingType, dir>::adjust(fan_number); + //if(delta > 0) fan_number --; + } + + + /// LAr wheel fan calculator, templated for sagging settings. + /// + template <typename SaggingType> + class WheelFanCalculator : public IFanCalculator + { + public: + //WheelFanCalculator(LArWheelCalculator* lwc, IRDBAccessSvc* /*rdbAccess*/, + // const DecodeVersionKey & /*larVersionKey*/) + WheelFanCalculator(LArWheelCalculator* lwc) + : m_lwc(lwc) + { + } + + /// @name Geometry methods + /// @{ + + virtual double DistanceToTheNearestFan(GeoTrf::Vector3D &p, int & out_fan_number) const + { + //using Gaudi::Units::halfpi; + //int fan_number = int((p.phi() - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi_ForDetNeaFan) / lwc()->m_FanStepOnPhi); + int fan_number = int((std::atan2(p(1),p(0)) - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi_ForDetNeaFan) / lwc()->m_FanStepOnPhi); + const double angle = lwc()->m_FanStepOnPhi * fan_number + lwc()->m_ZeroFanPhi_ForDetNeaFan; +#ifdef HARDDEBUG + printf("DistanceToTheNearestFan: initial FN %4d\n", fan_number); +#endif + //p.rotateZ(-angle); + p=GeoTrf::RotateZ3D(- angle)*p; + // determine search direction + typedef DistanceToTheNeutralFibre_OfFan<SaggingType> NFDistance; + + const double d0 = NFDistance::calculate(lwc(), fan_number, p); + //lwc()->set_m_fan_number(fan_number); + //double d0 = lwc()->DistanceToTheNeutralFibre(p); + + const int delta = (d0 < 0.) ? -1 : 1; + //int delta = 1; // delta = signof(d0) + //if(d0 < 0.) delta = -1; // search direction has been determined + + const double step_angle = - lwc()->m_FanStepOnPhi * delta; + + if (delta > 0) { // forward search + rotate_to_nearest_fan< SaggingType, FORWARD, NFDistance >( lwc(), fan_number, step_angle, p); + } else { // backward search + rotate_to_nearest_fan< SaggingType, BACKWARD, NFDistance >( lwc(), fan_number, step_angle, p); + } + + /* + double d1 = d0; + do { // search: + p.rotateZ(angle); + fan_number += delta; + + d1 = NFDistance::calculate(lwc(), fan_number, p); + //lwc()->set_m_fan_number(fan_number); + //d1 = lwc()->DistanceToTheNeutralFibre(p); + +#ifdef HARDDEBUG + printf("DistanceToTheNearestFan: step FN %4d %4d\n", fan_number, lwc()->m_fan_number); +#endif + } while(d0 * d1 > 0.); + // if signs of d1 and d0 are different, the point is between current pair + if(delta > 0) fan_number --; + */ + + //p.rotateZ(-0.5 * step_angle); + p=GeoTrf::RotateZ3D(-0.5 * step_angle)*p; +#ifdef HARDDEBUG + printf("DistanceToTheNearestFan: final FN %4d\n", fan_number); +#endif + + out_fan_number = lwc()->adjust_fan_number(fan_number); + return lwc()->DistanceToTheNeutralFibre(p, out_fan_number); + } + + virtual int PhiGapNumberForWheel(int i) const + { + return i; + } + + virtual std::pair<int, int> GetPhiGapAndSide(const GeoTrf::Vector3D &p) const + { + //using Gaudi::Units::halfpi; + GeoTrf::Vector3D p1 = p; + //int fan_number = int((p.phi() - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi) / lwc()->m_FanStepOnPhi); + int fan_number = int((std::atan2(p(1),p(0)) - SYSTEM_OF_UNITS::halfpi - lwc()->m_ZeroFanPhi) / lwc()->m_FanStepOnPhi); + const double angle = lwc()->m_FanStepOnPhi * fan_number + lwc()->m_ZeroFanPhi; + p1=GeoTrf::RotateZ3D(- angle)*p1; + //p1.rotateZ(-angle); + + + typedef DistanceToTheNeutralFibre_OfFan<SaggingType> NFDistance; + + const double d0 = NFDistance::calculate(lwc(), fan_number, p1); + //lwc()->set_m_fan_number(fan_number); + //double d0 = lwc()->DistanceToTheNeutralFibre(p1); + + double d1 = d0; + + const int delta = (d0 < 0.) ? -1 : 1; + //int delta = 1; + //if(d0 < 0.) delta = -1; + const double step_angle = - lwc()->m_FanStepOnPhi * delta; + do { + //p1.rotateZ(step_angle); + p1 = GeoTrf::RotateZ3D(step_angle)*p1; + fan_number += delta; + d1 = NFDistance::calculate(lwc(), fan_number, p1); + //lwc()->set_m_fan_number(fan_number); + //d1 = lwc()->DistanceToTheNeutralFibre(p1); + } while(d0 * d1 > 0.); + + if(delta > 0) fan_number --; + if(!lwc()->m_isElectrode) fan_number ++; + + //p1.rotateZ(-0.5 * step_angle); + p1 = GeoTrf::RotateZ3D(-0.5 * step_angle)*p1; + + const int a_fan_number = lwc()->adjust_fan_number(fan_number); + double dd = lwc()->DistanceToTheNeutralFibre(p1, a_fan_number); + int side = dd < 0.? -1: 1; +#ifdef HARDDEBUG + printf("GetPhiGapAndSide: MFN %4d\n", a_fan_number); +#endif + return std::pair<int, int>(a_fan_number, side); + } + + /// @} + + inline const LArWheelCalculator *lwc() const { return m_lwc; }; + + private: + LArWheelCalculator* m_lwc; + + }; + +} + +#endif // LARWHEELCALCULATOR_IMPL_WHEELFANCALCULATOR_H diff --git a/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx b/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx new file mode 100644 index 0000000000000000000000000000000000000000..2a7f18b098e38f68e6bd0996ea7312c3c78b3422 --- /dev/null +++ b/GeoSpecialShapes/src/LArWheelCalculator_Impl/sincos_poly.cxx @@ -0,0 +1,241 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#include "GeoSpecialShapes/LArWheelCalculator.h" +#include "GeoSpecialShapes/sincos.h" + +#include <Eigen/Dense> +#include <vector> +#include <sys/time.h> +#include <iostream> +#include <iomanip> +#include <math.h> +#include <mutex> + +// Physical constants +#include "GeoModelKernel/Units.h" +#define SYSTEM_OF_UNITS GeoModelKernelUnits +#define DEBUGPRINT 0 + +using namespace Eigen; + +//template<typename T> +//std::ostream & operator << (std::ostream & ostr, const TVectorT<T> & v) +//{ +// std::ios_base::fmtflags save_flags(ostr.flags()); +// ostr << '['; +// ostr << std::scientific; +// for(int idx=v.GetLwb();idx<v.GetUpb();idx++) { +// ostr << v[idx] << ", "; +// } +// ostr << v[v.GetUpb()]; +// ostr << ']'; +// ostr.flags(save_flags); +// return ostr; +//} + + +// find best approximation of y values using linear combination of basis functions in bf + +//static std::vector<double> +static RowVectorXd +findLinearApproximation( + const int dataLen, const int nBasisFuntions, + const RowVectorXd &y, const MatrixXd & bf) +{ + //TMatrixDSym A(nBasisFuntions); + MatrixXd A (nBasisFuntions, nBasisFuntions); + //TVectorD vY(nBasisFuntions); + VectorXd vY(nBasisFuntions); + + for(int j = 0; j < nBasisFuntions; ++ j){ + for(int k = 0; k < nBasisFuntions; ++ k){ + double Ajk = 0.0; + for(int i = 0; i < dataLen; ++ i){ + Ajk += bf(j, i) * bf(k, i); + } + A(j, k) = Ajk; + } + } + + for(int k = 0; k < nBasisFuntions; ++ k){ + double vYk = 0.0; + for(int i = 0; i < dataLen; ++ i){ + vYk += y[i]*bf(k,i); + } + vY[k] = vYk; + } + + //TMatrixDSym Ainv(A); + MatrixXd Ainv(A); + //Ainv.Invert(); + Ainv.inverse(); + + // std::cout << "Ainv: " << std::endl; + // std::cout << Ainv << std::endl; + // std::cout << "vY: " << std::endl; + // std::cout << vY << std::endl; + + return Ainv*vY; +} + +void LArWheelCalculator::fill_sincos_parameterization() +{ + const int nrPolyDegree = LARWC_SINCOS_POLY; +#if LARWC_SINCOS_POLY > 4 && DEBUGPRINT + std::cout << "LARWC_SINCOS_POLY: " << LARWC_SINCOS_POLY << std::endl; +#endif + const int nBasisFunctions = nrPolyDegree + 1; + + // We compute the polynomial approximations once per side, and store them in + // the static variables below for reuse in successive calculator instances. + // For multi-threading, then, this code needs to be mutex locked. + // FIXME: this could done in a cleaner way. + static std::mutex fillParamMutex; + std::lock_guard<std::mutex> lock(fillParamMutex); + + static bool filled[2] = { false, false }; + static double sin_parametrization[2][nBasisFunctions]; + static double cos_parametrization[2][nBasisFunctions]; + + // Reuse the computation if already performed + size_t S = m_isInner? 0: 1; + if(filled[S]){ + for(int i = 0; i < nBasisFunctions; ++ i){ + m_sin_parametrization[i] = sin_parametrization[S][i]; + m_cos_parametrization[i] = cos_parametrization[S][i]; + } + return; + } + + //const Double_t Rmin = m_isInner? 290.*mm: 600.*mm; + //const Double_t Rmax = m_isInner? 710.*mm: 2050.*mm; + const double Rmin = m_isInner? 250.*SYSTEM_OF_UNITS::mm: 560.*SYSTEM_OF_UNITS::mm; + const double Rmax = m_isInner? 750.*SYSTEM_OF_UNITS::mm: 2090.*SYSTEM_OF_UNITS::mm; + //const Double_t Rmin = m_isInner? 220.*mm: 530.*mm; + //const Double_t Rmax = m_isInner? 780.*mm: 2120.*mm; + const double Rstep = 1.*SYSTEM_OF_UNITS::mm; + const int nrPoints = (Rmax - Rmin) * (1./Rstep); + const int dataLen = nrPoints + 1; + +// TVectorD x(dataLen); // angle points +// TVectorD ysin(dataLen); // to be approximated function values at angle points - sin +// TVectorD ycos(dataLen); // to be approximated function values at angle points - cos + RowVectorXd x(dataLen); // angle points + RowVectorXd ysin(dataLen); // to be approximated function values at angle points - sin + RowVectorXd ycos(dataLen); // to be approximated function values at angle points - cos + + //TMatrixD bf(nBasisFunctions, dataLen); // Matrix of values of basis functions at angle points + MatrixXd bf (nBasisFunctions, dataLen); + + for(int i = 0; i < dataLen; ++ i){ + const double a = Rmin + i * Rstep; + x[i] = a; + CxxUtils::sincos scalpha(parameterized_slant_angle(a)); + ysin[i] = scalpha.sn; + ycos[i] = scalpha.cs; + for(int n = 0; n < nBasisFunctions; ++ n) { + bf(n, i) = pow(a, n); + } + } + + //std::vector<double> + RowVectorXd + params_sin = + findLinearApproximation(dataLen, nBasisFunctions, ysin, bf); + //std::vector<double> + RowVectorXd + params_cos = + findLinearApproximation(dataLen, nBasisFunctions, ycos, bf); + + for(int i = 0; i < nBasisFunctions; ++ i){ + m_sin_parametrization[i] = params_sin[i]; + m_cos_parametrization[i] = params_cos[i]; + sin_parametrization[S][i] = params_sin[i]; + cos_parametrization[S][i] = params_cos[i]; + } + + filled[S] = true; + + // FIXME: nothing below is needed unless debug printing + +#if DEBUGPRINT + std::cout << "sin params:" << params_sin << std::endl; + std::cout << "cos params:" << params_cos << std::endl; + + double dsinr = 0., dcosr = 0.; + double dtrigr = 0; +#endif + + double dsin = 0., dcos = 0.; + double dtrig = 0.; + for(double r = Rmin + 40.; r < Rmax - 40.; r += Rstep / 10.){ + CxxUtils::sincos scalpha(parameterized_slant_angle(r)); + double sin_a, cos_a; + parameterized_sincos(r, sin_a, cos_a); + double ds = fabs(scalpha.sn - sin_a); + if(ds > dsin){ + dsin = ds; +#if DEBUGPRINT + dsinr = r; +#endif + } + double dc = fabs(scalpha.cs - cos_a); + if(dc > dcos){ + dcos = dc; +#if DEBUGPRINT + dcosr = r; +#endif + } + double dt = fabs(sin_a*sin_a + cos_a*cos_a - 1.); + if(dt > dtrig){ + dtrig = dt; +#if DEBUGPRINT + dtrigr = r; +#endif + } + } + +#if DEBUGPRINT + std::cout << "Max. difference: " << std::endl + << "\tsin: " << dsin << " at " << dsinr << std::endl + << "\tcos: " << dcos << " at " << dcosr << std::endl + << "\tsin^2+cos^2: " << dtrig << " at " << dtrigr << std::endl; +#endif + +#ifdef HARDDEBUG + std::vector<double> y_test(dataLen); + const int nIter=10000; + std::cout << "Perfomance test started, " << nIter << " iterations" << std::endl; + + double y_testsin[dataLen]; + double y_testcos[dataLen]; + struct timeval tvsincos_start, tvsincos_stop; + gettimeofday(&tvsincos_start, 0); + for(int iIter=0;iIter<nIter;iIter++) { + for(int i=0;i<dataLen;i++) { + sincos(parameterized_slant_angle(x[i]), &y_testsin[i], &y_testcos[i]); + } + } + gettimeofday(&tvsincos_stop, 0); + double timeSinCos=(tvsincos_stop.tv_sec-tvsincos_start.tv_sec + 1E-6*(tvsincos_stop.tv_usec-tvsincos_start.tv_usec))/nIter; + + std::cout.unsetf ( std::ios::fixed | std::ios::scientific ); + std::cout << "Time to fill 2x" << dataLen << " elements using sincos function: " << timeSinCos << std::endl; + + struct timeval tvpoly_start, tvpoly_stop; + gettimeofday(&tvpoly_start, 0); + for(int iIter=0;iIter<nIter;iIter++) { + for(int i=0;i<dataLen;i++) { + parameterized_sincos(x[i], y_testsin[i], y_testcos[i]); + } + } + gettimeofday(&tvpoly_stop, 0); + double timePoly=(tvpoly_stop.tv_sec - tvpoly_start.tv_sec + 1E-6*(tvpoly_stop.tv_usec - tvpoly_start.tv_usec))/nIter; + std::cout << "Time to fill 2x" << dataLen << " elements using approximation sin&cos: " << timePoly << std::endl; + std::cout.unsetf ( std::ios::fixed | std::ios::scientific ); + std::cout << "Approximation is " << timeSinCos/timePoly << " faster " << std::endl; +#endif + +} diff --git a/cmake/GeoModelIOPackaging.cmake b/cmake/GeoModelIOPackaging.cmake index 34a49ff4213a000b131ccf4200da14b94280f9f9..54f80a3e9e475125b8775a3dc876361ba904e17e 100644 --- a/cmake/GeoModelIOPackaging.cmake +++ b/cmake/GeoModelIOPackaging.cmake @@ -6,7 +6,7 @@ set( CPACK_PACKAGE_DESCRIPTION_SUMMARY set( CPACK_PACKAGE_DESCRIPTION "Geometry model I/O libraries" ) set( CPACK_PACKAGE_VERSION "${PROJECT_VERSION}" ) -set( CPACK_PACKAGE_CONTACT "atlas-sw-core@cern.ch" ) +set( CPACK_PACKAGE_CONTACT "geomodel-developers@cern.ch" ) # Set up the readme and license for the package. set( CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/LICENSE )