Skip to content
Snippets Groups Projects
Select Git revision
  • 77201f67acb1b3410fb22d68265f0bf557d6b3e6
  • main default protected
  • dynamiccastcheck
  • generic_geometry
  • evc/volume_tmp
  • examples-update
  • generic_polyhedron
  • GoToQt6AndFixSlider
  • rbianchi-main-patch-32220
  • 6.11.X
  • patch_G4ElementsSorting
  • remove-old-unused-geomodelio-code
  • athena-ci-2025
  • add-printTree-exec
  • magFieldOpt
  • 6.3.Y
  • IO_ConditionalLoadDBTables
  • pTest
  • MaterialsAndCoReform
  • pipeline-test
  • TFPersistificationReform
  • 6.19.0
  • 6.18.0
  • 6.17.0
  • 6.16.0
  • 6.15.0
  • 6.14.0
  • 6.13.0
  • 6.12.0
  • 6.11.1
  • 6.11.0
  • 6.10.0_testG4ElementSorting
  • 6.10.0
  • 6.9.0
  • 6.8.0
  • 6.7.0
  • 6.6.0
  • 6.5.0
  • 6.4.0
  • 6.3.0
  • 6.2.0
41 results

GeoModel

  • Open with
  • Download source code
  • Your workspaces

      A workspace is a virtual sandbox environment for your code in GitLab.

      No agents available to create workspaces. Please consult Workspaces documentation for troubleshooting.

  • Joseph F. Boudreau's avatar
    Joseph Boudreau authored
    77201f67
    History

    Latest Release pipeline status

    GeoModel --- A user-friendly C++ Toolkit for HEP Detector Description

    GeoModel is a user-friendly C++ Toolkit and Suite for HEP Detector Description with minimal dependencies.

    Dependencies

    The philosophy of the whole GeoModel Suite is to keep the external dependencies at the minimum.

    The core packages only depend on these third-party libraries:

    • Eigen3, as the maths library (header-only)
    • SQLite, as the underlying format to store detector description data

    Structure

    Build tree

    By default, only the base classes are built:

    • GeoModelCore
      • GeoModelKernel
      • GeoGenericFunctions
    • GeoModelIO
      • GeoModelDBManager
      • GeoModelWrite
      • GeoModelRead
      • TFPersistification

    On request, additional packages, libraries, and tools can be built:

    • GeoModelTools
      • ExpressionEvaluator
      • GeoModelJSONParser
      • GeoModelXMLParser
      • GMCAT
    • GeoModelVisualization (gmex)
    • GeoModelExamples
    • GeoModelG4
      • GeoMaterial2G4
      • GeoModel2G4
    • FullSimLight

    Note:

    Some of the optional packages bring in additional dependencies, for example libraries to handle 3D graphics and Geant4 for standalone detector simulations.

    In particular, these are the additional dependencies and the packages that bring them:

    • GeoModelTools: Xerces-C, nlohmann_json
    • GeoModelVisualization: Qt5, Coin3D, SoQt, nlohmann_json
    • Examples about the classes handling the GeoModel->Geant4 translation: Geant4
    • GeoModelG4: Geant4
    • FullSimLight: Geant4

    Build

    For the build instruction, you can refer to the documentation folder:

    documentation/dev/

    or to the web-based render at the documentation website:

    https://geomodel.web.cern.ch/geomodel/

    License

    GeoModel is distributed under the Apache 2.0 license

    Core Developers and Maintainers

    GeoModel is developed and maintained by (in alphabetical order):

    • Marilena Bandieramonte (University of Pittsburgh, US)
    • Riccardo Maria Bianchi (University of Pittsburgh, US)
    • Joseph Boudreau (University of Pittsburgh, US)
    • Andrea Dell'Acqua (CERN, CH)
    • Vakhtang Tsulaia (LBNL, US)

    Contacts

    For questions and requests, you can open an "Issue".