Skip to main content

General Geometry Description

Project description

What is this?

The General Geometry Description (GGD) is a software system to generate a description of a constructive solid geometry specifically as used by Geant4 or ROOT applications are as represented in GDML files. It is implemented as a pure Python module gegede.

Install

GeGeDe is effectively now Python 3 only and can be installed in any of the "usual" ways. In short:

uv tool install git+https://github.com/brettviren/gegede

See the installation document for details.

How do I use it?

GGD is designed along layers each of which allows the user-programmer access.

img

  • params: high level, human-centric configuration mechanism
  • builders: structured, procedural geometry constructor code
  • objects: the in-memory representation of the final geometry
  • export: conversion to formats suitable to exchange the data with other applications.

At the highest level is a simple configuration language for end-user setting of parameters that are consumed by the next layer, the builders. The builders are instances of classes which are responsible for constructing some portion of an overall geometry. They may also manage some number of other (sub)builders to handle specific construction details. The geometry is constructed by building an in-memory representation of general geometry objects. Finally these objects may be exported into a number of forms including GDML, "plain old (Python) data" and JSON. Each layer provides for extension to novel uses.

Tutorial

Each layer contains a tutorial:

See also the GeGeDe Example project.

Reference

T.B.D.

GeGeDe Users

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gegede-0.11.tar.gz (36.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gegede-0.11-py3-none-any.whl (30.8 kB view details)

Uploaded Python 3

File details

Details for the file gegede-0.11.tar.gz.

File metadata

  • Download URL: gegede-0.11.tar.gz
  • Upload date:
  • Size: 36.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for gegede-0.11.tar.gz
Algorithm Hash digest
SHA256 34c1901dc88a819ee1b58b05efc1eb73810b075335c22ec7d61d0d9e74bdafd2
MD5 e71a40c6bb00fd2677fc9451f3884757
BLAKE2b-256 9cc2dbf1c97787d18df5abc8fcda6d76fab571ff9d38d712c4b1395853b739e7

See more details on using hashes here.

File details

Details for the file gegede-0.11-py3-none-any.whl.

File metadata

  • Download URL: gegede-0.11-py3-none-any.whl
  • Upload date:
  • Size: 30.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for gegede-0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 140cd3d72081608e35a10fa16eb4b1a9c9bb445350e79e265e21e1cb653a29dc
MD5 fb6dab358c6d1d42fcc5c5c0bcb6d9e9
BLAKE2b-256 b5dd9397f89a04959b5620b1049a8b35ce7d8734efb56e6935ee9a48697eb311

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page