Skip to content

freeboson/SLHA.jl

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 ____  _     _   _    _       _ _
/ ___|| |   | | | |  / \     (_) |
\___ \| |   | |_| | / _ \    | | |
 ___) | |___|  _  |/ ___ \ _ | | |
|____/|_____|_| |_/_/   \_(_)/ |_|
                           |__/

Build Status AppVeyor codecov.io

This is a package written in Julia to parse, serialize, and perform calculations with the Supersymmetry Les Houches Accord (SLHA) file format, codified by this paper and updated in this paper. As the SLHA format is pervasive in the particle physics, especially beyond the Standard Model (BSM) physics, an agile and robust SLHA library for Julia should establish a foundation for new tools to be developed in Julia, for high energy physics.

Installation

You can get started very simply using Julia's package manager. Start Julia's CLI and do the following:

julia> Pkg.add("SLHA")

julia> using SLHA

At this point, you have already downloaded and installed the SLHA.jl package and have loaded its symbols.

Features

One of the unique characteristics of this library is that different SLHA blocks, identified by name have their own type. Using Julia's parametric types which can be identified by a Symbol, it is easy to create a large number of subtypes. The idea is that this might be useful if one wishes to dispatch on a block, instead of using an associative map. (I'm not sure if this is a useful feature yet :) .)

There is a large degree of arbitrariness in the types of block that can be contained by SLHA.jl. You can have ordinary arrays of arbitrary dimensions, which can be easily traversed thanks to Julia's @generated metaprogramming facilities. And, the multiple/external dispatch of Julia allows you to easily extend the format to SLHA blocks as you wish. It is my hope that the rich programming environment will lead to innovative BSM tool development with clever meta-programming and staged programming techniques.

About

Julia package implementing the Supersymmetry Les Houches Accord

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages