Skip to content

A package for calculating geometric properties of physics detectors.

License

Notifications You must be signed in to change notification settings

j-browne/raumlehre

Repository files navigation

raumlehre

raumlehre logo

Build Status

A package for calculating geometric properties of physics detectors.

Getting Started

raumlehre was written in rust, and the rust toolchain is required to build the project. To install rust, see rustup.

To build and install the raumlehre tools, run

git clone git@github.com:j-browne/raumlehre.git
cargo install --path raumlehre

angles

angles <input_files>

visualize

visualize <input_files> > <output_file>
gnuplot -e "call 'utilities/visualize.gpi' '<output_file>'" -

Configuration Format

Examples

{
  "detectors": [
    {
      "template": "box"
    },
    {
      "coords": "PolarZ",
      "u_limits": [0, 1.5],
      "v_limits": [0, 360],
      "transformations": [
        { "Translation": [0, 0, 1] }
      ]
    },
    {
      "coords": "PolarZ",
      "u_limits": [0, 1.5],
      "v_limits": [0, 360],
      "transformations": [
        { "Translation": [0, 0, 1] }
      ],
      "shadows": [
        {
          "template": "box"
        }
      ]
    }
  ],
  "templates": {
    "box": {
      "surfaces": [
        {
          "coords": "CartesianZ",
          "u_limits": [0, 1],
          "v_limits": [-1, 1],
          "transformations": [
            { "Rotation": [0, -90, 0] },
            { "Translation": [-1, 0, 0] }
          ]
        },
        {
          "coords": "CartesianZ",
          "u_limits": [0, 1],
          "v_limits": [-1, 1],
          "transformations": [
            { "Rotation": [0, -90, 0] },
            { "Translation": [-1, 0, 0] },
            { "Rotation": [0, 0, 90] }
          ]
        },
        {
          "coords": "CartesianZ",
          "u_limits": [0, 1],
          "v_limits": [-1, 1],
          "transformations": [
            { "Rotation": [0, -90, 0] },
            { "Translation": [-1, 0, 0] },
            { "Rotation": [0, 0, 180] }
          ]
        },
        {
          "coords": "CartesianZ",
          "u_limits": [0, 1],
          "v_limits": [-1, 1],
          "transformations": [
            { "Rotation": [0, -90, 0] },
            { "Translation": [-1, 0, 0] },
            { "Rotation": [0, 0, 270] }
          ]
        }
      ]
    }
  }
}

About

A package for calculating geometric properties of physics detectors.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages