lha (empty) → 0.1
raw patch · 4 files changed
+179/−0 lines, 4 filesdep +haskell2010setup-changed
Dependencies added: haskell2010
Files
- Data/LHA.lhs +136/−0
- LICENSE +19/−0
- Setup.hs +2/−0
- lha.cabal +22/−0
+ Data/LHA.lhs view
@@ -0,0 +1,136 @@+| This module provides data structures for HEP events, as outlined by the Les+ Houches Accord (hep-ph/0109068v1). It attempts to be as close as possible to+ a direct haskell translation of the accord. Other relevant documents include:++* L. Garren, I. G. Knowles, T. Sjostrand and T. Trippe, Eur. Phys. J. C+ 15, 205 (2000).+ +* H. Plothow-Besch, Comput. Phys. Commun. 75, 396 (1993); CERN Program+ Library Long Writeup W5051 (2000); refer to+ <http://consult.cern.ch/writeup/pdflib/>.+++> module Data.LHA where++| Describes a generated event.++> data Event = Event+> { nPart :: Int++^ The number of particles in this event.++> , evProcId :: Int++^ The ID of the subprocess used to generate this event.++> , evWeight :: Double+> , scale :: Double++^ The scale of the event, in GeV.++> , aQED :: Double+> , aQCD :: Double+> , parts :: [Particle]+> }+++| Describes the properties of an event generation run. Note that this data+ structure does not contain the generated event information.++> data Run = Run+> { runBeam :: (Beam, Beam)++^ The properties of the two beams being used in this run.++> , idwt :: Int++^ Switch dictating how the event weights are to be interpreted.++> , nProc :: Int++^ The number of different subprocesses being used.++> , procs :: [Subprocess]++^ List of all subprocesses being used.++> }+++| Represents the properties of a single beam particle.++> data Beam = Beam+> { beamPDG :: Int++^ ID of the beam particle according to the Particle Data Group convention.++> , beamE :: Double++^ Energy in GeV of the beam particle.++> , pdfg :: Int++^ Author group for the beam, according to the Cernlib PDFlib specification.++> , pdfs :: Int++^ PDF set ID for the beam, according to the Cernlib PDFlib specification.++> }+++| Describes the properties of a subprocess.++> data Subprocess = Subprocess+> { procXSec :: Double++^ The cross-section of this subprocess, in pb.++> , procXErr :: Double++^ The statistical error associated with the value of procXSec.++> , procXMax :: Double+> , procId :: Int+> }+++| Describes a single particle component of a generated event.++> data Particle = Particle+> { partPDG :: Int++^ ID of the particle according to the Particle Data Group convention.++> , status :: ParticleStatus++^ Status code of the particle.++> , mothers :: (Int, Maybe Int)++^ The mother particles.++> , iColor :: (Int, Int)+> , partPx :: Double+> , partPy :: Double+> , partPz :: Double+> , partE :: Double+> , partM :: Double+> , lifetime :: Double++^ The lifetime of the particle, in mm.++> , spin :: Double+> }+++| Status codes for particles.++> data ParticleStatus+> = Incoming -- ^ Corresponds to status code -1.+> | OutgoingFinal -- ^ Corresponds to status code +1.+> | IntermediateSpaceLike -- ^ Corresponds to status code -2.+> | IntermediateResonance -- ^ Corresponds to status code +2.+> | DocumentationOnly -- ^ Corresponds to status code +3.+> | IncomingBeam -- ^ Corresponds to status code -9.+
+ LICENSE view
@@ -0,0 +1,19 @@+Copyright (c) 2012 Scott Lawrence <bytbox@gmail.com>++Permission is hereby granted, free of charge, to any person obtaining a copy+of this software and associated documentation files (the "Software"), to deal+in the Software without restriction, including without limitation the rights+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+copies of the Software, and to permit persons to whom the Software is+furnished to do so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in+all copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN+THE SOFTWARE.
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ lha.cabal view
@@ -0,0 +1,22 @@+Name: lha+Version: 0.1+Synopsis: Data structures for the Les Houches Accord+Description: This package provides data structures for HEP events, as outlined by the Les Houches Accord (hep-ph/0109068v1)+Homepage: https://github.com/bytbox/lha.hs+License: MIT+License-file: LICENSE+Author: Scott Lawrence+Maintainer: bytbox@gmail.com+Category: Physics+Build-type: Simple+Cabal-version: >=1.10++Library+ Exposed-modules: Data.LHA+ Default-language: Haskell2010+ Build-depends: haskell2010 >= 1.0+ +source-repository head+ type: git+ location: https://github.com/bytbox/lha.hs.git+