Programs in Physics & Physical Chemistry
|[Licence| Download | New Version Template] aegl_v1_0.tar.gz(598 Kbytes)|
|Manuscript Title: HepML, an XML-based format for describing simulated data in high energy physics|
|Authors: S. Belov, L. Dudko, D. Kekelidze, A. Sherstnev|
|Program title: libhepml|
|Catalogue identifier: AEGL_v1_0|
Distribution format: tar.gz
|Journal reference: Comput. Phys. Commun. 181(2010)1758|
|Programming language: C++, C.|
|Computer: PCs and workstations.|
|Operating system: Scientific Linux CERN 4/5, Ubuntu 9.10.|
|RAM: 1073741824 bytes (1 Gb)|
|Keywords: HepML, XML, Markup language, Monte Carlo Simulation, Monte Carlo event generators.|
|PACS: 01.50.hv, 07.05.-t, 07.05.Tp, 07.05.Wr.|
|Classification: 6.2, 11.1, 11.2.|
External routines: Xerces XML library (http://xerces.apache.org/xerces-c/), Expat XML Parser (http://expat.sourceforge.net/).
Nature of problem:
Monte Carlo simulation in high energy physics is divided into several stages. Various programs exist for these stages. In this article we are interested in interfacing different Monte Carlo event generators via data files, in particular, Matrix Element (ME) generators and Showering and Hadronization (SH) generators. There is a widely accepted format for data files for such interfaces - Les Houches Event Format (LHEF). Although information kept in a LHEF file is enough for proper working of SH generators, it is insufficient for understanding how events in the LHEF file have been prepared and which physical model has been applied. In this paper we propose an extension of the format for keeping additional information available in generators. We propose to add a new information block, marked up with XML tags, to the LHEF file. This block describes events in the file in more detail. In particular, it stores information about a physical model, kinematical cuts, generator, etc. This helps to make LHEF files self-documented. Certainly, HepML can be applied in more general context, not in LHEF files only.
In order to overcome drawbacks of the original LHEF accord we propose to add a new information block of HepML tags. HepML is an XML-based markup language. We designed several XML XML Schemas for all tags in the language. Any HepML document should follow rules of the Schemas. The language is equipped with a library for operation with HepML tags and documents. This C++ library, called libhepml, consists of classes for HepML objects, which represent a HepML document in computer memory, parsing classes, serializating classes, and some auxiliary classes.
The software is adapted for solving problems, described in the article. There are no additional restrictions.
Tests have been done on a computer with Intel(R) Core(TM)2 Solo, 1.4GHz. Parsing of a HepML file: 6 ms (size of the HepML files is 12.5Kb) Writing of a HepML block to file: 14 ms (file size 12.5Kb) Merging of two HepML blocks and writing to file: 18 ms (file size - 25.0Kb)
|Disclaimer | ScienceDirect | CPC Journal | CPC | QUB|