mqn2mps is a tool used to transform the problem of field coupling on orbifolds as it arises in string theory. Input is a format based on the mathematica output of some existing program. It is called MQN here for Mathematica Quantum Numbers. The format of this input file can best be read from parser.yy and lexer.lex directly, as these source files are authoritative.
The most useful output format is probably MPS, which is a widely used exchange format for linear programs, including mixed integer programs. This specific output format is written by the class mpsgen. However theoutput part of this program is highly modular, so other classes derived from mipgen provide other output formats.
The cornerstone of mqn2mps is its driver class. It handles command line options, running the input parser and accepting its results, and asking the output module to formulate the problem and have it written to a file. The main work of this problem formulation part of the task lies with the class mipgen, from which all other output modules are derived.
Linear programs are usually represented as a matrix of coefficients along with names and bounds for both rows and columns. In this program, the columns are represented by the field class as the contain the description of a quantum field. The rows are mostly described using the constraint class, which expresses an equality constraint. The matrix elements are stored with the fields.
mqn2mps was developed by Martin von Gagern at the TU München in 2007, as part of an interdisciplinary project on the boundary between his computer science major and his physics minor.